CN106603224B - 基于白盒加密的安全运行方法及系统 - Google Patents
基于白盒加密的安全运行方法及系统 Download PDFInfo
- Publication number
- CN106603224B CN106603224B CN201611103026.4A CN201611103026A CN106603224B CN 106603224 B CN106603224 B CN 106603224B CN 201611103026 A CN201611103026 A CN 201611103026A CN 106603224 B CN106603224 B CN 106603224B
- Authority
- CN
- China
- Prior art keywords
- encryption
- static data
- algorithm
- decryption
- data set
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000003068 static effect Effects 0.000 claims abstract description 81
- 239000011159 matrix material Substances 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 16
- 238000013507 mapping Methods 0.000 claims description 6
- 230000002441 reversible effect Effects 0.000 claims description 3
- 238000013480 data collection Methods 0.000 claims 3
- 241001269238 Data Species 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 235000000332 black box Nutrition 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/16—Obfuscation or hiding, e.g. involving white box
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明提供一种基于白盒加密的安全运行方法及系统,使用一系列静态数据作为固定输入来匹配对应的加密算法和解密算法,本发明可以实现轻量级的安全运行,且本发明具有较小的静态数据体积和较高的运行效率,且可使得在计算资源有限的白盒攻击环境中取得相对较高的加密安全性。
Description
技术领域
本发明涉及网络安全领域,特别是涉及一种基于白盒加密的安全运行方法及系统。
背景技术
随着物联网和移动计算等技术的发展,程序可能运行在不安全环境中的场景也日益增多,例如被攻击者拾取或窃取的智能手机和平板电脑,被俘获的传感器网络节点等,均处于极不安全的运行环境之中。密码算法和协议的安全性对保障信息系统整体的安全至关重要。传统的密码系统的攻击模型,诸如选择明文攻击和选择密文攻击等,都基于一个共同的假设,即密码算法运行在安全的终端之上。侧信道攻击允许攻击者获取一定的泄漏信息,但仍受到给定的泄漏函数的约束。而前述的若干不安全环境,攻击者对程序及其运行过程可以进行不受限制和观测和干预。此时,程序处于白盒攻击环境之中,攻击者可以使用逆向工程和跟踪调试等强有力的攻击方法,对密码模块进行分析破解。
已知的白盒加密方法,大多需要较大体积的静态查找表(几百KB至几十MB),且计算代价较大,不适用于移动终端和物联网中的嵌入式设备。鉴于此,如何找到安全性较好,且同时具有较小的静态数据体积和较高的运行效率的轻量级白盒加密方法,就成了本领域技术人员亟待解决的问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于白盒加密的安全运行方法及系统,用于解决现有技术中不能实现同时具有较小的静态数据体积和较高的运行效率的加密和解密的问题。
为实现上述目的及其他相关目的,本发明提供一种基于白盒加密的安全运行方法,包括:令处于安全环境内的主机根据预设的数据生成算法,分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合;将所述加密静态数据集合存储于一终端设备,且将所述解密静态数据集合存储于一处于安全环境内的安全终端;当所述终端设备对一输入的明文进行加密时,调用所述加密静态数据集合并通过预设于所述终端设备的加密算法,对所述输入的明文进行加密以获得对应的输出的密文;当所述终端设备对一输入的密文进行解密时,从所述安全终端调用所述解密静态数据集合并通过预设于所述安全终端的解密算法,对所述输入的密文进行解密以获得对应的输出的明文。
于本发明一具体实施例中,所述数据生成算法是分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合的概率算法,且所述主机在利用所述数据生成算法生成所述加密静态数据集合以及所述解密静态数据集合的过程中,会产生多个随机矩阵。
于本发明一具体实施例中,在所述数据生成算法、所述加密算法、以及所述解密算法的运行过程中还包括:令x,y∈Z+,为全体(x·y)×(x·y)可逆二进制矩阵的集合,为全体(x·y)×(x·y)二进制矩阵的集合,为全体x位到x位双射的集合,为全体x位到x位双射的集合;且令r∈{0,…,N-1},其中N为轮数,并有i∈{0,…,y-1};令Xr,Yr∈GF(2)x·y,Xr=(Xr,y,…,Xr,0),Yr=(Yr,y,…,Yr,0),其中对于每个i,Xr,i,Yr,i∈GF(2)x;对于每个i有并有其中,∈$表示从集合中均匀选取的元素;对于每个i,并且Λ′i是一个2·x·y位到2·x·y位的双射,使得Λ′i,j=Λ′i,2y-1||…||Λ′i,0,其中||表示两个映射平行地作用。
于本发明一具体实施例中,令其中Li是右起第i个块,L为一随机矩阵,且关于L的公式表达式为:
L=[Ly-1 … L0]; (11)
且令其中Δi是右起第i个块,Δ为一随机矩阵,且Δ的公式表达为:
Δ=[Δy-1 … Δ0]; (12)
令第r轮的第i个T-box,即Ti,所述Ti为一查找表,且Ti:GF(2)x×GF(2)x→GF(2)2·x·y,Ti的定义通过如下公式进行表达:
其中,公式(3)中的fi由以下公式进行表达:
且对于每对<j,i>,其中j∈{0,...,2y-1},i∈{1,…,y-2},通过以下公式使Fi,j:GF(2)x×GF(2)x→GF(2)x为隐蔽安全加法器:
其中,x0,x1∈GF(2)x并且
于本发明一具体实施例中,所述安全终端为一后端服务器、工作站、或者为所述处于安全环境内的主机。
为实现上述目的及其他相关目的,本发明还提供一种基于白盒加密的安全运行系统,包括:静态数据生成模块,设置于处于安全环境内的主机内,用以令所述主机根据预设的数据生成算法,分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合;静态数据存储模块,设置于所述主机内,用以将所述加密静态数据集合存储于一终端设备,且将所述解密静态数据集合存储于一处于安全环境内的安全终端;加密模块,设置于所述终端设备内,用以当所述终端设备对一输入的明文进行加密时,调用所述加密静态数据集合并通过预设于所述终端设备的加密算法,对所述输入的明文进行加密以获得对应的输出的密文;解密模块,设置于所述终端设备内,用以当所述终端设备对一输入的密文进行解密时,从所述安全终端调用所述解密静态数据集合并通过预设于所述安全终端的解密算法,对所述输入的密文进行解密以获得对应的输出的明文。
于本发明一具体实施例中,所述数据生成算法是分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合的概率算法,且所述主机在利用所述数据生成算法生成所述加密静态数据集合以及所述解密静态数据集合的过程中,会产生多个随机矩阵。
于本发明一具体实施例中,在所述数据生成算法、所述加密算法、以及所述解密算法的运行过程中还包括:
令x,y∈Z+,为全体(x·y)×(x·y)可逆二进制矩阵的集合,为全体(x·y)×(x·y)二进制矩阵的集合,为全体x位到x位双射的集合,为全体x位到x位双射的集合;且令r∈{0,…,N-1},其中N为轮数,并有i∈{0,…,y-1};令Xr,Yr∈GF(2)x·y,Xr=(Xr,y,…,Xr,0),Yr=(Yr,y,…,Yr,0),其中对于每个i,Xr,i,Yr,i∈GF(2)x;对于每个i有并有其中,∈$表示从集合中均匀选取的元素;对于每个i,并且Λ′i是一个2·x·y位到2·x·y位的双射,使得Λ′i,j=Λ′i,2y-1||…||Λ′i,0,其中||表示两个映射平行地作用。
于本发明一具体实施例中,令其中Li是右起第i个块,L为一随机矩阵,且关于L的公式表达式为:
L=[Ly-1 … L0]; (16)
且令其中Δi是右起第i个块,Δ为一随机矩阵,且Δ的公式表达为:
Δ=[Δy-1 … Δ0]; (17)
令第r轮的第i个T-box,即Ti,所述Ti为一查找表,且Ti:GF(2)x×GF(2)x→GF(2)2·x·y,Ti的定义通过如下公式进行表达:
其中,公式(3)中的fi由以下公式进行表达:
且对于每对<j,i>,其中j∈{0,...,2y-1},i∈{1,…,y-2},通过以下公式使Fi,j:GF(2)x×GF(2)x→GF(2)x为隐蔽安全加法器:
其中,x0,x1∈GF(2)x并且
于本发明一具体实施例中,所述安全终端为一后端服务器、工作站、或者为所述处于安全环境内的主机。
如上所述,本发明的基于白盒加密的安全运行方法及系统,使用一系列静态数据作为固定输入来匹配对应的加密算法和解密算法,本发明可以实现轻量级的安全运行,且本发明具有较小的静态数据体积和较高的运行效率,且可使得在计算资源有限的白盒攻击环境中取得相对较高的加密安全性。
附图说明
图1显示为本发明的基于白盒加密的安全运行方法在一具体实施例中的流程示意图。
图2显示为本发明的一具体实施例中的Ti的结构示意图。
图3显示为本发明的一具体实施例中的Ti的结构示意图。
图4显示为本发明的一具体实施例中的隐蔽加法器的内部结构和其在白盒加密过程中的联系示意图。
图5显示为本发明的一具体实施例中第r轮加密的算法流程示意图。
图6显示为本发明的基于白盒加密的安全运行系统在一具体实施例中的模块示意图。
元件标号说明
10 基于白盒加密的安全运行方法
11~13 方法步骤
20 基于白盒加密的安全运行系统
21 静态数据生成模块
22 静态数据存储模块
23 加密模块
24 解密模块
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图示中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
为了使本发明之叙述更加详尽与完备,可参照附图及以下所述之各种实施例。但所提供之实施例并非用以限制本发明所涵盖的范围;步骤的描述亦非用以限制其执行之顺序,任何由重新组合,所产生具有均等功效的装置,皆为本发明所涵盖的范围。
于实施方式与申请专利范围中,除非内文中对于冠词有所特别限定,否则「一」与「该」可泛指单一个或复数个。将进一步理解的是,本文中所使用的「包含」、「包括」、「具有」及相似词汇,指明其所记载的特征、区域、整数、步骤、操作、与/或组件,但不排除额外的一个或多个其它特征、区域、整数、步骤、操作、组件,与/或其中之群组。
请参阅图1,显示为本发明的基于白盒加密的安全运行方法在一具体实施例中的流程示意图。所述方法10包括:
11:令处于安全环境内的主机根据预设的数据生成算法,分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合;
12:将所述加密静态数据集合存储于一终端设备,且将所述解密静态数据集合存储于一处于安全环境内的安全终端;
13:当所述终端设备对一输入的明文进行加密时,调用所述加密静态数据集合并通过预设于所述终端设备的加密算法,对所述输入的明文进行加密以获得对应的输出的密文;当所述终端设备对一输入的密文进行解密时,从所述安全终端调用所述解密静态数据集合并通过预设于所述安全终端的解密算法,对所述输入的密文进行解密以获得对应的输出的明文。
于本发明一具体实施例中,所述数据生成算法是分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合的概率算法,且所述主机在利用所述数据生成算法生成所述加密静态数据集合以及所述解密静态数据集合的过程中,会产生多个随机矩阵。
优选的,所述加密静态数据集合包括一查找表,以根据输入的明文进行对应的查找,获得对应的密文。
于本发明一具体实施例中,在所述数据生成算法、所述加密算法、以及所述解密算法的运行过程中还包括:令x,y∈Z+,为全体(x·y)×(x·y)可逆二进制矩阵的集合,为全体(x·y)×(x·y)二进制矩阵的集合,为全体x位到x位双射的集合,为全体x位到x位双射的集合;且令r∈{0,…,N-1},其中N为轮数,并有i∈{0,…,y-1};令Xr,Yr∈GF(2)x·y,Xr=(Xr,y,…,Xr,0),Yr=(Yr,y,…,Yr,0),其中对于每个i,Xr,i,Yr,i∈GF(2)x;对于每个i有并有其中,∈$表示从集合中均匀选取的元素;对于每个i,并且Λ′i是一个2·x·y位到2·x·y位的双射,使得Λ′i,j=Λ′i,2y-1||…||Λ′i,0,其中||表示两个映射平行地作用。
于本发明一具体实施例中,令其中Li是右起第i个块,L为一随机矩阵,且关于L的公式表达式为:
L=[Ly-1 … L0]; (21)
且令其中Δi是右起第i个块,Δ为一随机矩阵,且Δ的公式表达为:
Δ=[Δy-1 … Δ0]; (22)
令第r轮的第i个T-box,即Ti,所述Ti为所述查找表,且Ti:GF(2)x×GF(2)x→GF(2)2·x·y,Ti的定义通过如下公式进行表达:
其中应用所述Ti的结构如图2所示。且当x取4,y取8时,应用所述Ti的结构如图3所示。
其中,公式(3)中的fi由以下公式进行表达:
且对于每对<j,i>,其中j∈{0,...,2y-1},i∈{1,…,y-2},通过以下公式使Fi,j:GF(2)x×GF(2)x→GF(2)x为隐蔽安全加法器masked secure adder:
其中,x0,x1∈GF(2)x并且
并且,对于每个j∈{0,…,2y-1},F0,j被依赖于轮的隐蔽加法替代,具体参阅以下公式:
其中且隐蔽加法器的内部结构和它们的在白盒加密过程中的联系在图4中展示。
于本发明一具体实施例中,所述安全终端为一后端服务器、工作站、或者为所述处于安全环境内的主机。所述终端设备例如包括智能手机、平板电脑、台式电脑、或智能可穿戴设备等。具体的,在实际应用中,所述算法1的流程具体为:
注意在算法中,TBoxi是一个实现了Ti的查找表,“FBoxi,j”和是实现了Fi,j和的隐蔽加法器。
加密算法Enc(算法2)接收一个128位的明文分组和data_enc(加密过程需要的静态数据)作为输入并输出对应的128位密文。
算法2的流程具体为:
其中,表格化的组件及其关联,以及第r轮加密的数据流在具体参阅图5所示。
且本发明中的轮数可以根据用户的需要自行设置,并且,第一轮的输出作为第二轮的输入继续执行图5所示的计算过程,以在得到第二轮的输出的时候,将该第二轮的输出作为第三轮的输入,并依次执行设置的轮数,且最后一轮的计算输出结果,即为本次计算的输出。
且算法3的流程具体为:
解密算法(算法3)假设被部署在安全(黑盒攻击)环境,例如后端服务器或者工作站。传统白盒攻击解密算法基于标准的分组密码(例如AES和DES)仅仅使用密钥和额外编码来解密密文。相形之下,本文提出的解密算法使用一系列静态数据作为固定输入来匹配对应的加密算法。这是我们的方案在计算资源有限的白盒攻击环境中取得相对较高的加密安全性的关键。
在一具体实施例中,本发明的基于白盒加密的安全运行方法10的应用原理为:
系统初始化时,在安全的主机上使用DataGen(算法1)生成分别用于加密和解密两个静态数据集合data_enc和data_dec(代替传统对称加密系统中的密钥);解密使用的静态数据集合data_dec存储在安全的解密端,加密使用的静态数据集合data_enc存储在可能在白盒攻击环境中使用的终端设备上;加密时,在终端设备上调用Enc(算法2),使用data_enc作为参数,对明文进行加密并得到密文;解密时,在主机上调用Dec(算法3),使用data_dec作为参数,对密文进行解密并恢复出明文。
进一步参阅图6,显示为本发明的基于白盒加密的安全运行系统20,包括:
静态数据生成模块21,设置于处于安全环境内的主机内,用以令所述主机根据预设的数据生成算法,分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合;
静态数据存储模块22,设置于所述主机内,用以将所述加密静态数据集合存储于一终端设备,且将所述解密静态数据集合存储于一处于安全环境内的安全终端;
加密模块23,设置于所述终端设备内,用以当所述终端设备对一输入的明文进行加密时,调用所述加密静态数据集合并通过预设于所述终端设备的加密算法,对所述输入的明文进行加密以获得对应的输出的密文;
解密模块24,设置于所述终端设备内,用以当所述终端设备对一输入的密文进行解密时,从所述安全终端调用所述解密静态数据集合并通过预设于所述安全终端的解密算法,对所述输入的密文进行解密以获得对应的输出的明文。
于本发明一具体实施例中,所述数据生成算法是分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合的概率算法,且所述主机在利用所述数据生成算法生成所述加密静态数据集合以及所述解密静态数据集合的过程中,会产生多个随机矩阵。
于本发明一具体实施例中,在所述数据生成算法、所述加密算法、以及所述解密算法的运行过程中还包括:
令x,y∈Z+,为全体(x·y)×(x·y)可逆二进制矩阵的集合,为全体(x·y)×(x·y)二进制矩阵的集合,为全体x位到x位双射的集合,为全体x位到x位双射的集合;且令r∈{0,…,N-1},其中N为轮数,并有i∈{0,…,y-1};令Xr,Yr∈GF(2)x·y,Xr=(Xr,y,…,Xr,0),Yr=(Yr,y,…,Yr,0),其中对于每个i,Xr,i,Yr,i∈GF(2)x;对于每个i有并有其中,∈$表示从集合中均匀选取的元素;对于每个i,并且Λ′i是一个2·x·y位到2·x·y位的双射,使得Λ′i,j=Λ′i,2y-1||…||Λ′i,0,其中||表示两个映射平行地作用。
于本发明一具体实施例中,令其中Li是右起第i个块,L为一随机矩阵,且关于L的公式表达式为:
L=[Ly-1 … L0]; (27)
且令其中Δi是右起第i个块,Δ为一随机矩阵,且Δ的公式表达为:
Δ=[Δy-1 … Δ0]; (28)
令第r轮的第i个T-box,即Ti,所述Ti为所述查找表,且Ti:GF(2)x×GF(2)x→GF(2)2·x·y,Ti的定义通过如下公式进行表达:
其中,公式(3)中的fi由以下公式进行表达:
且对于每对<j,i>,其中j∈{0,...,2y-1},i∈{1,…,y-2},通过以下公式使Fi,j:GF(2)x×GF(2)x→GF(2)x为隐蔽安全加法器masked secure adder:
其中,x0,x1∈GF(2)x并且
于本发明一具体实施例中,所述安全终端为一后端服务器、工作站、或者为所述处于安全环境内的主机。
所述基于白盒加密的安全运行系统20为与所述基于白盒加密的安全运行方法10对应的系统项,所有关于所述基于白盒加密的安全运行方法10的描述均可应用于本实施例中,在此不加赘述。
综上所述,本发明的基于白盒加密的安全运行方法及系统,使用一系列静态数据作为固定输入来匹配对应的加密算法和解密算法,本发明可以实现轻量级的安全运行,且本发明具有较小的静态数据体积和较高的运行效率,且可使得在计算资源有限的白盒攻击环境中取得相对较高的加密安全性。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (4)
1.一种基于白盒加密的安全运行方法,其特征在于,包括:
令处于安全环境内的主机根据预设的数据生成算法,分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合;
将所述加密静态数据集合存储于一终端设备,且将所述解密静态数据集合存储于一处于安全环境内的安全终端;
当所述终端设备对一输入的明文进行加密时,调用所述加密静态数据集合并通过预设于所述终端设备的加密算法,对所述输入的明文进行加密以获得对应的输出的密文;
当所述终端设备对一输入的密文进行解密时,从所述安全终端调用所述解密静态数据集合并通过预设于所述安全终端的解密算法,对所述输入的密文进行解密以获得对应的输出的明文;
所述数据生成算法是分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合的概率算法,且所述主机在利用所述数据生成算法生成所述加密静态数据集合以及所述解密静态数据集合的过程中,会产生多个随机矩阵;
在所述数据生成算法、所述加密算法、以及所述解密算法的运行过程中还包括:
令x,y∈Z+,为全体(x·y)×(x·y)可逆二进制矩阵的集合,为全体(x·y)×(x·y)二进制矩阵的集合,为全体x位到x位双射的集合,为全体x位到x位双射的集合;且令r∈{0,…,N-1},其中N为轮数,并有i∈{0,…,y-1};令Xr,Yr∈GF(2)x·y,Xr=(Xr,y,…,Xr,0),Yr=(Yr,y,…,Yr,0),其中对于每个i,Xr,i,Yr,i∈GF(2)x;对于每个i有Hi,并有其中,∈$表示从集合中均匀选取的元素;对于每个i,并且Λ′i是一个2·x·y位到2·x·y位的双射,使得Λ′i,j=Λ′i,2y-1||…||Λ′i,0,其中||表示两个映射平行地作用;
令其中Li是右起第i个块,L为一随机矩阵,且关于L的公式表达式为:
L=[Ly-1…L0]; (1)
且令其中Δi是右起第i个块,Δ为一随机矩阵,且Δ的公式表达为:
Δ=[Δy-1…Δ0]; (2)
令第r轮的第i个T-box,即Ti,所述Ti为一查找表,且Ti:GF(2)x×GF(2)x→GF(2)2·x·y,Ti的定义通过如下公式进行表达:
其中,公式(3)中的fi由以下公式进行表达:
且对于每对<j,i>,其中j∈{0,...,2y-1},i∈{1,…,y-2},通过以下公式使Fi,j:GF(2)x×GF(2)x→GF(2)x为隐蔽安全加法器:
其中,x0,x1∈GF(2)x并且
2.根据权利要求1所述的基于白盒加密的安全运行方法,其特征在于:所述安全终端为一后端服务器、工作站、或者为所述处于安全环境内的主机。
3.一种基于白盒加密的安全运行系统,其特征在于,包括:
静态数据生成模块,设置于处于安全环境内的主机内,用以令所述主机根据预设的数据生成算法,分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合;
静态数据存储模块,设置于所述主机内,用以将所述加密静态数据集合存储于一终端设备,且将所述解密静态数据集合存储于一处于安全环境内的安全终端;
加密模块,设置于所述终端设备内,用以当所述终端设备对一输入的明文进行加密时,调用所述加密静态数据集合并通过预设于所述终端设备的加密算法,对所述输入的明文进行加密以获得对应的输出的密文;
解密模块,设置于所述终端设备内,用以当所述终端设备对一输入的密文进行解密时,从所述安全终端调用所述解密静态数据集合并通过预设于所述安全终端的解密算法,对所述输入的密文进行解密以获得对应的输出的明文;
所述数据生成算法是分别生成用于加密的加密静态数据集合以及用于解密的解密静态数据集合的概率算法,且所述主机在利用所述数据生成算法生成所述加密静态数据集合以及所述解密静态数据集合的过程中,会产生多个随机矩阵;
在所述数据生成算法、所述加密算法、以及所述解密算法的运行过程中还包括:
令x,y∈Z+,为全体(x·y)×(x·y)可逆二进制矩阵的集合,为全体(x·y)×(x·y)二进制矩阵的集合,为全体x位到x位双射的集合,为全体x位到x位双射的集合;且令r∈{0,…,N-1},其中N为轮数,并有i∈{0,…,y-1};令Xr,Yr∈GF(2)x·y,Xr=(Xr,y,…,Xr,0),Yr=(Yr,y,…,Yr,0),其中对于每个i,Xr,i,Yr,i∈GF(2)x;对于每个i有Hi,并有其中,∈$表示从集合中均匀选取的元素;对于每个i,并且Λ′i是一个2·x·y位到2·x·y位的双射,使得Λ′i,j=Λ′i,2y-1||…||Λ′i,0,其中||表示两个映射平行地作用;
令其中Li是右起第i个块,L为一随机矩阵,且关于L的公式表达式为:
L=[Ly-1…L0]; (1)
且令其中Δi是右起第i个块,Δ为一随机矩阵,且Δ的公式表达为:
Δ=[Δy-1…Δ0]; (2)
令第r轮的第i个T-box,即Ti,所述Ti为一查找表,且Ti:GF(2)x×GF(2)x→GF(2)2·x·y,Ti的定义通过如下公式进行表达:
其中,公式(3)中的fi由以下公式进行表达:
且对于每对<j,i>,其中j∈{0,...,2y-1},i∈{1,…,y-2},通过以下公式使Fi,j:GF(2)x×GF(2)x→GF(2)x为隐蔽安全加法器:
其中,x0,x1∈GF(2)x并且
4.根据权利要求3所述的基于白盒加密的安全运行系统,其特征在于:所述安全终端为一后端服务器、工作站、或者为所述处于安全环境内的主机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611103026.4A CN106603224B (zh) | 2016-12-05 | 2016-12-05 | 基于白盒加密的安全运行方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611103026.4A CN106603224B (zh) | 2016-12-05 | 2016-12-05 | 基于白盒加密的安全运行方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106603224A CN106603224A (zh) | 2017-04-26 |
CN106603224B true CN106603224B (zh) | 2019-09-27 |
Family
ID=58594910
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611103026.4A Active CN106603224B (zh) | 2016-12-05 | 2016-12-05 | 基于白盒加密的安全运行方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106603224B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108270550B (zh) * | 2018-01-10 | 2021-03-02 | 成都卫士通信息产业股份有限公司 | 一种基于sm4算法的安全高效的白盒实现方法及装置 |
CN109714154B (zh) * | 2019-03-05 | 2021-10-29 | 同济大学 | 一种代码体积困难白盒安全模型下的白盒密码算法的实现方法 |
CN111431888B (zh) * | 2020-03-19 | 2020-11-27 | 深圳市道旅旅游科技股份有限公司 | 关键信息屏蔽的方法、装置、设备及存储介质 |
CN115396103B (zh) * | 2022-10-26 | 2023-03-24 | 杭州海康威视数字技术股份有限公司 | 基于白盒密钥的ai数据共享方法、系统和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104184588A (zh) * | 2014-08-15 | 2014-12-03 | 同济大学 | 基于身份的不可拆分数字签名方法 |
CN105681025A (zh) * | 2016-01-29 | 2016-06-15 | 中国科学院信息工程研究所 | 一种国家密码标准算法sm4的安全白盒实现方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9059852B2 (en) * | 2013-03-27 | 2015-06-16 | International Business Machines Corporation | Validating a user's identity utilizing information embedded in a image file |
-
2016
- 2016-12-05 CN CN201611103026.4A patent/CN106603224B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104184588A (zh) * | 2014-08-15 | 2014-12-03 | 同济大学 | 基于身份的不可拆分数字签名方法 |
CN105681025A (zh) * | 2016-01-29 | 2016-06-15 | 中国科学院信息工程研究所 | 一种国家密码标准算法sm4的安全白盒实现方法和装置 |
Non-Patent Citations (4)
Title |
---|
《A Lightweight White-Box Symmetric Encryption Algorithm against Node Capture for WSNs》;Yang Shi,et.al;《IEEE》;20141231;全文 * |
《On the Lai-Massey Scheme》;Serge Vaudenay;《International conference on the Theory and Application of crytology and Information Security》;19991231;全文 * |
《白盒密码及SMS4算法的白盒实现》;肖雅莹 等;《中国密码学会2009年会》;20130528;全文 * |
基于Android平台的软件保护研究与实现;苏帅;《中国优秀硕士学位论文全文数据库(电子期刊) 信息科技辑》;20150815;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN106603224A (zh) | 2017-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107294697B (zh) | 基于明文相似矩阵的对称全同态加密方法 | |
Chen et al. | High performance data encryption with AES implementation on FPGA | |
US20060023875A1 (en) | Enhanced stream cipher combining function | |
JP6575532B2 (ja) | 暗号化装置、復号装置、暗号処理システム、暗号化方法、復号方法、暗号化プログラム、及び復号プログラム | |
CN106603224B (zh) | 基于白盒加密的安全运行方法及系统 | |
CN113098675B (zh) | 基于多项式完全同态的二进制数据加密系统及方法 | |
CN106685662B (zh) | 一种基于余数系统的商密sm2加密算法的白盒软件实现方法 | |
Abdul Hussien et al. | [Retracted] A Secure Environment Using a New Lightweight AES Encryption Algorithm for E‐Commerce Websites | |
CN111010266B (zh) | 消息的加解密、读写方法、装置、计算机设备和存储介质 | |
CN114175569A (zh) | 用于在aes计数器模式加密中对用拟群运算加密的整数进行相加和比较的系统和方法 | |
CN107257279A (zh) | 一种明文数据加密方法及设备 | |
CN112865957A (zh) | 数据加密传输方法、装置、计算机目标设备和存储介质 | |
Tiwari | Cryptography in blockchain | |
CN111798236B (zh) | 交易数据加、解密方法、装置及设备 | |
Sharma et al. | Analysis of AES Encryption with ECC | |
Shende et al. | FPGA based hardware implementation of hybrid cryptographic algorithm for encryption and decryption | |
Sekar et al. | Comparative study of encryption algorithm over big data in cloud systems | |
US10075290B2 (en) | Operator lifting in cryptographic algorithm | |
Bin Muhaya et al. | Modified AES using chaotic key generator for satellite imagery encryption | |
Rouaf et al. | Performance Evaluation of Encryption Algorithms in Mobile Devices | |
Buja et al. | The direction of lightweight ciphers in mobile big data computing | |
Mahajan et al. | Hybrid Methods for Increasing Security of IoT and Cloud Data | |
CN114254335A (zh) | 基于gpu的加密方法、装置、加密设备及存储介质 | |
CN105263137A (zh) | 一种数据加密方法及系统 | |
Sayed et al. | Split-n-Swap: A New Modification of the Twofish Block Cipher Algorithm |
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 |