使用SQLite数据库加密敏感信息嵌入程序(3)

一、前期回顾

前两篇文章,使用SQLite数据库加密敏感信息并嵌入程序(1)主要介绍了使用工具和原生函数生成SQLite数据库,使用SQLite数据库加密敏感信息并嵌入程序(2)主要图解了将生成的数据库作为资源嵌入到程序中使用,由于该数据库保存了敏感信息,我们的目标是在程序运行时在内存中读取相关数据,而无需使用将资源保存到临时文件再获取信息的方案。

二、SQLite跨平台利器VFS简介

SQLite可移植到不同平台,在各操作系统上都能很好且高效一致的工作的主要原因是在底层与操作系统的交互上定义了一个虚拟文件系统,即VFS(Virtual File System)对象:操作系统接口对象,这是 SQLite 可跨操作系统移植的主要原因。

每当 SQLite 中的任何其他模块需要与操作系统通信时,它们都会调用 VFS 中的方法。VFS 然后调用满足请求所需的特定于操作的代码。因此,将 SQLite 移植到新的操作系统只需编写一个新的操作系统接口层或 “VFS” 即可。

可以同时注册多个 VFS,只需保证每个 VFS 都有一个唯一的名称即可。同一进程中的单独数据库连接可以同时使用不同的 VFS。Windows 版本带有多个内置 VFS。默认的 Windows VFS 称为“win32”,适用于大多数应用程序。图1显示了 SQLite 源码中定义的 sqlite3_vfs 对象结构。

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吴说扒道

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值