CN112291056B - 加密密钥生成器及传输系统 - Google Patents

加密密钥生成器及传输系统 Download PDF

Info

Publication number
CN112291056B
CN112291056B CN202010686131.5A CN202010686131A CN112291056B CN 112291056 B CN112291056 B CN 112291056B CN 202010686131 A CN202010686131 A CN 202010686131A CN 112291056 B CN112291056 B CN 112291056B
Authority
CN
China
Prior art keywords
random number
string
generator
wrapping
key
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
CN202010686131.5A
Other languages
English (en)
Other versions
CN112291056A (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.)
Entropy Code Technology Co ltd
Original Assignee
Entropy Code Technology 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 Entropy Code Technology Co ltd filed Critical Entropy Code Technology Co ltd
Publication of CN112291056A publication Critical patent/CN112291056A/zh
Application granted granted Critical
Publication of CN112291056B publication Critical patent/CN112291056B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • 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
    • 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
    • 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/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • 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/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/3271Cryptographic 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 using challenge-response
    • H04L9/3278Cryptographic 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 using challenge-response using physically unclonable functions [PUF]

Abstract

本发明公开了一种加密密钥生成器包括随机数储存电路、缠绕字符串产生器及控制电路。随机数储存电路储存多个随机数比特,且多个随机数比特的数值是随机产生的。缠绕字符串产生器根据输入密钥提供缠绕字符串。控制电路耦接于随机数储存电路及缠绕字符串产生器。控制电路根据输入密钥自随机数储存电路所储存的多个随机数比特中提取随机数比特字符串,自缠绕字符串产生器接收缠绕字符串,并使缠绕字符串与随机数比特字符串相缠绕以产生密钥。

Description

加密密钥生成器及传输系统
技术领域
本发明是有关于一种加密密钥生成器,特别是指一种高速的加密密钥生成器。
背景技术
串流加密法(stream cipher)是一种对称的加密法,常用来对大型的档案进行加密。在串流加密法中,每个明文比特都会以串流密钥中的一个对应比特来进行加密。因此,当对大型档案,例如图像文件或影音档,进行加密时,加密装置就必须制造出大量的随机数比特以产生所需的串流密钥。
在现有技术中,常会利用哈希函数来产生串流密钥。然而,哈希函数的运算会需要许多的操作周期(operation cycles),因此加密的过程十分耗时,甚至导致数据传输延迟。
发明内容
本发明的一实施例提供一种加密密钥生成器。加密密钥生成器包括随机数储存电路、缠绕字符串产生器及控制电路。
随机数储存电路储存多个随机数比特,且多个随机数比特的数值是随机产生的。缠绕字符串产生器根据输入密钥提供缠绕字符串。控制电路耦接于随机数储存电路及缠绕字符串产生器。控制电路根据输入密钥自随机数储存电路所储存的多个随机数比特中提取随机数比特字符串,自缠绕字符串产生器接收缠绕字符串,并使缠绕字符串与随机数比特字符串相缠绕以产生密钥。
本发明的另一实施例提供一种传输系统,传输系统包括第一装置及第二装置。
第一装置包括第一加密密钥生成器及加密单元。第一加密密钥生成器包括第一随机数储存电路、第一缠绕字符串产生器及第一控制电路。第一随机数储存电路储存多个随机数比特,且所述多个随机数比特的数值是随机决定的。第一缠绕字符串产生器根据输入密钥提供缠绕字符串。第一控制电路耦接于第一随机数储存电路及第一缠绕字符串产生器。第一控制电路根据输入密钥自第一随机数储存电路所储存的多个随机数比特中提取随机数比特字符串,自第一缠绕字符串产生器接收缠绕字符串,及使缠绕字符串与随机数比特字符串相缠绕以产生密钥。加密单元利用密钥对传输数据进行加密以产生加密字符串。
第二装置包括第二加密密钥生成器及解密单元。第二加密密钥生成器包括第二随机数储存电路、第二缠绕字符串产生器及第二控制电路。第二随机数储存电路储存随机数比特。第二缠绕字符串产生器根据输入密钥提供缠绕字符串。第二控制电路耦接于第二随机数储存电路及第二缠绕字符串产生器。第二控制电路根据输入密钥自第二随机数储存电路所储存的多个随机数比特中提取随机数比特字符串,自第二缠绕字符串产生器接收缠绕字符串,及使缠绕字符串与随机数比特字符串相缠绕以产生密钥。解密单元利用密钥对加密字符串进行解密以取得传输数据。
附图说明
图1是本发明一实施例的加密密钥生成器的示意图。
图2是本发明另一实施例的加密密钥产生器的示意图。
图3是本发明另一实施例的加密密钥生成器的示意图。
图4是本发明一实施例的传输系统的示意图。
其中,附图标记说明如下:
100、200、300、400A、400B:加密密钥生成器
110、410A、410B:随机数储存电路
112:储存单元阵列
120、220、320、420A、420B:缠绕字符串产生器
122:计数器
124:储存装置
130、430A、430B:控制电路
SC(0,0)至SC(M-1,N-1):储存单元
X0至X(N-1):列
Y0至Y(M-1):行
Z0至Z31:歪斜线
SS1、SS2:随机数比特字符串
ES1、ES12:缠绕字符串
SK1、SK2:密钥
K0:输入密钥
222:线性回馈移位寄存器
322:随机数储存电路
40:传输系统
42:第一装置
44:第二装置
422:加密单元
442:解密单元
D1:传输数据
CS1:加密字符串
具体实施方式
图1是本发明一实施例的加密密钥生成器100的示意图。加密密钥生成器100包括随机数储存电路110、缠绕字符串产生器120及控制电路130。
随机数储存电路110可储存多个随机数比特,而随机数比特的数值是随机产生的。缠绕字符串产生器120可提供多个缠绕字符串。控制电路130耦接至随机数储存电路110及缠绕字符串产生器120。在有些实施例中,当欲使加密密钥生成器100产生加密所需的密钥时,加密密钥生成器100会接收到输入密钥K0以作为产生密钥的初始种子。
举例来说,缠绕字符串产生器120可以根据输入密钥K0提供第一缠绕字符串ES1,而控制电路130可以根据输入密钥K0自随机数储存电路110中选择部分的随机数比特以得出第一随机数比特字符串SS1。接着,控制电路130可以自缠绕字符串产生器120接收第一缠绕字符串ES1,并将第一缠绕字符串ES1与第一随机数比特字符串SS1相缠绕以产生第一密钥SK1。
在有些实施例中,随机数储存电路110可包括储存单元阵列112,储存单元阵列112可包括多个储存单元SC(0,0)至SC(M-1,N-1),每一个储存单元SC(0,0)至SC(M-1,N-1)可储存一个随机数比特,其中M及N为正整数。在有些实施例中,控制电路130可以根据输入密钥K0自储存单元阵列112中选择储存在一特定行的储存单元中的随机数比特来做为第一随机数比特字符串SS1。举例来说,在图1中,有Y0至Y(M-1)共M行的储存单元。在有些实施例中,输入密钥K0可以用来从Y0至Y(M-1)行储存单元中选出一对应行的储存单元,而所述被选取的所述行储存单元中所储存的随机数比特就会被提取成为第一随机数比特字符串SS1。举例来说,若Y2行的储存单元被选取,则储存单元SC(2,0)至SC(2,N-1)中所储存的随机数比特就会被用来形成第一随机数比特字符串SS1。
由于随机数比特储存电路110中所储存的随机数比特的数值是随机产生的,因此自每一行储存单元中取出的随机数比特字符串也会具有随机而无法预测的数值,使得第一随机数比特字符串SS1很适合用来产生第一密钥SK1。
相似地,自每一列储存单元中取出的随机数比特字符串也会具有随机而无法预测的数值。因此,在有些实施例中,控制电路130可以根据输入密钥K0选择一对应列的储存单元,并提取被选出的所述列储存单元中的随机数比特来形成随机数比特字符串SS1。此外,由于自每一歪斜在线的储存单元中取出的随机数比特字符串也会具有随机而无法预测的数值。因此,在有些实施例中,控制电路130可以根据输入密钥K0选择一对应歪斜在线的储存单元,并提取被选出的所述歪斜在线的储存单元中的随机数比特来形成随机数比特字符串SS1。
再者,在有些实施例中,控制电路130可以同时提取储存在一对应行的储存单元中的随机数比特、储存在一对应列的储存单元中的随机数比特及储存在一对应歪斜在线的储存单元中的随机数比特来共同形成第一随机数比特字符串SS1。举例来说,若M及N皆为32,则控制电路130可以使用具有5个比特的输入密钥K0来做为选取索引以自Y0至Y(M-1)行储存单元中选出对应行的储存单元,并利用另外5个比特以决定X0至X(N-1)列储存单元中对应列的储存单元,再利用另外5个比特来决定Z0至Z31条歪斜在线中对应歪斜在线的储存单元。举例来说,若输入密钥K0的值为“00011-00001-00010”,则第一组5个比特“00011”可以用来选择行Y3的储存单元,因此储存在行Y3的储存单元SC(3,0)至SC(3,N-1)中的随机数比特将被提取。第二组5个比特“00001”则可对应到列X1的储存单元,因此储存在列X1的储存单元SC(0,1)至SC(M-1,1)中的随机数比特将被提取。第三组5个比特“00010”则可对应到歪斜线Z2的储存单元,因此储存在歪斜线Z2上的储存单元SC(2,0)至SC(1,N-1)及SC(0,N-2)中的随机数比特将被提取。接着,储存在行Y3、列X1及歪斜线Z2上的储存单元中的随机数比特将可被组合成具有96个比特的第一随机数比特字符串SS1。
在有些实施例中,也可根据系统的需求而使用不同的提取机制以增加第一随机数比特字符串SS1的长度。举例来说,在图1中歪斜线Z0至Z31是按照左上至右下的顺序取得,然而在有些实施例中,也可以按照右上至左下的顺序取得另一组歪斜线,而这两组歪斜线都可用于产生随机数比特字符串。此外,随机数比特字符串的提取顺序也不限于依序提取特定行、特定列及特定条歪斜线,在有些实施例中,储存在特定行、特定列及特定歪斜在线的储存单元中的随机数比特也可以任意的预定顺序被提取。再者,提取随机数比特的方式也不限定于选择特定行、特定列或特定歪斜在线的储存单元,在有些实施例中,控制电路130也可以根据输入密钥K0以其他预定的顺序提取出随机数比特字符串。举例来说,控制电路130可提取行Y1中第一、第三、第五及其他奇数位置上的储存单元中的随机数比特,并可提取列X2中第二、第四、第六及其他偶数位置上的储存单元中的随机数比特。由于控制电路130可以根据输入密钥K0选择随机数储存电路110中不同储存单元所储存的随机数比特来做为随机数比特字符串,而无须执行复杂的运算,因此可以迅速产生密钥。
在图1中,储存单元SC(0,0)至SC(M-1,N-1)可以利用物理不可克隆函数(physicalunclonable function,PUF)单元来实作,因此每一个储存单元SC(0,0)至SC(M-1,N-1)都可以根据其自身的物理特性产生并储存随机比特。在此情况下,加密密钥生成器100可具有独特的随机数储存电路,因此即便使用相同的输入密钥。不同的加密密钥生成器100仍可产生出不同的密钥。
然而,在有些实施例中,随机数储存电路110中的随机数比特应为独立同分布(independent and identically distributed,IID)。举例来说,可以利用硬件安全模块(hardware security module,HSM)来产生并管理随机数比特,并将随机数比特分配至储存单元SC(0,0)至SC(M-1,N-1)中,确保随机数比特的分布是独立且相同。
在有些实施例中,缠绕字符串产生器120还可用来提升密钥的生成范围。也就是说,通过将随机数比特字符串与缠绕字符串产生器120所提供的多个缠绕字符串相缠绕,就能够产生多个不同的密钥。如此一来,就可以减少随机数储存电路110所需的电路面积。
在图1中,缠绕字符串产生器120可包括计数器122及储存装置124以储存多个缠绕字符串。在有些实施例中,缠绕字符串产生器120可利用输入密钥K0的一部分作为起始索引以取得第一缠绕字符串ES1。举例来说,若储存装置124储存有32个不同的缠绕字符串,则输入密钥K0的其中五个比特便可作为索引以自32个不同的缠绕字符串中选出对应的缠绕字符串。如此一来,就可以将第一缠绕字符串ES1与第一随机数比特字符串SS1相缠绕以产生第一密钥SK1。在有些实施例中,第一缠绕字符串ES1及第一随机数比特字符串SS1可以具有相同的比特长度,此时便可对两个字符串的每个比特进行互斥或(exclusive OR)运算以使第一缠绕字符串ES1与第一随机数比特字符串SS1相缠绕。然而,在有些实施例中,第一缠绕字符串ES1及第一随机数比特字符串SS1可以具有相异的比特数,及/或可以利用其他的操作来进行缠绕,例如代换(substitution)操作。
此外,每当缠绕字符串产生器120提供一个缠绕字符串时,计数器122就可以更新计数值。因此,在提供了第一缠绕字符串ES1之后,缠绕字符串产生器120就可以进一步根据更新后的计数值,并据以自多个缠绕字符串中提取第二缠绕字符串ES2。此外,在有些实施例中,控制电路130可以将第二缠绕字符串ES2与第一随机数比特字符串SS1相缠绕以产生第二密钥SK2,并依此类推。如此一来,在此实施例中,加密密钥生成器100就可以根据第一随机数比特字符串SS1及缠绕字符串产生器120所提供的32个不同的缠绕字符串产生32个不同的密钥。
然而,控制电路130并不限定须将第一随机数比特字符串SS1与不同的缠绕字符串相缠绕来产生一系列的密钥,在有些实施例中,控制电路130也可以在计数值更新时,也一并提取新的随机数比特字符串。在此情况下,第二缠绕字符串ES2可以与第二随机数比特字符串SS2相缠绕以产生第二密钥SK2,使得密钥的数值更加难以预测。在有些实施例中,可根据新的输入密钥来提取第二随机数比特字符串SS2,然而在有些其他实施例中,也可以利用形成第一随机数比特字符串SS1所使用的下一行、下一列及下一条歪斜在线的储存单元中的随机数位原来产生。在此情况下,就无需产生新的输入密钥。在有些实施例中,输入密钥可以周期性地更新以使密钥更加难以预测。
在图1中,缠绕字符串产生器120可使用计数器122来选择对应的缠绕字符串,而计数器的数值可以利用累加一固定数值、累减一固定数值或根据一预定的数列更新。然而,在有些其他实施例中,也可以利用线性回馈移位寄存器(linear feedback shift register,LFSR)来产生缠绕字符串。图2是本发明另一实施例的加密密钥产生器200的示意图。加密密钥产生器200及加密密钥产生器100可具有相似的结构,并且可以根据相似的原理操作。然而,缠绕字符串产生器220可包括线性回馈移位寄存器222。缠绕字符串产生器220可将输入密钥K0作为线性回馈移位寄存器222的起始种子以产生第一缠绕字符串ES1,而线性回馈移位寄存器222则可以在产生第一缠绕字符串ES1之后,继续产生第二缠绕字符串ES2。如此一来,控制电路130便可将第二缠绕字符串ES2与第一随机数比特字符串SS1或第二随机数比特字符串SS2相缠绕以产生第二密钥SK2。在有些实施例中,根据系统的需求,可将线性回馈移位寄存器222设计成能够产生所需数量的缠绕字符串。
图3是本发明另一实施例的加密密钥生成器300的示意图。加密密钥生成器100及加密密钥生成器300具有相似的结构并且可根据相似的原理操作。然而,缠绕字符串产生器320可包括随机数储存电路322。随机数储存电路322可储存多个随机数比特,而缠绕字符串产生器320可以根据输入密钥K0自随机数储存电路322中的多个随机数比特选出一系列的随机数比特以作为缠绕字符串ES1。在有些实施例中,缠绕字符串产生器320可以使用与控制电路130自随机数储存电路110中取出随机数比特字符串相同的方式来取得缠绕字符串。如此一来,就能够进一步扩展密钥的生成范围。
在有些实施例中,输入密钥K0可以根据硬件电路的物理特性来产生,例如利用物理不可克隆函数电路,或通过软件程序所执行的算法来产生,例如但不限于使用哈希(hash)函式或进阶加密标准(Advanced Encryption Standard,AES)的函式密钥衍生函式(key derivation functions,KDF)。此外,在有些实施例中,由于输入密钥K0主要是作为产生密钥的初始种子,因此输入密钥K0的乱度需求相对较不严格。在此情况下,加密密钥生成器100也可以使用其他类型的数值,例如地址、数据、区块索引或波型,来产生输入密钥K0,以进一步减轻加密密钥生成器100的运算负担。
图4是本发明一实施例的传输系统40的示意图。传输系统40可包括第一装置42及第二装置44。在有些实施例中,第一装置42及第二装置44可以是需要彼此传输数据的任意装置。举例来说,第二装置44可以是显示设备,而第一装置42可以是提供影像数据的装置。在此情况下,第一装置42可以传送影像数据至第二装置44以使第二装置44能够呈现影像。为避免传输中的数据被未授权的装置窃取,第一装置42及第二装置44可各包括加密密钥生成器以对传输数据进行加密及解密。
在图4中,第一装置42可包括加密密钥生成器400A及加密单元422,而第二装置44可包括加密密钥生成器400B及解密单元442。在有些实施例中,加密密钥生成器400A可产生第一密钥SK1,而加密单元422可以利用第一密钥SK1来对传输数据D1进行加密以产生加密字符串CS1。此外,加密密钥生成器400B也可产生第一密钥SK1,因此解密单元442可以利用第一密钥SK1来对加密字符串CS1进行解密以取得传输数据D1。举例来说,加密单元422可以对第一密钥SK1的每一比特及传输数据D1的每一比特进行互斥或运算以产生加密字符串CS1,而解密单元442可以对第一密钥SK1的每一比特及加密字符串CS1的每一比特进行互斥或运算以取得传输数据D1。然而,在有些实施例中,加密单元422及解密单元442也可以根据系统需求,利用其他可逆的加密运算及第一密钥SK1来对传输数据进行加密。
在有些实施例中,加密密钥生成器400A及400B可具有相同的结构。举例来说,加密密钥生成器400A及400B可皆由加密密钥生成器100来实作。此外,加密密钥生成器400A及400B可储存相同的数据。也就是说,加密密钥生成器400A及400B中的随机数储存电路410及410B可以相同的设置方式储存具有相同数值的随机数比特,而加密密钥生成器400A及400B中的缠绕字符串产生器420A及420B也可根据相同的初始种子提供相同的缠绕字符串。如此一来,利用相同的输入密钥K0,加密密钥生成器400A及400B的控制电路430A及430B就可以产生相同的密钥。
在有些实施例中,随机数储存电路410A及410B可以根据椭圆曲线迪菲-赫尔曼(Elliptic Curve Diffie–Hellman Key Exchange,ECDH)算法来产生随机数比特,因此通过共享的公钥,随机数储存电路410A及410B就可以各自产生出相同的随机数比特。如此一来,随机数储存电路410A及410B所储存的随机数比特就不需要在第一装置42及第二装置44的外部传输,从而减少信息安全受到威胁。此外,在有些实施例中。如果传输环境是安全且可信赖的,则也可让随机数储存电路410A及410B的其中之一者利用物理不可克隆函数电路或随机数生成器来产生随机数比特,并将产生的随机数比特复制到随机数储存电路410A及410B中的另一者。
相似地,在有些实施例中,为能安全地共享相同的输入密钥K0,第一装置42及第二装置44可以利用椭圆曲线迪菲-赫尔曼算法来各自产生相同的输入密钥K0。也就是说,第一装置42及第二装置44可以共享彼此的公钥,并使用各自的私钥及共享的公钥来各自产生相同的输入密钥K0。如此一来,加密密钥生成器400A及400B就无须在外部传送输入密钥K0,而仍然能够产生相同的密钥以进行数据的加密及解密。然而,在有些实施例中,输入密钥K0可以由第一装置42及第二装置44的其中一者产生,并通过数据传输来将输入密钥K0分享给第一装置42及第二装置44中的另一者。在此情况下,由于储存在随机数储存电路410A及410B中的随机数仍然是私密而未公开的数据,因此即便输入密钥K0在第一装置42及第二装置44之间进行传输,也仍然可以维护信息的安全。
综上所述,本发明的实施例所提供的加密密钥生成器及传输系统可以使用随机数储存电路以快速地产生密钥而无须使用复杂的计算,因此能够达到实时串流加密的功能。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (20)

1.一种加密密钥生成器,其特征在于,包括:
第一随机数储存电路,用以储存多个随机数比特,其中所述多个随机数比特的数值是随机决定的;
缠绕字符串产生器,用以根据输入密钥提供第一缠绕字符串;及
控制电路,耦接于所述第一随机数储存电路及所述缠绕字符串产生器,及用以根据所述输入密钥自所述第一随机数储存电路所储存的所述多个随机数比特中提取第一随机数比特字符串,自所述缠绕字符串产生器接收所述第一缠绕字符串,及使所述第一缠绕字符串与所述第一随机数比特字符串相缠绕以产生第一密钥;
其中,当所述控制电路对所要进行缠绕的两字符串进行缠绕,而所述两字符串具有相同的比特长度时,所述控制电路对所述两字符串的每个比特进行互斥或运算,以使所述两字符串相缠绕;及
其中,当所述控制电路对所要进行缠绕的两字符串进行缠绕,而所述两字符串具有相异的比特数时,所述控制电路利用代换操作而使所述两字符串相缠绕。
2.如权利要求1所述的加密密钥生成器,其特征在于所述输入密钥是根据硬件电路的物理特性、由软件程序所执行的特定算法、系统中的地址、数据、区块索引或波型所产生。
3.如权利要求1所述的加密密钥生成器,其特征在于:
所述缠绕字符串产生器包括计数器,用以在每提供缠绕字符串时更新计数值;
所述缠绕字符串产生器另用以根据所述计数值提供第二缠绕字符串;及
所述控制电路另用以使所述第二缠绕字符串与所述第一随机数比特字符串或第二随机字符串相缠绕以产生第二密钥。
4.如权利要求1所述的加密密钥生成器,其特征在于:
所述缠绕字符串产生器包括线性回馈移位寄存器;
所述缠绕字符串产生器另用以在提供所述第一缠绕字符串之后,利用所述线性回馈移位寄存器提供第二缠绕字符串;及
所述控制电路另用以使所述第二缠绕字符串与所述第一随机数比特字符串或第二随机字符串相缠绕以产生第二密钥。
5.如权利要求1所述的加密密钥生成器,其特征在于:
所述第一随机数储存电路包括储存单元阵列,包括多个储存单元用以储存所述多个随机数比特;及
所述控制电路根据对应于所述输入密钥的预定顺序自所述多个储存单元中选取部分储存单元所储存的多个随机数比特以提取所述第一随机数比特字符串。
6.如权利要求5所述的加密密钥生成器,其特征在于:
所述控制电路是根据所述输入密钥选取所述储存单元阵列中至少一特定行的储存单元所储存的多个随机数比特以提取所述第一随机数比特字符串。
7.如权利要求5所述的加密密钥生成器,其特征在于:
所述控制电路是根据所述输入密钥选取所述储存单元阵列中至少一特定列的储存单元所储存的多个随机数比特以提取所述第一随机数比特字符串。
8.如权利要求5所述的加密密钥生成器,其特征在于:
所述控制电路是根据所述输入密钥选取所述储存单元阵列中至少一特定歪斜在线的储存单元所储存的多个随机数比特以提取所述第一随机数比特字符串。
9.如权利要求1所述的加密密钥生成器,其特征在于所述第一随机数储存电路包括多个储存单元,且所述多个储存单元所储存的随机数比特是独立同分布。
10.如权利要求1所述的加密密钥生成器,其特征在于所述第一随机数储存电路包括多个物理不可克隆函数单元,每个物理不可克隆函数单元用以产生随机数比特。
11.如权利要求1所述的加密密钥生成器,其特征在于:
所述缠绕字符串产生器包括第二随机数储存电路,用以储存多个随机数比特;及
所述缠绕字符串产生器是根据所述输入密钥自所述第二随机数储存电路中选取随机数字符串以产生所述第一缠绕字符串。
12.一种传输系统,包括:
第一装置,包括:
第一加密密钥生成器,包括:
第一随机数储存电路,用以储存多个随机数比特,其中所述多个随机数比特的数值是随机决定的;
第一缠绕字符串产生器,用以根据输入密钥提供第一缠绕字符串;及
第一控制电路,耦接于所述第一随机数储存电路及所述第一缠绕字符串产生器,及用以根据所述输入密钥自所述第一随机数储存电路所储存的所述多个随机数比特中提取第一随机数比特字符串,自所述第一缠绕字符串产生器接收所述
第一缠绕字符串,及使所述第一缠绕字符串与所述第一随机数比特字符串相缠绕以产生第一密钥;及
加密单元,用以利用所述第一密钥对传输数据进行加密以产生加密字符串;及
第二装置,包括:
第二加密密钥生成器,包括:
第二随机数储存电路,用以储存所述多个随机数比特;
第二缠绕字符串产生器,用以根据所述输入密钥提供所述第一缠绕字符串;及
第二控制电路,耦接于所述第二随机数储存电路及所述第二缠绕字符串产生器,及用以根据所述输入密钥自所述第二随机数储存电路所储存的所述多个随机数比特中提取所述第一随机数比特字符串,自所述第二缠绕字符串产生器接收所述第一缠绕字符串,及使所述第一缠绕字符串与所述第一随机数比特字符串相缠绕以产生所述第一密钥;及
解密单元,用以利用所述第一密钥对所述加密字符串进行解密以取得所述传输数据;
其中,当所述控制电路对所要进行缠绕的两字符串进行缠绕,而所述两字符串具有相同的比特长度时,所述控制电路对所述两字符串的每个比特进行互斥或运算,以使所述两字符串相缠绕;及
其中,当所述控制电路对所要进行缠绕的两字符串进行缠绕,而所述两字符串具有相异的比特数时,所述控制电路利用代换操作而使所述两字符串相缠绕。
13.如权利要求12所述的传输系统,其特征在于所述第一装置及所述第二装置是根据椭圆曲线迪菲-赫尔曼算法各自产生所述输入密钥。
14.如权利要求12所述的传输系统,其特征在于:
所述第一缠绕字符串产生器包括计数器,用以在每提供缠绕字符串时更新计数值;
所述第一缠绕字符串产生器另用以根据所述计数值提供第二缠绕字符串;及
所述第一控制电路另用以使所述第二缠绕字符串与所述第一随机数比特字符串或第二随机字符串相缠绕以产生第二密钥。
15.如权利要求12所述的传输系统,其特征在于:
所述第一缠绕字符串产生器包括线性回馈移位寄存器;
所述第一缠绕字符串产生器另用以在提供所述第一缠绕字符串之后,利用所述线性回馈移位寄存器提供第二缠绕字符串;及
所述第一控制电路另用以使所述第二缠绕字符串与所述第一随机数比特字符串或第二随机字符串相缠绕以产生第二密钥。
16.如权利要求12所述的传输系统,其特征在于:
所述第一随机数储存电路包括储存单元阵列,包括多个储存单元用以储存所述多个随机数比特;及
所述第一控制电路根据对应于所述输入密钥的预定顺序自所述多个储存单元中选取部分储存单元所储存的多个随机数比特以提取所述第一随机数比特字符串。
17.如权利要求12所述的传输系统,其特征在于所述第一随机数储存电路及所述第二随机数储存电路是根据椭圆曲线迪菲-赫尔曼算法各自产生所述多个随机数比特。
18.如权利要求12所述的传输系统,其特征在于所述第一随机数储存电路包括多个物理不可克隆函数单元,用以产生所述多个随机数比特,及所述多个物理不可克隆函数单元所产生的所述多个随机数比特是被复制到所述第二随机数储存电路中。
19.如权利要求12所述的传输系统,其特征在于所述第一装置另用以产生所述输入密钥,即将所述输入密钥传送给所述第二装置。
20.如权利要求12所述的传输系统,其特征在于:
所述第一缠绕字符串产生器包括第三随机数储存电路,用以储存多个随机数比特;及
所述第一缠绕字符串产生器是根据所述输入密钥自所述第三随机数储存电路中选取随机数字符串以产生所述第一缠绕字符串。
CN202010686131.5A 2019-07-25 2020-07-16 加密密钥生成器及传输系统 Active CN112291056B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962878725P 2019-07-25 2019-07-25
US62/878,725 2019-07-25

Publications (2)

Publication Number Publication Date
CN112291056A CN112291056A (zh) 2021-01-29
CN112291056B true CN112291056B (zh) 2024-02-23

Family

ID=71527732

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202010686131.5A Active CN112291056B (zh) 2019-07-25 2020-07-16 加密密钥生成器及传输系统
CN202010709991.6A Pending CN112286493A (zh) 2019-07-25 2020-07-22 随机数生成器及生成随机数输出的方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202010709991.6A Pending CN112286493A (zh) 2019-07-25 2020-07-22 随机数生成器及生成随机数输出的方法

Country Status (5)

Country Link
US (2) US11381394B2 (zh)
EP (2) EP3770751B1 (zh)
JP (2) JP7122722B2 (zh)
CN (2) CN112291056B (zh)
TW (2) TWI793429B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11567733B2 (en) * 2020-04-15 2023-01-31 Intel Corporation System, method and apparatus for race-condition true random number generator
US11856114B2 (en) * 2021-02-12 2023-12-26 Taiwan Semiconductor Manufacturing Co., Ltd. Device signature based on trim and redundancy information
US20220261221A1 (en) * 2021-02-18 2022-08-18 PUFsecurity Corporation Random number generator
WO2022221725A1 (en) * 2021-04-15 2022-10-20 Real Random IP, LLC System and method for secure end-to-end electronic communication using a privately shared table of entropy
US11924339B2 (en) 2021-04-15 2024-03-05 Real Random IP, LLC System and method for secure end-to-end electronic communication using a privately shared table of entropy
US11791988B2 (en) * 2021-11-22 2023-10-17 Theon Technology Llc Use of random entropy in cryptography
US20240126509A1 (en) * 2022-10-11 2024-04-18 Analog Devices International Unlimited Company Random number generation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1518734A (zh) * 2002-04-19 2004-08-04 索尼株式会社 密钥生成器、加密/解密设备和密钥生成方法
CN101242265A (zh) * 2008-03-07 2008-08-13 四川虹微技术有限公司 安全系统中流密码、伪随机数产生方法
GB201700670D0 (en) * 2017-01-14 2017-03-01 Tomlinson Martin Improved stream cipher system
CN109495243A (zh) * 2017-09-12 2019-03-19 力旺电子股份有限公司 使用随机数位的安全系统及安全系统的操作方法

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2567681B2 (ja) * 1988-09-30 1996-12-25 三洋電機株式会社 乱数発生装置
JP2000066879A (ja) * 1998-08-21 2000-03-03 Nec Corp 乱数発生装置
JP3396883B2 (ja) * 1998-11-12 2003-04-14 独立行政法人通信総合研究所 光カオス乱数発生装置
JP3034516B1 (ja) * 1999-03-08 2000-04-17 株式会社東芝 物理乱数発生装置
JP2001043069A (ja) * 1999-07-30 2001-02-16 Sony Corp 乱数発生装置
US6954770B1 (en) * 2001-08-23 2005-10-11 Cavium Networks Random number generator
KR100575182B1 (ko) * 2002-09-13 2006-05-02 가부시끼가이샤 도시바 난수 발생 회로
DE10250831B3 (de) 2002-10-31 2004-06-17 Infineon Technologies Ag Vorrichtung und Verfahren zum Erzeugen einer pseudozufälligen Folge von Zahlen
JP4248950B2 (ja) * 2003-06-24 2009-04-02 株式会社ルネサステクノロジ 乱数発生装置
US7496616B2 (en) 2004-11-12 2009-02-24 International Business Machines Corporation Method, apparatus and system for resistance to side channel attacks on random number generators
TW200629192A (en) * 2005-02-03 2006-08-16 Sanyo Electric Co Random number generating circuit
TWI307038B (en) * 2005-12-27 2009-03-01 Ind Tech Res Inst Random number generator for radio frequency identifciation tag and seed number generator for generating a seed number for operation of the random number generator
US7894602B2 (en) * 2006-03-31 2011-02-22 Sap Ag System and method for generating pseudo-random numbers
JP2008003438A (ja) * 2006-06-26 2008-01-10 Sony Corp 乱数生成装置、乱数生成制御方法、メモリアクセス制御装置、および、通信装置
JP5291628B2 (ja) 2006-11-28 2013-09-18 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ シードが与えられる任意数を生成する方法
JP2008180592A (ja) * 2007-01-24 2008-08-07 Nec Electronics Corp テストパターン生成回路及びテスト回路
US20090083507A1 (en) * 2007-09-24 2009-03-26 Moore Charles H Shift-add mechanism
JP4308293B2 (ja) * 2007-11-20 2009-08-05 際国 董 乱数生成装置及び方法
CN102165458B (zh) * 2008-09-26 2015-05-27 皇家飞利浦电子股份有限公司 认证装置和用户
GB2469393C (en) * 2010-04-22 2014-08-06 Cen Jung Tjhai Public encryption system using deliberatily corrupted codewords from an error correcting code
US8667265B1 (en) * 2010-07-28 2014-03-04 Sandia Corporation Hardware device binding and mutual authentication
JP2012174147A (ja) 2011-02-23 2012-09-10 Fujitsu Ltd 情報提供プログラム、情報提供装置および情報提供方法
JP5813380B2 (ja) 2011-06-03 2015-11-17 株式会社東芝 半導体記憶装置
JP2014075082A (ja) * 2012-10-05 2014-04-24 Renesas Electronics Corp 乱数生成器および乱数生成方法
JP6034153B2 (ja) * 2012-11-21 2016-11-30 株式会社東芝 乱数生成回路
US9047152B2 (en) * 2013-01-16 2015-06-02 Skymedi Corporation Delay device, method, and random number generator using the same
US9060265B2 (en) * 2013-02-06 2015-06-16 I-Shou University Wireless sensor network and central node device thereof
US9374224B2 (en) * 2013-04-18 2016-06-21 RISOFTDEV, Inc. System and methods for encrypting data
DE102013109315B4 (de) * 2013-08-28 2016-08-04 Infineon Technologies Ag Verfahren und Datenverarbeitungseinrichtung zum Rekonstruieren eines Vektors
AU2014312200B2 (en) * 2013-08-28 2020-01-02 Unm Rainforest Innovations Systems and methods for leveraging path delay variations in a circuit and generating error-tolerant bitstrings
JP6372295B2 (ja) 2014-10-15 2018-08-15 富士通株式会社 物理乱数生成回路の品質テスト方法、乱数発生器および電子装置
US9696965B2 (en) * 2014-12-16 2017-07-04 Nuvoton Technology Corporation Input-dependent random number generation using memory arrays
US20160179472A1 (en) * 2014-12-19 2016-06-23 Megachips Corporation Random number generation device and method for generating random number
US10142103B2 (en) * 2015-12-07 2018-11-27 The Boeing Company Hardware assisted fast pseudorandom number generation
US10031723B1 (en) * 2016-03-08 2018-07-24 Secturion Systems, Inc. Systolic random number generator
US10855477B2 (en) * 2016-08-04 2020-12-01 Macronix International Co., Ltd. Non-volatile memory with physical unclonable function and random number generator
CN109478132B (zh) 2016-08-19 2023-03-24 甲骨文国际公司 在计算装置中产生熵和在伪随机数发生器中播种熵的方法
US10785022B2 (en) * 2016-09-13 2020-09-22 Hiroshi Watanabe Network without abuse of a private key
US10078493B2 (en) 2016-10-10 2018-09-18 International Business Machines Corporation Secured pseudo-random number generator
US10511451B2 (en) 2016-11-04 2019-12-17 Taiwan Semiconductor Manufacturing Company Ltd. Physically unclonable function (PUF) device and method of extending challenge/response pairs in a PUF device
US10140096B1 (en) * 2016-12-14 2018-11-27 Amazon Technologies, Inc. Preventing ring oscillator phase-lock
US10742405B2 (en) * 2016-12-16 2020-08-11 The Boeing Company Method and system for generation of cipher round keys by bit-mixers
JP6972562B2 (ja) 2017-01-24 2021-11-24 セイコーエプソン株式会社 回路装置、発振デバイス、物理量測定装置、電子機器及び移動体
EP3407335B1 (en) * 2017-05-22 2023-07-26 Macronix International Co., Ltd. Non-volatile memory based physically unclonable function with random number generator
US11646867B2 (en) * 2017-12-22 2023-05-09 The Boeing Company Systems and methods implementing countermeasures to phase tracking attacks on ring oscillator based entropy sources
CN110018810B (zh) * 2018-01-10 2021-05-18 力旺电子股份有限公司 随机码产生器
SG11202007429RA (en) * 2018-03-02 2020-09-29 Intertrust Tech Corp Trust and identity management systems and methods
US11055065B2 (en) 2018-04-18 2021-07-06 Ememory Technology Inc. PUF-based true random number generation system
CN108681442B (zh) 2018-05-07 2021-10-19 温州大学 一种具有自适应匹配功能的真随机数发生器
CN109508174A (zh) 2018-11-05 2019-03-22 杭州电子科技大学 一种单级真随机数发生器
US11126404B2 (en) * 2019-05-20 2021-09-21 Nxp B.V. Random number generator using multiple entropy sources and a method for generating random numbers

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1518734A (zh) * 2002-04-19 2004-08-04 索尼株式会社 密钥生成器、加密/解密设备和密钥生成方法
CN101242265A (zh) * 2008-03-07 2008-08-13 四川虹微技术有限公司 安全系统中流密码、伪随机数产生方法
GB201700670D0 (en) * 2017-01-14 2017-03-01 Tomlinson Martin Improved stream cipher system
CN109495243A (zh) * 2017-09-12 2019-03-19 力旺电子股份有限公司 使用随机数位的安全系统及安全系统的操作方法

Also Published As

Publication number Publication date
JP7006887B2 (ja) 2022-01-24
CN112286493A (zh) 2021-01-29
CN112291056A (zh) 2021-01-29
US20210028935A1 (en) 2021-01-28
JP2021022378A (ja) 2021-02-18
TWI749654B (zh) 2021-12-11
JP2021022924A (ja) 2021-02-18
TWI793429B (zh) 2023-02-21
EP3770751B1 (en) 2023-10-18
EP3770752A1 (en) 2021-01-27
EP3770751A1 (en) 2021-01-27
US11381394B2 (en) 2022-07-05
US11876899B2 (en) 2024-01-16
TW202105168A (zh) 2021-02-01
US20210026603A1 (en) 2021-01-28
JP7122722B2 (ja) 2022-08-22
TW202105957A (zh) 2021-02-01

Similar Documents

Publication Publication Date Title
CN112291056B (zh) 加密密钥生成器及传输系统
CN102611549B (zh) 数据加密设备和存储卡
JP6499519B2 (ja) メッセージを安全に交換する暗号方式並びにこの方式を実施する装置及びシステム
CN102138300A (zh) 消息认证码预计算在安全存储器中的应用
US20150195089A1 (en) Data scramble device, security device, security system, and data scramble method
JP2020537450A (ja) 格子暗号法のために構成可能な装置
EP3531613B1 (en) Method and circuit for implementing a substitution table
JP5198539B2 (ja) 記憶装置、アクセス装置およびプログラム
CN116846542A (zh) 一种数据加密和解密方法、装置及电子设备
CN110213050B (zh) 密钥生成方法、装置及存储介质
CN100459493C (zh) 流密码生成器、随机数生成方法、加密系统及加密方法
NO326812B1 (no) Innretning og fremgangsmate for numerisk gruppeutgivelse, krypteringsinnretning og dekrypteringsinnretning
CN113541942B (zh) 基于arx白盒分组密码的数字内容加解密方法
US9058507B2 (en) Signal processor with an encrypting or decrypting device in a memory system
RU2503135C1 (ru) Способ криптографического преобразования информации и устройство для его реализации
EP3531612B1 (en) Method and device for performing substitution table operations
Deore et al. Hybrid encryption for database security
US20170126399A1 (en) Encryption apparatus, storage system, decryption apparatus, encryption method, decryption method, and computer readable medium
KR101428665B1 (ko) Aes-otp기반의 보안 시스템 및 방법
JP5207153B2 (ja) 擬似乱数発生システム
CN115801227B (zh) 一种生成置换表的方法及装置
JP2015050708A (ja) 動的暗号化鍵生成システム
CN117411727B (zh) 一种通信传输对称加密的加密方法、装置及存储介质
JP5268011B2 (ja) 暗号化システム及び復号化システム
KR20010032479A (ko) 디지털 데이터의 엘-비트 입력 블록들을 엘-비트 출력비트들로 암호 변환하는 방법

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