CN111092730A - 随机数生成器、加密装置以及操作加密装置的方法 - Google Patents
随机数生成器、加密装置以及操作加密装置的方法 Download PDFInfo
- Publication number
- CN111092730A CN111092730A CN201910921511.XA CN201910921511A CN111092730A CN 111092730 A CN111092730 A CN 111092730A CN 201910921511 A CN201910921511 A CN 201910921511A CN 111092730 A CN111092730 A CN 111092730A
- Authority
- CN
- China
- Prior art keywords
- random number
- electronic signature
- module
- generate
- generating
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000004891 communication Methods 0.000 claims description 14
- 238000010586 diagram Methods 0.000 description 23
- 238000012545 processing Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 8
- 230000003044 adaptive effect Effects 0.000 description 7
- 238000012805 post-processing Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000009434 installation Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- 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/32—Cryptographic 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/3247—Cryptographic 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 involving digital signatures
- H04L9/3252—Cryptographic 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 involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Algebra (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
提供随机数生成器、加密装置以及操作加密装置的方法。一种生成用于安全的电子签名的加密装置包括:随机数生成模块,被配置为生成至少一个随机数;随机数调整模块,被配置为通过调整所述至少一个随机数来生成满足基于椭圆曲线密码的数字签名算法(ECDSA)中的随机数条件的一次性随机数;以及电子签名生成模块,被配置为基于ECDSA使用一次性随机数生成电子签名。
Description
本专利申请要求于2018年10月24日向韩国知识产权局提交的第10-2018-0127690号韩国专利申请的优先权的权益,所述韩国专利申请的公开通过引用全部包含于此。
技术领域
本发明构思涉及生成生成电子签名的一次性随机数的随机数生成器、包括随机数生成器的加密装置以及操作加密装置的方法。
背景技术
电子签名是用于验证电子数据的作者(或发送器)的一种技术。具体地,通过使用电子数据、密钥和/或随机数,基于特定电子签名算法来生成(或书写)电子签名。电子数据的接收器通过使用接收的电子数据、接收的电子签名和签名者的公钥,基于特定电子签名算法来验证电子数据。也就是说,电子数据的接收器可确定接收的电子签名是否通过使用与公钥相应的密钥而生成,并且接收的电子数据是否由签名者生成基于确定结果被证明。
在电子签名技术中用于生成电子签名的随机数可需要满足电子签名算法中的随机数条件。因此,生成随机数的操作被不必要地重复,直到满足随机数条件的随机数被生成为止。由于上面的情况,为了生成电子签名而过度执行计算处理,这导致低效率的功耗,并因此,用于生成电子签名的时间可能增加。
发明内容
本发明构思提供一种随机数生成器、包括随机数生成器的加密装置以及操作加密装置的方法,其中,随机数生成器用于通过调整生成的随机数来生成满足电子签名算法中的随机数条件的一次性随机数,以便防止不必要的随机数生成操作。
根据一些实施例,提供一种生成用于安全的电子签名的加密装置,所述加密装置包括:随机数生成模块,被配置为生成至少一个随机数;随机数调整模块,被配置为通过调整所述至少一个随机数来生成满足基于椭圆曲线密码的数字签名算法(ECDSA)中的随机数条件的一次性随机数;以及电子签名生成模块,被配置为基于ECDSA使用一次性随机数来生成电子签名。
根据本发明构思的一些实施例,提供一种将一次性随机数提供到生成用于安全的电子签名的加密装置的随机数生成器,所述随机数生成器包括:随机数生成模块,被配置为生成至少一个随机数;以及随机数调整模块,被配置为通过调整所述至少一个随机数来生成满足所述加密装置的电子签名算法中的随机数条件的一次性随机数。
根据本发明构思的一些实施例,提供一种操作加密装置的方法,该方法包括:生成随机数;通过调整随机数生成满足特定电子签名算法中的随机数条件的一次性随机数;以及基于所述特定电子签名算法,通过使用一次性随机数来生成电子签名。
附图说明
从下面结合附图进行的详细描述,将更清楚地理解本发明构思的实施例,其中:
图1是根据本发明构思的一些实施例的装置的框图;
图2是根据本发明构思的一些实施例的用于示出生成电子签名的处理的公钥加密系统的示图;
图3A是根据本发明构思的一些实施例的基于椭圆曲线的加密装置的框图;
图3B是根据本发明构思的一些实施例的被实现为与基于椭圆曲线的加密装置分离的块的随机数生成器的框图;
图4是示出在基于椭圆曲线生成电子签名的方法中生成的问题的流程图;
图5是示出根据一些实施例的图3A的基于椭圆曲线的加密装置的操作和根据相关领域的操作之间的差别的流程图;
图6是示出根据本发明构思的一些实施例的图3A的基于椭圆曲线的加密装置的操作的流程图;
图7A和图7B是示出根据一些实施例的随机数调整模块的生成一次性随机数的方法的示图;
图8和图9是示出根据本发明构思的一些实施例的生成输入到模乘(modularmultiplication)运算以便生成一次性随机数的输入随机数的方法的示图;
图10是示出根据本发明构思的一些实施例的生成图9中所示的模乘输入模块的输入随机数的方法的表;
图11A和11B是示出根据本发明构思的一些实施例的随机数生成器的自适应一次性随机数生成操作的示图;
图11C是根据本发明构思的一些实施例的在图11A或图11B的自适应一次性随机数生成操作中参照的存储在存储器中的查找表的示图;
图12A和图12B是示出根据本发明构思的一些实施例的随机数调整模块的配置的示图;
图13是根据本发明构思的一些实施例的电子签名服务系统的示图;以及
图14是示出经由根据本发明构思的一些实施例生成的电子签名执行安全验证的通信装置的示例的示图。
具体实施方式
应注意,虽然关于一个实施例描述的本发明构思的方面没有相对于不同的实施例被具体描述,但是关于一个实施例描述的本发明构思的方面可包含在不同的实施例中。也就是说,可以以任何方式和/或组合来组合全部实施例和/或任何实施例的特征。在下面阐述的说明书中详细解释本发明构思的这些和其他对象和/或方面。如这里所使用,术语“和/或”包括一个或多个相关所列项的任何和全部组合。当诸如“……中的至少一个”的表述出现在一列元素后面时,修饰整列元素,而不是修饰列的单个元素。在下文中,将参照附图详细描述本发明构思的一个或多个实施例。
图1是根据一些实施例的装置10的框图。参照图1,装置10可包括处理器11、存储装置12、输入/输出装置13、存储器14、通信子系统15、总线16和加密装置100。装置10可包括可经由总线16彼此电结合连接(或通信)的硬件元件。也就是说,处理器11可包括硬件元件,并且硬件元件可包括一个或多个通用处理器和/或一个或多个专用处理器(例如,数字信号处理芯片、图形加速处理器等)。输入/输出装置13可输入/输出将由处理器11处理或由处理器11处理的数据。
存储装置12可包括本地存储器和/或可经由网络访问的存储器,而不受限制。例如,存储装置12可包括盘驱动器、驱动阵列、光学存储装置、固态存储装置等。存储装置12可以是可编程的或能够闪速更新(flash-updating),并且可被实现为使得各种文件系统、数据库结构等可被应用于存储装置12。
通信子系统15可包括调制解调器、网卡(有线或无线)、紫外(UV)线通信装置、无线通信装置和/或芯片组(例如,蓝牙装置、802.11装置、Wi-Fi装置、WiMAX装置、蜂窝通信装置等),而不受限制。通信子系统15可允许与网络、其他计算机系统/装置和/或其他任意装置交换与根据一些实施例生成的电子签名相关的数据(或将与根据一些实施例生成的电子签名相关的数据传送到网络、其他计算机系统/装置和/或其他任意装置)。
存储器14可包括操作系统14a和包括装置驱动器、可执行库和/或程序代码的应用程序14b。操作系统14a和应用程序14b是软件元件,并且可通过由计算机(或计算机中的处理器)执行代码和/或命令来实现。
根据一些实施例的加密装置100包括为了安全而执行各种操作以便生成关于电子数据(或待签名的数据)的电子签名的装置,并且可包括用于防止随机数生成操作被无效率地重复的随机数调整模块113。加密装置100可被称为电子签名装置。加密装置100可基于预定电子签名算法来生成关于电子数据的电子签名,并且随机数调整模块113可通过调整(或后处理)由预定随机数生成模块(未示出)生成的随机数来一次地生成满足电子签名算法中的随机数条件的一次性随机数。
根据一些实施例,随机数调整模块113可通过使用生成的随机数执行模乘,来生成一次性随机数。随机数调整模块113可从一个随机数生成模乘中所需的多个输入随机数。当生成输入随机数时,随机数调整模块113可例如,通过使用一个生成的随机数的长度或者经由重复使用一个生成的随机数选择生成输入随机数的各种方法,并且可通过基于选择的输入随机数生成方法经由使用多个输入随机数执行模乘,来生成一次性随机数。由随机数调整模块113使用的用于生成一次性随机数的模乘方法可与加密装置100中用于生成电子签名的模乘方法相同。也就是说,随机数调整模块113可通过预先使用包括在加密装置100中的用于生成电子签名的模乘模块来生成一次性随机数。然而,一个或多个实施例不限于上面的示例,也就是说,随机数调整模块113可使用包括在另外的处理器11中的模乘模块,或者可包括用于生成一次性随机数的附加模乘模块。此外,加密装置100可支持各种电子签名算法,并且随机数调整模块113可执行自适应操作,以生成满足当前被激活以在加密装置100中生成电子签名的电子签名算法中的随机数条件的一次性随机数。根据一些实施例,加密装置100可被称为加密处理器。此外,加密装置100可与处理器11集成以被配置为一个块。
根据一些实施例,随机数调整模块113可被实现为硬件逻辑,或者可包括通过逻辑综合而设计的逻辑块。此外,随机数调整模块113可包括软件块,其中,当存储在诸如存储装置12的非暂时性计算机可读存储介质上的一组代码和/或命令由加密装置100执行时,该软件块被配置。在一些实施例中,存储介质可被提供为可从计算机装置拆卸的装置(例如,诸如光盘、通用串行总线(USB)等的可拆卸介质)或安装包,以便用于编程或适配具有存储在其上的一组代码和/或命令的通用计算机。该组代码和/或命令可被提供为可由加密装置100执行的可执行代码,并且可被提供为被设置为加密装置100上的编译和/或安装中的可执行代码的源代码和/或可安装代码。
根据一些实施例的加密装置100可通过经由随机数调整模块113防止低效率地重复生成满足预定签名算法中的随机数条件的随机数的操作,来有效地使用电力并减少生成电子签名所花费的时间,并且可通过以任意方式对随机数进行后处理来增强电子签名的安全。
图2是根据一些实施例的用于示出生成电子签名的处理的公钥加密系统SYS的示图。图2的公钥加密系统SYS可包括图1的装置10。图2的发送器20可对应于图1的装置10。
参照图2,公钥加密系统SYS可包括指示加密侧的发送器20、指示解密侧的接收器21和公钥管理系统30。在公钥加密系统SYS中,可向每个用户授予两个钥(key)(例如,密钥41和公钥42)。在访问公钥管理系统30之后,发送器20可通过经由使用接收器21的公钥42对明文(或电子数据)进行加密来生成密文(例如,电子签名)。更具体地,发送器20可通过使用明文、公钥和一次性随机数基于预定电子签名算法生成电子签名。如上所述,发送器20可对预定随机数执行调整(或后处理),以便生成一次性随机数。密文可被传送到接收器21。接下来,接收器21通过使用其持有的密钥41对密文进行解密,并通过对密文进行解密来重构明文。
根据一些实施例的公钥加密系统SYS可采用各种电子签名算法。作为示例,公钥加密系统SYS可采用基于椭圆曲线密码的数字签名算法(ECDSA)、EC-Schnorr电子签名算法等中的一种。各种电子签名算法可由国际标准(FIPS186-4)定义。公钥加密系统SYS可执行各种类型的模乘运算,以便生成电子签名或生成一次性随机数。作为示例,公钥加密系统SYS可采用蒙哥马利(Montgomery)乘法以便生成电子签名和一次性随机数。
图3A是根据实施例的基于椭圆曲线的加密装置100的框图,图3B是被实现为与基于椭圆曲线的加密装置100'分开的块的随机数生成器RNG的框图。将假设图3A或图3B的基于椭圆曲线的加密装置100或100'采用根据国际标准的ECDSA。然而,一个或多个实施例不限于上面的示例,并且该技术思想可应用于各种电子签名算法。
参照图3A,基于椭圆曲线的加密装置100可包括电子签名生成模块110、电子签名运算模块120和装置存储器130。电子签名生成模块110可包括随机数生成模块111、随机数调整模块113和签名生成处理模块115。
基于椭圆曲线的加密装置100可采用根据由标准定义的以下算法1的基于椭圆曲线的电子签名方法。
算法1:ECDSA签名生成
输入:消息M,密钥d,
域参数={质数p,阶q,生成器G=(xG,yG)}
输出:签名S={r,s}
1.生成短暂的随机标量k
2.如果2<k<阶q,则到步骤3.如果不是,则到步骤1.
3.计算标量乘法R=(xG,yG)=kG
4.r=xR mod q
5.H=Hash(M)
6.s=k-1(H+r*d)mod q
随机数生成模块111可执行生成随机数的操作一次以生成预定随机数。根据一些实施例的随机数调整模块113可调整由随机数生成模块111生成的随机数,以便生成满足算法1的段落2中的随机数条件的一次性随机数k。签名生成处理模块115可通过使用一次性随机数k来执行标量乘法,以生成相乘值R。使用相乘值R的x坐标值xR执行模乘运算以生成电子签名值的部分签名值r,并且可通过组合哈希运算值H、密钥d和/或关于待签名数据(M)的部分签名值r来生成剩余签名值s。签名生成处理模块115可通过将部分签名值r与剩余签名值s进行组合来最终生成电子签名。在由电子签名生成模块110执行的生成电子签名的处理中的标量乘法和模运算中,使用椭圆曲线参数(也就是说,质数p和阶q),并且可由标准定义各种参数而不是公知的固定参数。
电子签名生成模块110可通过使用电子签名运算模块120来根据上面的算法1执行用于生成电子签名的运算。电子签名运算模块120可包括哈希运算模块、模运算模块、标量乘法模块等。根据一些实施例,电子签名运算模块120可包括在电子签名生成模块110中,此外,电子签名运算模块120可与签名生成处理模块115组合。根据一些实施例,模运算模块可以是蒙哥马利运算模块,并且蒙哥马利运算模块可包括蒙哥马利乘法模块、蒙哥马利加法模块和蒙哥马利减法模块。当电子签名运算模块120包括蒙哥马利运算模块时,电子签名运算模块120可根据下面的算法2执行蒙哥马利运算。电子签名运算模块120在执行两个输入变量A和B的模乘时,重复执行将乘数B除以运算单元基数(2^k)以计算与被乘数A的部分乘积并且同时以运算单元基数的幅度衰减到模数(modulus)M(2-A)并输出累积和(2-B)的处理。由于以该基数进行的衰减根据模数M的长度(r)被重复执行(r/k)次,因此实际运算结果等于通过将2^r除以A和B的相乘值而获得的结果,并且小于模数M。
算法2:蒙哥马利减少(k是基数)
输入:2r-1<q<2r,
输出:Sn=AB2-r mod q
1.S0=0
2.For i=0to n-1
A.Qi=-1/M×(Si-1+BiA)mod 2k
B.Si=(Si-1+BiA+QiM)/2k
3.如果Sn<0,则Sn=Sn+M
根据一些实施例,随机数调整模块113可与电子签名运算模块120分开地包括用于生成一次性随机数k的模乘运算模块。作为随机数调整模块113中生成一次性随机数k的基础的模乘方法可与作为电子签名运算模块120中生成电子签名的基础的模乘方法相同。也就是说,当电子签名运算模块120包括蒙哥马利乘法模块时,随机数调整模块113可包括单独的蒙哥马利乘法模块。根据一些实施例,随机数调整模块113可使用电子签名运算模块120以便生成一次性随机数k。然而,一个或多个实施例不限于此,并且作为随机数调整模块113生成一次性随机数k时的基础的模乘方法可不同于作为电子签名运算模块120生成电子签名时的基础的模乘方法。
装置存储器130存储用在基于椭圆曲线的加密装置100中的各种数据,并且在生成电子签名时可由电子签名生成模块110或电子签名运算模块120访问。
参照图3B,与图3A相比,装置10'中的随机数生成模块111'和随机数调整模块113'可与基于椭圆曲线的加密装置100'分开设置,并且随机数生成模块111'和随机数调整模块113'可包括在一个随机数生成器RNG中。随机数生成器RNG可从基于椭圆曲线的加密装置100'接收针对用于生成电子签名的一次性随机数k的生成的请求,并且随机数生成模块111'可响应于请求而在有限次数内执行生成随机数的操作。例如,作为非限制性示例,随机数生成模块111'可响应于请求而仅执行生成随机数的操作一次。装置存储器130'存储用在基于椭圆曲线的加密装置100'中的各种数据,并且在生成电子签名时可由电子签名生成模块110'或电子签名运算模块120'访问。
参照图3A和图3B描述的模块可以是包括多个晶体管的硬件逻辑,或者可以是当由预定处理器(例如,图3A的基于椭圆曲线的加密装置100)执行一组预定代码和/或多个命令时实现的软件逻辑,或者可以是上述硬件逻辑和软件逻辑的组合。
图4是示出在根据相关领域的基于椭圆曲线生成电子签名的方法中生成的问题的流程图,图5是示出根据一些实施例的图3A的基于椭圆曲线的加密装置100的操作与根据相关领域的操作之间的差别的流程图。
参照图4,基于椭圆曲线的加密装置执行操作S10至S18以便生成电子签名S。首先,生成随机数k'(S10)。可执行随机数k'是否大于1且小于作为椭圆曲线参数的阶q的确定(S11)。在确定基于椭圆曲线的电子签名算法的随机数条件的操作S11中,当生成的随机数k'满足随机数条件时(操作S11中的“是”)时,执行使用随机数k'(满足随机数条件的随机数可被称为一次性随机数k)的标量乘法(S14)。在那之后,使用标量乘法结果值中的x坐标值xR通过模乘来生成部分签名值r(S15)。对待签名的消息执行哈希运算(S16),通过使用哈希值H、部分签名值r、密钥d、一次性随机数k和阶q来生成剩余签名值s(S17)。在那之后,可通过将部分签名值r与剩余签名值s进行组合来生成电子签名S(S18)。这里,当操作S10中随机生成的随机数k'在操作S11中不满足随机数条件时,可无限重复用于生成随机数k'的操作S10,直到生成满足随机数条件的随机数k'为止。因此,当生成电子签名S时,由于可重复执行操作S10,所以功耗增加,并且生成电子签名S所花费的时间增加。
参照图3A和图5,为了解决上面参照图4描述的问题,随机数调整模块113可在操作S10'中从由随机数生成模块111生成的随机数k'生成随机数k1'和随机数k2'。随机数k1'和随机数k2'可被定义为输入到操作S12中执行的模乘的输入随机数。根据一些实施例,模乘可以是蒙哥马利乘法,并且下面的模乘运算可在操作S12中执行。
k=k1′×k2′×2-rmod q
作为示例,随机数k1'被输入为被乘数,随机数k2'被输入为乘数,并且作为根据操作S12通过使用随机数k1'和k2'执行模乘的结果,可生成满足与图4的操作S11相应的ECDSA中的随机数条件的一次性随机数k(S13)。也就是说,由随机数调整模块113生成的一次性随机数k可满足随机数条件,即1<k<阶q。然而,由于在操作S12中被执行以生成一次性随机数k的蒙哥马利乘法是示例,因此一个或多个实施例不限于此。换言之,可应用不同类型的模乘。因此,与图4的流程图不同,在图5的流程图中,可不需要执行操作S11,并且可不根据操作S11的结果重复执行操作S10。因此,可有效地消耗电力,并且可减少生成电子签名所花费的时间。
图6是示出根据一些实施例的图3A的基于椭圆曲线的加密装置100的操作的流程图。
参照图3A和图6,当电子签名生成模块110生成电子签名时,随机数生成模块111可生成随机数(S100)。如上所述,随机数调整模块113可对生成的随机数执行调整,以防止随机数生成模块111的重复操作(S120)。随机数调整模块113可通过调整生成满足ECDSA中的随机数条件的一次性随机数(S130)。如上所述,签名生成处理模块115可通过使用一次性随机数来生成电子签名。
图7A和图7B是示出根据一些实施例的随机数调整模块113的生成一次性随机数k的方法的示图。
参照图7A,随机数生成模块111可生成随机数k',并将随机数k'提供给随机数调整模块113。随机数调整模块113可包括与电子签名运算模块120分开提供的模乘模块MCM。随机数调整模块113可通过使用模乘模块MCM来生成一次性随机数k。随机数调整模块113可将生成的一次性随机数k提供给签名生成处理模块115。签名生成处理模块115可通过使用一次性随机数k来生成电子签名。签名生成处理模块115可通过使用电子签名运算模块120执行生成电子签名所需的操作。根据一些实施例,模乘模块MCM的运算方法可与电子签名运算模块120的运算方法相同或不同。
参照图7B,随机数生成模块111"可生成随机数k'并将随机数k'提供给随机数调整模块113"。随机数调整模块113"可通过使用电子签名运算模块120"来生成一次性随机数k。也就是说,随机数调整模块113"可将随机数k'和用于控制使用随机数k'的预定模乘的控制信号CS提供给电子签名运算模块120"。图7B示出随机数调整模块113"简单地传送随机数k',但是一个或多个实施例不限于此,并且适用于应用在电子签名运算模块120"中的模乘的输入数可从随机数k'被生成并被提供给电子签名运算模块120"。
电子签名运算模块120"可响应于控制信号CS而执行用于生成一次性随机数k的操作,并且可将通过该操作生成的一次性随机数k提供给随机数调整模块113"。随机数调整模块113"可将一次性随机数k提供给签名生成处理模块115"。签名生成处理模块115"可通过使用一次性随机数k来生成电子签名。虽然图7B示出了电子签名运算模块120"将一次性随机数k返回到随机数调整模块113",但是一个或多个实施例不限于此,并且电子签名运算模块120"可直接将一次性随机数k提供给签名生成处理模块115"。
图8和图9是示出根据一些实施例的生成输入到模乘的输入随机数以便生成一次性随机数k的方法的示图,图10是用于示出在图9的模乘输入模块MCIM中生成输入随机数的方法的表。在下文中,可假设:随机数调整模块113a包括模乘模块MCM,并且对于模乘模块MCM的两个输入对于生成一次性随机数k是必要的。然而,一个或多个实施例不限于上面的示例,并且如图7B中所示,该技术思想可应用于随机数调整模块113"不包括附加模乘模块的情况或者根据模乘方法应用多个输入而不是两个输入的情况。
参照图8,随机数生成模块111a生成两个随机数k1'和k2',并将随机数k1'和k2'提供给随机数调整模块113a。根据一些实施例,随机数生成模块111a可执行一次随机数生成操作,并且向随机数调整模块113a提供具有彼此相同的值的随机数k1'和k2'。在一些实施例中,随机数生成模块111a可执行随机数生成操作两次,并向随机数调整模块113a提供具有彼此不同的值的随机数k1'和k2'。
随机数调整模块113a可包括模乘模块MCM,并且模乘模块MCM可接收随机数k1'和随机数k2'作为输入随机数,通过使用输入随机数k1'和k2'生成一次性随机数k,并且将一次性随机数k提供给签名生成处理模块115a。
参照图9,随机数生成模块111b生成一个随机数k',并将随机数k'提供给随机数调整模块113b。随机数调整模块113b可包括模乘输入模块MCIM和模乘模块MCM。模乘输入模块MCIM可接收随机数k',并从随机数k'生成将输入到模乘模块MCM的输入随机数。根据一些实施例,模乘输入模块MCIM通过以各种方法中的一种方法使用随机数k'来生成与输入随机数相应的随机数k1'和k2',并将随机数k1'和k2'提供给模乘模块MCM。模乘模块MCM通过使用随机数k1'和k2'执行模乘以生成一次性随机数k,并将一次性随机数k提供给签名生成处理模块115b。
参照图10,模乘输入模块MCIM可以以各种方法生成随机数k1'和K2',以适合于表中的第一情况Case1至第六情况Case6。根据一些实施例,在第一情况Case1至第六情况Case6中,由模乘模块MCM生成的一次性随机数k可具有恒定比特长度(即,L)。
在第一情况Case1下,模乘输入模块MCIM可从随机数k'生成均具有相同的比特长度L的随机数k1'和随机数k2'。在第一情况Case1下,模乘输入模块MCIM可在不执行额外的处理的情况下将具有比特长度L的随机数k'作为随机数k1'和随机数k2'输入到模乘模块MCM。
在第二情况Case2下,模乘输入模块MCIM可从随机数k'生成具有比特长度L的随机数k1'和具有比L短的比特长度的随机数k2'。在第二情况Case2下,模乘输入模块MCIM可将具有彼此不同的比特长度的随机数k1'和随机数k2'输入到模乘模块MCM。模乘输入模块MCIM在不执行特定处理的情况下将具有比特长度L的随机数k'作为随机数k1'输入到模乘模块MCM,并且可通过对随机数k'进行划分来生成随机数k2',并将随机数k2'输入到模乘模块MCM。
在第三情况Case3下,模乘输入模块MCIM可从随机数k'生成具有比特长度L的随机数k2'和具有比L短的比特长度的随机数k1'。在第三情况Case3下,模乘输入模块MCIM可将具有彼此不同的比特长度的随机数k1'和随机数k2'输入到模乘模块MCM。模乘输入模块MCIM在不执行特定处理的情况下将具有比特长度L的随机数k'作为随机数k2'输入到模乘模块MCM,并且可通过对随机数k'进行划分来生成随机数k1',并将随机数k1'输入到模乘模块MCM。
在第四情况Case4下,模乘输入模块MCIM可生成具有比L短的相同比特长度的随机数k1'和随机数k2'。在第四情况Case4下,模乘输入模块MCIM通过对具有比特长度L的随机数k'进行划分来生成具有彼此相同的比特长度的随机数k1'和随机数k2',然后将随机数k1'和k2'输入到模乘模块MCM。作为实施例,随机数k1'中的比特长度和随机数k2'中的比特长度的总和可对应于L。
在第五情况Case5下,模乘输入模块MCIM可生成具有比L短的不同比特长度的随机数k1'和随机数k2'。根据一些实施例,随机数k2'的比特长度可大于随机数k1'的比特长度。在第五情况Case5下,模乘输入模块MCIM可通过对具有比特长度L的随机数k'进行划分来生成具有彼此不同的比特长度的随机数k1'和随机数k2',然后将随机数k1'和K2'输入到模乘模块MCM。根据一些实施例,随机数k1'中的比特长度和随机数k2'中的比特长度的总和可对应于L。
在第六情况Case6下,模乘输入模块MCIM可生成具有比L短的不同比特长度的随机数k1'和随机数k2'。根据一些实施例,随机数k1'的比特长度可大于随机数k2'的比特长度。在第六情况Case6下,模乘输入模块MCIM通过对具有比特长度L的随机数k'进行划分来生成具有彼此不同的比特长度的随机数k1'和随机数k2',然后将随机数k1'和k2'输入到模乘模块MCM。根据一些实施例,随机数k1'中的比特长度和随机数k2'中的比特长度的总和可对应于L。
每当签名生成处理模块115b使用一次性随机数k时,根据一些实施例的模乘输入模块MCIM可根据从第一情况Case1到第六情况Case6之中选择的一种任意情况来生成作为输入随机数的随机数k1'和随机数k2'。然而,图9中所示的第一情况Case1到第六情况Case6是示例,因此,一个或多个实施例不限于这些示例,也就是说,更多的情况可被提供,并且模乘输入模块MCIM可基于这些情况之中的一个任意情况生成输入随机数。
图11A和图11B是示出根据一些实施例的随机数生成器RNG的自适应一次性随机数生成操作的示图,图11C是在图11A或图11B的自适应一次性随机数生成操作中参照的存储在存储器216中的查找表的示图。
参照图11A,随机数生成器RNG可包括随机数生成模块211、随机数调整模块213、存储器216和模乘模块217。加密装置200a可包括用于支持各种电子签名算法的第一电子签名生成模块210a_1至第n电子签名生成模块210a_n。第一电子签名生成模块210a_1至第n电子签名生成模块210a_n中的每个可基于与其他电子签名生成模块的电子签名算法不同的电子签名算法来生成电子签名。加密装置200a可通过使用从第一电子签名生成模块210a_1至第n电子签名生成模块210a_n之中激活的电子签名生成模块来生成电子签名。将理解,尽管术语第一、第二、第三等可在此用于描述各种元件,但元件不应受这些术语的限制;相反,这些术语仅用于将一个元件与另一个元件区分开来。因此,在不脱离本发明构思的范围的情况下,所讨论的第一元件可被称为第二元件。
随机数生成器RNG可连接到可支持各种电子签名算法的加密装置200a,并可从加密装置200a接收针对一次性随机数的生成的请求。与针对一次性随机数的生成的请求一起,随机数生成器RNG还可接收关于加密装置200a中当前激活的电子签名生成模块的信息(例如,关于加密装置200a的当前电子签名算法的信息)。随机数生成模块211响应于针对一次性随机数的生成的请求而生成随机数,随机数调整模块213可参照存储器216以便基于上面的信息生成满足根据加密装置200a中的当前电子签名算法的随机数条件的一次性随机数,并且可从多个模乘模块217之中选择被优化以生成一次性随机数的模乘模块217。随机数调整模块213可通过使用选择的模乘模块217来生成一次性随机数。
此外,为了安全问题,每当随机数生成器RNG从加密装置200a接收针对一次性随机数的生成的请求时,随机数生成器RNG可通过使用随机数生成模块211来生成随机数,并且可通过使用生成的随机数来生成一次性随机数。
当加密装置200a支持各种电子签名算法时,随机数生成器RNG可自适应地执行生成一次性随机数的操作,以防止不必要地重复随机数生成操作。
与图11A中不同,如图11B中所示,随机数生成器RNG可连接到支持彼此相同或不同的电子签名算法的多个加密装置200a_1至200a_n,并且在这种情况下,随机数生成器RNG可从加密装置200a_1至200a_n中的每个接收关于电子签名算法的信息,并且可基于该信息执行自适应一次性随机数生成操作,以便向加密装置200a_1至200a_n中的每个提供适当的一次性随机数。
参照图11C,图11A或图11B的存储器216可存储被参照以执行随机数生成器RNG的自适应一次性随机数生成操作的查找表。查找表可包括关于分别一一对应地映射到多个电子签名算法Type_1至Type_n的一次性随机数生成方法(或随机数调整方法)A_Type_1、A_Type_2…。进一步参照图11A,随机数调整模块213可通过参照存储器216的查找表来检查适合于加密装置200a中当前激活的电子签名算法的一次性随机数生成方法,并且可通过根据该一次性随机数生成方法选择多个模乘模块217中的一个来生成一次性随机数。此外,作为示例,在假设第n电子签名算法Type_n中不存在特定随机数条件的情况下,当第n电子签名算法Type_n当前在加密装置200a中被激活时,随机数调整模块213可将由随机数生成模块211生成的随机数旁路到加密装置200a。将在下面参照图12A和图12B描述关于这个的详细实施例。
图12A和图12B是示出根据一些实施例的随机数调整模块213的配置的示图。
参照图12A,随机数调整模块213可包括开关SW、模乘输入模块MCIM和第一模乘模块MCM_1。如上面参照图11A和图11C所述,当第一电子签名生成模块210a_1当前在加密装置200a中被激活时,随机数调整模块213可通过参照存储器216(见图11A)来选择适合于第一电子签名生成模块210a_1的电子签名算法的第一模乘模块MCM_1,以生成一次性随机数k。随机数调整模块213从随机数生成模块211接收随机数k',并且可控制开关SW以便将随机数k'提供给模乘输入模块MCIM。模乘输入模块MCIM从随机数k'生成随机数k1'和随机数k2',并将随机数k1'和K2'提供给第一模乘模块MCM_1。第一模乘模块MCM_1可通过预定模乘生成一次性随机数k,并将一次性随机数k提供给加密装置200a。
参照图12B,如上面参照图11A和图11C所述,当第n电子签名生成模块210a_n当前在加密装置200a中被激活时,随机数调整模块213可通过参照存储器216(见图11A)来控制开关SW,使得从随机数生成模块211发送的随机数k'可作为一次性随机数k被直接旁路到加密装置200a。
图13是根据一些实施例的电子签名服务系统600的示图。
参照图13,根据一些实施例,电子签名服务系统600可包括用户终端620、存储用于生成用户的电子签名的数据并向用户提供电子签名服务的电子签名服务服务器610、使用电子签名的电子签名使用服务器630以及用于认证电子签名的认证服务器640。用户终端620可包括被配置为执行这里描述的操作的一个或多个处理器。这里描述的各种操作可通过硬件、软件或它们的组合来执行。用户终端可包括被配置为发送和/或接收电子签名的收发器。
电子签名使用服务器630表示由使用电子签名的组织管理的服务器。电子签名使用服务器630可包括但不限于银行服务器、由公共组织管理的服务器、提供电子商务服务的服务器等。电子签名使用服务器630可发布用户需要认证的电子文档(即,待签名的文档)。电子签名使用服务器630可将从待签名的文档导出的待签名的数据发送到用户终端620。待签名的数据可包括待签名的原始数据,或者可包括通过将待签名的文档的原始数据处理为适合于加密而获得的数据。电子签名使用服务器630可向用户终端620请求关于待签名的数据的电子签名。
认证服务器640表示由发布和管理用于认证电子签名的证书的认证机构管理的服务器。认证机构的示例可包括韩国金融电信和清算研究所(KFTC)、韩国信息认证机构公司、韩国证券信息公司(Koscom)、韩国电子认证机构、国家信息社会机构、韩国贸易网络等。
用户终端620表示由具有电子签名的权限的用户使用的装置。用户终端620可包括但不限于智能电话、平板PC、膝上型计算机等。用户终端620可包括用于与电子签名使用服务器630和电子签名服务服务器610通信的通信单元。用户终端620可从电子签名使用服务器630接收针对待签名的数据和关于待签名的数据的电子签名的请求。
用户终端620可根据上面参照图1等描述的实施例对生成电子签名所需的随机数执行调整(或后处理),并且可生成满足用户终端620的电子签名算法中的随机数条件的一次性随机数。这样,用户终端620可在生成电子签名时有效地使用电力,并且可快速地生成电子签名。
用户终端620可不直接生成电子签名,而是可请求电子签名服务服务器610生成电子签名。如果需要,则用户终端620可以以易于被电子签名的格式处理待签名的数据,并且可将针对关于经处理的待签名的数据的电子签名的请求发送到电子签名服务服务器610。这里,电子签名服务服务器610可根据上面参照图1等描述的实施例执行一次性随机数生成操作。
当从电子签名服务服务器610接收到电子签名时,用户终端620可通过使用电子签名来生成电子签名文档。电子签名文档可以以可由电子签名使用服务器630或认证服务器640验证的格式来编写。用户终端620可将生成的电子签名文档发送到电子签名使用服务器630。
图14是示出经由根据一些实施例生成的电子签名执行安全验证的通信装置的示例的示图。具体地,图14示出各种无线通信装置在使用无线局域网(WLAN)的无线通信系统中彼此通信的示例。
家庭小工具(home gadget)721、家用电器722、娱乐装置723和接入点(AP)710可构成物联网(IoT)网络系统。家庭小工具721、家用电器722、娱乐装置723和AP 710中的每个可根据一个或多个实施例来执行一次性随机数生成操作,并且可通过使用一次性随机数来生成电子签名。可通过使用电子签名提高构成IoT网络系统的装置(即,AP 710、家庭小工具721、家用电器722和娱乐装置723)的安全。家庭小工具721、家用电器722和娱乐装置723可与AP 710无线通信,或者可彼此无线通信。
虽然已经参照本发明的实施例具体示出和描述了本发明构思,但是将理解,在不背离所附权利要求的精神和范围的情况下,可对本发明构思进行各种形式和细节上的改变。
Claims (23)
1.一种生成用于安全的电子签名的加密装置,所述加密装置包括:
随机数生成模块,被配置为生成至少一个随机数;
随机数调整模块,被配置为通过调整所述至少一个随机数来生成满足特定电子签名算法中的随机数条件的一次性随机数;以及
电子签名生成模块,被配置为基于所述特定电子签名算法使用一次性随机数生成电子签名。
2.如权利要求1所述的加密装置,其中,所述特定电子签名算法是基于椭圆曲线密码的数字签名算法或EC-Schnorr电子签名算法。
3.如权利要求1所述的加密装置,其中,随机数调整模块被配置为从所述至少一个随机数生成根据所述特定电子签名算法的参考范围内的一次性随机数。
4.如权利要求1所述的加密装置,其中,随机数调整模块还包括:蒙哥马利模乘模块,被配置为生成一次性随机数。
5.如权利要求4所述的加密装置,
其中,当随机数生成模块被配置为生成第一随机数和第二随机数时,蒙哥马利模乘模块通过使用第一随机数和第二随机数分别作为被乘数和乘数执行蒙哥马利乘法来生成一次性随机数。
6.如权利要求4所述的加密装置,其中,随机数调整模块还包括:
模乘输入模块,被配置为从所述至少一个随机数生成输入到蒙哥马利模乘模块的第一随机数和第二随机数。
7.如权利要求6所述的加密装置,其中,模乘输入模块被配置为通过对所述至少一个随机数进行划分来生成第一随机数和第二随机数。
8.如权利要求6所述的加密装置,其中,第一随机数和第二随机数等于所述至少一个随机数。
9.如权利要求6所述的加密装置,其中,模乘输入模块通过对所述至少一个随机数进行划分来生成第一随机数和第二随机数中的一个,并将第一随机数和第二随机数中的另一个生成为等于所述至少一个随机数。
10.如权利要求6所述的加密装置,其中,模乘输入模块随机选择生成第一随机数和第二随机数的各种方法中的一种,以生成第一随机数和第二随机数。
11.如权利要求1所述的加密装置,还包括:
电子签名运算模块,用于生成电子签名,
其中,随机数调整模块被配置为使用电子签名运算模块生成一次性随机数。
12.一种随机数生成器,被配置为将一次性随机数提供到生成用于安全的电子签名的加密装置,所述随机数生成器包括:
随机数生成模块,被配置为生成至少一个随机数;以及
随机数调整模块,被配置为通过调整所述至少一个随机数来生成满足所述加密装置的电子签名算法中的随机数条件的一次性随机数。
13.如权利要求12所述的随机数生成器,其中,当针对一次性随机数的生成的请求从所述加密装置被接收时,随机数生成模块执行生成所述至少一个随机数的操作一次。
14.如权利要求12所述的随机数生成器,其中,随机数生成器被配置为:从所述加密装置接收关于电子签名算法的信息,并基于所述信息生成一次性随机数。
15.如权利要求12所述的随机数生成器,其中,随机数调整模块还包括:
至少一个模乘模块,被配置为生成一次性随机数。
16.如权利要求12所述的随机数生成器,其中,随机数调整模块被配置为从所述至少一个随机数生成至少一个输入随机数以将所述至少一个输入随机数提供到所述加密装置,并且随机数调整模块被配置为通过使用所述加密装置生成一次性随机数。
17.一种操作加密装置的方法,所述方法包括:
生成随机数;
通过调整随机数生成满足特定电子签名算法中的随机数条件的一次性随机数;以及
基于所述特定电子签名算法,通过使用一次性随机数来生成电子签名。
18.如权利要求17所述的方法,
其中,第一模乘方法用在生成一次性随机数的步骤中,以及
其中,第一模乘方法与用在生成电子签名的步骤中的第二模乘方法相同。
19.如权利要求18所述的方法,其中,生成一次性随机数的步骤包括:通过使用在生成电子签名的步骤中所使用的模运算模块来生成一次性随机数。
20.如权利要求17所述的方法,其中,生成一次性随机数的步骤包括:
从随机数生成多个输入随机数;和
通过使用所述多个输入随机数执行模乘来生成一次性随机数。
21.如权利要求17所述的方法,
其中,所述特定电子签名算法是基于椭圆曲线密码的数字签名算法或EC-Schnorr电子签名算法,以及
其中,生成一次性随机数的步骤和生成电子签名的步骤使用蒙哥马利乘法。
22.一种通信装置,所述通信装置包括:
收发器;
处理器,被配置为执行操作,所述操作包括:
生成至少一个随机数;
通过调整所述至少一个随机数,生成满足特定电子签名算法中的随机数条件的一次性随机数;以及
基于特定电子签名算法使用一次性随机数生成电子签名,其中,收发器被配置为将电子签名发送到服务器。
23.如权利要求22所述的通信装置,其中,所述特定电子签名算法是基于椭圆曲线密码的数字签名算法或EC-Schnorr电子签名算法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180127690A KR20200046481A (ko) | 2018-10-24 | 2018-10-24 | 난수 생성기, 이를 포함하는 암호화 장치 및 이의 동작 방법 |
KR10-2018-0127690 | 2018-10-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111092730A true CN111092730A (zh) | 2020-05-01 |
CN111092730B CN111092730B (zh) | 2024-07-12 |
Family
ID=70325719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910921511.XA Active CN111092730B (zh) | 2018-10-24 | 2019-09-27 | 随机数生成器、加密装置以及操作加密装置的方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11057206B2 (zh) |
KR (1) | KR20200046481A (zh) |
CN (1) | CN111092730B (zh) |
DE (1) | DE102019120485A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116980129A (zh) * | 2023-09-22 | 2023-10-31 | 深圳市纽创信安科技开发有限公司 | 数字签名生成方法、装置、电子设备与可读存储介质 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102019127354A1 (de) * | 2019-10-10 | 2021-04-15 | Infineon Technologies Ag | Erstellen einer Signatur |
US11791988B2 (en) * | 2021-11-22 | 2023-10-17 | Theon Technology Llc | Use of random entropy in cryptography |
US11943336B2 (en) * | 2021-11-22 | 2024-03-26 | Theon Technology Llc | Use of gradient decent function in cryptography |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120069994A1 (en) * | 2010-09-16 | 2012-03-22 | Stmicroelectronics S.R.L. | Method for genertaing a digital signature |
CN102761415A (zh) * | 2011-04-27 | 2012-10-31 | 航天信息股份有限公司 | p元域SM2椭圆曲线的数字签名生成、验证及混合系统 |
US20140146607A1 (en) * | 2011-06-03 | 2014-05-29 | Kabushiki Kaisha Toshiba | Semiconductor memory device for pseudo-random number generation |
WO2018019788A1 (en) * | 2016-07-28 | 2018-02-01 | Gemalto Sa | Efficient ecdsa signature and verification |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5999626A (en) | 1996-04-16 | 1999-12-07 | Certicom Corp. | Digital signatures on a smartcard |
US7599491B2 (en) * | 1999-01-11 | 2009-10-06 | Certicom Corp. | Method for strengthening the implementation of ECDSA against power analysis |
AU745959B2 (en) * | 1999-04-02 | 2002-04-11 | Huawei Technologies Co., Ltd. | Interleaving / deinterleaving apparatus and method for a communication system |
EP1217783B9 (en) * | 1999-09-29 | 2009-07-15 | Hitachi, Ltd. | Device, program or system for processing secret information |
JP2004507789A (ja) * | 2000-08-29 | 2004-03-11 | エヌティーアールユー・クリプトシステムズ・インコーポレーテッド | 高速強化暗号の方法および装置 |
CA2329590C (en) | 2000-12-27 | 2012-06-26 | Certicom Corp. | Method of public key generation |
US7613915B2 (en) * | 2006-11-09 | 2009-11-03 | BroadOn Communications Corp | Method for programming on-chip non-volatile memory in a secure processor, and a device so programmed |
FR2917197B1 (fr) | 2007-06-07 | 2009-11-06 | Thales Sa | Procede de masquage du resultat d'une operation de multiplication modulaire et dispositif associe. |
KR101467719B1 (ko) | 2010-12-24 | 2014-12-01 | 미쓰비시덴키 가부시키가이샤 | 서명 생성 장치 및 서명 생성 방법 및, 컴퓨터 판독 가능한 기록 매체 |
US9400636B2 (en) | 2011-02-11 | 2016-07-26 | Infineon Technologies Ag | Apparatus and method for calculating a result in a scalar multiplication |
ITMI20111992A1 (it) | 2011-11-03 | 2013-05-04 | St Microelectronics Srl | Metodo per crittografare un messaggio mediante calcolo di funzioni matematiche comprendenti moltiplicazioni modulari |
US9614669B1 (en) * | 2014-11-17 | 2017-04-04 | Q-Net Security, Inc. | Secure network communications using hardware security barriers |
TWI602119B (zh) | 2015-07-22 | 2017-10-11 | 華邦電子股份有限公司 | 用於蒙哥馬利域的計算方法、計算裝置和電腦軟體產品 |
US10037193B2 (en) * | 2015-12-09 | 2018-07-31 | International Business Machines Corporation | Extracting entropy from mobile devices to generate random numbers |
KR20180127690A (ko) | 2017-05-22 | 2018-11-30 | 주식회사 만도 | 인쇄 회로 기판 및 그 제조 방법 |
-
2018
- 2018-10-24 KR KR1020180127690A patent/KR20200046481A/ko not_active Application Discontinuation
-
2019
- 2019-07-30 DE DE102019120485.2A patent/DE102019120485A1/de active Pending
- 2019-07-31 US US16/528,192 patent/US11057206B2/en active Active
- 2019-09-27 CN CN201910921511.XA patent/CN111092730B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120069994A1 (en) * | 2010-09-16 | 2012-03-22 | Stmicroelectronics S.R.L. | Method for genertaing a digital signature |
CN102761415A (zh) * | 2011-04-27 | 2012-10-31 | 航天信息股份有限公司 | p元域SM2椭圆曲线的数字签名生成、验证及混合系统 |
US20140146607A1 (en) * | 2011-06-03 | 2014-05-29 | Kabushiki Kaisha Toshiba | Semiconductor memory device for pseudo-random number generation |
WO2018019788A1 (en) * | 2016-07-28 | 2018-02-01 | Gemalto Sa | Efficient ecdsa signature and verification |
Non-Patent Citations (1)
Title |
---|
MICHAEL HUTTER: "An ECDSA Processor for RFID Authentication", RADIO FREQUENCY IDENTIFICATION:SECURITY AND PRIVACY ISSUES, pages 189 - 202 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116980129A (zh) * | 2023-09-22 | 2023-10-31 | 深圳市纽创信安科技开发有限公司 | 数字签名生成方法、装置、电子设备与可读存储介质 |
CN116980129B (zh) * | 2023-09-22 | 2024-03-26 | 深圳市纽创信安科技开发有限公司 | 数字签名生成方法、装置、电子设备与可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111092730B (zh) | 2024-07-12 |
DE102019120485A1 (de) | 2020-04-30 |
KR20200046481A (ko) | 2020-05-07 |
US20200136819A1 (en) | 2020-04-30 |
US11057206B2 (en) | 2021-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111092730B (zh) | 随机数生成器、加密装置以及操作加密装置的方法 | |
US10027481B2 (en) | Management of cryptographic keys | |
EP2798773B1 (en) | Generating digital signatures | |
CN106134128B (zh) | 使用关联私钥部分更快的公钥加密的系统和方法 | |
CN1964257A (zh) | 用于利用共享硬件生成密文和消息认证代码的方法和系统 | |
JP2010277085A (ja) | Rsaアルゴリズムにおける素数生成の保護 | |
JP2014006691A (ja) | デバイス認証方法及びシステム | |
KR101922965B1 (ko) | 키 확장 방식을 적용한 묵시적 인증서 발급 방법 및 시스템 | |
CN101048971B (zh) | 对于使用广播材料管理验证和支付的方法和系统 | |
JP2009267900A (ja) | 鍵生成装置、証明書生成装置、サービス提供システム、鍵生成方法、証明書生成方法、サービス提供方法およびプログラム | |
JP6294882B2 (ja) | 鍵保管装置、鍵保管方法、及びそのプログラム | |
CN109905236B (zh) | 基于私钥池的抗量子计算Elgamal加解密方法和系统 | |
CN109361506B (zh) | 信息处理方法 | |
KR20220143557A (ko) | 암호화 장치, 암호화 장치를 포함하는 시스템의 인증 방법 및 서명을 생성하는 방법 | |
US9942038B2 (en) | Modular exponentiation using randomized addition chains | |
CN111953480B (zh) | 密钥生成装置以及方法、运算密钥生成装置以及方法 | |
CN114257373A (zh) | 混合加密体制密钥存储管理方法、系统、计算机设备和介质 | |
KR102022333B1 (ko) | 공개키 암호 알고리즘을 이용한 암호화/복호화 방법 및 장치 | |
JP5850888B2 (ja) | 情報記憶システム、情報記憶装置、その方法、及びプログラム | |
CN110249334B (zh) | 设备间高效安全通信的系统和方法 | |
KR102435056B1 (ko) | 확장함수를 이용한 복수의 인증서 발급 시스템 및 그 발급 방법 | |
CN115225248A (zh) | 加密装置及包括其的系统的认证方法和签名生成方法 | |
JP6394031B2 (ja) | プログラム、情報処理装置及び情報処理方法 | |
KR101613565B1 (ko) | 블록 암호를 이용한 일방향 보안 통신 시스템 및 방법 | |
CN116340999A (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 |