一种基于软件框架集成国密sm4数据加解密技术的方法

文档序号:105382 发布日期:2021-10-15 浏览:16次 >En<

阅读说明:本技术 一种基于软件框架集成国密sm4数据加解密技术的方法 (Method for integrating SM4 data encryption and decryption technology based on software framework ) 是由 杨帆 徐清华 肖渝 于 2021-05-25 设计创作,主要内容包括:本发明公开了一种基于软件框架集成国密SM4数据加解密技术的方法,该管理方法包括以下步骤;步骤一:创建加解密配置文件,通过加解密工具在该文件中配置自动加解密、加密密码、密文前缀、密文后缀;本发明所述的一种基于软件框架集成国密SM4数据加解密技术的方法,利用软件框架与SM4密码算法集成,提供标准的程序标记语言和统一的算法,开发者只需要对需要加解密的数据进行标记,系统运行时检查数据项,对标记数据进行加密或解密处理,一方面在用户交互时的明文检索,在集成框架中自动对数据进行解密比对,开发者不需要先对数据进行解密就可以完成检索,提高生产效率和数据检索准确性,另一方面是达到对数据的安全保护,避免敏感数据泄露。(The invention discloses a method for integrating SM4 data encryption and decryption technology based on a software framework, which comprises the following steps; the method comprises the following steps: creating an encryption and decryption configuration file, and configuring automatic encryption and decryption, an encryption password, a ciphertext prefix and a ciphertext suffix in the file through an encryption and decryption tool; the invention relates to a method for integrating SM4 data encryption and decryption technology based on a software framework, which integrates the software framework and an SM4 cryptographic algorithm to provide a standard program marking language and a uniform algorithm, a developer only needs to mark data needing encryption and decryption, the data items are checked when a system runs to encrypt or decrypt the marked data, on one hand, plaintext retrieval is carried out during user interaction, the data is automatically decrypted and compared in the integrated framework, the developer can complete retrieval without decrypting the data first, the production efficiency and the data retrieval accuracy are improved, on the other hand, the safety protection of the data is achieved, and sensitive data leakage is avoided.)

一种基于软件框架集成国密SM4数据加解密技术的方法

技术领域

本发明涉及国产密码的应用领域,具体涉及一种基于软件框架集成国密SM4数据加解密技术的方法。

背景技术

国密是国家密码局认定的国产密码算法,与之对应广泛使用DES、AES等算法是国外发明,称为国际算法,国密主要有SM1,SM2,SM3,SM4。密钥长度和分组长度均为128位,国产密码算法是保障我国网络安全自主可控的重要基础。目前,我国也在大力推广国密算法的应用,并取得很好的成效,目前支持国密算法的软硬件密码产品包括SSL网关、数字证书认证系统、密钥管理系统、金融数据加密机、签名验签服务器、智能密码钥匙、智能IC卡、PCI密码卡等多种类型,但常用的操作系统、浏览器、网络设备、负载均衡设备等软硬件产品,仍然不支持国产密码算法,受到国密算法兼容性的制约,在HTTPS加密应用方面,国密算法的应用仍然比较滞后,密码技术是网络空间安全的重要基础,在计算机和网络系统中发挥了不可替代的安全作用。推广国产密码技术、应用商用密码算法,是建设我国网络空间安全基础设施的必要措施之一,本方案具体涉及一种基于软件框架集成国密SM4数据加解密技术的方法。

在软件开发中使用密码算法,每一次对数据的加密或解密都需要开发者调用算法来完成,都需要开发者掌握复杂的算法过程,增加了学习成本和降低了开发效率,并且在整个软件运行环境中对数据加解密处理不一致的情况,导致系统运行错误或解密失败的情况发生。

发明内容

本发明所要解决的技术问题在于:在软件开发中使用密码算法,每一次对数据的加密或解密都需要开发者调用算法来完成,都需要开发者掌握复杂的算法过程,增加了学习成本和降低了开发效率,并且在整个软件运行环境中对数据加解密处理不一致的情况,导致系统运行错误或解密失败的情况发生。

本发明是通过以下技术方案解决上述技术问题的,一种基于软件框架集成国密SM4数据加解密技术的方法,该方法包括以下步骤:

步骤一:创建加解密配置文件,通过加解密工具在该文件中配置自动加解密、加密密码、密文前缀、密文后缀,以及对程序全局设置是否开启加密和解密,该配置文件会被加解密标记覆盖,若数据有标记,则优先使用标记描述;

步骤二:对数据进行加解密标记,在输入、输出数据对象中对需要加密或解密的数据项进行标记,在标记选项中可以对是否加密和解密进行扩展;

步骤三:创建数据交互拦截器,在数据输入、输出和存储时进行拦截,检查数据项是否存在标记,根据标记调用工具函数对数据加解密处理,拦截器对复杂数据结构的处理,根据标记层层拆解,最终对字符串数据类型进行加解密;

步骤四:在程序运行时会对该数据进行多次拦截,利用进程ID缓存被处理的数据,在二次拦截时首先检查缓存中是否存在,若缓存已存在时则跳过处理,用来保证数据仅被加密一次,若对数据多次加密则会造成数据错误;

步骤五:多个加解密密码的处理,若针对不同类型的数据有多个密码时,使用加解密标记进行扩展,在拦截器进行拦截后对数据项进行加解密时,优先使用标记中的密码,使得不同类型数据可以使用不同的密码,保证加密和解密是使用的密码是相同的;

步骤六:数据篡改校验,将多个数据项拼接后进行加密得到密文一并存储,在对数据篡改校验时,将待校验的数据项拼接的明文和之前存储的密文调用工具数据校验函数即可得到数据是否被篡改的结果。

优选的,所述步骤一中加解密工具用于提供加密密码生成、加密算法、解密算法、数据校验函数。

优选的,所述步骤二中指定数据项是指需要加密和只需要解密或都需要进行加解密。

优选的,所述步骤三中主要复杂数据结构的处理包括分页数据、列表数据、KEY-VALUE结构和这几种组合的结构。

优选的,所述步骤五中对于整个软件程序来说,不同的数据类型可能会存在不同的加解密密码。

优选的,该基于软件框架集成国密SM4数据加解密技术的方法具体处理步骤如下:

A1:通过加解密工具在该文件中配置自动加解密、加密密码、密文前缀、密文后缀,以及对程序全局设置是否开启加密和解密,该配置文件会被加解密标记覆盖,若数据有标记,则优先使用标记描述;

A2:在输入、输出数据对象中对需要加密和只需要解密或都需要进行加解密的数据项进行标记,在标记选项中可以对是否加密和解密进行扩展;

A3:在数据输入、输出和存储时进行拦截,检查数据项是否存在标记,根据标记调用工具函数对数据加解密处理,拦截器对分页数据、列表数据、KEY-VALUE结构结构的处理,根据标记层层拆解,最终对字符串数据类型进行加解密;

A4:在程序运行时会对该数据进行多次拦截,利用进程ID缓存被处理的数据,在二次拦截时首先检查缓存中是否存在,若缓存已存在时则跳过处理,用来保证数据仅被加密一次,若对数据多次加密则会造成数据错误,针对不同类型的数据有多个密码时,使用加解密标记进行扩展,在拦截器进行拦截后对数据项进行加解密时,优先使用标记中的密码,使得不同类型数据可以使用不同的密码,保证加密和解密是使用的密码是相同的;

A5:将多个数据项拼接后进行加密得到密文一并存储,在对数据篡改校验时,将待校验的数据项拼接的明文和之前存储的密文调用工具数据校验函数即可得到数据是否被篡改的结果。

本发明相比现有技术具有以下优点:

利用软件框架与SM4密码算法集成,提供标准的程序标记语言和统一的算法,开发者只需要对需要加解密的数据进行标记,系统运行时检查数据项,对标记数据进行加密或解密处理,一方面在用户交互时的明文检索,在集成框架中自动对数据进行解密比对,开发者不需要先对数据进行解密就可以完成检索,提高生产效率和数据检索准确性,另一方面是达到对数据的安全保护,避免敏感数据泄露。

附图说明

图1是本发明一种基于软件框架集成国密SM4数据加解密技术的方法的流程示意图。

具体实施方式

下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。

如图1所示,本实施例提供一种技术方案:一种基于软件框架集成国密SM4数据加解密技术的方法,该方法包括以下步骤:

步骤一:创建加解密配置文件,通过加解密工具在该文件中配置自动加解密、加密密码、密文前缀、密文后缀,以及对程序全局设置是否开启加密和解密,该配置文件会被加解密标记覆盖,若数据有标记,则优先使用标记描述;

步骤二:对数据进行加解密标记,在输入、输出数据对象中对需要加密或解密的数据项进行标记,在标记选项中可以对是否加密和解密进行扩展;

步骤三:创建数据交互拦截器,在数据输入、输出和存储时进行拦截,检查数据项是否存在标记,根据标记调用工具函数对数据加解密处理,拦截器对复杂数据结构的处理,根据标记层层拆解,最终对字符串数据类型进行加解密;

步骤四:在程序运行时会对该数据进行多次拦截,利用进程ID缓存被处理的数据,在二次拦截时首先检查缓存中是否存在,若缓存已存在时则跳过处理,用来保证数据仅被加密一次,若对数据多次加密则会造成数据错误;

步骤五:多个加解密密码的处理,若针对不同类型的数据有多个密码时,使用加解密标记进行扩展,在拦截器进行拦截后对数据项进行加解密时,优先使用标记中的密码,使得不同类型数据可以使用不同的密码,保证加密和解密是使用的密码是相同的;

步骤六:数据篡改校验,将多个数据项拼接后进行加密得到密文一并存储,在对数据篡改校验时,将待校验的数据项拼接的明文和之前存储的密文调用工具数据校验函数即可得到数据是否被篡改的结果。

步骤一中加解密工具用于提供加密密码生成、加密算法、解密算法、数据校验函数。

步骤二中指定数据项是指需要加密和只需要解密或都需要进行加解密。

步骤三中主要复杂数据结构的处理包括分页数据、列表数据、KEY-VALUE结构和这几种组合的结构。

步骤五中对于整个软件程序来说,不同的数据类型可能会存在不同的加解密密码

该基于软件框架集成国密SM4数据加解密技术的方法具体处理步骤如下:

A1:通过加解密工具在该文件中配置自动加解密、加密密码、密文前缀、密文后缀,以及对程序全局设置是否开启加密和解密,该配置文件会被加解密标记覆盖,若数据有标记,则优先使用标记描述;

A2:在输入、输出数据对象中对需要加密和只需要解密或都需要进行加解密的数据项进行标记,在标记选项中可以对是否加密和解密进行扩展;

A3:在数据输入、输出和存储时进行拦截,检查数据项是否存在标记,根据标记调用工具函数对数据加解密处理,拦截器对分页数据、列表数据、KEY-VALUE结构结构的处理,根据标记层层拆解,最终对字符串数据类型进行加解密;

A4:在程序运行时会对该数据进行多次拦截,利用进程ID缓存被处理的数据,在二次拦截时首先检查缓存中是否存在,若缓存已存在时则跳过处理,用来保证数据仅被加密一次,若对数据多次加密则会造成数据错误,针对不同类型的数据有多个密码时,使用加解密标记进行扩展,在拦截器进行拦截后对数据项进行加解密时,优先使用标记中的密码,使得不同类型数据可以使用不同的密码,保证加密和解密是使用的密码是相同的;

A5:将多个数据项拼接后进行加密得到密文一并存储,在对数据篡改校验时,将待校验的数据项拼接的明文和之前存储的密文调用工具数据校验函数即可得到数据是否被篡改的结果。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

8页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种权限设置方法、电子设备及计算机存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类