[发明专利]一种实现文件存储服务端加密的系统与方法在审
申请号: | 202110047345.2 | 申请日: | 2021-01-14 |
公开(公告)号: | CN112733189A | 公开(公告)日: | 2021-04-30 |
发明(设计)人: | 孙思清;靳登科;李超 | 申请(专利权)人: | 浪潮云信息技术股份公司 |
主分类号: | G06F21/62 | 分类号: | G06F21/62;G06F16/27 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜明 |
地址: | 250100 山东省济南市高*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 文件 存储 服务端 加密 系统 方法 | ||
1.一种实现文件存储服务端加密的系统,其特征在于:该系统基于NFS-Ganesha,包括客户端、NFS-Ganesha、KMS和CephFS,客户端向NFS-Ganesha发起读请求和写请求,NFS-Ganesha判断是否需要加密,若需加密,从KMS获取密钥,对数据加密,若需解密,从CephFS中读取数据后,从KMS获取密钥,对数据解密后返回给客户端。
2.一种实现文件存储服务端加密的方法,其特征在于:使用NFS-Ganesha将分布式文件系统CephFS导出,通过修改NFS-Ganesha源码,与密钥管理服务KMS对接,第一次读写时将密钥保存在缓存中,使用异或加密算法,通过定时任务检查密钥是否可用,实现对用户服务端加密。
3.根据权利要求2所述的实现文件存储服务端加密的方法,其特征在于:NFS-Ganesha通过监听端口,接收客户端发来的读请求和写请求,根据请求类型调用对应的libcephfs函数,使用异或加密算法将用户数据与密钥逐位进行异或计算,解密时将密文再与密钥进行一次异或操作即可解密。
4.根据权利要求3所述的实现文件存储服务端加密的方法,其特征在于:将密钥缓存在内存中,第一次读写时调用KMS接口获取密钥,再次读写时直接在缓存中读取密钥。
5.根据权利要求4所述的实现文件存储服务端加密的方法,其特征在于:将结构体数组作为缓存的数据结构,保存在全局变量中,结构体数组包括挂载点ID、密钥ID和密钥。
6.根据权利要求5所述的实现文件存储服务端加密的方法,其特征在于:新增挂载点时,在配置文件中新增挂载点ID与密钥ID的映射关系,修改NFS-Ganesha源码,使其在新增挂载点时将配置文件中新增的内容插入到结构体数组中,实现密钥ID的传入,删除挂载点时,将结构体数组对应元素所占内存释放。
7.根据权利要求6所述的实现文件存储服务端加密的方法,其特征在于:所述写操作包括以下过程:
1)监听到客户端写请求,查询挂载点ID是否在缓存内,若不在缓存内,则不需要使用密钥对数据加密,直接调用libcephfs的写函数,将数据写入CephFS;
2)若挂载点ID在缓存内,则表明需要使用密钥进行加密,此时需要判断挂载点ID对应的密钥是否为空,若密钥为空,则调用KMS接口获取密钥,将密钥保存到缓存中,使用密钥加密;
3)若密钥不为空,直接获取缓存中的密钥对数据进行加密;
4)加密后的数据调用libcephfs写入CephFS。
8.根据权利要求7所述的实现文件存储服务端加密的方法,其特征在于:所述读操作包括以下过程:
a)监听到客户端读请求,直接调用lincephfs从CephFS中读取数据;
b)查询挂载点ID是否在缓存内,若不在缓存内,则不需要解密,直接将数据返回给客户端;
c)若挂载点ID在缓存内,则判断挂载点ID对应的密钥是否为空,若密钥为空,调用KMS接口获取密钥,将密钥保存到缓存中,使用密钥对数据解密,将解密后的数据返回给客户端;
d)若密钥不为空,直接获取缓存中的密钥对数据进行解密,将解密后的数据返回客户端。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮云信息技术股份公司,未经浪潮云信息技术股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110047345.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:眼科手术器械
- 下一篇:一种利用旋光法检测天然龙涎香的海面自动采集装置