CN105095793B - 一种安全芯片中数据加解密的方法及系统 - Google Patents

一种安全芯片中数据加解密的方法及系统 Download PDF

Info

Publication number
CN105095793B
CN105095793B CN201510645937.9A CN201510645937A CN105095793B CN 105095793 B CN105095793 B CN 105095793B CN 201510645937 A CN201510645937 A CN 201510645937A CN 105095793 B CN105095793 B CN 105095793B
Authority
CN
China
Prior art keywords
data
encryption
sequence
decryption module
cycle
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
CN201510645937.9A
Other languages
English (en)
Other versions
CN105095793A (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.)
Inspur Beijing Electronic Information Industry Co Ltd
Original Assignee
Inspur Beijing Electronic Information Industry 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 Inspur Beijing Electronic Information Industry Co Ltd filed Critical Inspur Beijing Electronic Information Industry Co Ltd
Priority to CN201510645937.9A priority Critical patent/CN105095793B/zh
Publication of CN105095793A publication Critical patent/CN105095793A/zh
Application granted granted Critical
Publication of CN105095793B publication Critical patent/CN105095793B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例公开了一种安全芯片中数据加解密的方法及系统,包括:根据预设位宽值,将待处理数据切分成位宽为预设位宽值的X个数据切片序列;将所述X个数据切片序列送至加解密模块,通过加解密模块对X个数据切片序列进行加密处理或解密处理;其中,加解密模块和密钥均通过反熔丝查找表标准单元实现;若检测到加解密模块输出有效数据,则对连续输出X周期的数据切片进行采样。由于本实施例中的加解密模块由反熔丝查找表标准单元实现,在编程之后不具有可逆性,即使运用反向工程也无法破解反熔丝电路在编程之后的状态,因此,本实施例能防止芯片内部加密密钥和加解密电路被硬件木马或者方向工程等手段破解,保证了数据的安全性。

Description

一种安全芯片中数据加解密的方法及系统
技术领域
本发明涉及信息安全和集成电路领域,更具体地说,涉及一种安全芯片中数据加解密的方法及系统。
背景技术
当前,以智能卡和USBKey为代表安全芯片在各种信息系统中应用广泛。这种安全芯片的主要作用是信任根源,即用于身份认证和权限控制。安全芯片自身的安全性对整个信息系统的安全性具有关键作用。安全芯片内部一般存储用户的机密信息,特别是用户的私有密钥。安全芯片往往是恶意组织或黑客破解的目标,只要安全芯片内机密信息或私钥被破解,安全芯片即可被复制和非法使用。现有研究表明,基于芯片功耗、运行时间、电磁辐射等信息和错误注入的旁路破解、基于芯片反向工程的侵入式物理破解是破解安全芯片的有效手段,现有安全芯片往往缺乏全面的防护措施。为保护安全芯片内部的机密信息或私钥,对其进行加密存储是一种有效手段,但这种措施必然涉及加密密钥及加解密装置自身的安全问题。
因此,如何怎样防止芯片内部加密密钥和加解密电路,被硬件木马或者方向工程等手段破解,是现在需要解决的问题。
发明内容
本发明的目的在于提供一种安全芯片中数据加解密的方法及系统,以防止芯片内部加密密钥和加解密电路,被硬件木马或者方向工程等手段破解。
为实现上述目的,本发明实施例提供了如下技术方案:
一种安全芯片中数据加解密的方法,包括:
根据预设位宽值,将待处理数据切分成位宽为所述预设位宽值的X个数据切片序列;
将所述X个数据切片序列送至加解密模块,通过所述加解密模块对所述X个数据切片序列进行加密处理或解密处理;其中,所述加解密模块和密钥均通过反熔丝查找表标准单元实现;
若检测到所述加解密模块输出有效数据,则对连续输出X周期的数据切片进行采样;其中,所述连续输出X周期的数据切片为与所述待处理数据对应的加密数据或解密数据。
优选的,将所述X个数据切片序列送至加解密模块时,包括:
在输入所述X个数据切片序列时,将输入所述加解密模块的输入数据有效使能信号MIVLD置为高电平,并持续X个周期;
在输入第一个数据切片序列时,将输入所述加解密模块的输入数据序列头标志信号MIHEAD置为高电平,并持续一个周期;
在输入最后一个数据切片序列时,将输入所述加解密模块的输入数据序列尾标志信号MITAIL置为高电平,并持续一个周期;
在输入所述X个数据切片序列时,若对所述X个数据切片进行加密处理,则将输入所述加解密模块的加解密标准信号ENC置为高电平;若对所述X个数据切片进行解密处理,则将输入所述加解密模块的加解密标准信号ENC置为低电平。
优选的,若检测到所述加解密模块输出有效数据,则对连续输出X周期的数据切片进行采样,包括:
所述加解密模块输出X周期的数据切片时,将输出数据有效使能信号MOVLD置为高电平,并持续X个周期;
所述加解密模块输出第一个周期的数据切片时,将输出数据序列头标志信号MOHEAD置为高电平,并持续一个周期;
所述加解密模块输出最后一个周期的数据切片时,将输出数据序列尾标志信号MOTAIL置为高电平,并持续一个周期。
优选的,所述根据预设位宽值,将待处理数据切分成位宽为预设值的X个数据切片序列之前,还包括:
设定固定时钟周期;
其中,在所述输入数据有效使能信号MIVLD置为高电平并持续所述固定时钟周期后,将所述输出数据有效使能信号MOVLD置为高电平,并输出有效的数据切片。
优选的,若最后一个数据切片序列不足所述预设位宽值,则进行加零补位。
一种安全芯片中数据加解密的系统,包括:
数据切片模块,根据预设位宽值,将待处理数据切分成位宽为所述预设位宽值的X个数据切片序列;
加解密模块,用于对所述X个数据切片序列进行加密处理或解密处理;其中,所述加解密模块和密钥均通过反熔丝查找表标准单元实现;
采样模块,用于当检测到所述加解密模块输出有效数据时,对连续输出X周期的数据切片进行采样;其中,所述连续输出X周期的数据切片为与所述待处理数据对应的加解密数据或解密数据。
优选的,所述加解密模块,包括:
第一接收单元,用于在输入所述X个数据切片序列时,接收持续X个周期高电平的输入数据有效使能信号MIVLD;
第二接收单元,用于在输入第一个数据切片序列时,接收持续一个周期的输入数据序列头标志信号MIHEAD;
第三接收单元,用于在输入最后一个数据切片序列时,接收持续一个周期的将输入数据序列尾标志信号MITAIL;
第四接收单元,用于在对所述X个数据切片序列进行加密处理时,接收高电平加解密标准信号ENC;在对所述X个数据切片序列进行解密处理时,接收低电平加解密标准信号NEC。
优选的,所述加解密模块,包括:
第一输出设置单元,用于在所述加解密模块输出X周期的数据切片时,将输出数据有效使能信号MOVLD设置为高电平,并持续X个周期;
第二输出设置单元,用于在所述加解密模块输出第一个周期的数据切片时,将输出数据序列头标志信号MOHEAD设置为高电平,并持续一个周期;
第三输出设置单元,用于在所述加解密模块输出最后一个周期的数据切片时,将输出数据序列尾标志信号MOTAIL设置为高电平,并持续一个周期。
优选的,所述加解密模块还包括:
时钟设定模块,用于设定固定时钟周期;
其中,在所述输入数据有效使能信号MIVLD置为高电平并持续所述固定时钟周期后,将所述输出数据有效使能信号MOVLD置为高电平,并输出有效的数据切片。
优选的,所述数据切片模块,包括:
补位单元,用于当最后一个数据切片序列不足所述预设位宽值,则进行加零补位。
通过以上方案可知,本发明实施例提供的一种安全芯片中数据加解密的方法及系统,包括:根据预设位宽值,将待处理数据切分成位宽为所述预设位宽值的X个数据切片序列;将所述X个数据切片序列送至加解密模块,通过所述加解密模块对所述X个数据切片序列进行加密处理或解密处理;其中,所述加解密模块和密钥均通过反熔丝查找表标准单元实现;若检测到所述加解密模块输出有效数据,则对连续输出X周期的数据切片进行采样;其中,所述连续输出X周期的数据切片为与所述待处理数据对应的加密数据或解密数据。由于本实施例中的加解密模块中的加解密算法逻辑电路和密钥均由反熔丝查找表标准单元实现,且反熔丝电路在编程之后不具有可逆性,且只能编程一次,即使运用反向工程也无法破解反熔丝电路在编程之后的状态,因此,本实施例能防止芯片内部加密密钥和加解密电路,被硬件木马或者方向工程等手段破解,保证了数据的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例公开的一种安全芯片中数据加解密的方法流程示意图;
图2为本发明实施例公开的数据加密过程时序图;
图3为本发明实施例公开的数据解密过程时序图;
图4为本发明实施例公开的一种安全芯片中数据加解密的系统结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种安全芯片中数据加解密的方法及系统,以防止芯片内部加密密钥和加解密电路,被硬件木马或者方向工程等手段破解。
参见图1,本发明实施例提供的一种安全芯片中数据加解密的方法,包括:
S101、根据预设位宽值,将待处理数据切分成位宽为所述预设位宽值的X个数据切片序列;
S102、将所述X个数据切片序列送至加解密模块,通过所述加解密模块对所述X个数据切片序列进行加密处理或解密处理;其中,所述加解密模块和密钥均通过反熔丝查找表标准单元实现;
具体的,在本实施例中,加解密模块采用对称密码算法实现数据加解密,所涉及的密码算法既可以是公开的标准密码算法,也可以是芯片设计者指定的非公开密码算法。此处所指对称密码算法指的是加密和解密都使用同一个密钥的算法,既包括诸如AES的分组密码算法,也包括诸如RC4的流密码算法。下面将加解密模块所采用的密码算法记为S,密钥为K。对于同一批次制造的芯片而言,每个芯片中加解密模块,即加解密模块的密码算法都是相同的,但是每个芯片的密钥是各不相同的。从逻辑功能角度看,加解密模块由两部分组成:算法S对应的逻辑电路、以及密钥K。在本实施例中,这两部分都由反熔丝查找表标准单元实现。
优选的,将所述X个数据切片序列送至加解密模块时,包括:
在输入所述X个数据切片序列时,将输入所述加解密模块的输入数据有效使能信号MIVLD置为高电平,并持续X个周期;在输入第一个数据切片序列时,将输入所述加解密模块的输入数据序列头标志信号MIHEAD置为高电平,并持续一个周期;
在输入最后一个数据切片序列时,将输入所述加解密模块的输入数据序列尾标志信号MITAIL置为高电平,并持续一个周期;
在输入所述X个数据切片序列时,若对所述X个数据切片进行加密处理,则将输入所述加解密模块的加解密标准信号ENC置为高电平;若对所述X个数据切片进行解密处理,则将输入所述加解密模块的加解密标准信号ENC置为低电平。
优选的,若检测到所述加解密模块输出有效数据,则对连续输出X周期的数据切片进行采样,包括:
所述加解密模块输出X周期的数据切片时,将输出数据有效使能信号MOVLD置为高电平,并持续X个周期;
所述加解密模块输出第一个周期的数据切片时,将输出数据序列头标志信号MOHEAD置为高电平,并持续一个周期;
所述加解密模块输出最后一个周期的数据切片时,将输出数据序列尾标志信号MOTAIL置为高电平,并持续一个周期。
在本实施例中,数据加解密模块与加解密操作相关的输入有:输入数据有效使能信号MIVLD、输入数据序列头标志信号MIHEAD、输入数据序列尾标志信号MITAIL、加解密标准信号ENC、W位宽的输入数据切片信号MI,其中W为大于1的整数,即加解密算法的数据分组位宽。需要说明的是,本实施例中的与加解密相关的输入信号相当于一个控制信号,例如当输入信号MIVLD变为高电平时,即说明有效数据输入。
具体的,当MIVLD为高电平时,表明MI为有效输入数据;在没有有效输入数据切片时,MIVLD为低电平;其中,输入一个数据切片时,MIVLD维持一个时钟周期;MIHEAD维持一个时钟周期高电平时,表明输入第一个数据切片;MITAIL维持一个时钟周期高电平时,表明输入最后一个数据切片;如果MIHEAD和MITAIL同时为高电平,则输入数据序列只有一个数据切片即当前输入的MI只有一个数据切片;如果ENC为高电平时,则表明需要对输入数据序列进行加密,反之对输入数据序列进行解密,且在一个输入数据序列未处理完之前,ENC不得变化。
数据加解密模块与加解密操作相关的输出有:输出数据有效使能信号MOVLD、输出数据序列头标志信号MOHEAD、输出数据序列尾标志信号MOTAIL、W位宽的输出数据切片信号MO。
具体的,当MOVLD为高电平时,表明MO为有效输出数据;输出一个数据切片时,MOVLD维持一个时钟周期时,在没有有效输出数据切片时,MOVLD为低电平;MOHEAD为维持一个时钟周期高电平时,表明MO为输出数据序列的第一个切片;MOTAIL为维持一个时钟周期高电平时,表明MO为输出数据序列的最后一个切片;如果MOHEAD和MOTAIL同时为高电平时,则输出数据序列只有一个分组即当前输出MO。
优选的,所述根据预设位宽值,将待处理数据切分成位宽为预设值的X个数据切片序列之前,还包括:
设定固定时钟周期;
其中,在所述输入数据有效使能信号MIVLD置为高电平并持续所述固定时钟周期后,将所述输出数据有效使能信号MOVLD置为高电平,并输出有效的数据切片。
具体的,数据加解密模块具有固定的加解密操作延时,即当MIVLD为高电平时,固定经过P个时钟周期,MOVLD为高电平并输出有效的数据切片,这里P为大于1的正整数。
S103、若检测到所述加解密模块输出有效数据,则对连续输出X周期的数据切片进行采样;其中,所述连续输出X周期的数据切片为与所述待处理数据对应的加密数据或解密数据。
具体的,在本实施例中,数据加解密模块的功能表述为:
(MOn-1,…,MO1,MO0)=S(K,ENC,{MIn-1,…,MI1,MI0}),其中n为大于0的正整数,表示数据序列的分组数。在输入各个数据切片时,MIVLD均为高电平且维持一个时钟周期;在输入切片MI0时,MIHEAD为高电平且维持一个时钟周期,在输入切片MIn-1时,MITAIL为高电平且维持一个时钟周期。在输出各个数据切片时,MOVLD为高电平且维持一个时钟周期;在输出MO0时,MOHEAD为高电平且维持一个时钟周期,在输出MOn-1时,MOTAIL为高电平且维持一个时钟周期。
优选的,若最后一个数据切片序列不足所述预设位宽值,则进行加零补位。
参见图2,为发明实施例提供数据加密过程时序图,若需要对明文数据M进行加密,则S101可以具体理解为:
将明文数据M切分成位宽为W的数据切片,切分后的数据序列记为Mx-1,…,M1,M0,其中x=[m/M],m为M的位宽,如果m不是W的整数倍,则最后一个切片Mx-1需要补足(xW-m)位的0。
S102可以具体理解为:
将输入数据序列送给加解密模块:置ENC为1,MIVLD为1并连续保持x个时钟周期,依次将Mx-1,…,M1,M0输入,在输入M0时将MIHEAD置为1并维持1个时钟周期,在输入Mx-1时将MITAIL置为1并维持1个时钟周期。
S103可以具体理解为:
检测输出数据有效信号MOVLD,在MIVLD有效之后的P个时钟周期后,MOVLD跳变为高电平,此时对输出信号MO进行采样,连续采样x个时钟周期,x个周期的输出数据切片即为加密之后的密文数据序列。
参见图3,为发明实施例提供数据解密过程时序图,若需要对密文数据C进行解密,则S101可以具体理解为:
将密文数据C切分成位宽为W的数据切片,切分后的数据序列记为Cy-1,…,C1,C0,其中y=[c/W],c为C的位宽且为W的整数倍。
S102可以具体理解为:
将输入数据序列送给加解密模块:置ENC为0,MIVLD为1并连续保持y个时钟周期,依次将Cy-1,…,C1,C0输入,在输入C0时将MIHEAD置为1并维持1个时钟周期,在输入Cy-1时将MITAIL置为1并维持1个时钟周期。
S103可以具体理解为:
检测输出数据有效信号MOVLD,在MIVLD有效之后的P个时钟周期后,MOVLD跳变为高电平,此时对输出信号MO进行采样,连续采样y个时钟周期,y个周期的输出数据切片即为解密之后的明文数据序列。
具体的,在本实施例中,首先将密码算法功能模块对应的RTL代码综合成反熔丝查找表标准单元的网表;同样将位宽为k的密钥K转换成k个1输入反熔丝查找表标准单元的集合,其中k为大于1的正整数,具体的值取决于密码算法S的需求。然后,为所有的反熔丝查找表标准单元增加统一的编程控制电路,按照常规的版图设计流程得出符合目标工艺的GDS版图,在硅后对芯片中所有反熔丝查找表标准单元进行编程,将密码算法S对应的电路功能具体化,并为每个芯片设置不同的密钥K。
即本实施例中的数据加解密模块,即芯片设计者将选定的密码算法转换为反熔丝查找表标准单元的电路,此处所指密码算法可以是通用的标准密码算法,也可以是芯片设计者私有密码算法;除密码算法电路之外,将密钥同样转化为反熔丝查找表标准单元的电路,而非存储于常规的片内非易失存储器如FLASH或EEPROM中;在硅后,芯片设计者对芯片进行编程以注入密钥,并将密码算法对应的电路功能具体化。
具体的,本实施例中的基于反熔丝查找表的标准单元及其电路具有良好的安全属性,主要表现在:芯片需要在硅后对反熔丝查找表进行编程才能最终完成芯片逻辑功能的具体实现,在芯片版图设计和制造过程中,除芯片设计者之外的任何实体无法准确获知芯片的具体功能,因此很难在此过程中插入针对性的木马或后门电路;另外,通过反向工程破解很难获知反熔丝可编程单元的状态,从而可以有效保护反熔丝查找表标准单元及其电路的状态信息。
本发明实施例提供的一种安全芯片中数据加解密的方法,包括:根据预设位宽值,将待处理数据切分成位宽为所述预设位宽值的X个数据切片序列;将所述X个数据切片序列送至加解密模块,通过所述加解密模块对所述X个数据切片序列进行加密处理或解密处理;其中,所述加解密模块和密钥均通过反熔丝查找表标准单元实现;若检测到所述加解密模块输出有效数据,则对连续输出X周期的数据切片进行采样;其中,所述连续输出X周期的数据切片为与所述待处理数据对应的加密数据或解密数据。由于本实施例中的加解密模块中的加解密算法逻辑电路和密钥均由反熔丝查找表标准单元实现,且反熔丝电路在编程之后不具有可逆性,且只能编程一次,即使运用反向工程也无法破解反熔丝电路在编程之后的状态,因此,本实施例能防止芯片内部加密密钥和加解密电路,被硬件木马或者方向工程等手段破解,保证了数据的安全性。
参见图4,本发明实施例提供的一种安全芯片中数据加解密的系统,包括:
数据切片模块100,根据预设位宽值,将待处理数据切分成位宽为所述预设位宽值的X个数据切片序列;
加解密模块200,用于对所述X个数据切片序列进行加密处理或解密处理;其中,所述加解密模块和密钥均通过反熔丝查找表标准单元实现;
采样模块300,用于当检测到所述加解密模块输出有效数据时,对连续输出X周期的数据切片进行采样;其中,所述连续输出X周期的数据切片为与所述待处理数据对应的加解密数据或解密数据。
优选的,在本发明的另一实施例中,所述加解密模块200,包括:
第一接收单元,用于在输入所述X个数据切片序列时,接收持续X个周期高电平的输入数据有效使能信号MIVLD;
第二接收单元,用于在输入第一个数据切片序列时,接收持续一个周期的输入数据序列头标志信号MIHEAD;
第三接收单元,用于在输入最后一个数据切片序列时,接收持续一个周期的将输入数据序列尾标志信号MITAIL;
第四接收单元,用于在对所述X个数据切片序列进行加密处理时,接收高电平加解密标准信号ENC;在对所述X个数据切片序列进行解密处理时,接收低电平加解密标准信号ENC。
优选的,在本发明的另一实施例中,所述加解密模块,包括:
第一输出设置单元,用于在所述加解密模块输出X周期的数据切片时,将输出数据有效使能信号MOVLD设置为高电平,并持续X个周期;
第二输出设置单元,用于在所述加解密模块输出第一个周期的数据切片时,将输出数据序列头标志信号MOHEAD设置为高电平,并持续一个周期;
第三输出设置单元,用于在所述加解密模块输出最后一个周期的数据切片时,将输出数据序列尾标志信号MOTAIL设置为高电平,并持续一个周期。
优选的,在本发明的另一实施例中,所述加解密模块还包括:
时钟设定模块,用于设定固定时钟周期;
其中,在所述输入数据有效使能信号MIVLD置为高电平并持续所述固定时钟周期后,将所述输出数据有效使能信号MOVLD置为高电平,并输出有效的数据切片。
优选的,在本发明的另一实施例中,所述数据切片模块,包括:
补位单元,用于当最后一个数据切片序列不足所述预设位宽值,则进行加零补位。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (6)

1.一种安全芯片中数据加解密的方法,其特征在于,包括:
根据预设位宽值,将待处理数据切分成位宽为所述预设位宽值的X个数据切片序列;
将所述X个数据切片序列送至加解密模块,通过所述加解密模块对所述X个数据切片序列进行加密处理或解密处理;其中,所述加解密模块和密钥均通过反熔丝查找表标准单元实现;
若检测到所述加解密模块输出有效数据,则对连续输出X周期的数据切片进行采样;其中,所述连续输出X周期的数据切片为与所述待处理数据对应的加密数据或解密数据;
其中,将所述X个数据切片序列送至加解密模块时,包括:
在输入所述X个数据切片序列时,将输入所述加解密模块的输入数据有效使能信号MIVLD置为高电平,并持续X个周期;
在输入第一个数据切片序列时,将输入所述加解密模块的输入数据序列头标志信号MIHEAD置为高电平,并持续一个周期;
在输入最后一个数据切片序列时,将输入所述加解密模块的输入数据序列尾标志信号MITAIL置为高电平,并持续一个周期;
在输入所述X个数据切片序列时,若对所述X个数据切片进行加密处理,则将输入所述加解密模块的加解密标准信号ENC置为高电平;若对所述X个数据切片进行解密处理,则将输入所述加解密模块的加解密标准信号ENC置为低电平;
若检测到所述加解密模块输出有效数据,则对连续输出X周期的数据切片进行采样,包括:
所述加解密模块输出X周期的数据切片时,将输出数据有效使能信号MOVLD置为高电平,并持续X个周期;
所述加解密模块输出第一个周期的数据切片时,将输出数据序列头标志信号MOHEAD置为高电平,并持续一个周期;
所述加解密模块输出最后一个周期的数据切片时,将输出数据序列尾标志信号MOTAIL置为高电平,并持续一个周期。
2.根据权利要求1所述的方法,其特征在于,所述根据预设位宽值,将待处理数据切分成位宽为预设值的X个数据切片序列之前,还包括:
设定固定时钟周期;
其中,在所述输入数据有效使能信号MIVLD置为高电平并持续所述固定时钟周期后,将所述输出数据有效使能信号MOVLD置为高电平,并输出有效的数据切片。
3.根据权利要求1或2所述的方法,其特征在于,若最后一个数据切片序列不足所述预设位宽值,则进行加零补位。
4.一种安全芯片中数据加解密的系统,其特征在于,包括:
数据切片模块,根据预设位宽值,将待处理数据切分成位宽为所述预设位宽值的X个数据切片序列;
加解密模块,用于对所述X个数据切片序列进行加密处理或解密处理;其中,所述加解密模块和密钥均通过反熔丝查找表标准单元实现;
采样模块,用于当检测到所述加解密模块输出有效数据时,对连续输出X周期的数据切片进行采样;其中,所述连续输出X周期的数据切片为与所述待处理数据对应的加解密数据或解密数据;
其中,所述加解密模块,包括:
第一接收单元,用于在输入所述X个数据切片序列时,接收持续X个周期高电平的输入数据有效使能信号MIVLD;
第二接收单元,用于在输入第一个数据切片序列时,接收持续一个周期的输入数据序列头标志信号MIHEAD;
第三接收单元,用于在输入最后一个数据切片序列时,接收持续一个周期的将输入数据序列尾标志信号MITAIL;
第四接收单元,用于在对所述X个数据切片序列进行加密处理时,接收高电平加解密标准信号ENC;在对所述X个数据切片序列进行解密处理时,接收低电平加解密标准信号ENC;
其中,所述加解密模块,包括:
第一输出设置单元,用于在所述加解密模块输出X周期的数据切片时,将输出数据有效使能信号MOVLD设置为高电平,并持续X个周期;
第二输出设置单元,用于在所述加解密模块输出第一个周期的数据切片时,将输出数据序列头标志信号MOHEAD设置为高电平,并持续一个周期;
第三输出设置单元,用于在所述加解密模块输出最后一个周期的数据切片时,将输出数据序列尾标志信号MOTAIL设置为高电平,并持续一个周期。
5.根据权利要求4所述的系统,其特征在于,所述加解密模块还包括:
时钟设定模块,用于设定固定时钟周期;
其中,在所述输入数据有效使能信号MIVLD置为高电平并持续所述固定时钟周期后,将所述输出数据有效使能信号MOVLD置为高电平,并输出有效的数据切片。
6.根据权利要求4或5所述的系统,其特征在于,所述数据切片模块,包括:
补位单元,用于当最后一个数据切片序列不足所述预设位宽值,则进行加零补位。
CN201510645937.9A 2015-10-08 2015-10-08 一种安全芯片中数据加解密的方法及系统 Active CN105095793B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510645937.9A CN105095793B (zh) 2015-10-08 2015-10-08 一种安全芯片中数据加解密的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510645937.9A CN105095793B (zh) 2015-10-08 2015-10-08 一种安全芯片中数据加解密的方法及系统

Publications (2)

Publication Number Publication Date
CN105095793A CN105095793A (zh) 2015-11-25
CN105095793B true CN105095793B (zh) 2018-03-23

Family

ID=54576192

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510645937.9A Active CN105095793B (zh) 2015-10-08 2015-10-08 一种安全芯片中数据加解密的方法及系统

Country Status (1)

Country Link
CN (1) CN105095793B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201609781D0 (en) * 2016-06-03 2016-07-20 Irdeto Bv Secured chip

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5295188A (en) * 1991-04-04 1994-03-15 Wilson William J Public key encryption and decryption circuitry and method
US5548648A (en) * 1994-04-05 1996-08-20 International Business Machines Corporation Encryption method and system
CN101155296A (zh) * 2006-09-29 2008-04-02 中国科学技术大学 数据传输的方法
CN101281496A (zh) * 2007-04-02 2008-10-08 北京华旗资讯数码科技有限公司 加密型移动存储装置
CN102609368A (zh) * 2012-01-11 2012-07-25 记忆科技(深圳)有限公司 固态硬盘数据加解密的方法及其固态硬盘

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5295188A (en) * 1991-04-04 1994-03-15 Wilson William J Public key encryption and decryption circuitry and method
US5548648A (en) * 1994-04-05 1996-08-20 International Business Machines Corporation Encryption method and system
CN101155296A (zh) * 2006-09-29 2008-04-02 中国科学技术大学 数据传输的方法
CN101281496A (zh) * 2007-04-02 2008-10-08 北京华旗资讯数码科技有限公司 加密型移动存储装置
CN102609368A (zh) * 2012-01-11 2012-07-25 记忆科技(深圳)有限公司 固态硬盘数据加解密的方法及其固态硬盘

Also Published As

Publication number Publication date
CN105095793A (zh) 2015-11-25

Similar Documents

Publication Publication Date Title
WO2018046008A1 (zh) 一种区块链加密射频芯片存储设计方法
US7606362B1 (en) FPGA configuration bitstream encryption using modified key
CN105144626B (zh) 提供安全性的方法和设备
ES2773950T3 (es) Sistema informático asegurado con autenticación asíncrona
CN109245881A (zh) 一种照片视频云端加密存储方法
CN101051892B (zh) 一种cpu专用数据的加密装置及方法
CN106372519A (zh) 一种信息加密方法及装置
CN105099652B (zh) 数据加密、解密方法和装置
CN101329658A (zh) 加密、解密方法,及应用所述方法的plc系统
US8687813B2 (en) Methods circuits devices and systems for provisioning of cryptographic data to one or more electronic devices
CN102355352A (zh) 一种数据机密性和完整性保护方法
CN106295407A (zh) 一种检测文件是否被篡改的方法及装置
JP7087172B2 (ja) Pqaロック解除
CN103684765A (zh) 管理系统中加密、解密数据的方法及装置
CN105138870A (zh) 一种芯片合法性鉴别方法及装置
US20160173282A1 (en) Key Management For On-The-Fly Hardware Decryption Within Integrated Circuits
CN105357004B (zh) 一种医疗隐私数据自加密及解密的方法
CN109510702A (zh) 一种基于计算机特征码的密钥存储及使用的方法
CN105095793B (zh) 一种安全芯片中数据加解密的方法及系统
CN103347017A (zh) 数据处理方法和片上系统
Birleanu et al. Reconfigurable computing in hardware security. A brief review and application
CN105827388A (zh) 用于用密码处理数据的方法
CN103457721B (zh) 一种批量生成密码的方法及装置
US8379850B1 (en) Method and integrated circuit for secure encryption and decryption
CN104866738A (zh) 一种程序代码保护方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant