CN109428712A - 数据加、解密方法及数据加、解密系统 - Google Patents

数据加、解密方法及数据加、解密系统 Download PDF

Info

Publication number
CN109428712A
CN109428712A CN201710738505.1A CN201710738505A CN109428712A CN 109428712 A CN109428712 A CN 109428712A CN 201710738505 A CN201710738505 A CN 201710738505A CN 109428712 A CN109428712 A CN 109428712A
Authority
CN
China
Prior art keywords
data
key
encryption
memory
updated
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
Application number
CN201710738505.1A
Other languages
English (en)
Other versions
CN109428712B (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.)
Shanghai Fudan Microelectronics Group Co Ltd
Original Assignee
Shanghai Fudan Microelectronics Group 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 Shanghai Fudan Microelectronics Group Co Ltd filed Critical Shanghai Fudan Microelectronics Group Co Ltd
Priority to CN201710738505.1A priority Critical patent/CN109428712B/zh
Publication of CN109428712A publication Critical patent/CN109428712A/zh
Application granted granted Critical
Publication of CN109428712B publication Critical patent/CN109428712B/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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • 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/0819Key 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/0825Key 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
    • 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/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

一种数据加、解密方法及数据加、解密系统。所述加密方法包括:处理器获取PUF模块初始化产生的第一真实响应数据,基于所述第一真实响应数据得到私钥数据,基于所述私钥数据得到对应的公钥数据并发送至加密装置;所述加密装置生成对待加密数据进行加密的加密密钥,利用所述加密密钥对待加密数据进行加密,将加密后的数据存储在第一存储器中;并利用所述公钥数据对所述加密密钥进行加密,得到密钥数据;所述第二存储器获取所述第一真实响应数据对应的辅助数据及所述密钥数据并进行存储。应用上述方案,可以提高数据的安全性。

Description

数据加、解密方法及数据加、解密系统
技术领域
本发明涉及加解密技术领域,具体涉及一种数据加、解密方法及数据加、解密系统。
背景技术
现场可编程门阵列(Field-Programmable Gate Array,FPGA),是在可编程逻辑阵列(Programmable Logic Array,PAL)和通用逻辑阵列(Generic logic Array,GAL)等可编程器件的基础上进一步发展而来的。FPGA作为专用集成电路(ASIC)领域中的一种半定制电路,既解决了定制电路的不足,又克服了原有可编程器件门电路数量有限的缺点。
运用FPGA开发的产品最终都会生成具有特定功能的位流配置文件。FPGA启动时,需要从外部读取并下载位流配置文件。为了保证位流配置文件的安全性,所下载的位流配置文件通常都是加密的。FPGA需要利用密钥对所下载的位流配置文件进行解密。
由于FPGA中没有存储器,因此,FPGA需要从外部的存储器中获取用于加密位流配置文件的密钥。早期的FPGA,大都采用带电池的随机存取存储器(Random-Access Memory,RAM)或者电编程熔丝(eFuse)来保存密钥。但是利用RAM及eFuse保存密钥的方法安全性都较差,容易被获取。
为了提高密钥的安全性,目前的FPGA采用存储器来保存密钥。但是现有利用存储器保存密钥仍容易被破解,数据的安全性仍无法满足用户的需求。
发明内容
本发明实施例解决的技术问题是如何提高数据的安全性。
为解决上述技术问题,本发明实施例提供一种数据加密方法,所述方法包括:处理器获取PUF模块初始化产生的第一真实响应数据,基于所述第一真实响应数据得到私钥数据,基于所述私钥数据得到对应的公钥数据并发送至加密装置;所述加密装置生成对待加密数据进行加密的加密密钥,利用所述加密密钥对待加密数据进行加密,将加密后的数据存储在第一存储器中;并利用所述公钥数据对所述加密密钥进行加密,得到密钥数据;第二存储器获取所述第一真实响应数据对应的辅助数据及所述密钥数据并进行存储。
可选地,所述第二存储器采用以下任意一种方式获取所述第一真实响应数据对应的辅助数据:所述第二存储器从所述获取所述第一真实响应数据生成对应的辅助数据;所述第二存储器通过所述处理器获取所述第一真实响应数据对应的辅助数据;所述第二存储器通过所述加密装置从所述处理器获取所述第一真实响应数据对应的辅助数据。
可选地,所述基于所述第一真实响应数据得到私钥数据,包括:所述处理器利用预设的私钥生成算法,对所述第一真实响应数据进行运算,得到所述私钥数据。
可选地,所述基于所述私钥数据得到对应的公钥数据,包括:所述处理器利用所述预设的公钥生成算法,对所述私钥数据进行运算,得到所述私钥数据对应的公钥数据。
可选地,所述预设的私钥生成算法为Hash算法,所述预设的公钥生成算法为SM2加密算法。
可选地,所述第一存储器为所述第二存储器。
可选地,所述方法还包括:所述加密装置向所述处理器发送更新所述加密密钥的指令;所述处理器基于所述更新所述加密密钥的指令,获取所述PUF模块当前的响应数据对应的辅助数据,根据所述PUF模块当前的响应数据得到更新后的私钥数据,并利用所述更新后的私钥数据得到对应的更新后的公钥数据并发送至所述加密装置;所述加密装置产生更新后的加密密钥,并利用所述更新后的加密密钥对所述待加密数据进行加密;利用所述更新后的公钥数据对所述加密装置产生的更新后的加密密钥进行加密,得到更新后密钥数据;所述第二存储器获取所述当前的响应数据对应的辅助数据并替换所述第一真实响应数据对应的辅助数据进行存储,以及获取更新后的密钥数据并替换更新前的密钥数据进行存储。
可选地,所述方法还包括:所述加密装置向所述处理器发送更新所述加密密钥的指令;所述处理器基于所述更新所述加密密钥的指令,获取公钥数据,并发送至所述加密装置;所述加密装置产生更新的加密密钥,并利用所述更新后的加密密钥对所述待加密数据进行加密;利用所述公钥数据对所述更新后的加密密钥进行加密,得到更新后的密钥数据;所述第二存储器获取所述更新后的密钥数据并替换更新前的密钥数据进行存储。
本发明实施例还提供了一种数据解密方法,所述方法包括:处理器获取PUF模块当前的响应数据,以及获取所述PUF模块初始化产生的第一真实响应数据所对应的辅助数据,所述PUF模块初始化产生的第一真实响应数据所对应的辅助数据预先存储在第二存储器中;所述处理器基于所述第一真实响应数据对应的辅助数据以及PUF模块当前的响应数据,得到所述第一真实响应数据;所述处理器基于所述第一真实响应数据得到私钥数据,并利用所述私钥数据对预先存储在所述第二存储器中的密钥数据进行解密,得到加密密钥;所述处理器利用所述加密密钥对存储在第一存储器中的加密后的数据进行解密。
可选地,所述第二存储器预先存储的与所述第一真实响应数据所对应的辅助数据,是从所述PUF模块获取的,或者通过所述处理器的,或者通过加密装置从所述处理器获取的,其中,所述加密装置,适于产生所述加密密钥,并利用所述加密密钥对待加密数据进行加密。
可选地,所述处理器基于所述第一真实响应数据得到私钥数据,包括:所述处理器利用预设的私钥生成算法,对所述第一真实响应数据进行运算,得到所述私钥数据。
可选地,所述预设的私钥生成算法为Hash算法。
可选地,所述第一存储器为所述第二存储器。
可选地,所述方法还包括:所述处理器基于所述第二存储器中存储的辅助数据及所述PUF模块最新的响应数据,得到所述第二存储器中存储的辅助数据对应的响应数据;所述处理器基于所述第二存储器中存储的辅助数据对应的响应数据得到更新后的私钥数据,利用所述更新后的私钥数据对所述第二存储器中存储的更新后的密钥数据进行解密,得到更新后的加密密钥,并利用所述更新后的加密密钥对所述第一存储器中的加密后的数据进行解密。
可选地,所述方法还包括:所述处理器基于所述第二存储器中存储的辅助数据及所述PUF模块当前的响应数据,得到所述第二存储器中存储的辅助数据对应的响应数据;所述处理器基于所述第二存储器中存储的辅助数据对应的响应数据得到私钥数据,利用所述私钥数据对所述第二存储器中存储的更新后的密钥数据进行解密,得到更新后的加密密钥,并利用所述更新后的加密密钥对所述第一存储器中的加密后的数据进行解密。
本发明实施例还提供了一种数据加密系统,所述系统包括:PUF模块,适于在初始化后产生第一真实响应数据;处理器,适于获取PUF模块初始化产生的第一真实响应数据,基于所述第一真实响应数据得到私钥数据,基于所述私钥数据得到对应的公钥数据并发送至加密装置;所述加密装置,适于生成对待加密数据进行加密的加密密钥,利用所述加密密钥对待加密数据进行加密,将加密后的数据存储在第一存储器中;并利用所述公钥数据对所述加密密钥进行加密,得到所述密钥数据;第一存储器,适于存储加密后的数据;第二存储器,适于存储密钥数据和所述第一真实响应数据所对应的辅助数据。
可选地,所述第二存储器预先存储的与所述第一真实响应数据所对应的辅助数据,是从所述PUF模块获取的,或者通过所述处理器获取的,或者通过加密装置从所述处理器获取的。
可选地,所述处理器适于利用预设的私钥生成算法,对所述第一真实响应数据进行运算,得到所述私钥数据。
可选地,所述处理器适于利用所述预设的公钥生成算法,对所述私钥数据进行运算,得到所述私钥数据对应的公钥数据。
可选地,所述预设的私钥生成算法为Hash算法,所述预设的公钥生成算法为SM2加密算法。
可选地,所述第一存储器为所述第二存储器。
可选地,所述加密装置,还适于向所述处理器发送更新所述加密密钥的指令;所述处理器,还适于基于所述更新所述加密密钥的指令,获取所述PUF模块当前的响应数据对应的辅助数据,根据所述PUF模块当前的响应数据得到更新后的私钥数据,并利用所述更新后的私钥数据得到对应的更新后的公钥数据并发送至所述加密装置;所述加密装置,还适于产生更新后的加密密钥,并利用所述更新后的加密密钥对所述待加密数据进行加密;利用所述更新后的公钥数据对所述加密装置产生的更新后的加密密钥进行加密,得到更新后密钥数据;所述第二存储器获取所述当前的响应数据对应的辅助数据并替换所述第一真实响应数据对应的辅助数据进行存储,以及获取更新后的密钥数据并替换更新前的密钥数据进行存储。
可选地,所述加密装置,还适于向所述处理器发送更新所述加密密钥的指令;所述处理器,还适于基于所述更新所述加密密钥的指令,获取公钥数据,并发送至所述加密装置;所述加密装置,还适于产生更新的加密密钥,并利用所述更新后的加密密钥对所述待加密数据进行加密;利用所述公钥数据对所述更新后的加密密钥进行加密,得到更新后的密钥数据;所述第二存储器,还适于获取所述更新后的密钥数据并替换更新前的密钥数据进行存储。
本发明实施例还提供了一种数据解密系统,所述系统包括:PUF模块,适于在初始化后产生第一真实响应数据;第二存储器,适于存储密钥数据和所述第一真实响应数据所对应的辅助数据;第一存储器,适于存储利用加密密钥对待加密数据进行加密后的数据;处理器,适于获取所述PUF模块当前的响应数据,以及获取所述第一真实响应数据所对应的辅助数据;基于所述第一真实响应数据对应的辅助数据以及PUF模块当前的响应数据,得到所述第一真实响应数据;基于所述第一真实响应数据得到私钥数据,并利用所述私钥数据对预先存储在所述PUF模块中的密钥数据进行解密,得到加密密钥;利用所述加密密钥对存储在第一存储器中的加密后的数据进行解密。
可选地,所述第二存储器预先存储的与所述第一真实响应数据所对应的辅助数据,是从所述PUF模块获取的,或者通过所述处理器获取的,或者通过加密装置从所述处理器获取的,其中,所述加密装置,适于产生所述加密密钥,并利用所述加密密钥对待加密数据进行加密。
可选地,所述处理器适于利用预设的私钥生成算法,对所述第一真实响应数据进行运算,得到所述私钥数据。
可选地,所述预设的私钥生成算法为Hash算法。
可选地,所述第一存储器为所述第二存储器。
可选地,所述处理器,还适于基于所述当前的响应数据对应的辅助数据及PUF模块最新响应数据,得到所述PUF模块当前的响应数据;基于所述当前的响应数据得到更新后的私钥数据,利用所述更新后的私钥数据对所述第二存储器中存储的更新后的密钥数据进行解密,得到更新后的加密密钥,并利用所述更新后的加密密钥对所述第一存储器中的加密后的数据进行解密。
可选地,所述处理器,还适于基于所述第二存储器中存储的辅助数据及所述PUF模块当前的响应数据,得到所述第二存储器中存储的辅助数据对应的响应数据;基于所述第二存储器中存储的辅助数据对应的响应数据得到私钥数据,利用所述私钥数据对所述第二存储器中存储的更新后的密钥数据进行解密,得到更新后的加密密钥,并利用所述更新后的加密密钥对所述第一存储器中的加密后的数据进行解密。
相对于现有技术,本发明实施例的优点在于:
采用上述方案,在对数据进行解密的过程中,通过将PUF模块的第一真实响应数据对应的辅助数据及密钥数据存储在第二存储器中,进而在对数据进行解密时,需要先基于预先存储的辅助数据以及PUF模块当前的真实响应数据,得到第一真实响应数据,再基于第一真实响应数据得到私钥数据,进而基于所述私钥数据对预先存储在所述第二存储器中的密钥数据进行解密,才能得到加密密钥,相对于将加密密钥的掩码运算结果存储在第二存储器中,可以增加加密密钥的破解难度,提高数据的安全性。并且,在存在多个用户数据的情况下,每个用户可以使用各自的加密密钥,对各自的数据进行加密,其它用户即便获得了公钥数据,但却无法获得该用户的加密密钥,可以保证多用户各自的数据安全性,促进多用户之间的合作。
进一步地,在加密装置向处理器发送更新所述加密密钥的指令后,第二存储器可以获取所述当前的响应数据对应的辅助数据并替换所述第一真实响应数据对应的辅助数据进行存储,进而处理器可以在对数据进行解密的过程中,可以基于所述当前的响应数据得到更新后的私钥数据,利用所述更新后的私钥数据对所述第二存储器中存储的更新后的密钥数据进行解密,得到更新后的加密密钥,从而可以对第一存储器中的加密后的数据进行解密,无须处理器与加密装置之间进行密钥协商,即可完成公私钥对的更新,有效节省数据传输资源。并且私钥数据由处理器产生,外部只能获得公钥数据,相对于导入公私钥的方案对有更高的安全性。
进一步地,在加密装置向处理器发送更新所述加密密钥的指令后,加密装置可以使用公钥数据对更新后的密钥进行加密。第一存储器保存使用更新后的密钥所加密的数据,第二存储器保存使用公钥加密更新后的密钥得到的密钥数据,由此可以在不更新公钥数据及私钥数据的情况下,实现对加密密钥的更新,用户可以在不影响其它用户数据安全的情况下,安全的更新自身的密钥和数据。
附图说明
图1是本发明实施例中一种数据加密系统的结构示意图;
图2是本发明实施例中一种数据解密系统的结构示意图;
图3是本发明实施例中一种数据加密过程的数据交互示意图;
图4是本发明实施例中一种密钥更新过程的数据交互示意图;
图5是本发明实施例中另一种密钥更新过程的数据交互示意图
图6是本发明实施例中一种数据解密方法的流程图。
具体实施方式
目前,FPGA采用存储器来保存密钥时,通常在数据加密过程中,将对密钥进行掩码运算的结果存储在存储器中,进而在数据解密过程中,FPGA可以获取存储器中的掩码运算结果并恢复出密钥,完成数据解密。
由于掩码运算结果与密钥之间的关联性较大,攻击者通过获取存储器中的掩码运算结果,可以轻松地破解密钥,最终导致数据泄露,难以满足用于对数据安全性的要求。
针对上述问题,本发明实施例提供了一种数据加密方法,在对数据进行加密的过程中,通过将PUF模块的第一真实响应数据对应的辅助数据及密钥数据存储在第二存储器中,进而在对数据进行解密时,需要先基于预先存储的辅助数据以及PUF模块当前的真实响应数据,得到第一真实响应数据,再基于第一真实响应数据得到私钥数据,并利用所述私钥数据对预先存储在所述第二存储器中的密钥数据进行解密,才能得到加密密钥,相对于将加密密钥的掩码运算结果存储在第二存储器中,可以增加加密密钥的破解难度,提高数据的安全性。
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
图1为本发明实施例提供的一种数据加密系统1。所述数据加密系统1可以包括:PUF模块10,第二存储器11,处理器12,加密装置13以及第一存储器14。其中:
所述PUF模块10,适于在初始化后产生第一真实响应数据;
所述处理器12,适于获取PUF模块11初始化产生的第一真实响应数据,基于所述第一真实响应数据得到私钥数据,基于所述私钥数据得到对应的公钥数据并发送至加密装置13;
所述加密装置13,适于生成对待加密数据进行加密的加密密钥,利用所述加密密钥对待加密数据进行加密,将加密后的数据存储在第一存储器14中;并利用所述公钥数据对所述加密密钥进行加密,得到所述密钥数据;
所述第一存储器14,适于存储加密后的数据;
所述第二存储器11,适于存储密钥数据和所述第一真实响应数据所对应的辅助数据。
在具体实施中,所述PUF模块10可以为Arbiter PUF、环振PUF或者SRAM PUF等。所述PUF模块10在初始化上电后所产生的响应,称为第一真实响应数据。第一真实响应数据及其对应的辅助数据之间存在一定的关系。
在本发明的一实施例中,为了提高密钥的破解难度,所述第一真实响应数据对应的辅助数据可以是通过对随机数据进行编码,并利用编码结果对所述第一真实响应数据进行相应运算得到的。其中,所述随机数据可以通过设置在PUF模块10内部或外部的随机数发生器获得。所述第一真实响应数据对应的辅助数据可以是PUF模块10产生的,也可以是与PUF模块10耦接的其它设备产生的,比如,所述加密装置13、所述处理器12或者其它设备可以产生述第一真实响应数据对应的辅助数据。
在具体实施中,参照图1,所述PUF模块10可以集成在所述处理器12内。当然,所述PUF模块10也可以与所述处理器12独立设置,具体不作限制。
在具体实施中,所述第二存储器11可以通过多种方式获取所述第一真实响应数据对应的辅助数据并进行存储。
在本发明的一实施例中,所述预先存储的与所述第一真实响应数据所对应的辅助数据,可以是从所述PUF模块10获取的。也就是说,所述第二存储器11可以直接从所述PUF模块10可以获取所述第一真实响应数据所对应的辅助数据并存储。
在本发明的另一实施例中,所述预先存储的与所述第一真实响应数据所对应的辅助数据,可以是所述第二存储器11通过所述处理器12获取的。也就是说,所述处理器12可以先获取所述第一真实响应数据所对应的辅助数据,进而将所获取到的辅助数据发送至所述第二存储器11。
在本发明的又一实施例中,所述预先存储的与所述第一真实响应数据所对应的辅助数据,可以是所述第二存储器11通过加密装置13从所述处理器12获取的。也就是说,所述加密装置13可以先获取所述第一真实响应数据所对应的辅助数据,再将所获取到的辅助数据发送至所述处理器12,由所述处理器12将该辅助数据发送至所述第二存储器11。
在具体实施中,所述处理器12可以任意需要对存储数据进行保护的器件,比如,所述处理器可以为FPGA芯片。
在具体实施中,所述处理器12适于利用预设的私钥生成算法,对所述第一真实响应数据进行运算,得到所述私钥数据。其中,所述预设的私钥生成算法可以为任意一种压缩算法,例如:哈希(Hash)算法,也可以为扩展算法,还可以为裁剪算法,具体不作限制。得到私钥数据后,再利用预设的公钥生成算法,对私钥数据进行运算,得到所述私钥数据对应的公钥数据,其中,所述预设的公钥生成算法可以为任意一种加密算法,例如,SM2加密算法。
以所述预设的私钥生成算法为Hash,所述预设的公钥生成算法为SM2加密算法为例,在具体实施中,所述处理器12可以通过对第一真实响应数据R0进行哈希运算,得到私钥数据M0,即M0=Hash(R0)。之后,所述处理器12可以在利用该SM2加密算法,计算私钥数据M0的公钥数据P0=M0*G,其中,G为椭圆曲线的基点。所述处理器12获得公钥数据P0,可以将其发送至所述加密装置13。
在具体实施中,所述加密装置13可以生成对待加密数据进行加密的加密密钥A0,并利用所述加密密钥A0对待加密数据进行加密。比如,当所述处理器12为FPGA芯片时,所述待加密数据可以为FPGA芯片的位流文件,所述加密装置13可以为与FPGA芯片耦接,且适于接收用户操作指令的FPGA服务器,所述FPGA服务器与FPGA芯片之间可以通过联合测试工作组(Joint Test Action Group,JTAG)接口进行通信,FPGA芯片与第一存储器14及第二存储器11之间可以通过串行外设接口(Serial Peripheral Interface,SPI)接口进行通信。由加密装置13对位流文件进行加密,并将加密后的文件存储在第一存储器14中。
除对待加密数据进行加密外,所述加密装置13还可以利用所述公钥数据P0对所述加密密钥A0进行加密,得到所述密钥数据N0并发送至所述第二存储器11,比如,所述加密装置13可以按照SM2加密算法使用所述公钥数据P0对所述加密密钥A0进行加密。
在具体实施中,所述第一存储器14可以是闪存(FLASH)、电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,E2PROM)等存储设备。
在具体实施中,所述处理器12通常在终端用户手中,而非生产者手中。具体密钥更新过程如下:
在本发明的一实施例中中,所述加密装置13,还适于向所述处理器12发送更新所述加密密钥的指令。所述处理器12还适于基于所述更新所述加密密钥的指令,获取所述PUF模块10当前的响应数据R1对应的辅助数据D1,根据当前响应数据R1,得到更新后的私钥数据M1,并利用所述更新后的私钥数据M1得到对应的更新后的公钥数据P1,并发送P1至所述加密装置13。
所述加密装置13,还适于产生更新后的加密密钥A1,并利用更新后的加密密钥A1对待加密数据进行加密,得到加密后的数据并存储在所述第一存储器14中;利用所述更新后的公钥数据P1对所述加密装置13产生的更新后的加密密钥A1进行加密,得到更新后密钥数据N1。
所述第二存储器11,还适于获取更新后的密钥数据N1并替换更新前的密钥数据N0进行存储,以及获取所述当前的响应数据R1对应的辅助数据D1并替换所述第一真实响应数据R0对应的辅助数据D0进行存储。
在具体实施中,所述处理器12可以先根据PUF模块10当前的响应数据R1,利用预设的私钥生成算法,得到更新后的私钥数据M1。以所述预设的私钥生成算法为Hash算法为例,M1=Hash(R1)。
其中,所述加密装置13根据PUF模块10当前的响应数据R1得到更新后的私钥数据M1时所采用的私钥生成算法,与所述处理器12通过对第一真实响应数据R0得到私钥数据M0时所采用的私钥生成算法相同。相应地,所述处理器12利用所述更新后的私钥数据M1得到对应的更新后的公钥数据P1时所采用的公钥生成算法,与所述处理器12利用所述私钥数据M0得到对应的公钥数据P0时所采用的公钥生成算法相同。
在具体实施中,所述加密装置13利用所述更新后的公钥数据P1对所述更新后的加密密钥A1进行加密时所采用的加密算法,与所述加密装置13利用原公钥数据P0对原加密密钥A0进行加密时所采用的加密算法相同,此处不再赘述。
采用上述密钥更新方案,无须处理器与加密装置之间进行密钥协商,即可完成密钥的更新,有效节省数据传输资源。
在本发明的另一实施例中,所述加密装置13,还适于向所述处理器12发送更新所述加密密钥的指令。
所述处理器12,还适于基于所述更新所述加密密钥的指令,获取公钥数据P0,并发送至所述加密装置13。
所述加密装置13,还适于产生更新的加密密钥A1,并利用所述更新后的加密密钥A1对所述待加密数据进行加密;利用所述公钥数据P0对所述更新后的加密密钥A1进行加密,得到更新后的密钥数据N1;
所述第二存储器11,还适于获取所述更新后的密钥数据N1并替换更新前的密钥数据N0进行存储。
在不更新公钥数据及私钥数据的情况下,实现对加密密钥的更新,可以在多方合作中,在不影响其它合作方密钥的前提下,安全的完成某一方密钥的更新。
图2为本发明实施例提供的一种数据解密系统2。所述数据解密系统2与所述数据加密系统1相对应,用于对所述数据加密系统1加密后的数据进行解密。
具体地,所述数据解密系统2可以包括:PUF模块20,第二存储器21,第一存储器22以及处理器23。其中:
所述PUF模块20,适于在初始化后产生第一真实响应数据;
所述第二存储器21,适于存储密钥数据和所述第一真实响应数据所对应的辅助数据;
所述第一存储器22,适于存储利用加密密钥对待加密数据进行加密后的数据;
所述处理器23,适于获取所述PUF模块20当前的响应数据,以及获取所述第一真实响应数据所对应的辅助数据;基于所述第一真实响应数据对应的辅助数据以及PUF模块20当前的响应数据,得到所述第一真实响应数据;基于所述第一真实响应数据得到私钥数据,并利用所述私钥数据对预先存储在所述第二存储器21中的密钥数据进行解密,得到加密密钥;利用所述加密密钥对存储在第一存储器22中的加密后的数据进行解密。
在具体实施中,所述第二存储器21预先存储的与所述第一真实响应数据所对应的辅助数据,可以是从所述PUF模块20获取的,或者通过所述处理器23获取的,或者通过加密装置从所述处理器23获取的;其中,所述加密装置,适于在对数据进行加密的过程中产生所述加密密钥,并利用所述加密密钥对所述待加密数据进行加密。
在具体实施中,所述PUF模块20可以集成于所述处理器23内,也可以与所述处理器23相互独立设置,具体不作限制。
关于所述PUF模块20,具体可以参照上述数据加密系统1中PUF模块10的描述进行实施,此处不再赘述。
关于所述加密装置,具体可以参照上述数据加密系统1中加密装置13的描述进行实施,此处不再赘述。
在具体实施中,所述处理器23可以基于所述第一真实响应数据对应的辅助数据以及PUF模块20当前的响应数据,恢复得到所述第一真实响应数据,再利用预设的私钥生成算法,对所述第一真实响应数据进行运算,得到私钥数据。此时,所述处理器23对第一真实响应数据进行运算时所采用的私钥生成算法,与上述数据加密系统1中处理器12对第一真实响应数据进行运算时所采用的私钥生成算法相同,具体可以参照上述关于处理器12基于第一真实响应数据得到私钥数据的过程进行实施,不再赘述。
在具体实施中,所述处理器23利用所述私钥数据对密钥数据进行解密,得到加密密钥。其中,所述处理器23利用所述私钥数据对所述密钥数据进行解密的过程,与上述数据加密系统的实施例中,所述加密转置13利用公钥数据对所述加密密钥进行加密的过程互逆。
比如,当所述加密转置13将公钥数据作为密钥,利用SM2加密算法对加密密钥进行加密,得到密钥数据时,所述处理器23可以将私钥数据作为密钥,利用SM2解密算法对密钥数据进行解密,得到加密密钥。
在本发明的一实施例中,所述第一存储器22可以为所述第二存储器21。
在本发明的一实施例中,所述处理器23,还适于基于所述第二存储器21中存储的辅助数据D1及所述PUF模块20最新的响应数据,得到所述第二存储器21中存储的辅助数据D1对应的响应数据R1;基于所述第二存储器21中存储的辅助数据D1对应的响应数据R1得到更新后的私钥数据M1,利用所述更新后的私钥数据M1对所述第二存储器21中存储的更新后的密钥数据N1进行解密,得到更新后的加密密钥A1,并利用所述更新后的加密密钥A1对所述第一存储器22中的加密后的数据进行解密。
当所述第二存储器21中存储的辅助数据为更新后的辅助数据D1,且所述密钥数据为更新后的密钥数据N1时,表明加密装置在对数据进行加密的过程中对加密密钥进行了更新。
为了获得更新后的加密密钥,处理器23可以先基于辅助数据D1及所述PUF模块20最新的响应数据,恢复得到辅助数据D1对应的的响应数据R1,进而利用预设的私钥生成算法,对响应数据R1进行运算,可以得到更新后的私钥数据M1。其中,所述PUF模块20当前的响应数据为所述PUF模块20最新的响应数据,不同于第一响应数据R0以及响应数据R1。
此处,处理器23基于响应数据R1得到更新后的私钥数据M1时所采用的私钥生成算法,与上述数据加密系统1中所述加密装置13根据响应数据R1得到更新后的私钥数据M1时所采用的私钥生成算法相同,比如,所述预设的密钥生成算法为Hash算法。具体可以参照上述加密装置13根据响应数据R1得到更新后的私钥数据M1的描述进行实施,不再赘述。
获得更新后的私钥数据M1后,利用更新后的私钥数据M1对所述第二存储器21中存储的更新后的密钥数据N1进行解密,得到更新后的加密密钥A1。其中,所述处理器23利用更新后的私钥数据M1对更新后的密钥数据N1进行解密的过程,与上述加密装置13利用更新后的公钥数据对更新后的加密密钥进行加密来得到更新后密钥数据的过程互逆,此处不再赘述。
由于处理器23可以直接利用第二存储器21中存储的辅助数据及所述PUF模块20当前的响应数据,得到所述第二存储器21中存储的辅助数据对应的响应数据,并基于所得到的响应数据得到更新后的加密密钥,从而可以对数据进行加密,而无须处理器23与加密装置之间进行密钥协商,即可完成密钥的更新,故可以有效节省数据传输资源。
在本发明的另一实施例中,所述处理器23,还适于基于所述第二存储器21中存储的辅助数据D1及所述PUF模块当前的响应数据,得到所述第二存储器21中存储的辅助数据D1对应的响应数据R1;基于所述第二存储器21中存储的辅助数据D1对应的响应数据R1得到私钥数据M0,利用所述私钥数据M0对所述第二存储器21中存储的更新后的密钥数据N1进行解密,得到更新后的加密密钥A1,并利用所述更新后的加密密钥A1对所述第一存储器22中的加密后的数据进行解密。在不更新公钥数据及私钥数据的情况下,实现对加密密钥的更新,可以在多方合作中,在不影响其它合作方密钥的前提下,安全的完成某一方密钥的更新。
为了使本领域技术人员更好地理解和实现本发明,以下对上述数据加密系统及数据解密系统对应的方法进行详细描述。
图3为本发明实施例提供的一种数据加密过程的数据交互过程示意图。参照图3,所述方法可以包括如下步骤:
步骤31,处理器获取PUF模块初始化产生的第一真实响应数据R0,基于所述第一真实响应数据R0得到私钥数据M0,基于所述私钥数据M0得到对应的公钥数据P0;
步骤32,处理器将所述公钥数据P0发送至加密装置。
步骤33,所述加密装置生成对待加密数据进行加密的加密密钥A0,利用所述加密密钥A0对待加密数据进行加密;并利用所述公钥数据P0对所述加密密钥A0进行加密,得到密钥数据N0;
步骤34,所述加密装置将加密后的数据存储在第一存储器中;
步骤35,所述第二存储器获取所述第一真实响应数据R0对应的辅助数据D0及所述密钥数据N0并进行存储。
在具体实施中,所述处理器可以利用预设的私钥生成算法,对所述第一真实响应数据R0进行运算,得到所述私钥数据M0。
在具体实施中,所述处理器利用所述预设的公钥生成算法,对所述私钥数据进行运算,得到所述私钥数据对应的公钥数据。
在本发明的一实施例中,所述预设的私钥生成算法为Hash算法,所述预设的公钥算法为SM2加密算法。
在具体实施中,所述第一存储器为所述第二存储器。
在具体实施中,所述第二存储器采用以下任意一种方式获取所述第一真实响应数据对应的辅助数据:
所述第二存储器从所述PUF模块获取所述第一真实响应数据R0生成对应的辅助数据D0;
所述第二存储器通过所述处理器获取所述第一真实响应数据R0对应的辅助数据D0;
所述第二存储器通过所述加密装置从所述处理器获取所述第一真实响应数据R0对应的辅助数据D0。
在具体实施中,所述第一存储器为所述第二存储器。
在本发明的一实施例中,参照图4,可以采用如下方法进行密钥更新:
步骤41,所述加密装置向所述处理器发送更新所述加密密钥的指令;
步骤42,所述处理器基于所述更新所述加密密钥的指令,获取所述PUF模块当前的响应数据R1对应的辅助数据D1,根据R1得到更新后的私钥数据M1,并利用所述更新后的私钥数据M1得到对应的更新后的公钥数据P1,并将P1发送至所述加密装置;
步骤43,所述加密装置产生更新后的加密密钥A1,并利用所述更新后的加密密钥A1对所述待加密数据进行加密;利用所述更新后的公钥数据P1对所述加密装置产生的更新后的加密密钥A1进行加密,得到更新后密钥数据N1;
步骤44,将加密后的数据存储在所述第一存储器中;
步骤45,所述第二存储器获取更新后的密钥数据N1并替换更新前的密钥数据N0进行存储,以及获取所述当前的响应数据R1对应的辅助数据D1并替换所述第一真实响应数据R0对应的辅助数据D0进行存储。
在本发明的另一实施例中,参照图5,可以采用如下方法进行密钥更新:
步骤51,所述加密装置向所述处理器发送更新所述加密密钥的指令;
步骤52,所述处理器基于所述更新所述加密密钥的指令,获取公钥数据P0,并发送至所述加密装置;
步骤53,所述加密装置产生更新的加密密钥A1,并利用所述更新后的加密密钥A1对所述待加密数据进行加密;利用所述公钥数据P0对所述更新后的加密密钥A1进行加密,得到更新后的密钥数据N1;
步骤54,所述第二存储器获取所述更新后的密钥数据N1并替换更新前的密钥数据N0进行存储。
图6为本发明实施例提供的一种数据解密方法的流程图。参照图6,所述方法可以包括如下步骤:
步骤61,处理器获取PUF模块当前的响应数据,以及获取所述PUF模块初始化产生的第一真实响应数据所对应的辅助数据,所述PUF模块初始化产生的第一真实响应数据所对应的辅助数据预先存储在所述第二存储器中;
步骤62,所述处理器基于所述第一真实响应数据对应的辅助数据以及PUF模块当前的响应数据,得到所述第一真实响应数据;
步骤63,所述处理器基于所述第一真实响应数据得到私钥数据,并利用所述私钥数据对预先存储在所述第二存储器中的密钥数据进行解密,得到加密密钥;
步骤64,所述处理器利用所述加密密钥对存储在第一存储器中的加密后的数据进行解密。
在具体实施中,所述处理器可以利用预设的私钥生成算法,对所述第一真实响应数据进行运算,得到所述私钥数据。
在本发明的一实施例中,所述预设的私钥生成算法为Hash算法。
在具体实施中,所述第二存储器预先存储的与所述第一真实响应数据所对应的辅助数据,可以是从所述PUF模块获取的,或者通过所述处理器获取的,或者通过加密装置从所述处理器获取的。其中,所述加密装置,适于利用所述加密密钥对待加密数据进行加密。
在具体实施中,所述第一存储器为所述第二存储器。
在具体实施中,所述第二存储器中存储的辅助数据为更新后的辅助数据,且所述密钥数据为更新后的密钥数据时,表明数据加密过程中密钥发生更新。此时,所述方法还包括:
在本发明的一实施例中,可以采用如下方法进行密钥更新:
所述处理器基于所述第二存储器中存储的辅助数据及所述PUF模块最新的响应数据,得到所述第二存储器中存储辅助数据对应的响应数据,并基于所述第二存储器中存储辅助数据对应的响应数据得到更新后的私钥数据,利用所述更新后的私钥数据对所述第二存储器中存储的更新后的密钥数据进行解密,得到更新后的加密密钥,并利用所述更新后的加密密钥对所述第一存储器中的加密后的数据进行解密。
在本发明的另一实施例中,可以采用如下方法进行密钥更新:
所述处理器基于所述第二存储器中存储的辅助数据及所述PUF模块当前的响应数据,得到所述第二存储器中存储的辅助数据对应的响应数据;基于所述第二存储器中存储的辅助数据对应的响应数据得到私钥数据,利用所述私钥数据对所述第二存储器中存储的更新后的密钥数据进行解密,得到更新后的加密密钥,并利用所述更新后的加密密钥对所述第一存储器中的加密后的数据进行解密。
由上述内容可知,在对数据进行加密的过程中,通过将PUF模块的第一真实响应数据对应的辅助数据以及密钥数据存储在第二存储器中,进而在对数据进行解密时,需要先基于预先存储的辅助数据以及PUF模块当前的真实响应数据,得到第一真实响应数据,再基于第一真实响应数据先后得到私钥数据及公钥数据,最终基于公钥数据对密钥数据进行解密才能够得到加密密钥,相对于将加密密钥的掩码运算结果存储在PUF模块中,可以增加加密密钥的破解难度,提高数据的安全性。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

Claims (30)

1.一种数据加密方法,其特征在于,包括:
处理器获取PUF模块初始化产生的第一真实响应数据,基于所述第一真实响应数据得到私钥数据,基于所述私钥数据得到对应的公钥数据并发送至加密装置;
所述加密装置生成对待加密数据进行加密的加密密钥,利用所述加密密钥对待加密数据进行加密,将加密后的数据存储在第一存储器中;并利用所述公钥数据对所述加密密钥进行加密,得到密钥数据;
第二存储器获取所述第一真实响应数据对应的辅助数据及所述密钥数据并进行存储。
2.如权利要求1所述的数据加密方法,其特征在于,所述第二存储器采用以下任意一种方式获取所述第一真实响应数据对应的辅助数据:
所述第二存储器从所述PUF模块获取所述第一真实响应数据生成对应的辅助数据;
所述第二存储器通过所述处理器获取所述第一真实响应数据对应的辅助数据;
所述第二存储器通过所述加密装置从所述处理器获取所述第一真实响应数据对应的辅助数据。
3.如权利要求1所述的数据加密方法,其特征在于,所述基于所述第一真实响应数据得到私钥数据,包括:
所述处理器利用预设的私钥生成算法,对所述第一真实响应数据进行运算,得到所述私钥数据。
4.如权利要求3所述的数据加密方法,其特征在于,所述基于所述私钥数据得到对应的公钥数据,包括:
所述处理器利用所述预设的公钥生成算法,对所述私钥数据进行运算,得到所述私钥数据对应的公钥数据。
5.如权利要求4所述的数据加密方法,其特征在于,所述预设的私钥生成算法为Hash算法,所述预设的公钥算法为SM2加密算法。
6.如权利要求1所述的数据加密方法,其特征在于,所述第一存储器为所述第二存储器。
7.如权利要求1~6任一项所述的数据加密方法,其特征在于,还包括:
所述加密装置向所述处理器发送更新所述加密密钥的指令;
所述处理器基于所述更新所述加密密钥的指令,获取所述PUF模块当前的响应数据对应的辅助数据,根据所述PUF模块当前的响应数据,得到更新后的私钥数据,并利用所述更新后的私钥数据得到对应的更新后的公钥数据并发送至所述加密装置;
所述加密装置产生更新后的加密密钥,并利用所述更新后的加密密钥对所述待加密数据进行加密;利用所述更新后的公钥数据对所述加密装置产生的更新后的加密密钥进行加密,得到更新后密钥数据;
所述第二存储器获取所述当前的响应数据对应的辅助数据并替换所述第一真实响应数据对应的辅助数据进行存储,以及获取所述更新后的密钥数据并替换更新前的密钥数据进行存储。
8.如权利要求1~6任一项所述的数据加密方法,其特征在于,还包括:
所述加密装置向所述处理器发送更新所述加密密钥的指令;
所述处理器基于所述更新所述加密密钥的指令,获取公钥数据,并发送至所述加密装置;
所述加密装置产生更新的加密密钥,并利用所述更新后的加密密钥对所述待加密数据进行加密;利用所述公钥数据对所述更新后的加密密钥进行加密,得到更新后的密钥数据;
所述第二存储器获取所述更新后的密钥数据并替换更新前的密钥数据进行存储。
9.一种数据解密方法,其特征在于,包括:
处理器获取PUF模块当前的响应数据,以及获取所述PUF模块初始化产生的第一真实响应数据所对应的辅助数据,所述PUF模块初始化产生的第一真实响应数据所对应的辅助数据预先存储在第二存储器中;
所述处理器基于所述第一真实响应数据对应的辅助数据以及PUF模块当前的响应数据,得到所述第一真实响应数据;
所述处理器基于所述第一真实响应数据得到私钥数据,并利用所述私钥数据对预先存储在所述第二存储器中的密钥数据进行解密,得到加密密钥;
所述处理器利用所述加密密钥对存储在第一存储器中的加密后的数据进行解密。
10.如权利要求9所述的数据解密方法,其特征在于,所述第二存储器预先存储的与所述第一真实响应数据所对应的辅助数据,是从所述PUF模块获取的,或者通过所述处理器的,或者通过加密装置从所述处理器获取的,其中,所述加密装置,适于产生所述加密密钥,并利用所述加密密钥对待加密数据进行加密。
11.如权利要求9所述的数据解密方法,其特征在于,所述处理器基于所述第一真实响应数据得到私钥数据,包括:
所述处理器利用预设的私钥生成算法,对所述第一真实响应数据进行运算,得到所述私钥数据。
12.如权利要求11所述的数据解密方法,其特征在于,所述预设的私钥生成算法为Hash算法。
13.如权利要求9所述的数据解密方法,其特征在于,所述第一存储器为所述第二存储器。
14.如权利要求9~13任一项所述的数据解密方法,其特征在于,还包括:
所述处理器基于所述第二存储器中存储的辅助数据及所述PUF模块最新的响应数据,得到所述第二存储器中存储的辅助数据对应的响应数据;
所述处理器基于所述第二存储器中存储的辅助数据对应的响应数据得到更新后的私钥数据,利用所述更新后的私钥数据对所述第二存储器中存储的更新后的密钥数据进行解密,得到更新后的加密密钥,并利用所述更新后的加密密钥对所述第一存储器中的加密后的数据进行解密。
15.如权利要求9~13任一项所述的数据解密方法,其特征在于,
所述处理器基于所述第二存储器中存储的辅助数据及所述PUF模块当前的响应数据,得到所述第二存储器中存储的辅助数据对应的响应数据;
所述处理器基于所述第二存储器中存储的辅助数据对应的响应数据得到私钥数据,利用所述私钥数据对所述第二存储器中存储的更新后的密钥数据进行解密,得到更新后的加密密钥,并利用所述更新后的加密密钥对所述第一存储器中的加密后的数据进行解密。
16.一种数据加密系统,其特征在于,包括:
PUF模块,适于在初始化后产生第一真实响应数据;
处理器,适于获取PUF模块初始化产生的第一真实响应数据,基于所述第一真实响应数据得到私钥数据,基于所述私钥数据得到对应的公钥数据并发送至加密装置;
所述加密装置,适于生成对待加密数据进行加密的加密密钥,利用所述加密密钥对待加密数据进行加密,将加密后的数据存储在第一存储器中;并利用所述公钥数据对所述加密密钥进行加密,得到所述密钥数据;
第一存储器,适于存储加密后的数据;
第二存储器,适于存储密钥数据和所述第一真实响应数据所对应的辅助数据。
17.如权利要求16所述的数据加密系统,其特征在于,所述第二存储器预先存储的与所述第一真实响应数据所对应的辅助数据,是从所述PUF模块获取的,或者通过所述处理器获取的,或者通过加密装置从所述处理器获取的。
18.如权利要求16所述的数据加密系统,其特征在于,所述处理器适于利用预设的私钥生成算法,对所述第一真实响应数据进行运算,得到所述私钥数据。
19.如权利要求18所述的数据加密系统,其特征在于,所述处理器适于利用所述预设的公钥生成算法,对所述私钥数据进行运算,得到所述私钥数据对应的公钥数据。
20.如权利要求19所述的数据加密系统,其特征在于,所述预设的私钥生成算法为Hash算法,所述预设的公钥生成算法为SM2加密算法。
21.如权利要求16所述的数据加密系统,其特征在于,所述第一存储器为所述第二存储器。
22.如权利要求16~21任一项所述的数据加密系统,其特征在于,
所述加密装置,还适于向所述处理器发送更新所述加密密钥的指令;
所述处理器,还适于基于所述更新所述加密密钥的指令,获取所述PUF存储器当前的响应数据对应的辅助数据,根据所述PUF模块当前的响应数据,得到更新后的私钥数据,并利用所述更新后的私钥数据得到对应的更新后的公钥数据并发送至所述加密装置;
所述加密装置,还适于产生更新后的加密密钥,并利用所述更新后的加密密钥对所述待加密数据进行加密;利用所述更新后的公钥数据对所述加密装置产生的更新后的加密密钥进行加密,得到更新后密钥数据;
所述第二存储器,还适于获取更新后的密钥数据并替换更新前的密钥数据进行存储,以及获取所述当前的响应数据对应的辅助数据并替换所述第一真实响应数据对应的辅助数据进行存储。
23.如权利要求16~21任一项所述的数据加密系统,其特征在于,
所述加密装置,还适于向所述处理器发送更新所述加密密钥的指令;
所述处理器,还适于基于所述更新所述加密密钥的指令,获取公钥数据,并发送至所述加密装置;
所述加密装置,还适于产生更新的加密密钥,并利用所述更新后的加密密钥对所述待加密数据进行加密;利用所述公钥数据对所述更新后的加密密钥进行加密,得到更新后的密钥数据;
所述第二存储器,还适于获取所述更新后的密钥数据并替换更新前的密钥数据进行存储。
24.一种数据解密系统,其特征在于,包括:
PUF模块,适于在初始化后产生第一真实响应数据;
第一存储器,适于存储利用加密密钥对待加密数据进行加密后的数据;
第二存储器,适于存储密钥数据和所述第一真实响应数据所对应的辅助数据;
处理器,适于获取所述PUF模块当前的响应数据,以及获取所述第一真实响应数据所对应的辅助数据;基于所述第一真实响应数据对应的辅助数据以及PUF模块当前的响应数据,得到所述第一真实响应数据;基于所述第一真实响应数据得到私钥数据,并利用所述私钥数据对预先存储在所述第二存储器中的密钥数据进行解密,得到加密密钥;利用所述加密密钥对存储在第一存储器中的加密后的数据进行解密。
25.如权利要求24所述的数据解密系统,其特征在于,所述第二存储器预先存储的与所述第一真实响应数据所对应的辅助数据,是从所述PUF模块获取的,或者通过所述处理器获取的,或者通过加密装置从所述处理器获取的,其中,所述加密装置,适于产生所述加密密钥,并利用所述加密密钥对待加密数据进行加密。
26.如权利要求24所述的数据解密系统,其特征在于,所述处理器适于利用预设的私钥生成算法,对所述第一真实响应数据进行运算,得到所述私钥数据。
27.如权利要求26所述的数据解密系统,其特征在于,所述预设的私钥生成算法为Hash算法。
28.如权利要求24所述的数据解密系统,其特征在于,所述第一存储器为所述第二存储器。
29.如权利要求24~28任一项所述的数据解密系统,其特征在于,所述处理器,还适于基于所述第二存储器中存储的辅助数据及所述PUF模块最新的响应数据,得到所述第二存储器中存储的辅助数据对应的响应数据;基于所述第二存储器中存储的辅助数据对应的响应数据得到更新后的私钥数据,利用所述更新后的私钥数据对所述第二存储器中存储的更新后的密钥数据进行解密,得到更新后的加密密钥,并利用所述更新后的加密密钥对所述第一存储器中的加密后的数据进行解密。
30.如权利要求24~28任一项所述的数据解密系统,其特征在于,
所述处理器,还适于基于所述第二存储器中存储的辅助数据及所述PUF模块当前的响应数据,得到所述第二存储器中存储的辅助数据对应的响应数据;基于所述第二存储器中存储的辅助数据对应的响应数据得到私钥数据,利用所述私钥数据对所述第二存储器中存储的更新后的密钥数据进行解密,得到更新后的加密密钥,并利用所述更新后的加密密钥对所述第一存储器中的加密后的数据进行解密。
CN201710738505.1A 2017-08-24 2017-08-24 数据加、解密方法及数据加、解密系统 Active CN109428712B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710738505.1A CN109428712B (zh) 2017-08-24 2017-08-24 数据加、解密方法及数据加、解密系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710738505.1A CN109428712B (zh) 2017-08-24 2017-08-24 数据加、解密方法及数据加、解密系统

Publications (2)

Publication Number Publication Date
CN109428712A true CN109428712A (zh) 2019-03-05
CN109428712B CN109428712B (zh) 2022-01-07

Family

ID=65500461

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710738505.1A Active CN109428712B (zh) 2017-08-24 2017-08-24 数据加、解密方法及数据加、解密系统

Country Status (1)

Country Link
CN (1) CN109428712B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111049639A (zh) * 2019-11-01 2020-04-21 浙江理工大学 一种基于fpga的动态数据加解密实现方法
CN111431889A (zh) * 2020-03-19 2020-07-17 李子钦 一种OpenFlow网络中轻量级控制通道的通信保护方法
CN111756541A (zh) * 2019-03-26 2020-10-09 北京普安信科技有限公司 一种传送密钥的方法、服务器、终端及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103152164A (zh) * 2011-08-17 2013-06-12 Nxp股份有限公司 密码电路及其方法
CN104468094A (zh) * 2013-09-24 2015-03-25 瑞萨电子株式会社 加密密钥提供方法、半导体集成电路及加密密钥管理设备
CN105007285A (zh) * 2015-08-19 2015-10-28 南京万道电子技术有限公司 一种基于物理不可克隆函数的密钥保护方法和安全芯片
CN105743645A (zh) * 2016-01-25 2016-07-06 清华大学 基于puf的流秘钥生成装置、方法及数据加密、解密方法
WO2016189070A1 (en) * 2015-05-27 2016-12-01 Nagravision S.A. Method for generating a value inherent to an electronic circuit, electronic circuit generating this value and method for using such a value
US20170046281A1 (en) * 2014-09-15 2017-02-16 Arm Limited Address dependent data encryption
CN107004380A (zh) * 2014-10-13 2017-08-01 本质Id有限责任公司 包括物理不可克隆功能的加密设备
WO2017133939A1 (de) * 2016-02-03 2017-08-10 Siemens Aktiengesellschaft Verschlüsseln des speicherinhalts eines speichers in einem eingebetteten system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103152164A (zh) * 2011-08-17 2013-06-12 Nxp股份有限公司 密码电路及其方法
CN104468094A (zh) * 2013-09-24 2015-03-25 瑞萨电子株式会社 加密密钥提供方法、半导体集成电路及加密密钥管理设备
US20170046281A1 (en) * 2014-09-15 2017-02-16 Arm Limited Address dependent data encryption
CN107004380A (zh) * 2014-10-13 2017-08-01 本质Id有限责任公司 包括物理不可克隆功能的加密设备
WO2016189070A1 (en) * 2015-05-27 2016-12-01 Nagravision S.A. Method for generating a value inherent to an electronic circuit, electronic circuit generating this value and method for using such a value
CN105007285A (zh) * 2015-08-19 2015-10-28 南京万道电子技术有限公司 一种基于物理不可克隆函数的密钥保护方法和安全芯片
CN105743645A (zh) * 2016-01-25 2016-07-06 清华大学 基于puf的流秘钥生成装置、方法及数据加密、解密方法
WO2017133939A1 (de) * 2016-02-03 2017-08-10 Siemens Aktiengesellschaft Verschlüsseln des speicherinhalts eines speichers in einem eingebetteten system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘伟强等: "一种低成本物理不可克隆函数结构的设计实现及其RFID应用", 《电子学报》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111756541A (zh) * 2019-03-26 2020-10-09 北京普安信科技有限公司 一种传送密钥的方法、服务器、终端及系统
CN111049639A (zh) * 2019-11-01 2020-04-21 浙江理工大学 一种基于fpga的动态数据加解密实现方法
CN111049639B (zh) * 2019-11-01 2022-10-28 浙江理工大学 一种基于fpga的动态数据加解密实现方法
CN111431889A (zh) * 2020-03-19 2020-07-17 李子钦 一种OpenFlow网络中轻量级控制通道的通信保护方法
CN111431889B (zh) * 2020-03-19 2023-08-08 李子钦 一种OpenFlow网络中轻量级控制通道的通信保护方法

Also Published As

Publication number Publication date
CN109428712B (zh) 2022-01-07

Similar Documents

Publication Publication Date Title
CN105553951B (zh) 数据传输方法和装置
CN104486315B (zh) 一种基于内容属性的可撤销密钥外包解密方法
CN104363215B (zh) 一种基于属性的加密方法和系统
CN108683501B (zh) 基于量子通信网络的以时间戳为随机数的多次身份认证系统和方法
CN113824728B (zh) 一种基于数据加密的网络通信方法及系统
CN105162772A (zh) 一种物联网设备认证与密钥协商方法和装置
CN108418686A (zh) 一种多分布式的sm9解密方法与介质及密钥生成方法
CN106453246B (zh) 设备身份信息分配方法、装置以及系统
CN104158880B (zh) 一种用户端云数据共享解决方法
CN108768647B (zh) 一种区块链的随机数产生方法
CN109714307B (zh) 一种基于国密算法的云平台客户端数据加解密系统及方法
CN109218291B (zh) 一种基于区块链的数据流转方法、系统及相关设备
CN109194474A (zh) 一种数据传输方法及装置
CN107454590A (zh) 一种数据加密方法、解密方法及无线路由器
CN105024807A (zh) 数据处理方法及系统
CN204180095U (zh) 一种用于网络数据加密传输的加解密装置
CN105262586B (zh) 汽车防盗设备的密钥分配方法及装置
CN109428712A (zh) 数据加、解密方法及数据加、解密系统
CN106209916A (zh) 工业自动化生产业务数据传输加解密方法及系统
CN111767559A (zh) 字段级加密区块链数据
CN113572604A (zh) 一种发送密钥的方法、装置、系统及电子设备
CN108965279A (zh) 数据处理方法、装置、终端设备及计算机可读存储介质
CN110212991B (zh) 量子无线网络通信系统
CN112073182B (zh) 一种基于区块链的量子密钥管理方法及系统
CN109743162A (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