CN111314050B - 一种加解密方法及装置 - Google Patents

一种加解密方法及装置 Download PDF

Info

Publication number
CN111314050B
CN111314050B CN201811513017.1A CN201811513017A CN111314050B CN 111314050 B CN111314050 B CN 111314050B CN 201811513017 A CN201811513017 A CN 201811513017A CN 111314050 B CN111314050 B CN 111314050B
Authority
CN
China
Prior art keywords
key
encryption
box
preset
white
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811513017.1A
Other languages
English (en)
Other versions
CN111314050A (zh
Inventor
程威
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Siyuan Ideal Holding Group Co ltd
Original Assignee
Beijing Siyuan Ideal Holding Group Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Siyuan Ideal Holding Group Co ltd filed Critical Beijing Siyuan Ideal Holding Group Co ltd
Priority to CN201811513017.1A priority Critical patent/CN111314050B/zh
Publication of CN111314050A publication Critical patent/CN111314050A/zh
Application granted granted Critical
Publication of CN111314050B publication Critical patent/CN111314050B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Abstract

本发明公开了一种加解密方法及装置,涉及信息安全领域。为解决现有技术中加密算法易被破解,安全性较差的问题而发明。本发明实施例提供的技术方案包括:轮密钥加、字节替换、行移位、列混淆循环迭代计算,所述列混淆采用随机生成的第一乘法矩阵M1实现。

Description

一种加解密方法及装置
技术领域
本发明涉及信息安全领域,尤其涉及一种加解密方法及装置。
背景技术
随着计算机技术的快速发展,数据安全越来越受到重视,也涌现了大量的加 密/解密方法。高级加密标准(Advanced Encryption Standard,AES)是对称加 密算法实质上的通用标准算法。AES算法的安全性较强,但是对于本地AES加密, 在白盒攻击环境下,恶意攻击者可以通过控制内存、反编译程序从代码和设备上 获取其密钥,从而无需破解复杂的算法,即可解密机密信息。
为了解决信息本地安全存放的问题,现有技术一般使用加密算法将机密信息 加密后存储。然而,现有技术中加密算法采用固定参数,容易被破解,安全性较 差。
发明内容
本发明的目的是提供一种加解密方法及装置,能够提高数据安全性。
为了实现上述目的,本发明实施例提供了一种加密方法,包括:轮密钥加、 字节替换、行移位、列混淆循环迭代计算,所述列混淆采用随机生成的第一乘法 矩阵M1实现。
另一方面,本发明实施例提供了一种加密方法,包括:轮密钥加、字节替换、 行移位、列混淆循环迭代计算,在所述轮秘钥加、字节替换、行移位、列混淆循 环迭代计算后增加第二列混淆,所述第二列混淆采用随机生成的第三乘法矩阵M3 实现。
另一方面,本发明提供一种加密方法,包括:采用上述加密方法时,所述轮密钥加、字节替换和行移位过程预先组合设置为查找表TK盒的形式;和/或所述列混淆过程预先设置为查找表T盒的形式。
又一方面,提供一种密钥生成方法,包括:采用上述加密方法进行加密,并 将随机生成的所述线性矩阵和常量矩阵、和/或乘法矩阵保存为所述密钥。
再一方面,本发明提供一种白盒密钥配置方法,包括:随机生成一随机数, 作为原始配置密钥;根据白盒算法,将所述原始配置密钥转换为主白盒库;根据 预设第一原始密钥及上述加密方法获取第一密钥和第一白盒库;分别获取预设动 态链接库的公私钥对(spk,ssk),以及预设应用程序的公私钥对(upk,usk); 根据所述预设应用程序私钥usk对所述预设应用程序进行签名,得到所述预设应用程序的签名信息;根据所述预设动态链接库私钥ssk对所述预设动态链接库进 行签名,得到所述预设动态链接库的签名信息;通过所述预设动态链接库存储数 据1,所述数据1包括由所述第一密钥加密的ssk、所述主白盒库、所述第一白盒 库、由所述第一密钥加密的所述预设应用程序公钥upk以及所述预设动态链接库的签名信息;通过所述预设应用程序存储数据2,所述数据2包括所述预设应用 程序的签名信息、所述预设动态链接库公钥spk以及由所述主白盒库加密的第一 密钥。
再一方面,本发明实施例提供一种加解密装置,包括:
数据获取模块,用于获取随机数;
加解密模块,与所述数据获取模块相连,用于根据所述随机数生成原始密钥, 并根据上述的加密方法获得加密密钥和加密库,以及利用所述加密密钥和加密库 进行加解密。
再一方面,提供一种采用加解密装置进行加解密的方法,包括:
所述加解密模块接收用户输入的加解密请求;
所述签名模块根据所述第二存储模块存储的所述预设动态链接库公钥spk对 所述预设动态链接库的签名信息进行验签,验签通过执行下一步;
所述加解密模块根据所述第一存储模块存储的主白盒库对所述第二存储模块 存储的由所述主白盒库加密的第一密钥解密获得第一密钥,通过所述第一密钥对 所述第一存储模块存储的由所述第一密钥加密的预设应用程序公钥upk解密获取 所述预设应用程序公钥upk;
所述签名模块根据所述预设应用程序公钥upk对所述预设动态链接库的签名 信息进行验签,验签通过,由所述加解密模块利用所述加密密钥和加密库执行所 述加解密请求。
本发明实施例提供的技术方案,通过采用第一乘法矩阵M1实现的列混淆进行 循环迭代计算,从而实现加密过程。由于第一乘法矩阵M1是随机生成的,因此本 发明实施例提供的加密方法不易被破解,解决了现有技术中加密算法参数固定易 被破解,安全性较差的问题。
附图说明
图1为本发明实施例一提供的加密方法的流程图;
图2为本发明实施例二提供的加密方法的流程图;
图3为本发明实施例三提供的密钥生成方法的流程图;
图4为本发明实施例四提供的白盒密钥配置方法的流程图;
图5为本发明实施例五提供的加解密装置的结构示意图一;
图6为本发明实施例五提供的加解密装置的结构示意图二;
图7为本发明实施例六提供的采用加解密装置进行加解密的方法的流程图;
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,在下面的具体实施 方式中,将对本发明作进一步详细的说明。
实施例一
如图1所示,本发明实施例提供一种加密方法,包括:
步骤101,获取待加密数据。
步骤102,对待加密数据,进行轮密钥加、字节替换、行移位、采用随机生 成的第一乘法矩阵M1实现的列混淆循环迭代计算,得到该待加密数据对应的密 文。
在本实施例中,步骤102中第一乘法矩阵M1的结构与现有AES算法中列混 淆的乘法矩阵的结构相似,在此不再一一赘述。
在本实施例中,字节替换可以与现有的AES算法的字节替换相似,为了提高 加密方法的安全性,该字节替换还可以第一保密S盒实现,其中,所述预设第一 保密S盒由随机生成的线性矩阵A1和常量矩阵B1构造而成。
在本实施例中,轮密钥加、字节替换、行移位、列混淆的形式,可以与现有AES 算法中轮密钥加、字节替换、行移位和列混淆的形式相同。为了提高加解密速度 及安全级别,该轮密钥加、字节替换、行移位可以预先组合设置为查找表TK盒 的形式;和/或所述列混淆过程预先设置为查找表T盒的形式,构成一种白盒加 密方法。其中,轮密钥加、字节替换和行移位预先设置为查找表TK盒的形式的 过程可以包括:原始密钥经轮密钥加、字节替换和行移位过程组合运算,将该原 始密钥转换成TK盒;列混淆过程预先设置为查找表T盒的形式,包括:对列混 淆过程进行预先运算,得到T盒。具体的,以AES128为例,TK盒为:
TKr[x]=S(x∧ShiftRows(kr-1))r=1…9;
=S(x∧ShiftRows(kr-1))∧kr r=10
其原理为,对轮密钥加、字节替换和行移位过程组合运算而形成TK盒。其 中,^为异或运算,k为轮秘钥,r为循环迭代计算轮次,x为00-FF的任意字节。
T盒为:
Figure SMS_1
其中,x为00-FF的任意字节,/>
Figure SMS_2
代表列混淆采 用的乘法矩阵的每一列,由于乘法矩阵已知,则可以提前计算好4个T盒。
本实施例提供的白盒加密方法,全程不出现原始密钥,增强了原始密钥的保 密性,可有效避免白盒攻击;而且,极大地简化了计算过程,提高了加解密效率, 且占用存储空间较小。进一步地,本实施例提供的白盒加密方法,采用随机生成 的线性矩阵和常量矩阵、和/或乘法矩阵参与计算,安全性更高,可满足用户动态更新密钥的需求。
特别的,为了提高安全性,采用上述查找表TK盒和/或T盒时,还可以根据 chow白盒AES算法,增加输入输出编码、混乱双射,对查找表进行安全增强。
在本实施例中,在步骤102中循环迭代计算之后,还可以增加二次列混淆。 此时,步骤102可以包括:对待加密数据,进行轮密钥加、字节替换、行移位、 采用随机生成的第一乘法矩阵M1实现的列混淆循环迭代计算,得到密文;对该密 文进行二次列混淆,得到该待加密数据对应的密文。
在本实施例中,在循环迭代计算之后,还可以增加第一字节替换混淆,第一 字节替换混淆和二次列混淆可以单独增加,也可以同时增加,当同时增加时,既 可以先进行第一字节替换混淆再进行二次列混淆,也可以先进行二次列混淆在进 行第一字节替换混淆,在此不作限制。所述第一字节替换混淆采用预设第二保密 S盒实现,其中,所述预设第二保密S盒由随机生成的线性矩阵A2和常量矩阵B2 构造而成。
本发明实施例提供的技术方案,通过采用第一乘法矩阵M1实现的列混淆进行 循环迭代计算,从而实现加密过程。由于第一乘法矩阵M1是随机生成的,因此本 发明实施例提供的加密方法不易被破解,解决了现有技术中加密算法参数固定易 被破解,安全性较差的问题。
实施例二
如图2所示,本发明实施例提供一种加密方法,包括:
步骤201,获取待加密数据。
步骤202,对待加密数据,进行轮密钥加、字节替换、行移位、列混淆循环 迭代计算,得到第二密文。
在本实施例中,通过步骤202进行迭代计算的过程,与现有的计算过程相似, 在此不再一一赘述。
在本实施例中,步骤202中字节替换可以与现有的AES算法的字节替换相似, 为了提高加密方法的安全性,该字节替换还可以第一保密S盒实现,该第一保密 S盒由随机生成的线性矩阵和常量矩阵构造而成。
在本实施例中,轮密钥加、字节替换、行移位、列混淆的形式,可以与现有 AES算法中轮密钥加、字节替换、行移位和列混淆的形式相同。为了提高加解密 速度及安全级别,该轮密钥加、字节替换、行移位可以预先组合设置为查找表TK 盒的形式;和/或所述列混淆过程预先设置为查找表T盒的形式,构成一种白盒加 密方法。TK盒和T盒的构造过程与实施例一类似,在此不再一一赘述。
本实施例提供的白盒加密方法,全程不出现原始密钥,增强了原始密钥的保 密性,可有效避免白盒攻击;而且,极大地简化了计算过程,提高了加解密效率, 且占用存储空间较小。进一步地,本实施例提供的白盒加密方法,采用随机生成 的线性矩阵和常量矩阵参与计算,安全性更高,可满足用户动态更新密钥的需求。
特别的,为了提高安全性,采用上述查找表TK盒和/或T盒时,还可以根据 chow白盒AES算法,增加输入输出编码、混乱双射,对查找表进行安全增强。
步骤203,对第二密文进行第二列混淆,得到该待加密数据对应的密文。
在本实施例中,步骤203中第二列混淆由随机生成的第三乘法矩阵M3实现。
在本实施例得到待加密数据对应的密文之前,还可以增加第一字节替换混淆 过程,该第一字节替换混淆过程可以在第二列混淆之前,也可以在第二列混淆之 后,在此不作限制。所述第一字节替换混淆采用预设第二保密S盒实现,其中, 所述预设第二保密S盒由随机生成的线性矩阵A2和常量矩阵B2构造而成。
本发明实施例提供的技术方案,通过采用第一乘法矩阵M1实现的列混淆进 行循环迭代计算,从而实现加密过程。由于第一乘法矩阵M1是随机生成的,因 此本发明实施例提供的加密方法不易被破解,解决了现有技术中加密算法参数固 定易被破解,安全性较差的问题。
实施例三
如图3所示,本发明实施例提供一种密钥生成方法,其在采用实施例一或二 提供的加密方法进行加密时,还包括:
步骤300,将随机生成的线性矩阵和常量矩阵、和/或乘法矩阵保存为密钥。
在本实施例中,图3以图1提供的加密方法还包括步骤300为例进行说明, 当图2还包括步骤300时,其密钥生成过程与图3所示的相似,在此不再一一赘 述。
在本实施例中,通过步骤300保存为密钥之后,可以通过该密钥进行加解密, 在此不再一一赘述。
本发明实施例提供的技术方案,通过采用第一乘法矩阵M1实现的列混淆进行 循环迭代计算,从而实现加密过程。由于第一乘法矩阵M1是随机生成的,因此本 发明实施例提供的加密方法不易被破解,解决了现有技术中加密算法参数固定易 被破解,安全性较差的问题。
实施例四
如图4所示,本发明实施例提供一种白盒密钥配置方法,包括:
步骤401,随机生成一随机数,作为原始配置密钥。
步骤402,根据白盒算法,将原始配置密钥转换为主白盒库。
在本实施例中,步骤402使用的白盒算法可以是现有白盒算法的任意一种, 在此不做限制。该白盒算法优选可以为chow白盒AES算法。
步骤403,根据预设第一原始密钥及加密方法获取第一密钥和第一白盒库。
在本实施例中,步骤403使用的加密方法,与本发明实施例一/二中提供的任 意一种白盒加密方法类似,在此不再一一赘述;所述预设第一原始密钥可以是随 机生成的一随机数,也可以是用户设定的密钥,在此不做限制。
步骤404,分别获取预设动态链接库的公私钥对(spk,ssk),以及预设应用 程序的公私钥对(upk,usk)。
在本实施例中,步骤404可以采用现有的密钥对算法生成公私钥对(spk,ssk) 和(upk,usk),在此不做限制。
步骤405,根据预设应用程序私钥usk对预设应用程序进行签名,得到预设 应用程序的签名信息。
步骤406,根据预设动态链接库私钥ssk对预设动态链接库进行签名,得到 预设动态链接库的签名信息。
步骤407,通过预设动态链接库存储数据1。
在本实施例中,步骤407中数据1包括:由所述第一密钥加密的ssk、所述 主白盒库、所述第一白盒库、由所述第一密钥加密的所述预设应用程序公钥upk 以及所述预设动态链接库的签名信息。
步骤408,通过预设应用程序存储数据2。
在本实施例中,步骤408中数据2包括:预设应用程序的签名信息、所述预 设动态链接库公钥spk以及由所述主白盒库加密的第一密钥。
本发明实施例提供的技术方案,将预设应用程序和预设动态链接库的公钥对 向存储,并通过各自私钥对预设应用程序和预设动态链接库进行签名,以便进行 双向认证。本实施例中第一密钥是通过实施例一至二中提供的任意一种白盒算法 获取的,用于加密存储用户的加密密钥和加密库,而且第一密钥还通过主白盒库 加密,因此本实施例为用户安全存储加密密钥和加密库提供了安全保障,进一步提升了用户密钥文件的安全性。
实施例五
如图5所示,本发明实施例提供一种加解密装置,包括:
数据获取模块501,用于获取随机数;
加解密模块502,与所述数据获取模块相连,用于根据所述随机数生成原始 密钥,并根据本发明实施例一/二中提供的任意一种白盒加密方法获得加密密钥 和加密库,以及利用所述加密密钥和加密库进行加解密。
在本实施例中,通过加解密模块获得加密密钥和加密库的过程,与图4所示 的步骤403相似,在此不再一一赘述。通过加密密钥和加密库进行加解密的过程, 与现有的加解密过程相似,在此不再一一赘述。
特别的,该加解密模块还用于根据所述chow白盒AES算法建立主建立白盒库 及根据本发明实施例一或二中提供的任意一种白盒加密方法建立第一密钥与第 一白盒库。
在本实施例中,加解密模块建立白盒库、第一密钥和第一白盒库的过程,与 图4所示的步骤401-403相似,在此不再一一赘述。
进一步的,如图6所示,本发明实施例提供的加解密装置,还可以包括:
公私钥获取模块503,用于分别获取预设动态链接库的公私钥对(spk,ssk), 以及预设应用程序的公私钥对(upk,usk);
签名模块504,与所述公私钥获取模块相连,用于对所述预设应用程序及所 述预设动态链接库进行签名/验签;
第一存储模块505,分别与所述加解密模块、公私钥获取模块和签名模块相 连,用于存储由所述第一密钥加密的所述预设动态链接库的私钥ssk、所述主白 盒库、所述第一白盒库、由所述第一密钥加密的所述预设应用程序公钥upk以及 所述预设动态链接库的签名信息;
第二存储模块506,分别与所述签名模块、公私钥获取模块和加解密模块相 连,用于存储所述预设应用程序的签名信息、所述预设动态链接库公钥spk以及 由所述主白盒库加密的第一密钥。
本发明实施例提供的技术方案,为用户提供了一种安全可靠的加解密装置, 不仅可以响应用户请求,对待加解密文件进行加解密,而且可以依照用户请求随 机更换密钥,适应用户高安全性的要求。此外,所述解密装置增加了签名验证过程,进一步增加了安全级别;且用户加解密采用的加密密钥和加密库采用所述第 一密钥加密存储,保证了用户密钥文件的安全性。
实施例六
如图7所示,一种采用加解密装置进行加解密的方法,其加解密装置的结构 与本发明实施例五提供的相似,包括:
步骤701,加解密模块接收用户输入的加解密请求。
步骤702,签名模块根据第二存储模块存储的预设动态链接库公钥spk对预 设动态链接库的签名信息进行验签。
在本实施例中,当通过步骤702验签成功时,执行步骤703;如果失败,则 终止。
步骤703,加解密模块根据第一存储模块存储的主白盒库对第二存储模块存 储的由主白盒库加密的第一密钥解密获得第一密钥,通过第一密钥对第一存储模 块存储的由第一白盒密钥加密的预设应用程序公钥upk解密获取预设应用程序公钥upk。
步骤704,签名模块根据预设应用程序公钥upk对预设动态链接库的签名信 息进行验签,验签通过,由加解密模块利用加密密钥和加密库执行加解密请求。
所述步骤701之前,还包括以下步骤:
数据获取模块接收用户输入的生成加密密钥的请求,生成随机数r,并通 过哈希计算获得哈希值R;加解密模块以哈希值R作为原始密钥,采用实施例 一或二中提供的任意一种白盒加密方法获取加密密钥和加密库。
本发明实施例提供的技术方案,在执行用户加解密请求之前,先进行应用程 序与动态链接库的双向认证,认证通过方可执行加解密请求,进一步增加了安全 级别。而且该方法允许用户随机更换密钥,可以依照用户请求适应用户高安全性 的要求。
以上实施例的先后顺序仅为便于描述,不代表实施例的优劣。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制; 尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理 解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技 术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (7)

1.一种白盒密钥配置方法,其特征在于,包括:
随机生成一随机数,作为原始配置密钥;
根据白盒算法,将所述原始配置密钥转换为主白盒库;
根据预设第一原始密钥及以下加密方法获取第一密钥和第一白盒库;加密方法包括轮密钥加、字节替换、行移位、列混淆循环迭代计算,所述列混淆采用随机生成的第一乘法矩阵M1实现;所述轮密钥加、字节替换和行移位过程预先组合设置为查找表TK盒的形式;和/或所述列混淆过程预先设置为查找表T盒的形式;
分别获取预设动态链接库的公私钥对(spk,ssk),以及预设应用程序的公私钥对(upk,usk);
根据所述预设应用程序私钥usk对所述预设应用程序进行签名,得到所述预设应用程序的签名信息;
根据所述预设动态链接库私钥ssk对所述预设动态链接库进行签名,得到所述预设动态链接库的签名信息;
通过所述预设动态链接库存储数据1,所述数据1包括由所述第一密钥加密的ssk、所述主白盒库、所述第一白盒库、由所述第一密钥加密的所述预设应用程序公钥upk以及所述预设动态链接库的签名信息;
通过所述预设应用程序存储数据2,所述数据2包括所述预设应用程序的签名信息、所述预设动态链接库公钥spk以及由所述主白盒库加密的第一密钥。
2.根据权利要求1所述的白盒密钥配置方法,其特征在于,加密方法在所述轮密钥加、字节替换、行移位、采用所述第一乘法矩阵M1实现的列混淆循环迭代计算后增加二次列混淆,所述二次列混淆采用随机生成的第二乘法矩阵M2实现。
3.根据权利要求1所述的白盒密钥配置方法,其特征在于,加密方法的所述字节替换采用预设第一保密S盒实现,其中,所述预设第一保密S盒由随机生成的线性矩阵A1和常量矩阵B1构造而成。
4.根据权利要求1所述的白盒密钥配置方法,其特征在于,加密方法在所述轮密钥加、字节替换、行移位、列混淆循环迭代计算后第一字节替换混淆,所述第一字节替换混淆采用预设第二保密S盒实现,其中,所述预设第二保密S盒由随机生成的线性矩阵A2和常量矩阵B2构造而成。
5.根据权利要求1所述的白盒密钥配置方法,其特征在于,加密方法根据chow白盒AES算法,增加输入输出编码、混乱双射,对查找表进行安全增强。
6.一种加解密装置,其特征在于,包括:
数据获取模块,用于获取随机数;
加解密模块,与所述数据获取模块相连,用于根据所述随机数生成原始密钥,并根据以下加密方法获得加密密钥和加密库,以及利用所述加密密钥和加密库进行加解密;所述加解密模块还用于根据chow白盒AES算法建立主白盒库及根据以下加密方法建立第一密钥与第一白盒库;加密方法包括轮密钥加、字节替换、行移位、列混淆循环迭代计算,所述列混淆采用随机生成的第一乘法矩阵M1实现;所述轮密钥加、字节替换和行移位过程预先组合设置为查找表TK盒的形式;和/或所述列混淆过程预先设置为查找表T盒的形式;
加解密装置还包括:
公私钥获取模块,用于分别获取预设动态链接库的公私钥对(spk,ssk),以及预设应用程序的公私钥对(upk,usk);
签名模块,与所述公私钥获取模块相连,用于对所述预设应用程序及所述预设动态链接库进行签名/验签;
第一存储模块,分别与所述加解密模块、公私钥获取模块和签名模块相连,用于存储由所述第一密钥加密的所述预设动态链接库的私钥ssk、所述主白盒库、所述第一白盒库、由所述第一密钥加密的所述预设应用程序公钥upk以及所述预设动态链接库的签名信息;
第二存储模块,分别与所述签名模块、公私钥获取模块和加解密模块相连,用于存储所述预设应用程序的签名信息、所述预设动态链接库公钥spk以及由所述主白盒库加密的第一密钥。
7.一种采用权利要求6所述的加解密装置进行加解密的方法,其特征在于,
所述加解密模块接收用户输入的加解密请求;
所述签名模块根据所述第二存储模块存储的所述预设动态链接库公钥spk对所述预设动态链接库的签名信息进行验签,验签通过执行下一步;
所述加解密模块根据所述第一存储模块存储的主白盒库对所述第二存储模块存储的由所述主白盒库加密的第一密钥解密获得第一密钥,通过所述第一密钥对所述第一存储模块存储的由所述第一密钥加密的预设应用程序公钥upk解密获取所述预设应用程序公钥upk;
所述签名模块根据所述预设应用程序公钥upk对所述预设动态链接库的签名信息进行验签,验签通过,由所述加解密模块利用所述加密密钥和加密库执行所述加解密请求。
CN201811513017.1A 2018-12-11 2018-12-11 一种加解密方法及装置 Active CN111314050B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811513017.1A CN111314050B (zh) 2018-12-11 2018-12-11 一种加解密方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811513017.1A CN111314050B (zh) 2018-12-11 2018-12-11 一种加解密方法及装置

Publications (2)

Publication Number Publication Date
CN111314050A CN111314050A (zh) 2020-06-19
CN111314050B true CN111314050B (zh) 2023-06-30

Family

ID=71148058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811513017.1A Active CN111314050B (zh) 2018-12-11 2018-12-11 一种加解密方法及装置

Country Status (1)

Country Link
CN (1) CN111314050B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112054896B (zh) * 2020-08-12 2023-10-03 深圳市欢太科技有限公司 白盒加密方法、装置、终端及存储介质
CN113093678B (zh) * 2021-04-07 2022-12-20 国能(泉州)热电有限公司 一种电厂dcs系统数据处理方法
CN113656810A (zh) * 2021-07-16 2021-11-16 五八同城信息技术有限公司 应用程序加密方法、装置、电子设备及存储介质
CN115085974A (zh) * 2022-05-20 2022-09-20 武汉虹旭信息技术有限责任公司 流量混淆方法及装置
CN115102689B (zh) * 2022-08-24 2022-11-15 北京信安世纪科技股份有限公司 两方协同的s盒生成方法、加密方法和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1518825A (zh) * 2001-06-21 2004-08-04 �ʼҷ����ֵ������޹�˾ 用于交换数据的设备和认证方法
WO2016043665A1 (en) * 2014-09-18 2016-03-24 Huawei International Pte. Ltd. Encryption function and decryption function generating method, encryption and decryption method and related apparatuses
CN105897400A (zh) * 2016-06-20 2016-08-24 北京华大信安科技有限公司 一种sm4算法的掩码方法及装置
CN106850221A (zh) * 2017-04-10 2017-06-13 四川阵风科技有限公司 信息加密、解密方法及装置
CN107070630A (zh) * 2017-01-17 2017-08-18 中国科学院信息工程研究所 一种aes算法的快速安全硬件结构
CN108123791A (zh) * 2017-12-26 2018-06-05 衡阳师范学院 一种轻量级分组密码scs的实现方法与装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108183790B (zh) * 2018-02-13 2020-10-13 中山大学 一种aes加密装置、芯片及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1518825A (zh) * 2001-06-21 2004-08-04 �ʼҷ����ֵ������޹�˾ 用于交换数据的设备和认证方法
WO2016043665A1 (en) * 2014-09-18 2016-03-24 Huawei International Pte. Ltd. Encryption function and decryption function generating method, encryption and decryption method and related apparatuses
CN105897400A (zh) * 2016-06-20 2016-08-24 北京华大信安科技有限公司 一种sm4算法的掩码方法及装置
CN107070630A (zh) * 2017-01-17 2017-08-18 中国科学院信息工程研究所 一种aes算法的快速安全硬件结构
CN106850221A (zh) * 2017-04-10 2017-06-13 四川阵风科技有限公司 信息加密、解密方法及装置
CN108123791A (zh) * 2017-12-26 2018-06-05 衡阳师范学院 一种轻量级分组密码scs的实现方法与装置

Also Published As

Publication number Publication date
CN111314050A (zh) 2020-06-19

Similar Documents

Publication Publication Date Title
CN111314050B (zh) 一种加解密方法及装置
US20100098255A1 (en) System and method for a derivation function for key per page
US11308241B2 (en) Security data generation based upon software unreadable registers
Toorani et al. A secure cryptosystem based on affine transformation
CN111010266B (zh) 消息的加解密、读写方法、装置、计算机设备和存储介质
CN111404952B (zh) 变电站数据加密传输方法、装置、计算机设备和存储介质
CN113711564A (zh) 用于加密数据的计算机实现的方法和系统
CN104396182A (zh) 加密数据的方法
CN110855667A (zh) 一种区块链加密方法、装置及系统
US8804953B2 (en) Extensive ciphertext feedback
CN113098675B (zh) 基于多项式完全同态的二进制数据加密系统及方法
Musliyana et al. Security enhancement of advanced encryption standard (AES) using time-based dynamic key generation
Alemami et al. Advanced approach for encryption using advanced encryption standard with chaotic map
Tahir et al. A scheme for the generation of strong icmetrics based session key pairs for secure embedded system applications
Yang Application of hybrid encryption algorithm in hardware encryption interface card
CN111314051B (zh) 一种加解密方法和装置
CN111314079B (zh) 一种加解密方法、装置
Tahir et al. A scheme for the generation of strong cryptographic key pairs based on ICMetrics
KR102304831B1 (ko) 순열그룹 기반의 암호화 기술을 적용한 암호화시스템 및 방법
Mohammed et al. Advancing Cloud Image Security via AES Algorithm Enhancement Techniques
JP5586758B1 (ja) 動的暗号化鍵生成システム
CN113312654A (zh) 一种基于csp问题的同态密文编码与计算方法
CN113326530A (zh) 一种适用于通信双方秘钥共享的秘钥协商方法
Kumaresan et al. An efficient image block encryption for key generation using non-uniform cellular automata
CN114430549A (zh) 一种适用于无线通信的白盒加解密方法与装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant