CN1996830B - 具有高级加密标准核的集成电路及验证该标准核的外包 - Google Patents

具有高级加密标准核的集成电路及验证该标准核的外包 Download PDF

Info

Publication number
CN1996830B
CN1996830B CN2006101701061A CN200610170106A CN1996830B CN 1996830 B CN1996830 B CN 1996830B CN 2006101701061 A CN2006101701061 A CN 2006101701061A CN 200610170106 A CN200610170106 A CN 200610170106A CN 1996830 B CN1996830 B CN 1996830B
Authority
CN
China
Prior art keywords
aes
plain text
key
integrated circuit
encoder
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.)
Expired - Fee Related
Application number
CN2006101701061A
Other languages
English (en)
Other versions
CN1996830A (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.)
DB HiTek Co Ltd
Original Assignee
Dongbu Electronics 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 Dongbu Electronics Co Ltd filed Critical Dongbu Electronics Co Ltd
Publication of CN1996830A publication Critical patent/CN1996830A/zh
Application granted granted Critical
Publication of CN1996830B publication Critical patent/CN1996830B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/26Testing cryptographic entity, e.g. testing integrity of encryption key or encryption algorithm

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开一种具有高级加密标准(AES)核的集成电路。该集成电路包括:编码器,使用具有预定长度的第一密钥来加密输入的纯文本;解码器,使用具有预定长度的第二密钥来解密从所述编码器输入的加密文本;和比较器,将从所述编码器输入的纯文本与从所述解码器输出的纯文本进行比较,并输出比较结果。

Description

具有高级加密标准核的集成电路及验证该标准核的外包
技术领域
本发明涉及一种集成电路。更具体地,本发明涉及一种具有高级加密标准(AES)知识产权(IP)核的集成电路,以及一种用于验证AES IP核性能的自测试外包(wrapper)。
背景技术
由于近来技术的发展,专用集成电路(ASIC)已经从系统级芯片(SoC)领域发展到包含多个内核和总线以及至少100,000个逻辑门的超系统级芯片(SSoC)领域。这通过可再用的知识产权(IP)核而成为可能。
这些IP核的实例是在硬件中实施Rindael算法的高级加密标准(AES)IP核,这种Rindael算法是由美国国家标准与技术研究所(NIST)于2001年11月26日所采用的。Rindael算法或AES算法使用对称密码块来加密或解密信息。
这里,加密指的是将预定数据转换为难以对该数据进行分析的加密文本。解密指的是将加密文本转换为初始数据、即纯文本。此时,使用加密算法来执行加密和解密,该加密算法为用于在计算机上保护电子数据的联邦信息处理标准(FIPS)所通过的算法。AES算法可使用128、192或256位长的密钥来加密或解密128位数据。
同时,ASIC厂商将这种AES IP核集成到电路中,从而制造SoC。然后,厂商检查核的性能,以测试SoC的性能。可通过外包来测试每个核。这里,外包指的是在每个核的周围形成的多个存储器(storage)。通过外包将数据输入至每个核中以测试性能,并通过外包输出来自每个核的输出数据。
图1是为了处理128位长数据而使用128位密钥的传统AES IP核的框图。如上所述,AES IP核可使用128、192或256位长的密钥来加密。Rijndal算法被设计用于128或更多位的数据,以及通过重复使用加密块而用于具有128或更多位长度的密钥,而FIPS受限为使得AES IP核可使用128、192或256位长的密钥来对128位数据进行加密。
参照图1,AES IP核10包括编码器200和解码器300。编码器200接收128位纯文本,并将接收的纯文本加密为128位加密文本。解码器300从编码器200接收加密文本,并将加密文本解码为128位纯文本。换句话说,图1中所示的AES IP核10具有使用相同密钥的对称结构,并使用128位长的密钥来加密和解密128位数据。
编码器200和解码器300可以彼此分离在不同区域上,如图1所示,但是它们一般被合并在一个IP核中。
图2和图3示出图1中所示的编码器和解码器的详细结构。
首先,参照作为编码器框图的图2,为了执行加密,编码器200包括:控制器201、密钥扩展模块210、初始排列(permutation)模块220、循环(round)排列模块230和最终排列模块240。循环排列模块230在内部形成用于循环的环路。例如,在128位长的密钥的情况下,循环排列模块230重复十次128位长的密钥。如图所示,循环排列模块230使用经密钥扩展模块210输入的密钥来加密和输出经初始排列模块220输入的数据。
接下来,参照作为解码器框图的图3,为了执行解密,解码器300包括:控制器301、密钥扩展模块310、密钥转换缓冲器(inverting buffer)315、初始排列模块320、循环排列模块330和最终排列模块340。密钥转换缓冲器315首先存储所有循环的密钥,并以相反顺序输出对于每个解密循环所存储的密钥。这里,与图2的循环排列模块类似,循环排列模块330在内部形成用于循环的环路。例如,在128位长的密钥的情况下,循环排列模块330重复十次128位长的密钥。
然而,包括AES IP核的传统IP核具有多个输入/输出(I/O)接口,从而它们由于管脚数量的限制而具有AES IP核的性能验证的限制。为此,需要一种能够在解决管脚数量的物理限制的同时验证AES IP核的方法。
发明内容
因此,本发明旨在提供一种集成电路,其能够包括用于测试高级加密标准(AES)知识产权(IP)核的外包,以执行自测试。
另外,本发明的目的在于提供一种用于自测试AES IP核的外包。
根据本发明的第一实施例,提供一种具有高级加密标准(AES)核的集成电路,该集成电路包括:编码器,使用具有预定长度的第一密钥来对输入的纯文本加密;解码器,使用具有预定长度的第二密钥来对从所述编码器输入的加密文本解密;和比较器,将从所述编码器输入的纯文本与从所述解码器输出的纯文本进行比较,并输出比较结果。
优选地,所述集成电路具有三个1位输入信号和两个1位输出信号。所述三个输入信号包括:时钟信号、重置信号和运行信号。所述两个输出信号包括:第一信号,表示AES核的运行状态;和第二信号,表示在数据加密和解密期间产生的错误状态。
根据本发明的第二实施例,提供一种验证高级加密标准(AES)核的外包,其中AES核具有:编码器,接收第一纯文本以创建加密文本;和解码器,将从所述编码器输入的加密文本解密为第二纯文本。该外包包括:比较器,将所述编码器的纯文本与由所述解码器解密的纯文本进行比较,并输出比较结果;和AES产生器,产生输入至所述编码器和解码器的密钥,并提供输入至所述编码器和比较器的纯文本。
优选地,AES核包括:三个输入信号,即时钟信号、重置信号和运行信号;以及两个输出信号,即第一信号和第二信号,所述第一信号表示AES核的运行状态,所述第二信号表示在数据加密和解密期间产生的错误状态。
附图说明
图1是传统高级加密标准(AES)知识产权(IP)核的框图;
图2是图1中所示的编码器的详细框图;
图3是图1中所示的解码器的详细框图;及
图4是根据本发明实施例的AES IP核的框图。
具体实施方式
以下,将参照附图描述根据本发明典型实施例的具有高级加密标准(AES)核和验证AES核的外包的集成电路。
图4是根据本发明实施例的AES知识产权(IP)核的框图。如图4所示,除了图1所示的编码器200和解码器300之外,AES IP核400还包括:AES产生器410和比较器420。
如图4所示,编码器200的输出端直接连接至解码器300的输入端。编码器200和解码器300都使用具有相同长度的密钥。优选地,密钥具有128位、192位和256位中的任一长度。
此时,在AES IP核400中仅使用一种密钥,并且所使用的密钥具有不变的值。在一实施例中,通过基于Verilog语言的参数声明对密钥分配128’hABCD_ABCD_ABCD_ABCD_ABCD_ABCD_ABCD_ABCD。
当AES IP核400被重置时,将密钥值加载到计数器405中。计数器405从0(空)至最大值(即,128)重复计数,并用于将128位纯文本输入至编码器200中。
编码器200加密从计数器输入的128位纯文本,并创建与纯文本具有相同大小的加密文本。解码器300将加密文本解密为与加密文本具有相同大小的纯文本。
AES产生器410向编码器200和解码器300提供具有相同长度的密钥,并向编码器200和随后将描述的比较器420提供具有相同大小的纯文本。优选地,AES IP核400具有三个1位输入信号和两个1位输出信号;所述三个输入信号包括:时钟信号、重置信号和运行信号。
此时,在同时将时钟信号和开始信号施加于AES产生器410从而启动AES产生器410的运行的情况下,AES产生器410向编码器200和解码器300提供密钥,并向编码器200和比较器420提供纯文本。
另外,在AES产生器410由于错误而停止运行之后施加重置信号的情况下,AES产生器410通过提供密钥和纯文本而重新开始运行。
同时,在AES IP核400正常加密和解密数据的情况下,AES产生器410产生通知AES IP核400处于激活状态的第一信号,并向外部提供该第一信号。
比较器420接收从计数器输入至编码器200的纯文本,并将接收的纯文本与从解码器300输出的纯文本进行比较。作为比较的结果,当确定出现错误时,比较器420向外部输出通知该结果的第二信号。在这种情况下,AES IP核400停止运行,并执行重置操作,从而再次执行其运行。
在如上所述的实施例中,包括AES产生器410和比较器420的外包形成在包括编码器200和解码器300的IP核周围。因此,能够验证AES IP核400是否执行正常运行。
由上可以看出,根据本发明,与AES IP核一起形成有能够验证AES IP核性能的测试外包,从而可以在克服管脚数量限制的同时对AES IP核的性能进行测试。
另外,根据本发明,可以容易地制造包括AES IP核的ASIC芯片。
尽管参照本发明典型实施例已经示出并描述了本发明,但是所属领域技术人员可以理解的是,在不脱离由所附权利要求所限定的本发明的精神和范围的情况下,可以对其在形式和细节上进行各种改变。

Claims (18)

1.一种具有高级加密标准AES核的集成电路,该集成电路包括:
编码器,构造为使用第一密钥来对输入的纯文本加密,以产生加密文本;
解码器,构造为使用第二密钥来对所述加密文本解密,以产生解密纯文本;
比较器,构造为将所述输入的纯文本与所述解密纯文本进行比较,并输出比较结果;和
AES产生器,构造为产生所述第一密钥和所述第二密钥,并产生所述输入的纯文本;
其中,所述AES产生器将具有相同长度的密钥提供给所述编码器和所述解码器,且所述AES产生器将具有相同大小的纯文本提供给所述编码器和所述比较器。
2.根据权利要求1所述的集成电路,其中每个密钥具有128位、192位和256位中的任一长度。
3.根据权利要求1所述的集成电路,其中所述AES产生器还包括:计数器,将所述输入的纯文本输入至所述编码器和比较器。
4.根据权利要求3所述的集成电路,其中所述计数器从0至根据每个纯文本的数据大小所确定的值重复计数。
5.根据权利要求1所述的集成电路,其中所述集成电路具有三个1位输入信号和两个1位输出信号,其中所述三个输入信号包括:时钟信号、重置信号和运行信号,且所述两个输出信号包括:第一信号,表示所述AES核的运行状态;和第二信号,表示在加密和/或解密期间产生的错误状态。
6.根据权利要求5所述的集成电路,其中所述AES产生器还构造为当同时将所述时钟信号和开始信号施加于所述AES产生器从而启动AES产生器的运行时,所述AES产生器向所述编码器和解码器提供所述密钥,并向所述编码器和比较器提供所述纯文本。
7.根据权利要求6所述的集成电路,其中当在所述AES产生器由于错误而停止运行之后施加所述重置信号时,所述AES产生器通过提供所述密钥和纯文本而重新开始运行。
8.根据权利要求5所述的集成电路,其中在AES核正常执行数据加密和解密时,所述AES产生器产生通知AES核处于激活状态的第一信号,并向外部提供所述第一信号。
9.根据权利要求5所述的集成电路,其中所述比较器还构造为接收输入的纯文本,将接收的纯文本与解密纯文本进行比较,并且在比较结果确定出现错误时,向外部输出对应于该比较结果的第二信号。
10.根据权利要求1所述的集成电路,其中输入的纯文本和解密纯文本包括128位数据。
11.根据权利要求1所述的集成电路,其中所述第一密钥等同于所述第二密钥。
12.根据权利要求1所述的集成电路,其中所述编码器还构造为根据高级加密标准AES对纯文本加密,且所述解码器还构造为根据AES对所述加密文本解密。
13.一种验证高级加密标准AES核的外包,所述AES核具有:编码器,构造为使用第一密钥来对输入的纯文本加密,以产生加密文本;和解码器,构造为使用第二密钥来对所述加密文本解密,以产生解密纯文本,该外包包括:
比较器,构造为将输入的纯文本与所述解密纯文本进行比较,并输出比较结果;和
AES产生器,构造为产生所述第一密钥和所述第二密钥,并产生所述输入的纯文本;
其中,所述AES产生器将具有相同长度的密钥提供给所述编码器和所述解码器,且所述AES产生器将具有相同大小的纯文本提供给所述编码器和所述比较器。
14.根据权利要求13所述的外包,其中每个密钥具有128位、192位和256位中的任一长度。
15.根据权利要求13所述的外包,其中所述AES产生器还包括:计数器,将所述输入的纯文本输入至所述编码器和比较器。
16.根据权利要求15所述的外包,其中所述计数器从0至根据每个纯文本的数据大小所确定的值重复计数。
17.根据权利要求13所述的外包,其中AES核包括:三个输入信号,即时钟信号、重置信号和运行信号;以及两个输出信号,即第一信号和第二信号,所述第一信号表示AES核的运行状态,所述第二信号表示在加密和/或解密期间产生的错误状态。
18.根据权利要求13所述的外包,其中所述编码器还构造为根据高级加密标准AES对纯文本加密,且所述解码器还构造为根据AES对所述加密文本解密。
CN2006101701061A 2005-12-28 2006-12-22 具有高级加密标准核的集成电路及验证该标准核的外包 Expired - Fee Related CN1996830B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2005-0132663 2005-12-28
KR1020050132663 2005-12-28
KR1020050132663A KR100720525B1 (ko) 2005-12-28 2005-12-28 Aes코어를 포함하는 집적회로 및 aes코어 검증용래퍼

Publications (2)

Publication Number Publication Date
CN1996830A CN1996830A (zh) 2007-07-11
CN1996830B true CN1996830B (zh) 2010-09-22

Family

ID=38193750

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006101701061A Expired - Fee Related CN1996830B (zh) 2005-12-28 2006-12-22 具有高级加密标准核的集成电路及验证该标准核的外包

Country Status (3)

Country Link
US (1) US20070147604A1 (zh)
KR (1) KR100720525B1 (zh)
CN (1) CN1996830B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8879725B2 (en) * 2008-02-29 2014-11-04 Intel Corporation Combining instructions including an instruction that performs a sequence of transformations to isolate one transformation
US9544133B2 (en) * 2009-12-26 2017-01-10 Intel Corporation On-the-fly key generation for encryption and decryption
KR20120096969A (ko) * 2011-02-24 2012-09-03 삼성전자주식회사 암복호화 장치 및 이를 포함하는 시스템
US9619610B1 (en) * 2015-10-01 2017-04-11 Altera Corporation Control block size reduction through IP migration in an integrated circuit device
CN105933106B (zh) * 2016-04-08 2019-03-05 广东工业大学 基于aes的网络信息加密ip核的设计与实现方法
CN110502360B (zh) * 2019-08-16 2022-11-22 兆讯恒达科技股份有限公司 一种高级加密标准协处理器自检的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2676290Y (zh) * 2004-02-08 2005-02-02 海信集团有限公司 基于usb的可重构密码协处理器的板级验证电路
CN2676280Y (zh) * 2004-02-08 2005-02-02 海信集团有限公司 可重构密码协处理器与usb芯片的接口电路
CN1650180A (zh) * 2002-05-03 2005-08-03 通用仪表公司 安全扫描

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5517637A (en) * 1994-12-09 1996-05-14 Motorola, Inc. Method for testing a test architecture within a circuit
US5631960A (en) * 1995-08-31 1997-05-20 National Semiconductor Corporation Autotest of encryption algorithms in embedded secure encryption devices
US6480800B1 (en) * 1999-02-08 2002-11-12 International Business Machines Corp. Method and system for generating self-testing and random input stimuli for testing digital systems
KR20010059996A (ko) * 1999-12-31 2001-07-06 박종섭 반도체 소자의 제조방법
KR20010085504A (ko) * 2000-02-24 2001-09-07 마쯔모또 에이찌 유전체층 형성용 전사 필름 및 플라즈마 디스플레이패널의 제조 방법
WO2001069411A2 (en) * 2000-03-10 2001-09-20 Arc International Plc Memory interface and method of interfacing between functional entities
US7644333B2 (en) * 2001-12-18 2010-01-05 Christopher John Hill Restartable logic BIST controller
US7085978B2 (en) * 2002-09-17 2006-08-01 Arm Limited Validating test signal connections within an integrated circuit
US7036062B2 (en) * 2002-10-02 2006-04-25 Teseda Corporation Single board DFT integrated circuit tester
US7529368B2 (en) * 2003-04-18 2009-05-05 Via Technologies, Inc. Apparatus and method for performing transparent output feedback mode cryptographic functions
JP2006048525A (ja) * 2004-08-06 2006-02-16 Toshiba Corp シミュレーション方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1650180A (zh) * 2002-05-03 2005-08-03 通用仪表公司 安全扫描
CN2676290Y (zh) * 2004-02-08 2005-02-02 海信集团有限公司 基于usb的可重构密码协处理器的板级验证电路
CN2676280Y (zh) * 2004-02-08 2005-02-02 海信集团有限公司 可重构密码协处理器与usb芯片的接口电路

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
吕永其.高速分组密码芯片设计技术.通信技术 7.2002,(7),62-64.
吕永其.高速分组密码芯片设计技术.通信技术 7.2002,(7),62-64. *
宋军辉.基于先进加密标准(AES)算法的加密芯片设计.南京理工大学硕士学位论文.2004,I-IV,1-63. *
尤坤.分组密码算法芯片验证.通信技术 11.2003,(11),117-119.
尤坤.分组密码算法芯片验证.通信技术 11.2003,(11),117-119. *
陈海进.AES算法的C语言实现及测试向量生成.南通工学院学报(自然科学版)3 3.2004,3(3),63-65,69.
陈海进.AES算法的C语言实现及测试向量生成.南通工学院学报(自然科学版)3 3.2004,3(3),63-65,69. *

Also Published As

Publication number Publication date
CN1996830A (zh) 2007-07-11
US20070147604A1 (en) 2007-06-28
KR100720525B1 (ko) 2007-05-22

Similar Documents

Publication Publication Date Title
US9390291B2 (en) Secure key derivation and cryptography logic for integrated circuits
Koteshwara et al. Key-based dynamic functional obfuscation of integrated circuits using sequentially triggered mode-based design
CN102138300B (zh) 消息认证码预计算在安全存储器中的应用
EP2999156A1 (en) Device authenticity determination system and device authenticity determination method
CN1996830B (zh) 具有高级加密标准核的集成电路及验证该标准核的外包
EP3577642B1 (en) Methods and devices for protecting data
Pierce et al. Enhanced secure architecture for joint action test group systems
EP2933944B1 (en) Integrated security device and signal processing method used by integrated security device
US20120093308A1 (en) Apparatus and method for generating random data
Luo et al. A new countermeasure against scan-based side-channel attacks
Cui et al. A guaranteed secure scan design based on test data obfuscation by cryptographic hash
JP2007213718A (ja) 半導体集積回路及び半導体集積回路の検査方法
Jothi et al. Parallel RC4 Key Searching System Based on FPGA
Exurville et al. Practical measurements of data path delays for IP authentication & integrity verification
US20120321079A1 (en) System and method for generating round keys
CN113268745B (zh) 基于Camellia加密算法的软PUF
Billmann et al. Open-source crypto ip cores for fpgas–overview and evaluation
CN101354737A (zh) 一种读取cpu机器码的方法、装置和一种soc芯片
Docherty et al. Hardware implementation of sha-1 and sha-2 hash functions
CN112069553B (zh) 电子系统及电子系统的操作方法
CN117390642B (zh) 一种数据加解密方法、装置、设备和计算机可读存储介质
CN101887385B (zh) 微处理器及产生不可预测的钥的方法
Wang et al. Preventing Scan‐Based Side‐Channel Attacks by Scan Obfuscating with a Configurable Shift Register
CN105897405B (zh) 一种128位对称密钥生成及保护装置
JP6069120B2 (ja) 情報処理システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100922

Termination date: 20121222