CN111783112A - 一种保留格式加密的快速实现方法、系统、介质及设备 - Google Patents

一种保留格式加密的快速实现方法、系统、介质及设备 Download PDF

Info

Publication number
CN111783112A
CN111783112A CN202010518526.4A CN202010518526A CN111783112A CN 111783112 A CN111783112 A CN 111783112A CN 202010518526 A CN202010518526 A CN 202010518526A CN 111783112 A CN111783112 A CN 111783112A
Authority
CN
China
Prior art keywords
encryption
key
fixed data
loop
data
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.)
Granted
Application number
CN202010518526.4A
Other languages
English (en)
Other versions
CN111783112B (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.)
Shandong Sanwei Xinan Information Technology Co ltd
Beijing Sansec Technology Development Co ltd
Original Assignee
Shandong Sanwei Xinan Information Technology Co ltd
Beijing Sansec Technology Development 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 Shandong Sanwei Xinan Information Technology Co ltd, Beijing Sansec Technology Development Co ltd filed Critical Shandong Sanwei Xinan Information Technology Co ltd
Priority to CN202010518526.4A priority Critical patent/CN111783112B/zh
Publication of CN111783112A publication Critical patent/CN111783112A/zh
Application granted granted Critical
Publication of CN111783112B publication Critical patent/CN111783112B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及一种保留格式加密的快速实现方法及系统,方法包括:获取加密密钥,对加密密钥进行扩展处理,得到轮密钥;提取密码运算阶段需要重复加密的固定数据,利用轮密钥对需要重复加密的固定数据进行单独的加密运算,得到固定数据的加密结果;利用轮密钥以及固定数据的加密结果对明文数据进行分组加密运算。本发明实施例提供的保留格式加密的快速实现方法,通过分步加密和需重复加密的固定数据预处理的方式,减少了运算过程中的重复处理工作,从而提升了数据处理的性能,解决了保留格式加密应用过程中运算速度过慢的问题,提高了保留格式加密的运算速度,便于保留格式加密的大规模应用。

Description

一种保留格式加密的快速实现方法、系统、介质及设备
技术领域
本发明涉及信息安全技术领域,尤其涉及一种保留格式加密的快速实现方法、系统、介质及设备。
背景技术
保留格式加密(Format-Preserving Encryption,FPE)是基于对称加密算法(AES/SM4)的一种加密模式,特点是数据经过加密之后,明文和密文的数据格式保持一致。
以当前比较广泛的应用,加密数据库为例,我们来分析保留格式加密的必要性。在一个数据库中,经常会存储一些个人的敏感信息,如手机号、银行卡号、身份证号等,我们需要采用必要的加密模式对这些敏感数据进行保护。然而使用传统分组密码模式(ECB/CBC等)通常会扩展数据,使数据长度和类型发生变化,需要修改数据库结构或应用程序来适应这些变化,成本非常高。由于保留格式加密具有保持密文与明文具有相同格式的特性,因此适合于格式敏感的数据加密领域。
保留数据加密模式于2016年3月成为美国NIST标准,是目前唯一普遍接受的保留格式加密标准。在此标准中推荐了两种保留格式的加密方法,FF1和FF3。但是在实际的使用过程中,我们发现与普通的分组密码模式(ECB/CBC等)相比,保留格式加密模式的运算量过于复杂,性能几乎下降了10倍,给保留格式加密的大规模推广带来的极大的不便。
发明内容
本发明所要解决的技术问题是针对现有技术存在的问题,提供一种保留格式加密的快速实现方法、系统、介质及设备。
为解决上述技术问题,本发明实施例提供一种保留格式加密的快速实现方法,适用于FF1保留格式加密运算,密码运算阶段包括:
获取加密密钥,对所述加密密钥进行扩展处理,得到轮密钥Key_Loop;
提取密码运算阶段需要重复加密的固定数据P,利用所述轮密钥Key_Loop对所述需要重复加密的固定数据P进行单独的加密运算,得到所述固定数据的加密结果IV;
利用所述轮密钥Key_Loop以及所述固定数据的加密结果IV对经预处理的明文数据进行分组加密运算。
为解决上述技术问题,本发明实施例还提供一种保留格式加密的快速实现系统,适用于FF1保留格式加密运算,其中,密码模块包括:密钥扩展单元、固定数据加密单元和分组处理单元;
密钥扩展单元,用于获取加密密钥,对所述加密密钥进行扩展处理,得到轮密钥Key_Loop;
固定数据加密单元,用于提取密码运算阶段需要重复加密的固定数据P,利用所述轮密钥Key_Loop对所述需要重复加密的固定数据P进行单独的加密运算,得到所述固定数据的加密结果IV;
分组处理单元,用于利用所述轮密钥Key_Loop以及所述固定数据的加密结果IV对经预处理的明文数据进行分组加密运算。
为解决上述技术问题,本发明实施例还提供一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使所述计算机执行根据上述技术方案所述的保留格式加密的快速实现方法。
为解决上述技术问题,本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上的并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述技术方案所述的保留格式加密的快速实现方法。
本发明的有益效果是:将密码模块拆分成密钥扩展、固定数据加密以及分组处理三个独立的模块,逻辑更加清晰,实现更加方便;将密钥扩展独立出来,减少了多次加密操作重复进行密钥扩展的计算;将需要重复加密的固定数数据预先处理,减少了运算过程中的重复处理工作,从而提升了数据处理的性能,解决了保留格式加密应用过程中运算速度过慢的问题,提高了保留格式加密的运算速度,便于保留格式加密的大规模应用。
本发明附加的方面及其的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明实践了解到。
附图说明
图1为本发明实施例提供的保留格式加密的快速实现方法的流程图;
图2为本发明实施例提供的保留格式加密的快速实现系统框图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
保留格式加密算法的一般流程是先将消息空间的明文映射到基域空间的元素,然后将基域空间的元素输入到FPE处理单元进行运算,运算完成的元素再逆映射到消息空间得到密文输出。FPE处理单元一般分为三个处理模块,分别为密码模块、数据格式转换模块以及大整数运算模块,其中密码模块是最费时的运算。
图1为本发明实施例提供的保留格式加密的快速实现方法的流程图。如图1所示,该方法适用于FF1保留格式加密运算,密码运算阶段包括:
S10,获取加密密钥,对所述加密密钥进行扩展处理,得到轮密钥Key_Loop;
S20,提取密码运算阶段需要重复加密的固定数据P,利用所述轮密钥Key_Loop对所述需要重复加密的固定数据P进行单独的加密运算,得到所述固定数据的加密结果IV;
S30,利用所述轮密钥Key_Loop以及所述固定数据的加密结果IV对经预处理的明文数据进行分组加密运算。
该实施例中,密钥扩展时,对加密密钥进行预处理,得到扩展后的轮密钥,将运算结果存储起来,方便以后的运算直接调用;固定数据加密时,分析算法过程中需要重复加密的固定数据,然后将需重复加密的固定数据提取出来,利用轮密钥对这些需重复加密的固定数据进行单独的加密运算,然后将运算结果存储起来,作为以后运算的输入,减少重复运算;分组处理时利用轮密钥来进行数据的加密运算,该阶段每次处理一个分组长度(16字节)的数据分组,输入是一个明文分组,输出是一个密文分组。如果数据长度大于一个分组,则需要多次调用该处理过程。
上述实施例提供的保留格式加密的快速实现方法,将密码运算过程拆分成密钥扩展、固定数据加密以及分组处理三个过程,逻辑更加清晰,实现更加方便;将密钥扩展独立出来,减少了多次加密操作重复进行密钥扩展的计算;将需要重复加密的固定数数据预先处理,减少了运算过程中的重复处理工作,从而提升了数据处理的性能,解决了保留格式加密应用过程中运算速度过慢的问题,提高了保留格式加密的运算速度,便于保留格式加密的大规模应用。
所述对所述加密密钥进行扩展处理,得到轮密钥Key_Loop,公式如下:Key_Loop=KEY_EXPANSION(K);其中,KEY_EXPANSION为密钥扩展函数。K为密钥。
上述实施例中,在进行分组加密前,先单独进行密钥扩展,得到扩展后的轮密钥,将运算结果存储起来,方便以后的运算直接调用,无需重复进行密钥扩展计算,大大降低了运算量,提升了运算速度。
所述需要重复加密的固定数据为P公式如下:
P=[1]1||[2]1||[1]1||[radix]3||[10]1||[u mod 256]1||[n]4||[t]4
Figure BDA0002531036330000051
其中,radix代表基数,n为明文数据X的字节长度,t为调整值T的字节长度。
利用所述轮密钥Key_Loop对所述需要重复加密的固定数据P进行单独的加密运算,得到所述固定数据的加密结果IV,公式如下;
IV=CIPHKey_Loop(P);
其中,IV为所述需要重复加密的固定数据的加密结果,CIPHKey_Loop为分组处理函数。
所述利用所述轮密钥Key_Loop以及所述固定数据的加密结果IV对经预处理的明文数据进行分组加密运算时,利用优化的PRF函数PRF_new计算中间量R,计算公式如下:
R=PRF_new(Q,IV)
Q=T||[0](-t-1-b)mod16||[i]1||[NUMradix(B)]b
Figure BDA0002531036330000052
B=X[u+1...n]
v=n-u
Figure BDA0002531036330000053
其中,PRF_new为优化的PRF函数,IV为所述需要重复加密的固定数据的加密结果,T为调整值,t为调整值T的字节长度,i为循环次数,NUMradix代表将大整数转换成字节串,LOG(radix)代表对基数radix求以2为底的对数,X为明文数据,n为明文数据X的字节长度,
Figure BDA0002531036330000061
代表向下取整,
Figure BDA0002531036330000062
代表向上取整。
所述优化的PRF函数PRF_new的运算步骤如下:
对明文数据Q按照16字节进行分组,得到Q1,Q2…Qm,其中,m=len_Q/16,len_Q为明文_Q的字节长度,是16字节的整数倍;
另Y0=IV,对于j从1到m,执行如下公式:
Figure BDA0002531036330000063
R=Ym
所述利用所述轮密钥Key_Loop以及所述固定数据的加密结果IV对经预处理的明文数据进行分组加密运算时,利用分组处理函数CIPHKey_Loop对所述中间量R进行处理得到中间量S,计算公式如下:
Figure BDA0002531036330000064
Figure BDA0002531036330000065
下面简要介绍下现有技术中FF1保留格式加密运算。
算法1:FF1.Encrypt(K,T,X)
输入:K:密钥,长度是16字节。
T:调整值,长度为t字节。
X:明文,长度为n字节
输出:Y:密文,长度为n字节。
运算步骤:
1.
Figure BDA0002531036330000066
v=n-u;
2.A=X[1...u],B=X[u+1...n];
3.
Figure BDA0002531036330000067
4.
Figure BDA0002531036330000073
5.P=[1]1||[2]1||[1]1||[radix]3||[10]1||[u mod 256]1||[n]4||[t]4
6.i从0到9依次执行:
i.Q=T||[0](-t-1-b)mod16||[i]1||[NUMradix(B)]b
ii.R=PRF(P||Q);
iii.
Figure BDA0002531036330000071
iv.y=NUM(S);
v.若i是偶数,则m=u;否则,m=v;
vi.c=(NUMradix(A)+y)mod radixm
vii.
Figure BDA0002531036330000072
viii.A=B;
ix.B=C;
7.Return Y=A||B。
其中,步骤1-5是对明文数据进行预处理的过程,步骤6、7是分组加密过程。本发明实施例的优化主要是针对加密函数以及PRF函数(6.ii)的优化。这两步都用到了分组密码运算,是整个FPE处理过程中最耗时的运算。
针对加密函数的优化:
从上述算法中可以看出,分组密码运算都是通过CIPHK(X)来进行的。我们可以将其拆分成两步,密钥扩展和分组处理。分别通过密钥扩展单元和分组处理单元来实现。而对于确定的密钥来说,密钥扩展工作可以只进行一次,减少重复性运算,每次只进行分组处理即可。具体如下:
现在的加密函数为Y=CIPHK(X)。其中Y为16字节的密文,X为16字节的明文,K为密钥。
令Key_Loop为经过密钥扩展后计算出的轮密钥;Key_Expansion为密钥扩展函数。令CIPHKey_Loop(X)为分组处理函数。
本发明实施例中,将加密函数Y=CIPHK(X)拆分成两步来完成运算:
Key_Loop=KEY_EXPANSION(K);
Y=CIPHKey_Loop(X)。
其中,KEY_EXPANSION(K)通过密钥扩展来实现,只需要调用一次,CIPHKey_Loop(X)通过分组处理单元来实现。
针对PRF函数的优化:
对于6.ii步的PRF函数。
算法2:PRF(P||Q)
输入:P||Q,长度为len_PQ,是16字节的整数倍;
输出:R,长度为16字节。
运算步骤:
1.m=len_PQ/16;
2.对明文数据P||Q按照16字节进行分组,得到PQ1,PQ2...PQm
3.另Y0=0128,对于j从1到m,执行如下公式;
Figure BDA0002531036330000081
4.返回R=Ym
从算法[1]可以看到,PRF(P||Q)函数一共调用了10次,而P是个固定值,只有Q每次变化。本发明实施例通过将P的运算从PRF函数中提取出来,计算出一个固定值来后作为PRF的输入。定义长度为16字节的IV,令IV=CIPHKey_Loop(P)。则可以将PFR函数优化为:
算法2-new:PRF_new(Q,IV)
输入:Q,长度为len_Q,是16字节的整数倍;
IV,长度为16字节;
输出:R,长度为16字节。
运算步骤:
1.m=len_Q/16;
2.对明文数据Q按照16字节进行分组,得到Q1,Q2...Qm
3.另Y0=IV,对于j从1到m,执行如下公式;
Figure BDA0002531036330000091
4.返回R=Ym
在新的PRF函数中,将IV作为PRF函数的输入,减少了每次关于P的加密运算。经过优化后,得到新的FF1保留格式加密算法为:
算法1-new:FF1.Encrypt_new(K,T,X)
输入:K:密钥,长度是16字节。
T:调整值,长度为t字节。
X:明文,长度为n字节
输出:Y:密文,长度为n字节。
运算步骤:
1.
Figure BDA0002531036330000092
v=n-u;
2.A=X[1...u],B=X[u+1...n];
3.
Figure BDA0002531036330000093
4.
Figure BDA0002531036330000094
5.P=[1]1||[2]1||[1]1||[radix]3||[10]1||[u mod 256]1||[n]4||[t]4
6.密钥扩展:Key_Loop=KEY_EXPANSION(K);
7.数据预处理:IV=CIPHKey_Loop(P);
8.从0到9依次执行:
i.Q=T||[0](-t-1-b)mod16||[i]1||[NUMradix(B)]b
ii.R=PRF_new(Q,IV);
iii.
Figure BDA0002531036330000101
iv.y=NUM(S);
v.若i是偶数,则m=u;否则,m=v;
vi.c=(NUMradix(A)+y)mod radixm
vii.
Figure BDA0002531036330000102
viii.A=B;
ix.B=C;
9.Return Y=A||B。
经过优化后的FF1保留格式加密算法,只需要一次密钥扩展运算(第6步)和一次需重复加密的固定数据预处理运算(第7步)。至少减少了20次的密钥扩展运算,以及10次针对P的加密运算,大幅提升的算法实现的性能。
上文结合图1,详细描述了根据本发明实施例提供的保留格式加密的快速实现方法。下面结合图2,详细描述本发明实施例提供的保留格式加密的快速实现系统。
如图2所示,本发明实施例还提供一种保留格式加密的快速实现系统,适用于FF1保留格式加密运算,其中,密码模块包括:密钥扩展单元、固定数据加密单元和分组处理单元。
密钥扩展单元,用于获取加密密钥,对所述加密密钥进行扩展处理,得到轮密钥Key_Loop;固定数据加密单元,用于提取密码运算阶段需要重复加密的固定数据P,利用所述轮密钥Key_Loop对所述需要重复加密的固定数据P进行单独的加密运算,得到所述固定数据的加密结果IV;分组处理单元,用于利用所述轮密钥Key_Loop以及所述固定数据的加密结果IV对经预处理的明文数据进行分组加密运算。
上述实施例提供的保留格式加密的快速实现系统,将密码模块拆分成密钥扩展、固定数据加密以及分组处理三个独立模块,逻辑更加清晰,实现更加方便;将密钥扩展模块独立出来,减少了多次加密操作重复进行密钥扩展的计算;将需要重复加密的固定数数据预先处理,减少了运算过程中的重复处理工作,从而提升了数据处理的性能,解决了保留格式加密应用过程中运算速度过慢的问题,提高了保留格式加密的运算速度,便于保留格式加密的大规模应用。
本发明实施例还提供一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使所述计算机执行根据上述实施例提供的保留格式加密的快速实现方法。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上的并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述实施例提供的保留格式加密的快速实现方法。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种保留格式加密的快速实现方法,其特征在于,适用于FF1保留格式加密运算,密码运算阶段包括:
获取加密密钥,对所述加密密钥进行扩展处理,得到轮密钥Key_Loop;
提取密码运算阶段需要重复加密的固定数据P,利用所述轮密钥Key_Loop对所述需要重复加密的固定数据P进行单独的加密运算,得到所述固定数据的加密结果IV;
利用所述轮密钥Key_Loop以及所述固定数据的加密结果IV对经预处理的明文数据进行分组加密运算。
2.根据权利要求1所述的方法,其特征在于,所述对所述加密密钥进行扩展处理,得到轮密钥Key_Loop,公式如下:
Key_Loop=KEY_EXPANSION(K);
其中,KEY_EXPANSION为密钥扩展函数,K为密钥。
3.根据权利要求1所述的方法,其特征在于,所述需要重复加密的固定数据为P公式如下:
P=[1]1||[2]1||[1]1||[radix]3||[10]1||[u mod 256]1||[n]4||[t]4
u=[n/2]
其中,radix代表基数,n为明文数据X的字节长度,t为调整值T的字节长度。
4.根据权利要求1所述的方法,其特征在于,利用所述轮密钥Key_Loop对所述需要重复加密的固定数据P进行单独的加密运算,得到所述固定数据的加密结果IV,公式如下;
IV=CIPHKey_Loop(P);
其中,IV为所述需要重复加密的固定数据的加密结果,CIPHKey_Loop为分组处理函数。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述利用所述轮密钥Key_Loop以及所述固定数据的加密结果IV对经预处理的明文数据进行分组加密运算时,利用优化的PRF函数PRF_new计算中间量R,计算公式如下:
R=PRF_new(Q,IV)
Q=T||[0](-t-1-b)mod16||[i]1||[NUMradix(B)]b
Figure FDA0002531036320000021
B=X[u+1...n]
v=n-u
Figure FDA0002531036320000022
其中,PRF_new为优化的PRF函数,IV为所述需要重复加密的固定数据的加密结果,T为调整值,t为调整值T的字节长度,i代表循环次数,NUMradix代表将大整数转换成字节串,LOG(radix)代表表对基数radix求以2为底的对数,X为明文数据,n为明文数据X的字节长度,
Figure FDA0002531036320000023
代表向下取整,
Figure FDA0002531036320000024
代表向上取整。
6.根据权利要求5所述的方法,其特征在于,所述优化的PRF函数PRF_new的运算步骤如下:
对明文数据Q按照16字节进行分组,得到Q1,Q2…Qm,其中,m=len_Q/16,len_Q为明文数据Q的字节长度,是16字节的整数倍;
另Y0=IV,对于j从1到m,执行如下公式:
Figure FDA0002531036320000025
R=Ym
7.根据权利要求5所述的方法,其特征在于,所述利用所述轮密钥Key_Loop以及所述固定数据的加密结果IV对经预处理的明文数据进行分组加密运算时,利用分组处理函数CIPHKey_Loop对所述中间量R进行处理得到中间量S,计算公式如下:
Figure RE-FDA0002654988440000031
Figure RE-FDA0002654988440000032
8.一种保留格式加密的快速实现系统,其特征在于,适用于FF1保留格式加密运算,其中,密码模块包括:密钥扩展单元、固定数据加密单元和分组处理单元;
密钥扩展单元,用于获取加密密钥,对所述加密密钥进行扩展处理,得到轮密钥Key_Loop;
固定数据加密单元,用于提取密码运算阶段需要重复加密的固定数据P,利用所述轮密钥Key_Loop对所述需要重复加密的固定数据P进行单独的加密运算,得到所述固定数据的加密结果IV;
分组处理单元,用于利用所述轮密钥Key_Loop以及所述固定数据的加密结果IV对经预处理的明文数据进行分组加密运算。
9.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在计算机上运行时,使所述计算机执行根据权利要求1-7任一项所述的保留格式加密的快速实现方法。
10.一种计算机设备,包括存储器、处理器及存储在所述存储器上的并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7任一项所述的保留格式加密的快速实现方法。
CN202010518526.4A 2020-06-09 2020-06-09 一种保留格式加密的快速实现方法、系统、介质及设备 Active CN111783112B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010518526.4A CN111783112B (zh) 2020-06-09 2020-06-09 一种保留格式加密的快速实现方法、系统、介质及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010518526.4A CN111783112B (zh) 2020-06-09 2020-06-09 一种保留格式加密的快速实现方法、系统、介质及设备

Publications (2)

Publication Number Publication Date
CN111783112A true CN111783112A (zh) 2020-10-16
CN111783112B CN111783112B (zh) 2023-09-12

Family

ID=72753849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010518526.4A Active CN111783112B (zh) 2020-06-09 2020-06-09 一种保留格式加密的快速实现方法、系统、介质及设备

Country Status (1)

Country Link
CN (1) CN111783112B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112597480A (zh) * 2020-12-28 2021-04-02 北京炼石网络技术有限公司 一种可扩展的格式保留加密方法的实现方式
CN113037390A (zh) * 2021-03-18 2021-06-25 南京邮电大学 一种基于fpga的光纤加密方法
CN113079010A (zh) * 2021-06-07 2021-07-06 深圳奥联信息安全技术有限公司 基于保留格式算法的安全增强方法及装置
CN113204781A (zh) * 2021-05-20 2021-08-03 郑州信大捷安信息技术股份有限公司 用于保留格式加密算法的实现方法及装置
CN113204779A (zh) * 2021-05-20 2021-08-03 郑州信大捷安信息技术股份有限公司 基于对称密码算法的保留格式加密算法的实现方法及装置
CN113259934A (zh) * 2021-06-25 2021-08-13 贵州大学 一种短信验证码加密方法、解密方法及加解密系统
CN115174039A (zh) * 2022-08-08 2022-10-11 王伟忠 一种基于国产商用密码算法的快速保留数据格式加密计算方法
CN116707804A (zh) * 2023-08-07 2023-09-05 中电信量子科技有限公司 增强ff1格式保留加密安全性的方法及设备

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110103579A1 (en) * 2009-10-30 2011-05-05 Martin Luther W Format preserving encryption systems for data strings with constraints
US20150244518A1 (en) * 2014-02-21 2015-08-27 Electronics And Telecommunications Research Institute Variable-length block cipher apparatus and method capable of format preserving encryption
US20150358159A1 (en) * 2014-06-05 2015-12-10 International Business Machines Corporation Complex format-preserving encryption scheme
CN105959098A (zh) * 2016-04-28 2016-09-21 东港股份有限公司 基于多分割Feistel网络的保留格式加密算法
CN107168998A (zh) * 2017-03-30 2017-09-15 广东工业大学 一种基于保留格式的数据库透明加密方法
CN107809313A (zh) * 2017-10-31 2018-03-16 北京三未信安科技发展有限公司 一种白盒密码运算方法及系统
US20180091294A1 (en) * 2016-09-26 2018-03-29 Bank Of America Corporation Progressive Key Rotation for Format Preserving Encryption (FPE)
US20180309579A1 (en) * 2017-04-25 2018-10-25 Entit Software Llc Secure representation via a format preserving hash function
CN109981284A (zh) * 2019-03-11 2019-07-05 北京三未信安科技发展有限公司 一种椭圆曲线数字签名的实现方法及装置
CN110768797A (zh) * 2019-11-13 2020-02-07 西北师范大学 一种基于身份格式保留加密的数据脱敏方法
US20200177370A1 (en) * 2018-11-30 2020-06-04 International Business Machines Corporation Batched execution of encryption operations

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110103579A1 (en) * 2009-10-30 2011-05-05 Martin Luther W Format preserving encryption systems for data strings with constraints
US20150244518A1 (en) * 2014-02-21 2015-08-27 Electronics And Telecommunications Research Institute Variable-length block cipher apparatus and method capable of format preserving encryption
US20150358159A1 (en) * 2014-06-05 2015-12-10 International Business Machines Corporation Complex format-preserving encryption scheme
CN105959098A (zh) * 2016-04-28 2016-09-21 东港股份有限公司 基于多分割Feistel网络的保留格式加密算法
US20180091294A1 (en) * 2016-09-26 2018-03-29 Bank Of America Corporation Progressive Key Rotation for Format Preserving Encryption (FPE)
CN107168998A (zh) * 2017-03-30 2017-09-15 广东工业大学 一种基于保留格式的数据库透明加密方法
US20180309579A1 (en) * 2017-04-25 2018-10-25 Entit Software Llc Secure representation via a format preserving hash function
CN107809313A (zh) * 2017-10-31 2018-03-16 北京三未信安科技发展有限公司 一种白盒密码运算方法及系统
US20200177370A1 (en) * 2018-11-30 2020-06-04 International Business Machines Corporation Batched execution of encryption operations
CN109981284A (zh) * 2019-03-11 2019-07-05 北京三未信安科技发展有限公司 一种椭圆曲线数字签名的实现方法及装置
CN110768797A (zh) * 2019-11-13 2020-02-07 西北师范大学 一种基于身份格式保留加密的数据脱敏方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
NIST: ""Recommendation for Block Cipher Modes of Operation:Methods for Format-Preserving Encryption"", pages 1 - 23, Retrieved from the Internet <URL:http://dx.doi.org/10.6028/NIST.SP.800-38G> *
刘哲理等: ""保留格式加密技术研究"", 软件学报, vol. 23, no. 01, pages 152 - 170 *
卞超轶;朱少敏;周涛;: "一种基于保形加密的大数据脱敏系统实现及评估", 电信科学, no. 03, pages 119 - 125 *
王凯悦: ""基于保留格式加密的数据属性保留技术研究"", 中国优秀硕士学位论文全文数据库信息科技辑, pages 138 - 115 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112597480A (zh) * 2020-12-28 2021-04-02 北京炼石网络技术有限公司 一种可扩展的格式保留加密方法的实现方式
CN112597480B (zh) * 2020-12-28 2022-06-14 北京炼石网络技术有限公司 一种可扩展的格式保留加密方法的实现方式
CN113037390A (zh) * 2021-03-18 2021-06-25 南京邮电大学 一种基于fpga的光纤加密方法
CN113204781A (zh) * 2021-05-20 2021-08-03 郑州信大捷安信息技术股份有限公司 用于保留格式加密算法的实现方法及装置
CN113204779A (zh) * 2021-05-20 2021-08-03 郑州信大捷安信息技术股份有限公司 基于对称密码算法的保留格式加密算法的实现方法及装置
CN113204781B (zh) * 2021-05-20 2022-04-15 郑州信大捷安信息技术股份有限公司 用于保留格式加密算法的实现方法及装置
CN113204779B (zh) * 2021-05-20 2022-04-15 郑州信大捷安信息技术股份有限公司 基于对称密码算法的保留格式加密算法的实现方法及装置
CN113079010B (zh) * 2021-06-07 2022-01-04 深圳奥联信息安全技术有限公司 基于保留格式算法的安全增强方法及装置
CN113079010A (zh) * 2021-06-07 2021-07-06 深圳奥联信息安全技术有限公司 基于保留格式算法的安全增强方法及装置
CN113259934A (zh) * 2021-06-25 2021-08-13 贵州大学 一种短信验证码加密方法、解密方法及加解密系统
CN115174039A (zh) * 2022-08-08 2022-10-11 王伟忠 一种基于国产商用密码算法的快速保留数据格式加密计算方法
CN116707804A (zh) * 2023-08-07 2023-09-05 中电信量子科技有限公司 增强ff1格式保留加密安全性的方法及设备
CN116707804B (zh) * 2023-08-07 2023-10-31 中电信量子科技有限公司 增强ff1格式保留加密安全性的方法及设备

Also Published As

Publication number Publication date
CN111783112B (zh) 2023-09-12

Similar Documents

Publication Publication Date Title
CN111783112B (zh) 一种保留格式加密的快速实现方法、系统、介质及设备
US5675652A (en) Computer readable device implementing a software-efficient pseudorandom function encryption
EP0725511B1 (en) Method for data encryption/decryption using cipher block chaining (CBC) and message authentication codes (MAC)
US9313023B1 (en) Format-preserving cipher
Cui et al. A data masking scheme for sensitive big data based on format-preserving encryption
Stefanov et al. FastPRP: Fast pseudo-random permutations for small domains
Papantonakis et al. Fast, FPGA-based Rainbow Table creation for attacking encrypted mobile communications
CN109934001A (zh) 一种基于正态云模型的数据加密方法
CN113282947A (zh) 一种基于sm4算法的数据加密方法、装置及计算机平台
Spies Format preserving encryption
CN110445601B (zh) 祖冲之加密算法提速方法、系统、存储介质及计算机设备
CN110830261A (zh) 加密方法、装置、计算机设备及存储介质
Dandass Using FPGAs to parallelize dictionary attacks for password cracking
CN115277239A (zh) 数据库数据的加密方法及装置
US20230169186A1 (en) Method to secure computer code
CN114124359A (zh) 保留格式加密数据的方法、装置、电子设备及存储介质
CN113761570A (zh) 一种面向隐私求交的数据交互方法
Liu et al. An efficient matrix multiplication with enhanced privacy protection in cloud computing and its applications
Abboud et al. SDA Plus: Improving the Performance of the System Determine Algorithm (SDA) of the Switching Between AES-128 and AES-256 (MOLAZ Method)
Rajashekarappa et al. Study on cryptanalysis of the tiny encryption algorithm
Theoharoulis et al. HighEnd reconfigurable systems for fast Windows' password cracking
CN113468567B (zh) 数据处理方法及数据处理设备
US20230379138A1 (en) Format-preserving data encryption
CN111669273B (zh) 一种基于元胞自动机理论的加密方法
Devi et al. Esha-256: An Enhanced Secure Cryptographic Hash Algorithm for Information Security

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
CB02 Change of applicant information

Address after: 100102 room 1406, 14th floor, building 2, yard 16, Guangshun North Street, Chaoyang District, Beijing

Applicant after: Sanwei Xin'an Technology Co.,Ltd.

Applicant after: Shandong Sanwei Xinan Information Technology Co.,Ltd.

Address before: 100102 room 1406, 14th floor, building 2, yard 16, Guangshun North Street, Chaoyang District, Beijing

Applicant before: BEIJING SANSEC TECHNOLOGY DEVELOPMENT Co.,Ltd.

Applicant before: Shandong Sanwei Xinan Information Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant