CN101169776B - 提升中央处理单元运算效能的数据加密方法及加密装置 - Google Patents
提升中央处理单元运算效能的数据加密方法及加密装置 Download PDFInfo
- Publication number
- CN101169776B CN101169776B CN200610142830.3A CN200610142830A CN101169776B CN 101169776 B CN101169776 B CN 101169776B CN 200610142830 A CN200610142830 A CN 200610142830A CN 101169776 B CN101169776 B CN 101169776B
- Authority
- CN
- China
- Prior art keywords
- replacement
- computing
- box
- bit length
- new
- 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.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims abstract description 93
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000001737 promoting effect Effects 0.000 title 1
- 238000010977 unit operation Methods 0.000 title 1
- 238000013478 data encryption standard Methods 0.000 claims description 20
- 230000007717 exclusion Effects 0.000 claims description 12
- 238000001514 detection method Methods 0.000 claims 1
- 238000006467 substitution reaction Methods 0.000 abstract description 12
- 239000011159 matrix material Substances 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 3
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- YTAHJIFKAKIKAV-XNMGPUDCSA-N [(1R)-3-morpholin-4-yl-1-phenylpropyl] N-[(3S)-2-oxo-5-phenyl-1,3-dihydro-1,4-benzodiazepin-3-yl]carbamate Chemical compound O=C1[C@H](N=C(C2=C(N1)C=CC=C2)C1=CC=CC=C1)NC(O[C@H](CCN1CCOCC1)C1=CC=CC=C1)=O YTAHJIFKAKIKAV-XNMGPUDCSA-N 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005111 flow chemistry technique Methods 0.000 description 1
Images
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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0625—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
-
- 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/12—Details relating to cryptographic hardware or logic circuitry
-
- 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/24—Key scheduling, i.e. generating round keys or sub-keys for block encryption
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
一种提升中央处理单元运算效能的数据加密方法,是由中央处理单元执行该数据加密方法的转换函数运算,该转换函数运算时需要利用多个替换盒,该方法包含下述步骤:(A)检测中央处理单元的处理位长度;(B)对应处理位长度以及排列运算所参照的排列顺序,产生至少一个新替换盒,每个新替换盒具有多个新替换值,且各新替换值的位长度等于该处理位长度;及(C)利用新替换盒来进行该转换函数的运算。由于新替换盒是针对不同的位处理能力(如:8位、16位或32位)而设计的,使得中央处理单元的处理能力得以充分发挥。
Description
技术领域
本发明涉及一种数据加密方法及其装置,特别是指一种适用于数据加密标准(Data Encryption Standard;DES)算法的提升中央处理单元运算
效能的数据加密方法及加密装置。
背景技术
参阅图1,数据加密标准(Data Encryption Standard;以下简称DES)算法是一种使用对称性密码的技术,也就是加密/解密均使用相同的密钥。
加密的过程主要由输入单元91将明文(Plain text)901及密钥902输入区块加密器(Block Cipher)92,由区块加密器92内部将明文901经过加密程序后,变成密文(Cipher text)903后由输出单元93输出。
参阅图2,DES技术的详细加密步骤是输入64位的明文,经过起始排列程序801后,再经过加密演算程序802,而加密演算程序802包括十六回合的加密演算步骤804,最后经过反起始排列程序803后输出64位的密文。
起始排列程序801是将64位的明文依据该排列运算所参照的排列顺序,亦即起始排列表(Initial Permutation;IP)将各位数据的顺序重新排列。
加密演算程序802的每一回合的加密演算步骤804主要是将64位数据先区分为两部分的32位数据:右半部的数据Ri以及左半部的数据Li,将右半部的数据Ri与子密钥Ki+1输入至f函数作运算后,再与左半部的数据Li作位互斥或运算(bitwise exclusive OR;bitwise XOR)成为下一回合加密演算步骤804的右半部数据Ri+1,而原来右半部Ri的数据则变成下一回合加密演算步骤804的左半部的数据Li+1。
反起始排列程序803是将经过加密演算程序802的运算结果依据反起始排列表(Inverse of Initial Permutation;IP-1)重新排列各位数据顺序后成为密文输出。
参阅图3,f函数的处理方式是先将32位的数据Ri作延展运算(Expansion),其方式是依据对照延展运算表E,将数据Ri各个位数据的顺序重新排列、扩增为48位的数据E(Ri)。该延展运算表E如表一所示。
表一
32 | 1 | 2 | 3 | 4 | 5 |
4 | 5 | 6 | 7 | 8 | 9 |
8 | 9 | 10 | 11 | 12 | 13 |
12 | 13 | 14 | 15 | 16 | 17 |
16 | 17 | 18 | 19 | 20 | 21 |
20 | 21 | 22 | 23 | 24 | 25 |
24 | 25 | 26 | 27 | 28 | 29 |
28 | 29 | 30 | 31 | 32 | 1 |
接着将扩增后的数据E(Ri)及子密钥Ki+1二者作一位互斥或运算后,将得到的结果再平均分配给八个替换盒(S-Box)S1~S8作一系列选择运算(Selection)。每个替换盒Sj有着各为相异的替换表,且其数据的替换方式为:将6位输入数据最前及最后的2个位取出作为替换表的列数(共4列),中间的4位作为替换表的行数(共16行),以该行列为坐标找出对应的输出数据内容作为新的位值。
表二是替换盒S1的替换表。假设替换盒S1的6位输入数据为(0 1101 1)2,替换的方式把此6位输入数据作为索引,将最前及最后共2个位(01)2系表示参照表二的第1列(因为(01)2=1),而中间的4位是(1101)2系表示参照表二的第13行(因为(1101)2=13),因此对照表二的第1列及第13行的坐标可得其值为5,换算为4位输出数据(0101)2(因为5=(0101)2)。由于共有8个替换盒Sj,由前述可知输入共6*8=48位而输出共4*8=32位,因此经过各替换盒Sj的替换表的处理,总输出又还原为32位的长度。
表二
最后,所有替换盒Sj的总输出需要再经过排列运算(Permutation),其方式是依据排列表P对此32位的各位重新排列其位置,其结果即为该f函数的输出。该排列表P的排序索引(表示位置)如表三所示。
表三
16 | 7 | 20 | 21 |
29 | 12 | 28 | 17 |
1 | 15 | 23 | 26 |
5 | 18 | 31 | 10 |
2 | 8 | 24 | 14 |
32 | 27 | 3 | 9 |
19 | 13 | 30 | 6 |
22 | 11 | 4 | 25 |
由前述可知,该f转换函数运算必须经过位延展运算、位互斥运算、一系列选择运算以及排列运算等步骤,而选择运算步骤中的替换盒Sj,受限于现有标准的处理流程,每次仅能处理4位;然而目前中央处理单元(CPU)的位处理能力日渐提升,每次运算可以处理更多位的数据,因此执行假设是较高位(如:8位、16位或32位)处理能力的中央处理单元,其处理能力将无法充分发挥。
发明内容
因此,本发明的目的是提供一种可因应中央处理单元的位处理能力的提升中央处理单元运算效能的数据加密方法及加密装置。
本发明提升中央处理单元运算效能的数据加密方法,是由中央处理单元执行该数据加密方法的转换函数运算,该转换函数运算包含位延展运算、位互斥运算、一系列选择运算以及排列运算,该选择运算需利用多个替换盒。
该方法包含下述步骤:(A)检测该中央处理单元的处理位长度;(B)对应该处理位长度以及该排列运算所参照的排列顺序,产生至少一个新替换盒,每个新替换盒具有多个新替换值,且各新替换值的位长度等于该处理位长度;及(C)以该位延展运算、该位互斥运算、使用步骤(B)产生的该新替换盒的该选择运算以及多个字元与运算(bitwise AND)、至少一位或运算(bitwise OR)来进行该转换函数的运算。
本发明可提升中央处理单元运算效能的加密装置包含中央处理单元及区块加密器;该区块加密器具有替换盒产生单元、密钥产生单元及加密处理单元。
该中央处理单元具有处理位长度的处理能力,用以执行数据加密方法的转换函数运算,该转换函数运算包含位延展运算、位互斥运算、一系列选择运算以及排列运算(Permutation),该选择运算需要利用多个替换盒。
该替换盒产生单元用以检测该处理位长度并配合该排列运算所参照的排列顺序以产生至少一个新替换盒;该密钥产生单元用以执行子密钥产生程序。
该加密处理单元用以接收明文/密文数据,并由该中央处理单元以该位延展运算、使用该子密钥的该位互斥运算、使用该替换盒产生单元产生的新替换盒的该选择运算以及多个字元与运算、至少一位或运算来进行该转换函数的运算。
由于本发明的数据加密方法及加密装置是对应该处理位长度以及该排列运算所参照的排列顺序,产生至少一个新替换盒,每个新替换盒具有多个新替换值,且各新替换值的位长度等于该处理位长度。因此,对于不同中央处理单元的位处理能力(如:8位、16位或32位),将使其处理能力得以充分发挥。
附图说明
图1是说明现有的数据加密标准算法的装置的***方块图;
图2是说明数据加密标准算法的加密过程的流程图;
图3是说明图3中的f函数如何进行运算的流程图;
图4是说明本发明可提升中央处理单元运算效能的加密装置的优选实施例的***方块图;
图5是说明本发明提升中央处理单元运算效能的数据加密方法的优选实施例的流程图;
图6是说明制作新替换盒的替换值的原理是必须先产生数列的示意图;
图7是说明将图6所得的数列切为四份后平均分配给四个替换盒作为每一替换盒的新的替换值的示意图,;
图8是说明当中央处理单元的处理能力为8位时配置四个替换盒及维持32位输出的步骤的流程图;
图9是图8的其中一个替换盒具有的新替换值的对照表;
图10是说明将图6所得的数列切为两份后平均分配给两个替换盒作为每一替换盒的新替换值的示意图;
图11是说明当中央处理单元的处理能力为16位时配置两个替换盒及维持32位输出的步骤的流程图;
图12是图11的其中一个替换盒具有的新替换值的对照表;
图13是说明将图6所得的数列分配给一个替换盒作为每一替换盒的新替换值的示意图;
图14是说明当中央处理单元的处理能力为32位时配置一个替换盒及维持32位输出的步骤的流程图;及
图15是图14的该替换盒具有的新替换值的对照表。
具体实施方式
有关本发明的前述及其它技术内容、特点与功效,在以下配合参考图式的数个优选实施例的详细说明中,将可清楚的呈现。在本发明被详细描述之前,要注意的是,在以下的说明内容中,类似的组件是以相同的标号来表示。
参阅图4,本发明加密装置100的优选实施例中,由中央处理单元2执行数据加密方法的转换函数运算,该转换函数运算包含位延展运算、位互斥运算、一系列选择运算以及排列运算,该选择运算需利用多个替换盒。
该转换函数运算是类似数据加密标准(DES)的f函数处理的架构,不同之处在于本发明是利用中央处理单元2的处理位长度以及该排列运算所参照的排列顺序,来得到新的替换盒以进行选择运算,选择运算的结果再加上适当的位和以及位或运算(无需原来的排列运算)即可得到该转换函数运算的结果。
加密装置100包含区块加密器1、中央处理单元2、输入缓冲单元3及输出缓冲单元4。
其中,输入缓冲单元3接收并暂存中央处理单元2的处理位长度(如:8位、16位或32位)及加密演算所需的参数(密钥、明文/密文)等数据。
区块加密器1具有替换盒产生单元11、密钥产生单元12、加密处理单元13及数据缓冲单元14。
替换盒产生单元11用以将输入缓冲单元3的处理位长度数据101配合排列运算所参照的排列顺序产生至少对应的新替换盒,并将该新替换盒暂存于数据缓冲单元14中。
密钥产生单元12接收输入缓冲单元3的密钥102以执行子密钥Ki+1产生程序以产生48位的子密钥Ki+1,并将子密钥Ki+1暂存于数据缓冲单元14中。
加密处理单元13自输入缓冲单元10接收48位的数据E(Ri)103,并自数据缓冲单元14取得该子密钥Ki+1及该等新替换盒执行加密程序,如先其技术所提,该明文/密文是经由十六回合的加密演算,其中每一回合需要将数据Ri作位延展运算,其方式是对照延展运算表E的方式将数据Ri扩增为48位的数据E(Ri),接着该加密处理单元13再将数据长度均为48位的数据E(Ri)及子密钥Ki+1二者作位互斥或运算,并将得到的48位的结果平均分配给各该新替换盒,以作为数据的替换及数据加密标准(DES)相关的处理。
输出缓冲单元4则输出该加密处理单元13加密处理后的明文/密文。由于采用数据加密标准算法的架构,其技术原理为现有技术且并非本发明重点,不再多作介绍。
参阅图4及图5,本发明提升中央处理单元运算效能的数据加密方法包含下述步骤:区块加密器1检测中央处理单元2的处理位长度(步骤501);接着,区块加密器1对应该处理位长度以及该排列运算所参照的排列顺序,产生至少新替换盒,每个新替换盒具有多个新替换值,且各新替换值的位长度等于该处理位长度(步骤502);及以该位延展运算、该位互斥运算、利用步骤(502)产生的该新替换盒的该选择运算以及多字元且运算、至少一位或运算来进行该转换函数的运算(步骤503)。
由于加密装置100由中央处理单元2执行类似数据加密标准的f转换函数运算,而本发明各替换盒的新替换值的长度等于该处理位长度,因此可使中央处理单元2达到最佳的运算效能。
如图6所示,该新替换值的制作是以原来数据加密标准(DES)八个替换盒S1至S8为基础,每一新替换盒替换值原有替换盒的替换值合并后重新排列的结果;在原来的数据加密标准中,每一替换盒S1至S8是具有4*16个替换值的矩阵,每个替换值为4位。
在制作新的替换盒之前,需要先将旧有的替换盒S1至S8以两两合并(S1,S2),(S3,S4),(S5,S6),(S7,S8)的方式分别合并于四个暂存矩阵T1至T4并重新排列。由于原来每一替换盒S1至S8的替换值为4位,合并后使得暂存矩阵T1至T4的各替换值扩增成为8位。
本优选实施例中,合并方式是指定要合并的二替换盒中,其中一替换盒的替换值为最高字节(MSB)而另一替换盒的替换值为最低字节(LSB)。
每次取各暂存矩阵T1至T4同一对应位置的替换值(8位),依T1至T4的顺序取出且逐一填入8*4共32位的暂存矩阵U,并依据对照表P将暂存矩阵U的每一位位置的调换成为暂存矩阵U’。依此类推,之后将暂存矩阵T1至T4下一个对应位置的替换值(8位)依前述流程处理完毕,最后得到4*16个暂存矩阵U’,每个暂存矩阵U’可视为32位数列。
本发明制作新替换盒的替换值的原理即是将原有替换盒合并后重新排列,其方式是将对应位置的替换值取出,依序合成32位数列,再依据该排列运算所参照的排列顺序,接着依序分配给至少新替换盒,使得该新替换盒的新替换值的位长度等于该处理位长度。
必须说明的是,如果中央处理单元2的处理能力为8位,该332位数列分为四个区段供中央处理单元处理,每个区段为8位,且各区段中位的排序索引依序分别为[16,7,20,21,29,12,28,17],[1,15,23,26,5,18,31,10],[2,8,24,14,32,27,3,9]及[19,13,30,6,22,11,4,25];如果中央处理单元的处理能力为16位,该32位数列系分为两个区段供中央处理单元处理,每个区段为16位,各区段中位的排序索引依序分别为[16,7,20,21,29,12,28,17,1,15,23,26,5,18,31,10],及[2,8,24,14,32,27,3,9,19,13,30,6,22,11,4,25];如果是中央处理单元的处理能力为32位,该32位数列系设计为一个32位的区段,且该区段中位的排序索引依序分别为[16,7,20,21,29,12,28,17,1,15,23,26,5,18,31,10,2,8,24,14,32,27,3,9,19,13,30,6,22,11,4,25]。
由于加密处理单元13是依据中央处理单元2的处理能力将每个暂存矩阵U’(共32位)切分处理而成新的替换盒,48位的数据将被平均分配给各替换盒作转换。以下分别依照8位、16位及32位的不同实施例加以说明:
一、中央处理单元的处理能力为8位的替换盒:
如图7所示,为了符合中央处理单元2是8位处理能力,将暂存矩阵U’的32位切为四份后平均分配给四个替换盒作为每一个替换盒的新替换值,每一替换盒仍维持具有4*16替换值,每个替换值为8位。
如图8所示,每一个新替换盒S1’至S4’各有2组8位的输出成为该选择运算的结果,每一组8位的输出将依照其顺序进行对应的位与运算以得到所需的位数据,该位数据经适当的位或运算后即为该转换函数运算的结果。
在本优选实施例中,中央处理单元2的处理能力为8位,配置四个替换盒,因此每一替换盒S1’至S4’可分配48位/4=12位的数据。将此12位分为两个6位,且分别以两个6位为索引,自各替换盒S1’至S4’取出两个8位的替换值,如图9所示,是图8的其中一个替换盒S1’具有的新替换值。
再如图8所示,各替换盒S1’至S4’取出两个8位的替换值后,接着将两个8位的替换值中,分别作一位与运算,亦即在其中一个替换值取其4位的最高字节而另一替换值取其4位的最低字节,并将二者共同以一位或运算组合为8位数据输出;由于共有四个替换盒S1’至S4’,因此维持总输出为8*4=32位。
二、中央处理单元的处理能力为16位的替换盒:
如图10所示,为了符合中央处理单元2是16位的处理能力,将暂存矩阵U’的32位切为二份后平均分配给两个替换盒S1”至S2”作为每一替换盒的新替换值,每一替换盒仍维持具有4*16替换值,每个替换值为16位。
如图11所示,每一个新替换盒S1”至S2”将各有4组16位的输出成为该选择运算的结果,每一组16位的输出将依照其顺序进行对应的位与运算以得到所需的位数据,该位数据经适当的位或运算后即为该转换函数运算的结果。
由于中央处理单元2的处理能力为16位是配置两个替换盒,因此每一替换盒S1”至S2”可分配48位/2=24位的数据。将此24位分为四个6位,且分别以四个6位为索引,自各替换盒S1”至S2”取出四个16位的替换值;如图12所示,是图11的其中一个替换盒S1”具有的新替换值。
再如图11所示,各替换盒S1”至S2”取出四个16位的替换值后,接着将四个16位的替换值中,分别作一位与运算,亦即将每个替换值切为四等份,每一等份为4位,第一个替换值取其第一等份的4位数据,第二个替换值取其第二等份的4位数据,第三个替换值取其第三等份的4位数据,第四个替换值取其第四等份的4位数据,并将前述四个4位数据共同以一位或运算组合为16位数据输出;由于共有两个替换盒S1”至S2”,因此维持总输出为16*2=32位。
三、中央处理单元的处理能力为32位的替换盒:
如图13所示,为了符合中央处理单元2是32位处理能力,将暂存矩阵U’的32位直接分配给一个替换盒S1”’作为新的替换值,该替换盒S1”’仍维持具有4*16替换值,每个替换值为32位。
如图14所示,新替换盒S1”’将有8组32位的输出成为该选择运算的结果,每一组32位的输出将依照其顺序进行对应的位与运算以得到所需的位数据,该位数据经适当的位或运算后即为该转换函数运算的结果。
由于中央处理单元2的处理能力为32位是配置1个替换盒,因此该替换盒S1”’可分配48位的数据。将此48位分为八个6位,且分别以八个6位为索引,自该替换盒S1”’取出八个32位的替换值;如图15所示,是图14的该替换盒S1”’具有的新替换值。
再如图14所示,替换盒S1”’取出8个32位的替换值后,接着将八个32位的替换值中,分别作一位与运算,亦即将每个替换值切为八等份,每一等份为4位,第一个替换值取其第一等份的4位数据,第二个替换值取其第二等份的4位数据,依此类推,第七个替换值取其第七等份的4位数据,第八个替换值取其第八等份的4位数据,并将前述共8个4位数据共同以一位或运算组合为32位数据输出;由于只有一个替换盒S1”’,因此维持总输出为32*1=32位。
综上所述,由于本发明提升中央处理单元运算效能的数据加密方法及加密装置是设计成对应中央处理单元的处理位长度产生至少一个替换盒,每个新替换盒具有多个新替换值,且各新替换值的位长度等于该处理位长度,因此对于高于4位以上的处理能力(如:8位、16位或32位)的中央处理单元,其处理能力将可得到充分发挥。
以上所说明的仅是本发明的优选实施例,而不能以此限定本发明实施的范围,本领域技术人员在不脱离所附权利要求所限定的精神和范围的情况下对本发明内容所作的简单的等效变化与修饰,皆属于本发明涵盖的范围。
Claims (4)
1.一种提升中央处理单元运算效能的数据加密方法,是由中央处理单元执行所述数据加密方法的转换函数运算,所述转换函数运算包含位延展运算、位互斥运算、一系列选择运算以及排列运算,所述选择运算需要利用多个替换盒,所述方法包含下述步骤:
(A)检测所述中央处理单元的处理位长度;
(B)在所述中央处理单元的处理位长度为8位时,步骤(B)每一新替换盒的替换值是原有的替换盒的替换值合并后重新排列的结果,使得各新替换值的位长度等于8位,
其中每一新替换盒的替换值是原有替换盒先两两合并后,取出合并后的替换盒对应位置的替换值依序合成32位数列,再依据所述排列运算所参照的排列顺序重新排列其位置,接着依序分配给四个新替换盒,每个新替换值的位长度为8位,
其中所述32位数列是分为四个区段供中央处理单元处理,每区段为8位,且各区段中位的排序索引依序分别为[16,7,20,21,29,12,28,17],[1,15,23,26,5,18,31,10],[2,8,24,14,32,27,3,9]及[19,13,30,6,22,11,4,25],
在所述中央处理单元的处理位长度为16位时,步骤(B)每一新替换盒的替换值是原有的替换盒的替换值合并后重新排列的结果,使得各新替换值的位长度等于16位,
其中每一个新替换盒的替换值是原有替换盒先两两合并后,取出合并后的替换盒对应位置的替换值依序合成32位数列,再依据所述排列运算所参照的排列顺序重新排列其位置,接着依序分配给两个新替换盒,每个新替换值的位长度为16位,
其中所述32位数列是分为两个区段供中央处理单元处理,每个区段为16位,且各区段中位的排序索引依序分别为[16,7,20,21,29,12,28,17,1,15,23,26,5,18,31,10],及[2,8,24,14,32,27,3,9,19,13,30,6,22,11,4,25],
所述中央处理单元的处理位长度为32位时,步骤(B)每一新替换盒 的替换值是原有的替换盒的替换值合并后重新排列的结果,使得各新替换值的位长度等于32位,
其中每一新替换盒的替换值是原有替换盒先两两合并后,取出合并后的替换盒对应位置的替换值依序合成32位数列,再依据所述排列运算所参照的排列顺序重新排列其位置,接着分配给新替换盒,每个新替换值的位长度为32位,
所述32位数列为一个区段供中央处理单元处理,且所述区段中位的排序索引分别为[16,7,20,21,29,12,28,17,1,15,23,26,5,18,31,10,2,8,24,14,32,27,3,9,19,13,30,6,22,11,4,25];
(C)在所述中央处理单元的处理位长度为8位时,在步骤(C)中,每一个新替换盒各有两组8位的输出成为所述选择运算的结果,每一组8位的输出依照其顺序进行对应的位与运算以得到所需的位数据,所述位数据经位或运算后即为所述转换函数运算的结果,
在所述中央处理单元的处理位长度为16位时,在步骤(C)中,每一个新替换盒将各有四组16位的输出成为所述选择运算的结果,每一组16位的输出将依照其顺序进行对应的位与运算以得到所需的位数据,所述位数据经位或运算后即为所述转换函数运算的结果,
在所述中央处理单元的处理位长度为32位时,在步骤(C)中,所述新替换盒将有八组32位的输出成为所述选择运算的结果,每一组32位的输出将依照其顺序进行对应的位与运算以得到所需的位数据,所述位数据经位或运算后即为所述转换函数运算的结果。
2.根据权利要求1所述的提升中央处理单元运算效能的数据加密方法,其中所述转换函数是数据加密标准算法的f转换函数。
3.一种可提升中央处理单元运算效能的加密装置,包括:
中央处理单元,具有处理位长度的处理能力,用以执行数据加密方法的转换函数运算,所述转换函数运算包含位延展运算、位互斥运算、一系列选择运算以及排列运算,所述选择运算需要利用多个替换盒;及
区块加密器,具有:
替换盒产生单元,用以检测所述处理位长度;
密钥产生单元,用以执行子密钥产生程序,
在所述中央处理单元的处理位长度为8位时,所述替换盒产生单元是依据所述处理位长度提供各新替换值的位长度等于8位的替换盒,且每一新替换盒的替换值是原有的替换盒的替换值合并后重新排列的结果,
其中每一新替换盒的替换值是原有替换盒先两两合并后,取出合并后的替换盒对应位置的替换值依序合成32位数列,再依据所述排列运算所参照的排列顺序重新排列其位置,接着依序分配给四个新替换盒,每个新替换值的位长度为8位,
其中所述32位数列是分为四个区段供中央处理单元处理,每区段为8位,且各区段中位的排序索引依序分别为[16,7,20,21,29,12,28,17],[1,15,23,26,5,18,31,10],[2,8,24,14,32,27,3,9]及[19,13,30,6,22,11,4,25],
在所述中央处理单元的处理位长度为16位时,所述替换盒产生单元是依据所述处理位长度提供各新替换值的位长度等于16位的替换盒,且每一新替换盒的替换值是原有的替换盒的替换值合并后重新排列的结果,
其中每一新替换盒的替换值是原有替换盒先两两合并后,取出合并后的替换盒对应位置的替换值依序合成32位数列,再依据所述排列运算所参照的排列顺序重新排列其位置,接着依序分配给两个新替换盒,每个新替换值的位长度为16位,
其中所述32位数列是分为两个区段供中央处理单元处理,每个区段为16位,且各区段中位的排序索引依序分别为[16,7,20,21,29,12,28,17,1,15,23,26,5,18,31,10],及[2,8,24,14,32,27,3,9,19,13,30,6,22,11,4,25],
在所述中央处理单元的处理位长度为32位时,所述替换盒产生单元是依据所述处理位长度提供各新替换值的位长度等于32位的替换盒,且新替换盒的替换值是原有的替换盒的替换值合并后重新排列的结果,
其中每一新替换盒的替换值是原有替换盒先两两合并后,取出合并后的替换盒对应位置的替换值依序合成32位数列,再依据所述排列运算 所参照的排列顺序重新排列其位置,接着分配给新替换盒,每个新替换值的位长度为32位,
其中所述32位数列为一个区段供中央处理单元处理,且所述区段中位的排序索引分别为[16,7,20,21,29,12,28,17,1,15,23,26,5,18,31,10,2,8,24,14,32,27,3,9,19,13,30,6,22,11,4,25];及
加密处理单元,用以接收明文/密文数据,
在所述中央处理单元的处理位长度为8位时,每一个新替换盒将各有两组8位的输出成为所述选择运算的结果,每一组8位的输出将依照其顺序进行对应的位与运算以得到所需的位数据,所述位数据经位或运算后即为所述转换函数运算的结果,
在所述中央处理单元的处理位长度为16位时,每一个新替换盒将各有四组16位的输出成为所述选择运算的结果,每一组16位的输出将依照其顺序进行对应的位与运算以得到所需的位数据,所述位数据经位或运算后即为所述转换函数运算的结果,
在所述中央处理单元的处理位长度为32位时,所述新替换盒将有八组32位的输出成为所述选择运算的结果,每一组32位的输出将依照其顺序进行对应的位与运算以得到所需的位数据,所述位数据经位或运算后即为所述转换函数运算的结果。
4.根据权利要求3所述的可提升中央处理单元运算效能的加密装置,其中所述转换函数是数据加密标准算法是f转换函数。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610142830.3A CN101169776B (zh) | 2006-10-27 | 2006-10-27 | 提升中央处理单元运算效能的数据加密方法及加密装置 |
US12/376,339 US8204219B2 (en) | 2006-10-27 | 2007-10-26 | Cryptographic method and apparatus for enhancing computation performance of a central processing unit |
JP2009504932A JP5113833B2 (ja) | 2006-10-27 | 2007-10-26 | 中央演算処理装置の演算能力を高めるための暗号方法および暗号装置 |
PCT/JP2007/071357 WO2008053980A1 (en) | 2006-10-27 | 2007-10-26 | Cryptographic method and apparatus for enhancing computation performance of a central processing unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610142830.3A CN101169776B (zh) | 2006-10-27 | 2006-10-27 | 提升中央处理单元运算效能的数据加密方法及加密装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101169776A CN101169776A (zh) | 2008-04-30 |
CN101169776B true CN101169776B (zh) | 2012-01-25 |
Family
ID=39203286
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200610142830.3A Expired - Fee Related CN101169776B (zh) | 2006-10-27 | 2006-10-27 | 提升中央处理单元运算效能的数据加密方法及加密装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8204219B2 (zh) |
JP (1) | JP5113833B2 (zh) |
CN (1) | CN101169776B (zh) |
WO (1) | WO2008053980A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120201373A1 (en) * | 2011-02-03 | 2012-08-09 | Futurewei Technologies, Inc. | Design of a Good General-Purpose Hash Function with Limited Resources |
US9379887B2 (en) | 2012-09-14 | 2016-06-28 | Qualcomm Incorporated | Efficient cryptographic key stream generation using optimized S-box configurations |
CN108737070A (zh) * | 2018-04-24 | 2018-11-02 | 国网山东省电力公司日照供电公司 | 基于改进des加密算法的电网移动终端数据传输方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1375764A (zh) * | 2001-03-19 | 2002-10-23 | 深圳市中兴集成电路设计有限责任公司 | Rsa加密算法的实现电路及方法 |
CN1379323A (zh) * | 2001-04-11 | 2002-11-13 | 北京国芯安集成电路设计有限公司 | 一种超长度的阵列式组合逻辑除法器 |
CN1525307A (zh) * | 2003-02-26 | 2004-09-01 | 上海华园微电子技术有限公司 | 一种模乘运算电路和一种运用该模乘运算电路的加密方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS649561A (en) | 1987-07-02 | 1989-01-12 | Seiko Epson Corp | Computer |
US6031911A (en) * | 1996-07-18 | 2000-02-29 | Entrust Technologies, Ltd. | Practical S box design |
JP3035889B2 (ja) * | 1997-04-23 | 2000-04-24 | 松下電器産業株式会社 | 暗号化処理装置、及び、復号化処理装置 |
JP4243874B2 (ja) | 1998-09-03 | 2009-03-25 | 三菱電機株式会社 | 暗号管理装置 |
US7428305B1 (en) * | 2000-05-02 | 2008-09-23 | Qualcomm Incorporated | Generation of keyed integer permutations for message authentication codes |
JP3907976B2 (ja) * | 2000-07-13 | 2007-04-18 | 富士通株式会社 | F関数内部にspn構造を用いた演算装置および演算方法 |
JP3794266B2 (ja) * | 2000-11-08 | 2006-07-05 | 株式会社日立製作所 | 楕円曲線スカラー倍計算方法及び装置並びに記憶媒体 |
JP2003323117A (ja) * | 2002-04-30 | 2003-11-14 | Japan Science & Technology Corp | 暗号処理方法および装置 |
JP2004212828A (ja) * | 2003-01-08 | 2004-07-29 | Sony Corp | 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム |
US8077867B2 (en) | 2007-01-15 | 2011-12-13 | Panasonic Corporation | Confidential information processing apparatus, confidential information processing device, and confidential information processing method |
JP2009044677A (ja) | 2007-08-10 | 2009-02-26 | Panasonic Corp | 機密情報処理装置、機密情報処理機器、及び機密情報処理方法 |
-
2006
- 2006-10-27 CN CN200610142830.3A patent/CN101169776B/zh not_active Expired - Fee Related
-
2007
- 2007-10-26 US US12/376,339 patent/US8204219B2/en not_active Expired - Fee Related
- 2007-10-26 JP JP2009504932A patent/JP5113833B2/ja not_active Expired - Fee Related
- 2007-10-26 WO PCT/JP2007/071357 patent/WO2008053980A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1375764A (zh) * | 2001-03-19 | 2002-10-23 | 深圳市中兴集成电路设计有限责任公司 | Rsa加密算法的实现电路及方法 |
CN1379323A (zh) * | 2001-04-11 | 2002-11-13 | 北京国芯安集成电路设计有限公司 | 一种超长度的阵列式组合逻辑除法器 |
CN1525307A (zh) * | 2003-02-26 | 2004-09-01 | 上海华园微电子技术有限公司 | 一种模乘运算电路和一种运用该模乘运算电路的加密方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2008053980A1 (en) | 2008-05-08 |
US8204219B2 (en) | 2012-06-19 |
US20100228992A1 (en) | 2010-09-09 |
JP5113833B2 (ja) | 2013-01-09 |
JP2010507813A (ja) | 2010-03-11 |
CN101169776A (zh) | 2008-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2016386405B2 (en) | Fast format-preserving encryption for variable length data | |
US6324286B1 (en) | DES cipher processor for full duplex interleaving encryption/decryption service | |
WO2018205549A1 (zh) | 一种全同态加密的密文查询方法和*** | |
EP1081889A2 (en) | Extended key generator, encryption / decryption unit, extended key generation method, and storage medium | |
Wei et al. | Cryptanalysis of a cryptosystem using multiple one-dimensional chaotic maps | |
CN110880967B (zh) | 采用分组对称密钥算法对多消息并行加解密方法 | |
WO2021129470A1 (zh) | 基于多项式完全同态的二进制数据加密***及方法 | |
Ding | Improved related-cipher attack on Salsa20 stream cipher | |
CN105100085B (zh) | 一种对信息进行加密和解密的方法和装置 | |
Pashakolaee et al. | Hyper-chaotic Feeded GA (HFGA): a reversible optimization technique for robust and sensitive image encryption | |
CN102222188A (zh) | 一种信息***用户密码的生成方法 | |
CN105916141A (zh) | 一种自同步的祖冲之加解密算法的实现***及其方法 | |
CN101169776B (zh) | 提升中央处理单元运算效能的数据加密方法及加密装置 | |
CN102394746A (zh) | 一种基于数字传感器的称重***的数据传输方法 | |
Ojha et al. | An Innovative Approach to Enhance the Security of Data Encryption Scheme | |
US7773753B2 (en) | Efficient remotely-keyed symmetric cryptography for digital rights management | |
Yang et al. | Trust enhancement over range search for encrypted data | |
US20030235298A1 (en) | Shifting an encryption key in either a first or second direction via a uni-directional shifting unit | |
US20080219448A1 (en) | Multiple-layers encryption/decryption and distribution of copyrighted contents | |
CN101479774B (zh) | 加密处理装置、数据变换方法和集成电路 | |
CN110601817A (zh) | 一种数据处理方法及装置 | |
CN107409041A (zh) | 用于通过使用查找表实现包括替换盒和线性变换的混合器函数来执行块密码加密的***和方法 | |
KR20040041860A (ko) | 병렬 디이에스 구조를 갖는 암호 장치 | |
KR20090079028A (ko) | 암호화 방법, 클라이언트의 데이터 처리 방법 | |
JP2002510058A (ja) | 2進データ・ブロックの暗号変換のための方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120125 Termination date: 20191027 |