CN106656467B - 加密装置及方法 - Google Patents
加密装置及方法 Download PDFInfo
- Publication number
- CN106656467B CN106656467B CN201610108510.XA CN201610108510A CN106656467B CN 106656467 B CN106656467 B CN 106656467B CN 201610108510 A CN201610108510 A CN 201610108510A CN 106656467 B CN106656467 B CN 106656467B
- Authority
- CN
- China
- Prior art keywords
- encryption
- block
- size
- arbitrary value
- firstel
- 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
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
-
- 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
- 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/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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
-
- 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)
Abstract
本发明公开一种加密装置以及方法。根据本发明的一实施例的加密装置包括:密钥表生成部,生成由种子值导出的任意值,并生成包含所生成的所述任意值的密钥表;以及加密部,生成具有轮函数的菲斯特尔结构的块加密算法,并利用所生成的所述块加密算法而对明文数据块进行加密,所述轮函数应用所生成的所述密钥表。
Description
技术领域
本发明的实施例涉及一种加密技术。
背景技术
现有的白盒密码算法的实现方式根据成为基础的对称密钥密码算法的内部特征而不同,并且因为依靠基础算法所以难以提供普适性,并且为了保护基础算法的密钥而需要插入较多的额外运算,所以于相比基础算法,而导致降低几十倍的效率。
另外,现有的白盒密码算法无法提供与设计者的初衷相匹配的足够的安全性,并且实时暴露于密钥复原攻击下。
现有技术文献
专利文献
(专利文献0001)韩国公开专利第10-2012-0030335号(2012.03.28)
发明内容
本发明的实施例用于提供一种加密装置以及方法。
根据本发明的一实施例的加密装置包括:密钥表生成部,生成由种子值导出的任意值,并生成包含所生成的所述任意值的密钥表(Key table);以及加密部,生成具有轮函数的菲斯特尔结构(Feistel)的块加密算法,并利用所生成的所述块加密算法而对明文数据块进行加密,所述轮函数应用所生成的所述密钥表。
所述种子值可以是能够用比特串表示的初始输入值。
所述种子值可以是密钥、计算器值以及初始化向量中的一个。
所述密钥表生成部可以基于用于加密的可用存储器的大小来确定所述任意值的大小。
所述加密部可以基于所述明文数据块的大小以及所述任意值的大小来确定所述菲斯特尔结构的分支数,并且生成具有所确定的所述分支数的菲斯特尔结构的块加密算法。
所述加密部可以利用如下的数学式确定所述分支数:
(其中,b为分支数,n为所述明文数据块的大小,k所述任意值的大小)。
所述加密部可以基于安全强度来确定所述菲斯特尔结构的轮数,并且可以生成具有所确定的所述轮数的菲斯特尔结构的块加密算法。
根据本发明的一实施例的加密方法,包括如下步骤:生成由种子值导出的任意值;生成包含所生成的所述任意值的密钥表;生成具有轮函数的菲斯特尔结构的块加密算法,该轮函数应用所生成的所述密钥表;利用生成的所述块加密算法加密明文数据块。
所述种子值可以是可以用比特串表示的初始输入值。
所述种子值可以是密钥、计算器值以及初始化向量中的一个。
生成所述任意值的步骤可以包括以下步骤:基于用于加密的可用存储器的大小来确定所述任意值的大小;生成具有所确定的所述任意值的大小的任意值。
生成所述块加密算法的步骤可以包括以下步骤:基于所述明文数据块的大小以及所述任意值的大小来确定所述菲斯特尔结构的分支数;以及生成具有所确定的所述分支数的菲斯特尔结构的块加密算法。
在所述确定分支数的步骤中,可以利用如下的数学式而确定所述分支数:
(其中,b为分支数,n为所述明文数据块的大小,k为所述任意值的大小)。
生成所述块加密算法的步骤可以包括如下的步骤:基于安全强度来确定所述菲斯特尔结构的轮数;以及生成具有所确定的所述轮数的菲斯特尔结构的块加密算法。
根据本发明的一实施例的储存于计算机可读记录介质的计算机应用程序,该应用程序与硬件结合以执行以下步骤:生成从种子值导出的任意值;生成包含所生成的所述任意值的密钥表;生成具有轮函数的菲斯特尔结构的块加密算法,该轮函数应用所生成的所述密钥表;利用所生成的所述块加密算法而对明文数据块进行加密。
根据本发明的实施例,通过利用可以在白盒环境内保护密钥的密钥表应用于轮函数的菲斯特尔结构的加密算法,可以没有用于保护密钥的额外运算步骤的情况下在白盒环境下实现安全的数据加密。
并且,使密钥表大小以及菲斯特尔结构的分支数和轮数可以根据加密应用环境而被可变地调整,从而可以构成对应用环境最优的加密算法。
附图说明
图1为根据本发明的一实施例的加密装置的构成图。
图2为根据本发明的一实施例的密钥表生成部的详细构成图。
图3为示出运算部中使用的轮函数的例子的图。
图4为示出根据本发明的一实施例而生成的块加密算法的菲斯特尔(Feistel)结构的图。
图5为根据本发明的一实施例的加密方法的流程图。
图6为示出根据本发明的一实施例的块加密算法的生成步骤的流程图。
符号说明
100:加密装置 110:密钥表生成部
111:密钥生成部 113:运算部
130:加密部
具体实施方式
以下,将参考附图而对本发明的具体实施形态进行说明。以下的详细的说明是为帮助包括对本说明书中描述的方法、装置以及/或者系统的理解而提供的。然而这仅仅为示例,本发明并不局限于此。
在说明本发明的实施例时,如果判断为对与本发明相关的公知技术进行的具体说明会给本发明的主旨带来不必要的混乱,则将省略对其的详细说明。并且,下述的术语为考虑到本发明中的作用而给出定义的术语,其可以根据用户、适用者的意图或者习惯等而不同。所以,其需要基于本说明书的整体内容来做出定义。在详细的说明中使用的术语只是用于叙述本发明的实施例的,而并不具有限制作用。在没有明确的反例时,单数形态的表现形式包括复数形态的含义。本说明书中,要理解“包括”或者“具有”等表述指某些特征、数字、步骤、操作、要素以及它们的部分或者组合,不能理解成排除所叙述的之外的一个或以上的其他特征、数字、步骤、操作、要素以及它们的部分或者组合的存在或者可能性。
图1为根据本发明的一实施例的加密装置的构成图。
参考图1,根据本发明的一实施例的加密装置100包括密钥表生成部110以及加密部130。
密钥表生成部110利用种子值(seed value)生成由种子值导出的任意值,并生成包含所生成的任意值的密钥表(Key table)。
此时,密钥表可以是以由种子值导出的任意值组成的查找表(lookup table)。
并且,种子值可意指能够用比特串(bit string)表示的初始输入值。例如,种子值可以包括密钥、块加密(Block Cipher)的操作模式中使用的计数器值、由任意比特串组成的初始化向量等。
另外,根据本发明的一实施例,由密钥表生成部110生成的密钥表的各个任意值的大小可根据在应用加密装置100的计算环境内可为加密而得到利用的可用存储器的大小来确定。
加密部130生成包含轮函数的菲斯特尔(Feistel)结构的块加密算法,并且可以利用所生成的块加密算法而对明文数据块进行加密,其中轮函数应用由密钥表生成部110生成的密钥表。
具体地,加密部130确定菲斯特尔结构的分支(branch)数以及轮数,并且可以将密钥表应用于菲斯特尔结构的各个轮函数而生成块加密算法。
此时,根据本发明的一实施例,由加密部130构成的块加密算法可以基于具有菲斯特尔结构的现有的块加密算法(例如,DES算法)来生成。例如,加密部130可以基于DES算法来将密钥表应用于DES算法的菲斯特尔结构的各个轮函数,并且改变菲斯特尔结构的分支数和轮数,据此生成块加密算法。
另外,根据本发明的一实施例,菲斯特尔结构的分支数可以根据将被加密的明文数据块的大小以及构成密钥表的任意值的大小而确定。具体地,加密部130例如可以基于如下的数学式1来确定菲斯特尔结构的分支数b。
【数学式1】
数学式1中,b指分支数,n指所要加密的明文数据块的大小(bit),k指构成密钥表的任意值的大小(bit)。
另外,根据本发明的一实施例,菲斯特尔结构的轮数可以根据应用加密装置100的环境内的安全强度而确定。
图2为根据本发明的一实施例的密钥表生成部110的详细构成图。
参考图2,密钥表生成部110可以包括:密钥生成部111,由种子值生成多个子密钥;运算部113,利用所生成的各个子密钥生成密钥表。
具体地,密钥生成部111接收种子值并生成子密钥后,可以由前一个所生成的子密钥重复生成新的子密钥。例如,如果假设生成三个子密钥,则密钥生成部111可以由所接收到的种子值生成随机数而生成第一个子密钥。之后,密钥生成部111由所生成的第一个子密钥生成随机数而生成第二个子密钥,并且由所生成的第二个子密钥生成随机数而生成第三个子密钥。
运算部113由在密钥生成部111中生成的各个子密钥生成用于构成密钥表的任意值,并可生成包含所生成的任意值的密钥表。具体地,运算部113可以利用用于由所输入的子密钥生成任意值的轮函数而在每一轮均将各个子密钥应用于轮函数,由此生成任意值。
具体地,图3为示出运算部113中应用的轮函数的例子的图。
参照图3,如图示的例子那样,运算部113可以对密钥生成部111中生成的子密钥ki以及具有与子密钥ki相同大小的任意的值a进行XOR运算(异或运算),然后将XOR运算结果分成两个部分并将其分别应用于S盒S-box。之后,运算部113可以对两个S盒S-box的输出结果值进行矩阵运算Matrix而产生任意值ri。此时,矩阵运算可以使用例如,利用MDS(Maximum Distance Separable)矩阵的矩阵运算等具有能够使针对输入值的扩散效果最大化的性质的多种形态的矩阵运算。
另外,密钥表生成部110中进行的密钥表的生成并不一定要局限于图2以及图3中示出的例子。例如,密钥表生成部110除了图2以及图3中示出的例子之外,还可以利用具有单向特性的多种方式而从种子值生成任意值后,生成包含所生成的任意值的密钥表。
图4为示出根据本发明的一实施例而生成的块加密算法的菲斯特尔结构的图。
图4中,假设所要加密的明文数据块的大小和构成密钥表的任意值的大小分别为64bit和16bit。
加密部130例如可以如根据所述数学式1而示出的例子,具有四个分支,并且构成将密钥表作为轮函数利用的四轮的基本结构,并且根据基于安全强度来确定的轮数(图示的例子中为32轮)而构成菲斯特尔结构,以使四轮的基本结构重复执行。
另外,在示出的基本结构中,在第一轮中以左侧为基准,向第一个分支输入的块的值被转换成密钥表中对应的任意值,并且转换的任意值通过XOR运算而与向第二个分支输入的的块的值结合。之后,在第二轮中通过第一轮而生成的值被转换为密钥表中对应的任意值,并且所转换的任意值通过XOR运算而与向第三个分支输入的块的值结合。之后,通过相同的方式进行第三轮和第四轮,并且在第四轮中,通过密钥表转换的任意值通过XOR运算而与向第一个分支输入的块的值结合。
另外,图4中示出的菲斯特尔结构为示例性的结构,所以需要注意根据本发明的一实施例的菲斯特尔结构不局限于图4中示出的例子。即,根据本发明的实施例的菲斯特尔结构可以根据成为基础的块密码算法而具有不同的形态。
并且,在图4中示出的例子中,例示为菲斯特尔结构的各轮的轮函数利用密钥表的情形,但是并不限于此。例如,各轮的轮函数可以是将成为基础的块密码算法中利用的轮函数的一部分转换为密钥表的函数。
另外,在一实施例中,图1中示出的密钥表生成部110以及加密部130可以在包括一个以上的处理器以及与该处理器连接的计算机可读记录介质的一个以上的计算装置上实现。计算机可读记录介质可以位于处理器的内部或者外部,并且可以通过公知的多种手段而连接到处理器。计算装置内的处理器可以使各个计算装置照着本说明书中记载的示例性的实施例运转。例如,处理器可以执行计算机可读记录介质中储存的指令,计算机可读记录介质中储存的指令在由处理器执行时,可以使计算装置执行根据本说明书中叙述的示例性的实施例的操作。
图5为根据本发明的一实施例的加密方法的流程图。
图5中示出的方法例如可以借助于图1中示出的加密装置100而执行。
参考图5,加密装置100生成由种子值导出的任意值(510)。
之后,加密装置100生成包含所生成的任意值的密钥表(520)。此时,构成密钥表的任意值的大小可以根据可用存储器的大小而确定。
之后,加密装置100生成包含应用所生成的密钥表的轮函数的菲斯特尔结构的块加密算法(530)。
之后,加密装置100利用所生成的块加密算法对明文数据块进行加密(540)。
图6为示出根据本发明的一实施例的块加密算法生成步骤的流程图。
参考图6,加密装置100基于明文数据块的大小以及构成密钥表的任意值的大小来确定菲斯特尔结构的分支数(610)。
之后,加密装置100基于加密安全强度来确定菲斯特尔结构的轮数(620)。
之后,加密装置100生成具有所确定的分支数以及轮数的菲斯特尔结构的块加密算法(630)。
另外,在如图5以及图6所示的流程图中将所述方法分成了多个步骤而进行了图示,然而还可以由如下的方式来执行:交换至少一部分步骤而执行;与其他步骤结合而一起执行;省略或分为细分的步骤而执行;或者附加未图示的一个以上的步骤而执行。
另外,本发明的一实施例可以包括计算机可读记录介质,其包括用于在计算机上执行本说明书中记载的方法的程序。所述计算机可读记录介质可以单独地或者组合地包括程序命令、本地数据文件、本地数据结构等。所述介质可以是为本发明而特别地设计并构成的介质,或者可以是在计算机软件领域中通常被使用的介质。计算机可解码存储介质的示例包括:磁介质,如硬盘、软盘以及磁带等;光记录介质,如CD-ROM、DVD等;磁-光介质,软盘等;以及ROM、RAM、闪存等为了储存命令并执行程序命令而特别构成的硬件装置。作为程序命令的例,不仅包括如利用编译器制作的计算机语音代码,还可以包括可利用翻译器等由计算机执行的高级语言代码。
以上,对本发明的具有代表性的实施例进行了详细的说明,然而在本发明所属的技术领域中具有基本知识的人员可以理解对上述的实施例可在不脱离本发明的范围的限度内进行多种变形。因此,本发明的权利范围并不局限于上述的实施例,本发明的权利范围需要根据权利要求书的范围以及与该权利要求书均等的范围来确定。
Claims (10)
1.一种加密装置,包括:
密钥表生成部,生成从种子值导出的任意值,并生成包含所生成的所述任意值的密钥表;以及
加密部,生成具有轮函数的菲斯特尔结构的块加密算法,并利用所生成的所述块加密算法而对明文数据块进行加密,所述轮函数应用所生成的所述密钥表,
其中,所述密钥表生成部通过基于用于加密的可用存储器的大小来确定所述任意值的大小,
其中,所述加密部通过基于所述明文数据块的大小以及所述任意值的大小来确定所述菲斯特尔结构的分支数而动态地确定所述菲斯特尔结构的分支数,并且生成具有所确定的所述分支数的菲斯特尔结构的块加密算法。
2.如权利要求1所述的加密装置,其特征在于,
所述种子值是能够用比特串表示的初始输入值。
3.如权利要求2所述的加密装置,其特征在于,
所述种子值为密钥、计算器值以及初始化向量中的一个。
5.如权利要求1所述的加密装置,其特征在于,
所述加密部基于安全强度来确定所述菲斯特尔结构的轮数,并且生成具有所确定的所述轮数的菲斯特尔结构的块加密算法。
6.一种加密方法,包括如下步骤:
生成从种子值导出的任意值;
生成包含所生成的所述任意值的密钥表;
生成具有轮函数的菲斯特尔结构的块加密算法,该轮函数应用所生成的所述密钥表;
利用所生成的所述块加密算法而对明文数据块进行加密,
其中,生成所述任意值的步骤包括如下步骤:
通过基于用于加密的可用存储器的大小来确定所述任意值的大小;
生成具有所确定的所述任意值的大小的任意值,
其中,生成所述块加密算法的步骤包括以下步骤:
通过基于所述明文数据块的大小以及所述任意值的大小来确定所述菲斯特尔结构的分支数,而动态地确定所述菲斯特尔结构的分支数;以及
生成具有所确定的所述分支数的菲斯特尔结构的块加密算法。
7.如权利要求6所述的加密方法,其特征在于,
所述种子值是能够用比特串表示的初始输入值。
8.如权利要求7所述的加密方法,其特征在于,
所述种子值为密钥、计算器值以及初始化向量中的一个。
10.如权利要求6所述的加密方法,其特征在于,
生成所述块加密算法的步骤包括以下步骤:
基于安全强度来确定所述菲斯特尔结构的轮数;以及
生成具有所确定的所述轮数的菲斯特尔结构的块加密算法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150151039A KR101989956B1 (ko) | 2015-10-29 | 2015-10-29 | 암호화 장치 및 방법 |
KR10-2015-0151039 | 2015-10-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106656467A CN106656467A (zh) | 2017-05-10 |
CN106656467B true CN106656467B (zh) | 2021-01-15 |
Family
ID=58638344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610108510.XA Active CN106656467B (zh) | 2015-10-29 | 2016-02-26 | 加密装置及方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10491374B2 (zh) |
KR (1) | KR101989956B1 (zh) |
CN (1) | CN106656467B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101989943B1 (ko) * | 2017-04-28 | 2019-06-17 | 삼성에스디에스 주식회사 | 부채널 공격에 안전한 연산 장치 및 방법 |
WO2019031025A1 (ja) * | 2017-08-10 | 2019-02-14 | ソニー株式会社 | 暗号化装置、暗号化方法、復号化装置、及び復号化方法 |
KR102033351B1 (ko) * | 2017-08-22 | 2019-10-17 | 국민대학교산학협력단 | 컴퓨터 실행 가능한 경량 화이트박스 암호화 방법 및 장치 |
EP3493457A1 (en) | 2017-11-30 | 2019-06-05 | Gemalto Sa | Method for protecting a source of entropy used in countermeasures securing a whitebox cryptographic algorithm |
KR102109902B1 (ko) * | 2018-10-12 | 2020-05-12 | 유비벨록스(주) | 보안성이 향상된 블록 암호화 방법 |
KR102565442B1 (ko) | 2018-10-26 | 2023-08-16 | 삼성에스디에스 주식회사 | 암호 알고리즘 생성 장치 및 방법, 암호화 장치 및 방법 |
KR102565443B1 (ko) * | 2018-10-26 | 2023-08-16 | 삼성에스디에스 주식회사 | 암호 알고리즘 생성 장치 및 방법, 암호화 장치 및 방법 |
US20220329439A1 (en) * | 2019-08-05 | 2022-10-13 | Securify Bilisim Teknolojileri Ve Guvenligi Egt. Dan. San. Ve Tic. Ltd. Sti. | Method for generating digital signatures |
CN112054896B (zh) * | 2020-08-12 | 2023-10-03 | 深圳市欢太科技有限公司 | 白盒加密方法、装置、终端及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5995915A (en) * | 1997-01-29 | 1999-11-30 | Advanced Micro Devices, Inc. | Method and apparatus for the functional verification of digital electronic systems |
CN101536398A (zh) * | 2006-11-17 | 2009-09-16 | 皇家飞利浦电子股份有限公司 | 用于白盒实现的加密方法 |
US8130946B2 (en) * | 2007-03-20 | 2012-03-06 | Michael De Mare | Iterative symmetric key ciphers with keyed S-boxes using modular exponentiation |
US9152801B2 (en) * | 2012-06-28 | 2015-10-06 | Steven W. Cooke | Cryptographic system of symmetric-key encryption using large permutation vector keys |
CN105007256A (zh) * | 2014-03-20 | 2015-10-28 | 恩智浦有限公司 | 用于在非信任平台上执行安全功能的安全模块 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007069236A2 (en) * | 2005-12-14 | 2007-06-21 | Nds Limited | Method and system for usage of block cipher encryption |
JP5688528B2 (ja) | 2009-03-10 | 2015-03-25 | イルデト・ベー・フェー | 入力に依存する符号化を用いたホワイトボックス暗号システム |
US8948376B2 (en) * | 2010-05-11 | 2015-02-03 | Ca, Inc. | Format-preserving encryption via rotating block encryption |
KR102180029B1 (ko) * | 2014-02-03 | 2020-11-17 | 삼성전자 주식회사 | Crt-rsa 암호화 방법 및 장치와 이를 기록한 컴퓨터 판독가능 저장매체 |
KR102376506B1 (ko) * | 2014-10-20 | 2022-03-18 | 삼성전자주식회사 | 암복호화기, 암복호화기를 포함하는 전자 장치 및 암복호화기의 동작 방법 |
-
2015
- 2015-10-29 KR KR1020150151039A patent/KR101989956B1/ko active IP Right Grant
- 2015-12-28 US US14/980,751 patent/US10491374B2/en active Active
-
2016
- 2016-02-26 CN CN201610108510.XA patent/CN106656467B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5995915A (en) * | 1997-01-29 | 1999-11-30 | Advanced Micro Devices, Inc. | Method and apparatus for the functional verification of digital electronic systems |
CN101536398A (zh) * | 2006-11-17 | 2009-09-16 | 皇家飞利浦电子股份有限公司 | 用于白盒实现的加密方法 |
US8130946B2 (en) * | 2007-03-20 | 2012-03-06 | Michael De Mare | Iterative symmetric key ciphers with keyed S-boxes using modular exponentiation |
US9152801B2 (en) * | 2012-06-28 | 2015-10-06 | Steven W. Cooke | Cryptographic system of symmetric-key encryption using large permutation vector keys |
CN105007256A (zh) * | 2014-03-20 | 2015-10-28 | 恩智浦有限公司 | 用于在非信任平台上执行安全功能的安全模块 |
Non-Patent Citations (1)
Title |
---|
白盒密码的设计方法和安全性分析;王冰;《上海交通大学硕士学位论文》;20150925;第11-12页 * |
Also Published As
Publication number | Publication date |
---|---|
US20170126396A1 (en) | 2017-05-04 |
KR20170050027A (ko) | 2017-05-11 |
US10491374B2 (en) | 2019-11-26 |
KR101989956B1 (ko) | 2019-06-17 |
CN106656467A (zh) | 2017-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106656467B (zh) | 加密装置及方法 | |
CN108023728B (zh) | 加密装置及方法 | |
CN107438065B (zh) | 数据加密装置及方法、数据解密装置及方法 | |
US8966279B2 (en) | Securing the implementation of a cryptographic process using key expansion | |
US9515821B2 (en) | Apparatus and method for data encryption | |
US8966285B2 (en) | Securing implementation of a cryptographic process having fixed or dynamic keys | |
US9143317B2 (en) | Protecting against white box attacks using column rotation | |
US10277391B2 (en) | Encryption device, encryption method, decryption device, and decryption method | |
US8675866B2 (en) | Multiplicative splits to protect cipher keys | |
US20120254625A1 (en) | Protecting states of a cryptographic process using group automorphisms | |
US9716586B2 (en) | Precomputing internal AES states in counter mode to protect keys used in AES computations | |
US20120179920A1 (en) | Securing cryptographic process keys using internal structures | |
EP3667647A1 (en) | Encryption device, encryption method, decryption device, and decryption method | |
EP3644546B1 (en) | Apparatus and method for generating cryptographic algorithm, apparatus and method for encryption | |
EP3644547B1 (en) | Apparatus and method for generating cryptographic algorithm, apparatus and method for encryption | |
Gai et al. | An optimal fully homomorphic encryption scheme | |
KR101914453B1 (ko) | 암호화 장치 및 방법 | |
US10965454B2 (en) | Apparatus and method for public key encryption | |
CN108023726B (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 |