CN114747173A - 经由退化密钥的数据完整性验证 - Google Patents
经由退化密钥的数据完整性验证 Download PDFInfo
- Publication number
- CN114747173A CN114747173A CN202080081934.6A CN202080081934A CN114747173A CN 114747173 A CN114747173 A CN 114747173A CN 202080081934 A CN202080081934 A CN 202080081934A CN 114747173 A CN114747173 A CN 114747173A
- Authority
- CN
- China
- Prior art keywords
- key
- value
- degenerate
- values
- input data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/302—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
-
- 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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
-
- 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/3249—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 RSA or related signature schemes, e.g. Rabin scheme
-
- 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/3263—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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- Storage Device Security (AREA)
Abstract
公开用于开发具有独特性质的新颖公钥/私钥对的系统及方法,借此现有数据安全性基础设施中的标准数据安全性操作返回数据完整性验证结果,但未提供此类基础设施的预期数据安全性。这些新颖密钥被称为退化密钥(112)且可用于替换现有公钥/私钥密码系统中的所述公钥及私钥。因为退化密钥数据完整性验证可利用已广泛实施的现有数据安全性基础设施,所以可立即应用此类实例且其经配置以从仅完整性模式无缝转换回安全模式。在一些例项中,在产品开发的软件测试及/或工厂验证阶段期间可采用本文中描述的所述退化密钥实例以允许在将开发人员的活动(即,非退化)密钥烧录到所述产品之前进行数据完整性验证,从而将软件与硬件配对。
Description
背景技术
例如,如经由使用包含公钥密码术或非对称密码术的各种加密方法实施的数据安全性是现代计算机系统、应用程序、装置及协议中的有用工具。举例来说,通过使用经授权接收者的公钥来加密消息,可仅使用接收者的互补私钥来解密消息(从而解锁消息的实际内容),所述私钥必须由接收者保持安全。许多形式的加密依赖于复杂数学运算,这使得未经授权第三方几乎不可能(至少在可行时间标度内)破解加密。
除数据安全性以外,数据完整性验证在许多现代计算机系统、应用程序、装置及协议中也是重要的。数据完整性验证是指验证基础数据的准确性的过程,例如,确认在给定时间段内没有意外改变数据,无论谁有权存取/解密数据的真正基础值或从谁发送数据。因此,虽然数据安全性试图控制谁可存取数据,但数据完整性验证是指确保存取的数据具有其应具有的值的过程。
在典型安全数据传输案例中,输入数据(例如,文档或其它电子数据图像)可由此输入数据的所有者进行数字签名(例如,除任选地加密此输入数据本身的内容以外)且接着被发送给接收者。数字签名可用于提供关于输入数据的来源、身分及/或状态的额外验证且可充当签名者知情同意的可信指示。为创建数字签名,发送实体可使用软件来创建将要签名的输入数据的单向散列。接着,可使用发送者的私钥来加密散列。输入数据的加密散列连同其它任选信息(例如所使用的散列算法)在本文中可统称为数字签名。
接着,可由接收者使用数字签名验证过程来确保在传输期间未由第三方以任何方式篡改或修改文档。举例来说,如果第三方已改变输入数据中的甚至单个数据位,那么其接着将以几乎100%确定性散列成不同值,从而允许接收者确定数据完整性未得以维持或运用非对应于由签名者呈现的公钥的私钥来创建数字签名。代替地,如果解密散列确实与由接收者计算的相同数据的散列匹配,那么其将证明数据自最初由发送者签名以来尚未改变,即,数据完整性已得以维持。
在一些例项中,能够对第一条输入数据执行数据完整性检查可能比对输入数据执行完整数字签名验证过程(即,其还包含验证发送者的身分)更重要。在其它例项中,可能根本不需要执行完整数字签名验证。因此,可期望具有用于执行数据完整性验证检查的系统,其不必执行完全数字签名验证过程,但其仍利用现有数据安全性基础设施来执行数据完整性验证检查。
发明内容
本文中公开的实例提供用于开发具有独特性质的新颖公钥/私钥对的系统及方法,借此现有数据安全性基础设施中的标准数据安全性操作返回数据完整性验证结果,但未提供此类基础设施的预期数据安全性。具有这个独特性质的密钥在本文中被称为退化密钥且可用于替换现有公钥/私钥密码系统中的公钥及私钥。退化密钥可经配置以与(例如)包含用于安全数据传输的李维斯特-沙米尔-阿德尔曼(Rivest–Shamir–Adleman)(RSA)密码系统的若干当前公钥/私钥认证实施方案一起使用。因为本文中公开的退化密钥数据完整性验证实例可利用已广泛实施的现有数据安全性基础设施,所以此类实例可被立即应用且可经配置以在需要时从仅完整性模式(即,执行数据完整性验证但未提供数据安全性的模式)无缝转变回安全模式(即,将执行数据完整性验证以及提供数据安全性的模式)。
在一些例项中,可在产品开发的软件测试及/或工厂验证阶段期间采用本文中描述的退化密钥实例。即,可由开发人员使用退化密钥(即,仅提供数据完整性检查)完成软件构建及测试且接着(例如,在软件及/或装置已通过验证时)固件可用于烧录一或多个可编程字段,所述一或多个可编程字段可具有仅运用开发人员的活动密钥(即,没有专门修改为退化密钥的加密密钥,如本文中定义)针对板或其它电子装置(例如,使用电熔丝或其它类似技术)设置一次的值。在那个过程之后,板或其它装置将拒绝未用与已烧录到其中的密钥匹配的密钥签名的任何未来数据及/或程序,从此有效地将软件与硬件配对。本文中描述的实例的另一优势是它们允许现有工厂编程及验证工作流程保持不变,除了用于产生在产品开发的测试及/或验证阶段期间采用的退化密钥的特定数字签名算法以外。
可理解,虽然主要在退化RSA密钥的上下文中论述本文中的技术,但本公开中的任何内容均不意谓将这些技术限于基于RSA的公钥密码系统。实情是,本文中论述的技术可容易地跨宽范围的密码系统及加密方法应用,包含数字签名标准(DSS)、ElGamal等。这里论述的技术还可进一步应用于对各种类型的数据证书,以及对安全、可安全、非安全及/或通用装置执行数据完整性验证检查。
附图说明
对于各种实例的详细描述,现将参考附图,其中:
图1是说明根据本公开的方面的用于经由利用退化密钥执行数据完整性验证的技术的流程图;及
图2是根据本公开的方面的计算装置的实例的框图。
具体实施方式
如上文描述,在一些例项中,可期望对文档或另一条输入数据(例如,数字证书,例如X.509格式证书,或类似者)执行数据完整性验证检查而不执行完整数字签名验证。因此,根据本文中公开的实例,呈现用于创建并利用所谓的退化密钥(例如,退化RSA密钥)来对此类文档或证书进行自签名的技术。
更特定来说,根据RSA密码系统算法,把将在本文被称为prime1(在RSA密码系统中也被称为‘p’)及prime2(在RSA密码系统中也被称为‘q’)的两个相异素数相乘在一起以确定公钥及私钥两者的模值n。接着,尤其使用卡迈克尔函数(Carmichael’s totientfunction)来确定公钥指数(在RSA密码系统中也被称为‘e’)及私钥指数(在RSA密码系统中也被称为‘d’),如(例如)在RSA密码规范2.1版,RFC3447中进一步详细说明。
公钥指数‘e’的值连同上述模值n可作为公钥的部分发布。私钥指数‘d’的值将作为私钥指数保密。RSA加密背后的基本原理是,虽然可找到三个极大正整数e、d及n,使得对于所有整数m(其中0≤m<n)进行模幂运算,以下等式成立:
(me)d≡m(mod n),(等式1)(其中三杠表示模同余),
即使已知‘e’及‘n’的值,但未经授权第三方极难确定‘d’,即,私钥指数的值。
实际上,公钥(包含‘n’及‘e’的值,如上文论述)用于根据以下等式将明文消息‘m’加密为消息的密文版本‘c(m)’:
c(m)=me mod n,(等式2),
且私钥(包含‘d’的值,如上文论述)用于根据以下等式将密文‘c’解密回密文的原始明文消息版本‘m(c)’:
m(c)=cd mod n,(等式3)。
根据这里公开的一些实例,退化RSA密钥是其中RSA算法的私钥指数‘e’及公钥指数‘d’有意设置为等于1的密钥。因为根据上文等式3确定使用RSA算法产生的密文的解密版本,所以接着通过选择私钥指数(‘d’)的值等于1,上文等式3简化为:
m(c)=c mod n,(等式4)。
通过选择模数n的大小,使得c<mod n,等式4进一步简化为:
m(c)=c,(等式5)。
换言之,消息的明文与消息的密文相同。如果上文等式2中的公钥指数‘e’被设置为等于1,那么相同效应发生。即,通过有意将私钥指数及公钥指数值设置为等于1,原始消息值等于通过RSA算法确定的加密值,即,内容的真实值由算法简单地传递通过而不变。以这种方式,RSA密钥的典型安全性/加密方面经由使用退化密钥而受挫,下文现将进一步详细描述退化密钥的创建及利用(例如,在软件测试或工厂验证阶段期间的数据完整性验证的领域中)。
图1是说明根据本公开的方面的用于经由利用退化密钥执行数据完整性验证的技术100的流程图。在步骤102,方法通过(例如)使用OpenSSL软件库创建标准加密密钥而开始。所产生密钥可(例如)为所要数目个位(例如,4,096位)的RSA密钥。
接着,在步骤104,可期望任选地将在步骤102产生的标准密钥转化成可修改(例如,人类可读)格式,例如格式化或明文文件。如上文描述,本文中描述的退化密钥的创建可涉及所产生加密密钥的一或多个参数的标定操纵,以便移除安全性功能性且使所述密钥退化。在一些实例中,例如,当所创建密钥是RSA密钥时,所产生RSA密钥的相关参数可包括:模数(在RSA密码系统中也被称为‘n’)、公钥指数(在RSA密码系统中也被称为‘e’)、私钥指数(在RSA密码系统中也被称为‘d’)、prime1(在RSA密码系统中也被称为‘p’)、prime2(在RSA密码系统中也被称为‘q’)、exponent1(或e1,通过dmod(p-1)确定)、exponent2(或e2,通过dmod(q-1)确定)及系数(通过q-1mod p确定)。通过将标准RSA密钥转化成可修改格式,(例如)可由寻求创建退化RSA密钥以在测试及/或工厂验证期间用于完整性验证检查的开发人员更容易地操纵并修改这些个别参数。
接着,在步骤106,方法可创建退化密钥的模板。在一些实例中,可创建简单的抽象语法符号一(ASN.1)模板以保存退化密钥信息。根据一些实例,在步骤108,填充用于退化密钥的模板的过程可包括(例如)根据指定格式将模数、prime1、prime2及系数的值复制到退化密钥模板中。在一些情况中,(例如)移除任何冒号、连接行及/或在某些字段中添加前导0x以进一步简化退化密钥模板的处理及操纵可为有益的。
根据本文中公开的退化RSA密钥的实例,在步骤110,私钥及公钥指数以及e1及e2的值可各自被设置为1值且接着也被复制到退化密钥模板中。作为参考,e1、e2及模数用于孙子剩余定理(CRT)算法以进行高效指数及模数运算。举例来说,这些值可被定义如下:
e1=d mod(p-1)(等式6),
e2=d mod(q-1)(等式7),及
系数=q-1 mod p(等式8)。
因此,通过将私钥指数值‘d’设置为1,e1及e2两者的值也变成1,且系数的值不变。
接着,在步骤112,可基于呈第一格式的退化密钥模板来创建退化密钥,其中如上文描述,所述退化密钥经配置以应用于第一输入数据且返回所述第一输入数据的未改变版本。在一些实例中,在步骤113,退化密钥模板可任选地转化成第一二进制格式,例如,.DER格式或其它二进制格式。根据一些优选实例,可执行检查作为步骤113的部分以确认不存在在从退化密钥模板创建呈第一二进制格式的退化密钥的过程中引入的错字或错误。
接着,在步骤114(假设已在步骤113校正任何错字或错误),也可任选地以第二格式(例如,.PEM格式或其它基于ASCII的格式)创建退化密钥,其中呈第二格式的密钥的创建基于呈第一二进制格式的退化密钥的表示。举例来说,.PEM文件本质上是对应.DER编码文件的Base64编码版本。
接着,在步骤116,可利用退化密钥来执行数据完整性验证测试。在一些实例中,代替对完整二进制文件(其可为极大的)进行签名,可使用安全散列函数(例如,SHA-1、SHA-256、SHA-512等)来获取极大二进制文件并创建被称为散列的较小、固定大小值。接着,这个散列是实际上被签名的内容,以便确定退化密钥是否正常工作。这个散列值可被称为安全散列,因为虽然容易计算任何电子输入数据的散列,但极难找到将产生相同散列值的第二电子输入数据(即,在数学术语中,散列函数是多对一函数)。在其它实例中,散列可在数字证书或签名文件的特定部分处插入,例如,在已知、标记或以其它方式预先指定位置处插入,使得其可在数据完整性验证过程期间被检查。
因此,根据一些实例,在步骤116,方法可确认在给定一条输入数据的安全散列表示中以未改变形式看到所述给定一条输入数据的散列,即,已通过退化密钥签名的散列。举例来说,如果所述给定一条输入数据的原始计算散列与安全散列的值相同,那么可得出数据完整性已得以维持的结论。如果代替地两个散列值不相同,那么可确定数据完整性未得以维持。如上文提及,通过退化密钥的使用,可执行步骤116的这个数据完整性验证检查而不用还执行发送者的身分的完整数字签名验证。
在一些实例中,利用本文中描述的退化密钥的系统或过程可检查所得退化密钥证书(或签名文件,或可存储或传输退化密钥的其它数据格式)中的公钥字段。如果密钥的类型被设置为RSA,公钥指数值是1,且被签名装置被指定为通用(GP)或可安全的,那么其可充当装置的触发器以定位将要签名(TBS)证书的散列,例如,在证书的指定部分处,且接着使用其来验证证书的TBS字段。根据一些实例,根据期望,代码也可经配置以同样验证证书中的其它字段(例如,expmod字段及/或算法的对象标识符(OID))以查看是否损坏或以其它方式修改那些值中的任一者。
如图2中说明,装置200包含处理元件,例如处理器205,所述处理元件含有一或多个硬件处理器,其中每一硬件处理器可具有单个或多个处理器核心。处理器的实例包含(但不限于)中央处理单元(CPU)或微处理器。尽管图2中未说明,然组成处理器205的处理元件还可包含一或多个其它类型的硬件处理组件,例如图形处理单元(GPU)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)及/或数字信号处理器(DSP)。在某些情况中,处理器205可经配置以执行编程指令以执行结合图1的步骤描述的任务。
图2说明存储器210可操作地且通信地耦合到处理器205。存储器210可为非暂时性计算机可读存储媒体或程序存储装置,其经配置以存储各种类型的数据,包含使处理器执行一或多个编程动作的程序指令。举例来说,存储器210可包含一或多个易失性装置,例如随机存取存储器(RAM)。在某些情况中,图1中提及的各种退化密钥模板、证书及/或密钥可至少暂时存储于存储器210中。非易失性存储装置220可包含一或多个磁盘驱动器、光盘驱动器、固态硬盘(SSD)、分接驱动器、快闪存储器、电可编程只读存储器(EEPROM)及/或经设计以在断电或关闭操作之后在持续时间内维持数据的任何其它类型存储器。非易失性存储装置220还可用于存储在执行此类程序时加载到RAM中的程序。
所属领域的一般技术人员知道,可针对各种软件平台及/或操作系统以各种计算语言开发、编码及编译软件程序且随后通过处理器205加载并执行所述软件程序。在一个实例中,软件程序的编译过程可将以编程语言编写的程序代码转换成另一计算机语言,使得处理器205能够执行编程代码。举例来说,软件程序的编译过程可产生可执行程序,所述可执行程序针对处理器205提供编码指令(例如,机器代码指令)以实现具体、非通用、特定计算功能。
在编译过程之后,接着,编码指令可作为计算机可执行指令或过程步骤从存储器220、从存储器210加载到处理器205及/或嵌入处理器205内(例如,经由高速缓存或板载ROM)。处理器205可经配置以执行所存储指令或过程步骤,即,以便执行指令或过程步骤以将计算装置转换成非通用、特定及特殊编程机器或设备。在执行计算机可执行指令或过程步骤期间可通过处理器205存取所存储数据(例如,由存储装置220存储的数据)以指示计算装置200内的一或多个组件。存储器220可被划分或分割成可通过不同软件程序存取的多个区段。举例来说,存储器220可包含出于具体目的指定的区段,例如存储程序指令或数据以用于更新计算装置200的软件。在一个实例中,将要更新的软件包含计算装置的ROM或固件。在某些情况中,计算装置200可包含多个操作系统。举例来说,计算装置200可包含用于正常操作的通用操作系统。计算装置200还可包含用于执行具体任务(例如升级及恢复通用操作系统,且允许以通常不能通过通用操作系统获得的层级存取计算装置200)的另一操作系统,例如启动加载器。通用操作系统及另一操作系统两者可存取针对具体目的指定的存储器220的区段。
一或多个通信接口可包含用于与一或多个无线电通信装置介接的无线电通信接口。在某些情况中,耦合到处理器的元件可被包含在与处理器共享的硬件上。举例来说,通信接口225、存储器220及存储器210可连同例如数字无线电的其它元件一起包含在单个芯片或封装中,例如包含在片上系统(SOC)中。计算装置还可包含输入装置230及/或输出装置(未展示),其实例包含传感器、相机、人类输入装置(例如鼠标、键盘、触控屏幕)、监视器、显示屏、触觉或运动发生器、扬声器、灯等。举例来说来自输入装置230的经处理输入可经由通信接口225从计算装置200输出到一或多个其它装置。
上文论述意在说明本公开的原理及各种实施方案。一旦完全理解上文公开内容,所属领域的技术人员便将变得明白许多变动及修改。以下权利要求书旨在被解释为涵盖所有此类变动及修改。
可在硬件、软件、固件或其任何组合中实施本公开中描述的技术。如果在软件中实施,那么软件可在一或多个处理器中执行,例如微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)等。执行技术的软件最初可存储于计算机可读媒体(例如光盘(CD)、磁盘、磁带、文件、存储器或任何其它计算机可读存储装置)中且接着在处理器中加载并执行。在一些情况中,软件还可以包含计算机可读媒体及计算机可读媒体的包装材料的计算机程序产品的形式出售。在一些情况中,软件指令可经由可移除计算机可读媒体(例如,软盘、光盘、快闪存储器、USB密钥)、经由来自另一数字系统上的计算机可读媒体的传输路径等分布。
在此描述中,术语“耦合(couple或couples)”意谓间接或直接有线或无线连接。因此,如果第一装置耦合到第二装置,那么所述连接可通过直接连接或通过经由其它装置及连接的间接连接。陈述“基于”意谓“至少部分基于”。因此,如果X基于Y,那么X可为Y及任何数目个其它因数的函数。
在权利要求书的范围内,修改在所描述实例中是可能的,且其它实施方案是可能的。
Claims (20)
1.一种方法,其包括:
创建第一加密密钥,其中所述第一加密密钥包含模值、prime1值、prime2值及系数值;
基于所述第一加密密钥来创建第一退化密钥的模板;
将模值、prime1值、prime2值及系数值从所述第一加密密钥复制到所述第一退化密钥模板中;
将私钥指数、公钥指数、exponent1及exponent2的值设置为1;
将所述私钥指数、公钥指数、exponent1及exponent2的所述值复制到所述第一退化密钥模板中;
基于呈第一密钥格式的所述第一退化密钥模板来创建第一退化密钥,其中所述第一退化密钥经配置以应用于第一输入数据且返回所述第一输入数据的未改变版本;及
利用所述第一退化密钥来对所述第一输入数据执行数据完整性验证测试。
2.根据权利要求1所述的方法,其中使用OpenSSL软件库进一步创建所述第一加密密钥。
3.根据权利要求1所述的方法,其中使用李维斯特-沙米尔-阿德尔曼(RSA)算法进一步创建所述第一加密密钥。
4.根据权利要求3所述的方法,其中prime1是指所述RSA算法中的‘p’值,其中prime2是指所述RSA算法中的‘q’值,其中所述私钥指数是指所述RSA算法中的‘d’值,其中所述公钥指数是指所述RSA算法中的‘e’值,且其中模数是指所述RSA算法中的‘n’值。
5.根据权利要求1所述的方法,其进一步包括使用所述第一退化密钥来对第一数字证书进行自签名。
6.根据权利要求1所述的方法,其中所述第一输入数据包括散列值。
7.根据权利要求1所述的方法,其中在软件测试或工厂验证阶段期间对所述第一输入数据执行所述数据完整性验证测试。
8.一种非暂时性程序存储装置,其包括存储在其上的指令以使一或多个处理器:
创建第一加密密钥,其中所述第一加密密钥包含模值、prime1值、prime2值及系数值;
基于所述第一加密密钥来创建第一退化密钥的模板;
将模值、prime1值、prime2值及系数值从所述第一加密密钥复制到所述第一退化密钥模板中;
将私钥指数、公钥指数、exponent1及exponent2的值设置为1;
将所述私钥指数、公钥指数、exponent1及exponent2的所述值复制到所述第一退化密钥模板中;
基于呈第一密钥格式的所述第一退化密钥模板来创建第一退化密钥,其中所述第一退化密钥经配置以应用于第一输入数据且返回所述第一输入数据的未改变版本;且
利用所述第一退化密钥来对所述第一输入数据执行数据完整性验证测试。
9.根据权利要求8所述的非暂时性程序存储装置,其中使用OpenSSL软件库进一步创建所述第一加密密钥。
10.根据权利要求8所述的非暂时性程序存储装置,其中使用RSA算法进一步创建所述第一加密密钥。
11.根据权利要求10所述的非暂时性程序存储装置,其中prime1是指所述RSA算法中的‘p’值,其中prime2是指所述RSA算法中的‘q’值,其中所述私钥指数是指所述RSA算法中的‘d’值,其中所述公钥指数是指所述RSA算法中的‘e’值,且其中模数是指所述RSA算法中的‘n’值。
12.根据权利要求8所述的非暂时性程序存储装置,其进一步包括使用所述第一退化密钥来对第一数字证书进行自签名。
13.根据权利要求8所述的非暂时性程序存储装置,其中所述存储的指令进一步使所述一或多个处理器:
在软件测试或工厂验证阶段期间对所述第一输入数据执行所述数据完整性验证测试。
14.一种用于创建退化密钥的系统,所述系统包括:
存储器;及
一或多个处理器,其可操作地耦合到所述存储器,其中所述一或多个处理器经配置以执行非暂时性指令,所述非暂时性指令使所述一或多个处理器:
创建第一加密密钥,其中所述第一加密密钥包含模值、prime1值、prime2值及系数值;
基于所述第一加密密钥来创建第一退化密钥的模板;
将模值、prime1值、prime2值及系数值从所述第一加密密钥复制到所述第一退化密钥模板中;
将私钥指数、公钥指数、exponent1及exponent2的值设置为1;
将所述私钥指数、公钥指数、exponent1及exponent2的所述值复制到所述第一退化密钥模板中;
基于呈第一密钥格式的所述第一退化密钥模板来创建第一退化密钥,其中所述第一退化密钥经配置以应用于第一输入数据且返回所述第一输入数据的未改变版本;且
利用所述第一退化密钥来对所述第一输入数据执行数据完整性验证测试。
15.根据权利要求14所述的系统,其中使用OpenSSL软件库进一步创建所述第一加密密钥。
16.根据权利要求14所述的系统,其中使用RSA算法进一步创建所述第一加密密钥。
17.根据权利要求16所述的系统,其中prime1是指所述RSA算法中的‘p’值,其中prime2是指所述RSA算法中的‘q’值,其中所述私钥指数是指所述RSA算法中的‘d’值,其中所述公钥指数是指所述RSA算法中的‘e’值,且其中模数是指所述RSA算法中的‘n’值。
18.根据权利要求14所述的系统,其进一步包括使用所述第一退化密钥来对第一数字证书进行自签名。
19.根据权利要求14所述的系统,其中所述第一输入数据包括散列值。
20.根据权利要求14所述的系统,其中所述指令进一步使所述一或多个处理器:
在软件测试或工厂验证阶段期间对所述第一输入数据执行所述数据完整性验证测试。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/693,795 | 2019-11-25 | ||
US16/693,795 US11374770B2 (en) | 2019-11-25 | 2019-11-25 | Data integrity validation via degenerate keys |
PCT/US2020/059628 WO2021108114A1 (en) | 2019-11-25 | 2020-11-09 | Data integrity validation via degenerate keys |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114747173A true CN114747173A (zh) | 2022-07-12 |
Family
ID=75975528
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080081934.6A Pending CN114747173A (zh) | 2019-11-25 | 2020-11-09 | 经由退化密钥的数据完整性验证 |
Country Status (3)
Country | Link |
---|---|
US (3) | US11374770B2 (zh) |
CN (1) | CN114747173A (zh) |
WO (1) | WO2021108114A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117743061A (zh) * | 2024-02-19 | 2024-03-22 | 四川天邑康和通信股份有限公司 | 基于fttr的fpga密钥无线静态测试方法、装置、设备及介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009258860A (ja) | 2008-04-14 | 2009-11-05 | Sony Corp | 情報処理装置および方法、記録媒体、プログラム、並びに情報処理システム |
US7522723B1 (en) * | 2008-05-29 | 2009-04-21 | Cheman Shaik | Password self encryption method and system and encryption by keys generated from personal secret information |
JP2011022785A (ja) | 2009-07-15 | 2011-02-03 | Sony Corp | 鍵格納装置、生体認証装置、生体認証システム、鍵管理方法、生体認証方法、及びプログラム |
JP2013251609A (ja) | 2012-05-30 | 2013-12-12 | Sony Corp | 情報処理装置、icチップ及び情報処理方法 |
-
2019
- 2019-11-25 US US16/693,795 patent/US11374770B2/en active Active
-
2020
- 2020-11-09 WO PCT/US2020/059628 patent/WO2021108114A1/en active Application Filing
- 2020-11-09 CN CN202080081934.6A patent/CN114747173A/zh active Pending
-
2022
- 2022-05-25 US US17/824,327 patent/US11985255B2/en active Active
-
2024
- 2024-04-03 US US18/625,414 patent/US20240267231A1/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117743061A (zh) * | 2024-02-19 | 2024-03-22 | 四川天邑康和通信股份有限公司 | 基于fttr的fpga密钥无线静态测试方法、装置、设备及介质 |
CN117743061B (zh) * | 2024-02-19 | 2024-05-10 | 四川天邑康和通信股份有限公司 | 基于fttr的fpga密钥无线静态测试方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
US11374770B2 (en) | 2022-06-28 |
US20240267231A1 (en) | 2024-08-08 |
US20210160085A1 (en) | 2021-05-27 |
WO2021108114A1 (en) | 2021-06-03 |
US11985255B2 (en) | 2024-05-14 |
US20220286298A1 (en) | 2022-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11811912B1 (en) | Cryptographic algorithm status transition | |
Barker et al. | Guideline for using cryptographic standards in the federal government: Cryptographic mechanisms | |
JP4501349B2 (ja) | システムモジュール実行装置 | |
US7516321B2 (en) | Method, system and device for enabling delegation of authority and access control methods based on delegated authority | |
US8935528B2 (en) | Techniques for ensuring authentication and integrity of communications | |
WO2022160733A1 (zh) | 一种文件签名方法、计算设备及存储介质 | |
US10880100B2 (en) | Apparatus and method for certificate enrollment | |
US7065650B2 (en) | Method for indicating the integrity of a collection of digital objects | |
US9614681B2 (en) | Private electronic signature service for electronic documents | |
EP2402879A1 (en) | Methods for firmware signature | |
EP1769302A1 (en) | Data processing apparatus and method | |
CN110287654A (zh) | 使用硬件信任根的媒体客户端装置鉴权 | |
US20240267231A1 (en) | Data integrity validation via degenerate keys | |
US20160149708A1 (en) | Electronic signature system | |
CN112907375B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN115004624A (zh) | 用于密钥加强的装置和方法 | |
GB2561374A (en) | Storing data on target data processing devices | |
JP2020150310A (ja) | 情報処理装置、暗号化データの復号方法及び電子機器 | |
Belay | Securing the boot process of embedded Linux systems | |
CN115398856B (zh) | 密钥属性验证 | |
JP2008060617A (ja) | 電子データ検証装置、電子データ作成装置、電子データ検証方法、電子データ作成方法及び集積回路 | |
Standard | Key Management Interoperability Protocol Specification Version 1.0 | |
CN118489130A (zh) | 加密装置、解密装置、可解密验证装置、密码系统、加密方法和加密程序 | |
Specification | Key Management Interoperability Protocol Specification Version 1.0 |
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 |