VSport - 让每一笔体育公益捐赠都可查证

VSport官方微信二维码

全国统一咨询热线

VSport咨询热线021-33694589
VSport区块链体育公益平台-让公益更透明 VSport体育公益解决方案-区块链技术赋能
最新公告: VSport股份有限公司致力于用区块链技术推动体育公益透明化,让每一笔捐赠都可追溯、可查证,欢迎访问VSport官网了解更多!

产品中心

新闻资讯

联系我们

021-33694589

地址:上海市金山区朱泾镇人民路121号1幢6875室

电话:021-33694589

传真:021-33694589

邮箱:vsport@qwrrtyuiop.com

新闻资讯

您的当前位置: 首页 > 新闻资讯

一种敏感数据加密通用解决方法及系统与流程

更新时间:2026-04-27 10:32:23

  

一种敏感数据加密通用解决方法及系统与流程(图1)

  本专利针对企业敏感数据缺乏有效加密手段的问题,提出一种通用加密方法及系统。通过自动识别数据类型并匹配加密接口,采用AES等算法进行双重加密,结合秘钥管理机制,实现对通讯数据和落地数据的差异化保护,提升数据安全性与查询效率。

  1.本发明涉及计算机软件领域,尤其涉及一种敏感数据加密通用解决方法及系统。

  2.随着信息技术与移动互联网基础的发展,数据资产的概念越来越被广大公司重视。如何通过数据,快速有效的挖掘其深层价值,为企业策略导向提供有效指引,通过数据驱动业务,也成为了众多企业着重发展的目标。

  3.然而,企业内部系统对于敏感数据缺乏有效的加密手段,因此,无法满足企业信息安全的要求。

  15.优选的,所述s3用于对数据进行加密,并得出加密结果的步骤,包括:

  18.优选的,所述s31用于根据加密接口对数据进行加密,并得出加密结果的步骤,包括:

  20.s312用于根据系统秘钥id对数据进行首次加密生成第一加密结果的步骤。

  21.优选的,所述s31用于根据加密接口对数据进行加密,并得出加密结果的步骤,还包括:

  23.s314用于根据讯层加密对第一加密结果进行二次加密生成第二加密结果的步骤。

  24.优选的,本发明所提供的敏感数据加密通用解决方法,还包括:秘钥管理的步骤。

  35.优选的,所述s3用于对数据进行加密,并得出加密结果的模块,包括:

  38.优选的,所述s31用于根据加密接口对数据进行加密,并得出加密结果的子模块,包括:

  40.s312用于根据系统秘钥id对数据进行首次加密生成第一加密结果的单元。

  41.优选的,所述s31用于根据加密接口对数据进行加密,并得出加密结果的子模块,还包括:

  43.s314用于根据讯层加密对第一加密结果进行二次加密生成第二加密结果的单元。

  44.优选的,本发明所提供的敏感数据加密通用解决系统,还包括:秘钥管理的模块。

  45.本发明所提供的敏感数据加密通用解决方法及系统,通过选择合适的加密方式对数据进行加密,以实现对于敏感数据的保护,从而满足了企业信息安全的要求。

  49.图4为本发明实施例一所述的用于对数据进行加密,并得出加密结果的步骤示意图;

  50.图5和图6为本发明实施例一所述的用于根据加密接口对数据进行加密,并得出加密结果的步骤示意图;

  51.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

  53.如图1-6所示,本实施例所提供的敏感数据加密通用解决方法,包括如下步骤:

  57.本领域技术人员可以理解,本实施例通过选择合适的加密方式对数据进行加密,以实现对于敏感数据的保护,从而满足了企业信息安全的要求。

  61.本领域技术人员可以理解,数据类型包括:通讯层面数据和落地数据。落地数据是指存放在数据库中的数据。通过对数据进行判断,从而得出数据的类型,方便本系统后续选择合适的加密方式对数据进行加密,从而使数据的安全性大幅提升。

  65.本领域技术人员可以理解,密钥类型大致分为对称密钥及非对称密钥,非对称密钥算法的时间复杂度相比对称密钥高出不少,同时我们也并不关注数据加密者的相关信息,因此在大批量数据加解密的场景中我们选择使用对称密钥对落地数据进行加密。

  66.对称密钥也分为好多种,主要的有des、3des、aes等。des算法由于密钥长度的限制,安全级别较底,密钥容易被暴力破解,而3des为了解决这一问题算法又导致性能较低。aes相对较好的平衡了这一问题,安全性和性能都优des算法。

  67.对于aes算法中的初始化向量iv,更为安全的加密方式是使用每次都会变化的随机值进行混淆,并在密文头部追加iv值的提示信息,解密一份数据之前需要先读取头部信息,优点在于彻底规避了字典攻击,但是由于加密结果中存在可变量,导致同样的数据加密后的值一定是不同的,这种编码方式适用于通讯层面的数据包加密,但是对于落地数据,即存放在数据库中的加密数据是无法作为查询条件进行检索的,因此可采用固定初始向量的aes/cbc/pkcs5padding加密方式。

  68.进一步,所述s3用于对数据进行加密,并得出加密结果的步骤,包括:

  71.本领域技术人员可以理解,对于落地数据,开发人员仅需在数据模型的属性字段上添加@converter标签,即可实现自动加解密,对于通讯层面数据的加密,可以调用cryptoservice中的encrypt()和decrypt()方法,从而满足更多灵活的加解密服务场景。

  72.进一步,所述s31用于根据加密接口对数据进行加密,并得出加密结果的步骤,包括:

  74.s312用于根据系统秘钥id对数据进行首次加密生成第一加密结果的步骤。

  75.本领域技术人员可以理解,每个系统都有自己的秘钥id,该id是一个不超过16为的字符串作为系统标识,与秘钥一一对应;可以将秘钥id与加密算法混淆后作为加密的初始化向量,这样即可进一步的加强加密的强度,进一步防止数据被恶意窃取。

  76.进一步,所述s31用于根据加密接口对数据进行加密,并得出加密结果的步骤,还包括:

  78.s314用于根据讯层加密对第一加密结果进行二次加密生成第二加密结果的步骤。

  79.本领域技术人员可以理解,加密会采用对称的aes算法,解密时使用加密时的密钥进行逆向处理即可获得原始数据,然而在加密时所用的密钥往往很容易在获取密码时被恶意捕获,导致所有数据泄密,因此我们引入上述两个手段进行安全加固,使得本系统加密的数据更加安全。此外,讯层加密的接口一般采用https或私有rpc的通讯方式,从而避免常规协议被针对性破解。

  80.本领域技术人员可以理解,一旦密钥泄露或出于其他安全原因更换密钥,需要开发对应的初始化及刷数工具,如要做到不停机在线刷数,需要客户端能够使用两个密钥对数据进行解密(暂不考虑连续变化两次密钥的情况)。但在线刷数这个方案实际操作中并不可行,因为在刷新的过程中,由于出现了两套加密版本的数据,这会影响到正常的数据库查询逻辑,实际中的刷新密钥或初始化仍然需要有一个停机维护的窗口期。

  81.进一步,本实施例所提供的敏感数据加密通用解决方法,还包括:秘钥管理的步骤。

  82.本领域技术人员可以理解,在服务侧,提供对密钥进行统一集中化管理服务。对于client来说,获取密钥需要向某个中心服务索取,即kms。对于这种配置集的封装可以尝试使用spring boot特有的propertysource进行对象传递。

  88.本领域技术人员可以理解,本实施例通过选择合适的加密方式对数据进行加密,以实现对于敏感数据的保护,从而满足了企业信息安全的要求。

  92.本领域技术人员可以理解,数据类型包括:通讯层面数据和落地数据。落地数据是指存放在数据库中的数据。通过对数据进行判断,从而得出数据的类型,方便本系统后续选择合适的加密方式对数据进行加密,从而使数据的安全性大幅提升。

  96.本领域技术人员可以理解,密钥类型大致分为对称密钥及非对称密钥,非对称密钥算法的时间复杂度相比对称密钥高出不少,同时我们也并不关注数据加密者的相关信息,因此在大批量数据加解密的场景中我们选择使用对称密钥对落地数据进行加密。

  97.对称密钥也分为好多种,主要的有des、3des、aes等。des算法由于密钥长度的限

  制,安全级别较底,密钥容易被暴力破解,而3des为了解决这一问题算法又导致性能较低。aes相对较好的平衡了这一问题,安全性和性能都优des算法。

  98.对于aes算法中的初始化向量iv,更为安全的加密方式是使用每次都会变化的随机值进行混淆,并在密文头部追加iv值的提示信息,解密一份数据之前需要先读取头部信息,优点在于彻底规避了字典攻击,但是由于加密结果中存在可变量,导致同样的数据加密后的值一定是不同的,这种编码方式适用于通讯层面的数据包加密,但是对于落地数据,即存放在数据库中的加密数据是无法作为查询条件进行检索的,因此可采用固定初始向量的aes/cbc/pkcs5padding加密方式。

  99.进一步,所述s3用于对数据进行加密,并得出加密结果的模块,包括:

  100.s31用于根据加密接口对数据进行加密,并得出加密结果的子模块;

  102.本领域技术人员可以理解,对于落地数据,开发人员仅需在数据模型的属性字段上添加@converter标签,即可实现自动加解密,对于通讯层面数据的加密,可以调用cryptoservice中的encrypt()和decrypt()方法,从而满足更多灵活的加解密服务场景。

  103.进一步,所述s31用于根据加密接口对数据进行加密,并得出加密结果的子模块,包括:

  105.s312用于根据系统秘钥id对数据进行首次加密生成第一加密结果的单元。

  106.本领域技术人员可以理解,每个系统都有自己的秘钥id,该id是一个不超过16为的字符串作为系统标识,与秘钥一一对应;可以将秘钥id与加密算法混淆后作为加密的初始化向量,这样即可进一步的加强加密的强度,进一步防止数据被恶意窃取。

  107.进一步,所述s31用于根据加密接口对数据进行加密,并得出加密结果的子模块,还包括:

  109.s314用于根据讯层加密对第一加密结果进行二次加密生成第二加密结果的单元。

  110.本领域技术人员可以理解,加密会采用对称的aes算法,解密时使用加密时的密钥进行逆向处理即可获得原始数据,然而在加密时所用的密钥往往很容易在获取密码时被恶意捕获,导致所有数据泄密,因此我们引入上述两个手段进行安全加固,使得本系统加密的数据更加安全。此外,讯层加密的接口一般采用https或私有rpc的通讯方式,从而避免常规协议被针对性破解。

  111.本领域技术人员可以理解,一旦密钥泄露或出于其他安全原因更换密钥,需要开发对应的初始化及刷数工具,如要做到不停机在线刷数,需要客户端能够使用两个密钥对数据进行解密(暂不考虑连续变化两次密钥的情况)。但在线刷数这个方案实际操作中并不可行,因为在刷新的过程中,由于出现了两套加密版本的数据,这会影响到正常的数据库查询逻辑,实际中的刷新密钥或初始化仍然需要有一个停机维护的窗口期。

  112.进一步,本实施例所提供的敏感数据加密通用解决系统,还包括:秘钥管理的模块。

  113.本领域技术人员可以理解,在服务侧,提供对密钥进行统一集中化管理服务。对于client来说,获取密钥需要向某个中心服务索取,即kms。对于这种配置集的封装可以尝试

  使用spring boot特有的propertysource进行对象传递。

  114.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

  1.数字信号处理 2.传感器技术及应用 3.机电一体化产品开发 4.机械工程测试技术 5.逆向工程技术研究

  1.振动信号时频分析理论与测试系统设计 2.汽车检测系统设计 3.汽车电子控制系统设计