ATMEL 加密芯片 ATSHA204
Atmel-8884AS-TPM-AT97SC3205 信任平台模块数据手册摘要说明书

This is a summary document. The complete document is available under NDA. For more information, please contact your local Atmel sales office. Features●Compliant to the Trusted Computing Group (TCG) Trusted Platform Module(TPM) Version 1.2 Specification●Compliant with TCG PC Client-Specific TPM Interface Specification (TIS)Version 1.3●Single-chip, Turnkey Solution●Hardware Asymmetric Crypto Engine●Atmel® AVR® RISC Microprocessor●Internal EEPROM Storage for RSA Keys●Serial Peripheral Interface (SPI) Protocol Up to 45MHz*(*Typical PC Operating Range is 24MHz to 33MHz)●Secure Hardware and Firmware Design and Chip Layout●FIPS-140-2 Module Certified Including the High-quality Random NumberGenerator (RNG), HMAC, AES, SHA, and RSA Engines●NV Storage Space for 2066 bytes of User Defined Data● 3.3V Supply Voltage●28-lead Thin TSSOP and 32-pad QFN Package●Offered in Both Commercial (0°C to 70°C) and Industrial (-40°C to +85°C)Temperature RangesDescriptionThe Atmel AT97SC3205 is a fully integrated security module designed to be integrated into personal computers and other embedded systems. It implements version 1.2 of the Trusted Computing Group (TCG) specification for Trusted Platform Modules (TPM).AT97SC3205Trusted Platform Module – SPI InterfaceSUMMARY DATASHEETAT97SC3205 [SUMMARY DATASHEET]Atmel-8884AS-TPM-AT97SC3205-Datasheet-Summary_02201421.Pin Configurations and PinoutsTable 1-1.Pin ConfigurationsFigure 1-1.PinoutsGPIO2GPIO1V CC GND NCGPIO Express-00PP/GPIOTestITestBI/GPIO/XTamperV CC GND NC NC NC NCNC MISO GND V CC MOSI SPI_CS#SPI_CLK PIRQ#V CC GND GPIO3SPI_RST#NC28-pin TSSOP4.40mm x 9.70mm Body0.65mm PitchV CC GNDGPIO Express-00PP/GPIOTestITestBI/GPIO/XTamperNC V CCMISO GND V CC MOSI SPI_CS#SPI_CLK PIRQ#SPI_RST#G N DN CG P I O 2G P I O 1N CN CN C N CG N DN CN CG P I O 3N CN CN CN C32-pin QFN4.00mm x 4.00mm Body0.90mm PitchAT97SC3205 [SUMMARY DATASHEET]Atmel-8884AS-TPM-AT97SC3205-Datasheet-Summary_02201432.Block DiagramThe TPM includes hardware Random Number Generator (RNG), including a FIPS certified Pseudo Random Number Generator that is used for key generation and TCG protocol functions. The RNG is also available to the system to generate random numbers that may be needed during normal operation.The chip uses a dynamic internal memory management scheme to store multiple RSA keys. Other than the standard TCG commands (TPM_FlushSpecific, TPM_Loadkey2), no system intervention is required to manage this internal key cache.The TPM is offered to OEM and ODM manufacturers as a turnkey solution, including the firmware integrated on the chip. In addition, Atmel provides the necessary device driver software for integration into certain operatingsystems, along with BIOS drivers. Atmel will also provide manufacturing support software for use by OEMs and ODMs during initialization and verification of the TPM during board assembly.Full documentation for TCG primitives can be found in the TCG TPM Main Specification, Parts 1 to 3, on the TCG web site located at https:// . TPM features specific to PC client platforms are specified in the TCG PC Client Specific TPM Interface Specification, version 1.3, also available on the TCG web site. Implementation guidance for PC platforms is outlined in the TCG PC Client Specific Implementation Specification for Conventional Bios, version 1.2, also available on the TCG web site.MOSI MISO SPI_CLK SPI_CS#PIRQ#SPI_RST#GPIO Express-00PP/GPIOAT97SC3205 [SUMMARY DATASHEET]Atmel-8884AS-TPM-AT97SC3205-Datasheet-Summary_02201443.Pin DescriptionTable 3-1.Pin DescriptionsAT97SC3205 [SUMMARY DATASHEET]Atmel-8884AS-TPM-AT97SC3205-Datasheet-Summary_0220145Note: 1.The substrate center pad for the 32-pin QFN is directly tied to GND internally; therefore, this pad can either be left floating or tied to GND.Table 3-1.Pin Descriptions (Continued)AT97SC3205 [SUMMARY DATASHEET]Atmel-8884AS-TPM-AT97SC3205-Datasheet-Summary_02201464.Ordering InformationNote:1.Please see the AT97SC3205 datasheet addendum for the complete catalog number ordering code.AT97SC3205 [SUMMARY DATASHEET]Atmel-8884AS-TPM-AT97SC3205-Datasheet-Summary_02201475.Package Drawings5.128X1 — 28-lead Thin TSSOPAT97SC3205 [SUMMARY DATASHEET]Atmel-8884AS-TPM-AT97SC3205-Datasheet-Summary_02201485.232M3 — 32-pad QFNAT97SC3205 [SUMMARY DATASHEET]Atmel-8884AS-TPM-AT97SC3205-Datasheet-Summary_02201496.Revision HistoryX X X X X XAtmel Corporation1600 Technology Drive, San Jose, CA 95110 USAT: (+1)(408) 441.0311F: (+1)(408) 436.4200|© 2014 Atmel Corporation. / Rev.: Atmel-8884AS-TPM-AT97SC3205-Datasheet-Summary_022014.Atmel ®, Atmel logo and combinations thereof, AVR ®, and others are registered trademarks or trademarks of Atmel Corporation or its subsidiaries. Other terms and product names may be trademarks of others.DISCLAIMER: The information in this document is provided in connection with Atmel products. No license, express or implied, by estoppel or otherwise, to any intellectual property right is granted by this document or in connection with the sale of Atmel products. EXCEPT AS SET FORTH IN THE ATMEL TERMS AND CONDITIONS OF SALES LOCATED ON THE ATMEL WEBSITE, ATMEL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDENTAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS AND PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF THE USE OR INABILITY TO USE THIS DOCUMENT, EVEN IF ATMEL HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Atmel makes no representations or warranties with respect to the accuracy or completeness of the contents of this document and reserves the right to make changes to specifications and products descriptions at any time without notice. Atmel does not make any commitment to update the information contained herein. Unless specifically provided otherwise, Atmel products are not suitable for, and shall not be used in, automotive applications. Atmel products are not intended,authorized, or warranted for use as components in applications intended to support or sustain life.SAFETY-CRITICAL, MILITARY, AND AUTOMOTIVE APPLICATIONS DISCLAIMER: Atmel products are not designed for and will not be used in connection with any applications where the failure of such products would reasonably be expected to result in significant personal injury or death (“Safety-Critical Applications”) without an Atmel officer's specific written consent. Safety-Critical Applications include, without limitation, life support devices and systems, equipment or systems for the operation of nuclear facilities and weapons systems.Atmel products are not designed nor intended for use in military or aerospace applications or environments unless specifically designated by Atmel as military-grade. Atmel products are not designed nor intended for use in automotive applications unless specifically designated by Atmel as automotive-grade.。
Atmel推出新一代即插即用CryptoCompanion嵌入式安全芯片AT88SC018

Atmel推出新一代即插即用CryptoCompanion嵌入式安全芯片AT88SC018爱特梅尔公司 (Atmel Corporation) 现已推出新一代 CryptoCompanion (AT88SC018) 即插即用嵌入式安全芯片。
CryptoCompanion为设计人员提供容易负担的密码硬件安全选项,从而开发目前易于产生固件盗窃和/或产品伪造的系统。
CryptoCompanion与爱特梅尔的CryptoMemory芯片一起使用时,可为认证消费项目或软件IP提供所需的秘密安全存储能力。
CryptoCompanion (主机侧安全) 结合 CryptoMemory (客户端安全),可以实现嵌入式系统安全解决方案,大批量的价格可低于1美元。
爱特梅尔现提供一款基于AVR 的演示工具包Aris+ (AT88SC-ADK2) 以展示这两款芯片在嵌入式环境中的功能。
CryptoCompanion 为嵌入式系统提供主机侧加密安全功能,设计人员无需设计或测试加密算法。
这个companion芯片完全在硬件中实现所需的算法和全部协议。
CryptoMemory 用于客户侧安全性,是唯一具有64位嵌入式硬件加密引擎、四套不可读取的64位认证密钥,以及四套不可读取的64位会话密钥,提供了既低成本又真正安全的解决方案,防止产品伪造和/或盗版。
基于AVR 的Aris+ 演示工具包是一套易于使用的全面工具,适用于各种开发工作。
这款工具包可进行CryptoCompanion和CryptoMemory芯片的小批量个性化处理;也可用于嵌入式安全解决方案的快速原型构建。
这款工具包还备有全新的爱特梅尔加密评测Studio (ACES) 软件环境,后者是一款灵活的功能强大、易于使用的图形用户界面。
以往,开发人员必须从高昂的组件成本或复杂的开发周期之间作出取舍,才能在嵌入式系统设计中加入硬件安全性。
现在,这系列结合了价值与功能的产品为嵌入式系统的安全定下了全新基准。
ATMEL ATtiny84 数据手册

BDTIC /ATMELAppendix B - ATtiny24V/ATtiny44V/ATtiny84VAutomotive Specification at 1.8VThis document contains information specific to devices operating at voltage between1.8V and 3.6V. Only deviations with standard operating characteristics are covered inthis appendix, all other information can be found in the complete Automotivedatasheet. The complete ATtiny24/ATtiny44/ATtiny84 automotive datasheet can be8-bit found on Microcontrollerwith 2/4/8KBytes In-SystemProgrammableATtiny24VATtiny44V27819A–AVR–01/09ATtiny24V/ATtiny44V/ATtiny84V [Preliminary]1.Electrical Characteristics1.1Absolute Maximum RatingsStresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. This is a stress rating only and functional operation of the device at these or any other conditions beyond those indicated in the operational sections of this specification is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability.ParametersValue Unit Operating temperature –40 to +85°C Storage temperature–65 to +175°C Voltage on any pin except RESET with respect to ground –0.5 to V CC + 0.5V Maximum operating voltage 6.0V DC current per I/O pin 30.0mA DC current V CC and GND pins200.0mA1.2DC CharacteristicsT A = –40°C to +85°C, V CC = 1.8V to 3.6V (unless otherwise noted)Symbol ParametersConditionMin.Typ.Max.Unit V IL Input low voltage, except XT AL1 andRESET pinV CC = 1.8V to 3.6V–0.5+0.2V CC (1)V V IH Input high voltage, except XTAL1 and RESET pinsV CC = 1.8V to 3.6V 0.7V CC (2)V CC + 0.5V V IL1Input low voltage, XT AL1 pin V CC = 1.8V to 3.6V –0.5+0.2V CC (1)V V IH1Input high voltage, XT AL1 pin V CC = 1.8V to 3.6V 0.9V CC (2)V CC + 0.5V V IL2Input low voltage, RESET pin V CC = 1.8V to 3.6V –0.5+0.2V CC (1)V V IH2Input high voltage, RESET pin V CC = 1.8V to 3.6V 0.9V CC (2)V CC + 0.5V V OL Output low voltage (3), I/O pin except RESET I OL = 2mA, V CC = 1.8V 0.2V V OHOutput high voltage (4), I/O pin except RESET I OH = –2mA, V CC = 1.8V 1.2V I CCPower supply currentActive 4MHz, V CC = 3V 0.8 2.5mA Idle 4MHz, V CC = 3V 0.20.5mA Power-down modeWDT disabled, V CC = 3V WDT enabled, V CC = 3V 0.242430µA V ACIO Analog comparator Input offset voltage V CC = 2.7V V in = V CC /2<1040mV I ACLK Analog comparator Input leakage currentV CC = 2.7V V in = V CC /2–50+50nANotes:1.“Max” means the highest value where the pin is guaranteed to be read as low2.“Min” means the lowest value where the pin is guaranteed to be read as high3.Although each I/O port can sink more than the test conditions (2mA at VCC = 1.8V) under steady state conditions (nontran-sient), the following must be observed: (1) The sum of all IOL, for all ports, should not exceed 50mA. If IOL exceeds the test condition, VOL may exceed the related specification. Pins are not guaranteed to sink current greater than the listed test condition.4.Although each I/O port can source more than the test conditions (0.5mA at VCC = 1.8V) under steady state conditions(nontransient), the following must be observed: (1) The sum of all IOL, for ports B0 to B5, should not exceed 50mA. If IOL exceeds the test condition, VOL may exceed the related specification. Pins are not guaranteed to sink current greater than the listed test condition.37819A–AVR–01/09ATtiny24V/ATtiny44V/ATtiny84V [Preliminary]1.3Maximum Speed versus V CCMaximum frequency is dependent on V CC. As shown in Figure 1-1, the Maximum Frequency vs.V CC curve is linear between 1.8V < V CC < 3.6V.Figure 1-1.Maximum Frequency versus V CC1.4Clock CharacterizationsTable 1-1.Calibration Accuracy of Internal RC OscillatorFrequencyV CC Temperature Accuracy User Calibration7.3 MHz to 8.1 MHz1.8V to 3.6V–40°C to +85°C±25%47819A–AVR–01/09ATtiny24V/ATtiny44V/ATtiny84V [Preliminary]1.5ADC CharacteristicsT A = –40°C to +85°C, V CC = 1.8V to 3.6V (unless otherwise noted)SymbolParameters Test Conditions Min.Typ.Max.Unit ResolutionSingle ended conversion 10Bits Absolute accuracy (Including INL, DNL, quantization error, gain and offset error)V CC = 1.8V , V Ref = 1.8V , ADC clock =200kHz 2 4.0LSB V CC = 1.8V , V Ref = 1.8V , ADC clock =200kHz Noise Reduction Mode 2 4.0LSB Integral Non-Linearity (INL)V CC = 1.8V , V Ref = 1.8V , ADC clock =200kHz 0.5 1.5LSB Differential Non-Linearity (DNL)V CC = 1.8V , V Ref = 1.8V , ADC clock =200kHz 0.20.7LSB Gain error V CC = 1.8V , V Ref = 1.8V , ADC clock =200kHz –7.0–3.0+5.0LSB Offset errorV CC = 1.8V , V Ref = 1.8V , ADC clock =200kHz–3.5+1.5+3.5LSB V REFReference voltage1.8AV CC V1.6ADC CharacteristicsT A = –40°C to +85°C, V CC = 1.8V to 3.6V (unless otherwise noted)SymbolParameters Test ConditionsMin.Typ.Max.Unit ResolutionDifferential conversion, gain = 1x BIPOLAR mode only8Bits Absolute accuracy (Including INL, DNL, quantization error, gain and offset error)Gain = 1x, V CC = 1.8V , V Ref =1.3V , ADC clock =125kHz 1.65.0LSBIntegral Non-Linearity (INL)Gain = 1x, V CC = 1.8V , V Ref = 1.3V ,ADC clock = 125kHz 0.7 2.5LSBDifferential Non-Linearity (DNL)Gain = 1x, V CC = 1.8V ,V Ref = 1.3V ,ADC clock = 125kHz 0.3 1.0LSBGain Error Gain = 1x, V CC = 1.8V ,V Ref = 1.3V ,ADC clock = 125kHz –7.0+1.50+7.0LSBOffset ErrorGain = 1x, V CC = 1.8V .V Ref = 1.3V ,ADC clock = 125kHz–4.00.0+4.0LSB V REFReference Voltage1.30AVCC – 0.5V57819A–AVR–01/09ATtiny24V/ATtiny44V/ATtiny84V [Preliminary]3.Package Information2.Ordering InformationPower Supply Speed (MHz)ISP Flash Ordering Code Package Operation Range 1.8V to 3.6V 4-82KB A Ttiny24V-15SST TU Automotive (–40°C to +85°C)1.8V to 3.6V 4-82KB A Ttiny24V-15MT PN Automotive (–40°C to +85°C)1.8V to 3.6V 4-84KB A Ttiny44V-15SST TU Automotive (–40°C to +85°C)1.8V to 3.6V 4-84KB A Ttiny44V-15MT PN Automotive (–40°C to +85°C)1.8V to 3.6V4-88KBA Ttiny84V-15MTPNAutomotive (–40°C to +85°C)Table 3-1.Package TypesPackage TypeDescriptionTU TU 14-Lead, 0.150” Body WidthPlastic Gull Wing Small Outline Package (SOIC)PNPN 32-Lead, 5.0 x 5.0 mm Body, 0.50 mm Pitch Quad Flat No Lead ackage (QFN)67819A–AVR–01/09ATtiny24V/ATtiny44V/ATtiny84V [Preliminary]77819A–AVR–01/09ATtiny24V/ATtiny44V/ATtiny84V [Preliminary]7819A–AVR–01/09HeadquartersInternationalAtmel Corporation 2325 Orchard Parkway San Jose, CA 95131USATel: 1(408) 441-0311Fax: 1(408) 487-2600Atmel AsiaUnit 1-5 & 16, 19/FBEA Tower, Millennium City 5418 Kwun Tong Road Kwun Tong, Kowloon Hong KongTel: (852) 2245-6100Fax: (852) 2722-1369Atmel Europe Le Krebs8, Rue Jean-Pierre Timbaud BP 30978054Saint-Quentin-en-Yvelines Cedex FranceTel: (33) 1-30-60-70-00 Fax: (33) 1-30-60-71-11Atmel Japan9F, Tonetsu Shinkawa Bldg.1-24-8 ShinkawaChuo-ku, Tokyo 104-0033JapanTel: (81) 3-3523-3551Fax: (81) 3-3523-7581Product ContactWeb SiteTechnical Support *************Sales Contact/contactsLiterature Requests /literatureDisclaimer: The information in this document is provided in connection with Atmel products. No license, express or implied, by estoppel or otherwise,to any intellectual property right is granted by this document or in connection with the sale of Atmel products. EXCEPT AS SET FORTH IN ATMEL ’S TERMS AND CONDI-TIONS OF SALE LOCATED ON ATMEL ’S WEB SITE, ATMEL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDEN-TAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF THE USE OR INABILITY TO USE THIS DOCUMENT, EVEN IF ATMEL HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Atmel makes no representations or warranties with respect to the accuracy or completeness of the contents of this document and reserves the right to make changes to specifications and product descriptions at any time without notice. Atmel does not make any commitment to update the information contained herein. Unless specifically provided otherwise, Atmel products are not suitable for, and shall not be used in, automotive applications. Atmel’s products are not intended, authorized, or warranted for use as components in applications intended to support or sustain life.© 2009 Atmel Corporation. All rights reserved. Atmel ®, logo and combinations thereof, AVR ® and others are registered trademarks or trade-marks of Atmel Corporation or its subsidiaries. Other terms and product names may be trademarks of others.。
ATMEL加密芯片ATSHA204-PPT文档资料

F ( 286 ) 86206
Page 4 / Copyright 2011 Atmel Confidential
散列函数Hash
把函数结果 告诉我吧。
我运算过后是 86206
恩,我已经知道你是 知道的。你不必说出 答案了。
Page 5
/ Copyright 2011 Atmel Confidential
Page 9
/ Copyright 2011 Atmel Confidential
HMAC 挑战响应
HMAC
HMAC是密钥相关的哈希运算消息认证码( Hash-based Message Authentication Code ),HMAC运算利用哈希算法,以一个密钥和一个 消息为输入,生成一个消息摘要作为输出。
Atmel Crypto AthenticationTM ATSHA204
ATMEL 代理商 深圳,提供各方面的技术支持. 林先生 QQ :1085487223 邮箱:1085487223qq
V 1.0
Page 1 / Copyright 2011 Atmel Confidential
什么是加密芯片 它本身具有十分安全的保密性,内部可以 存储秘密数据,内置加密算法,通过安全 的认证协议进行认证过程。
Page 8
/ Copyright 2011 Atmel Confidential
散列函数Hash
Hash算法与加密算法
Hash算法是不可逆的,也就是不能通过输出文 本转化回原文本。不同文本经过Hash算法后可能 输出相同的结果。 而加密算法是可逆的,每个加密算法都会有相应 的解密算法。原文与密文一一对应。
ATSHA204
Atmel芯片新命名型号对照表

Atmel芯片新命名型号对照表ATTINY28L ATMEL ATMLU701 DIP ATTINY26L ATMEL ATMLU702 DIP ATTINY26 ATMEL ATMLU703 DIP ATTINY24 ATMEL ATMLU704 DIP ATTINY2313V ATMEL ATMLU705 DIP ATTINY2313 ATMEL ATMLU706 DIP ATTINY15L ATMEL ATMLU707 DIP ATTINY13V ATMEL ATMLU708 DIP ATTINY13 ATMEL ATMLU709 DIP ATTINY11L ATMEL ATMLU710 DIP ATMEGA8L ATMEL ATMLU711 DIP ATMEGA88V ATMEL ATMLU712 DIP ATMEGA88 ATMEL ATMLU713 DIP ATMEGA8535L ATMEL ATMLU714 DIP ATMEGA8535 ATMEL ATMLU715 DIP ATMEGA8515L ATMEL ATMLU716 DIP ATMEGA8515 ATMEL ATMLU717 DIP ATMEGA8 ATMEL ATMLU718 DIP ATMEGA64L ATMEL ATMLU719 DIP ATMEGA64 ATMEL ATMLU720 DIP ATMEGA640V ATMEL ATMLU721 DIP ATMEGA48V ATMEL ATMLU722 DIP ATMEGA48 ATMEL ATMLU723 DIP ATMEGA32L ATMEL ATMLU724 DIP ATMEGA325V ATMEL ATMLU725 DIP ATMEGA32 ATMEL ATMLU726 DIP ATMEGA16L ATMEL ATMLU727 DIP ATMEGA169V ATMEL ATMLU728 DIP ATMEGA169PV ATMEL ATMLU729 DIP ATMEGA169P ATMEL ATMLU730 DIP ATMEGA168V ATMEL ATMLU731 DIP ATMEGA168 ATMEL ATMLU732 DIP ATMEGA162V ATMEL ATMLU733 DIP ATMEGA162 ATMEL ATMLU734 DIP ATMEGA16 ATMEL ATMLU735 DIP ATMEGA128L ATMEL ATMLU736 DIP ATMEGA128 ATMEL ATMLU737 DIP ATMEGA1280V ATMEL ATMLU738 DIP ATJTAGICE2 ATMEL ATMLU739 DIP ATF20V8B ATMEL ATMLU740 DIP ATF16V8BQL ATMEL ATMLU741 DIPATF16V8B ATMEL ATMLU742 DIPATF1508AS ATMEL ATMLU743 DIP ATF1502AS ATMEL ATMLU744 DIP ATAVRISP2 ATMEL ATMLU745 DIP ATAVRDRAGON ATMEL ATMLU746 DIP AT93C66A ATMEL ATMLU747 DIPAT93C56A ATMEL ATMLU748 DIPAT93C46DN ATMEL ATMLU749 DIPAT93C46DH ATMEL ATMLU750 DIPAT93C46 ATMEL ATMLU751 DIPAT91SAM ATMEL ATMLU752 DIPAT91SAM9263 ATMEL ATMLU801 DIP AT91SAM9261S ATMEL ATMLU802 DIP AT91SAM9261 ATMEL ATMLU803 DIP AT91SAM9260 ATMEL ATMLU804 DIP AT91SAM7X ATMEL ATMLU805 DIPAT91SAM7X256 ATMEL ATMLU806 DIP AT91SAM7SE32 ATMEL ATMLU807 DIP AT91SAM7S64 ATMEL ATMLU808 DIP AT91SAM7S32 ATMEL ATMLU809 DIP AT91SAM7S321 ATMEL ATMLU810 DIP AT91SAM7S256 ATMEL ATMLU811 DIP AT91RM9200 ATMEL ATMLU812 DIP AT91M55800A ATMEL ATMLU813 DIP AT91M40800 ATMEL ATMLU814 DIPAT90CAN32 ATMEL ATMLU815 DIPAT90CAN128 ATMEL ATMLU816 DIP AT89S8253 ATMEL ATMLU817 DIPAT89S58 ATMEL ATMLU818 DIPAT89S54 ATMEL ATMLU819 DIPAT89S52 ATMEL ATMLU820 DIPAT89S51 ATMEL ATMLU821 DIPAT89LV51 ATMEL ATMLU822 DIPAT89LS52 ATMEL ATMLU823 DIPAT89C55WD ATMEL ATMLU824 DIPAT89C52 ATMEL ATMLU825 DIPAT89C51RD2 ATMEL ATMLU826 DIP AT89C51RC2 ATMEL ATMLU827 DIP AT89C51RC ATMEL ATMLU828 DIPAT89C51RC2 ATMEL ATMLU829 DIP AT89C51RB2 ATMEL ATMLU830 DIP AT89C51ED2 ATMEL ATMLU831 DIPAT89C51CC01UA ATMEL ATMLU832 DIP AT89C51CC01CA ATMEL ATMLU833 DIP AT89C51AU2 ATMEL ATMLU834 DIPAT89C5131A ATMEL ATMLU835 DIPAT89C51 ATMEL ATMLU836 DIPAT89C4051 ATMEL ATMLU837 DIPAT89C2051 ATMEL ATMLU838 DIPAT88SC153 ATMEL ATMLU839 DIPAT88SC0104C ATMEL ATMLU840 DIP AT49BV512 ATMEL ATMLU841 DIPAT49BV322DT ATMEL ATMLU842 DIP AT49BV040B ATMEL ATMLU843 DIPAT47BV163A ATMEL ATMLU844 DIPAT45DB642DU ATMEL ATMLU845 DIP AT45DB321DU ATMEL ATMLU846 DIP AT45DB321D ATMEL ATMLU847 DIPAT45DB161DU ATMEL ATMLU848 DIP AT45DB161D ATMEL ATMLU849 DIPAT45DB081D ATMEL ATMLU850 DIPAT45DB041D ATMEL ATMLU851 DIPAT45DB021B ATMEL ATMLU852 DIPAT29LV512 ATMEL ATMLU901 DIPAT29LV040A ATMEL ATMLU902 DIPAT29LV020 ATMEL ATMLU903 DIPAT29C040A ATMEL ATMLU904 DIPAT29C020 ATMEL ATMLU905 DIPAT29C010A ATMEL ATMLU906 DIPAT28C64B ATMEL ATMLU907 DIPAT28C256 ATMEL ATMLU908 DIPAT28BV256 ATMEL ATMLU909 DIPAT27C512R ATMEL ATMLU910 DIPAT27C256R ATMEL ATMLH701 SOPAT27C040 ATMEL ATMLH702 SOPAT27C010 ATMEL ATMLH703 SOPAT27BV256 ATMEL ATMLH704 SOPAT26DF321 ATMEL ATMLH705 SOPAT26DF161 ATMEL ATMLH706 SOPAT26DF081A ATMEL ATMLH707 SOPAT25F512AN ATMEL ATMLH708 SOPAT25F1024AN ATMEL ATMLH709 SOP AT25DF041A ATMEL ATMLH710 SOPAT25256AN ATMEL ATMLH711 SOPAT24C64CN ATMEL ATMLH713 SOP AT24C64AN ATMEL ATMLH714 SOP AT24C64A ATMEL ATMLH715 SOP AT24C512N ATMEL ATMLH716 SOP AT24C512B ATMEL ATMLH717 SOP AT24C512BN ATMEL ATMLH718 SOP AT24C512 ATMEL ATMLH719 SOPAT24C32CN ATMEL ATMLH720 SOP AT24C32AN ATMEL ATMLH721 SOP AT24C32A ATMEL ATMLH722 SOP AT24C256N ATMEL ATMLH723 SOP AT24C256B ATMEL ATMLH724 SOP AT24C256BN ATMEL ATMLH725 SOP AT24C256B ATMEL ATMLH726 SOP AT24C16BN ATMEL ATMLH727 SOP AT24C16AN ATMEL ATMLH728 SOP AT24C16A ATMEL ATMLH729 SOP AT24C128N ATMEL ATMLH730 SOP AT24C128 ATMEL ATMLH731 SOPAT24C08AN ATMEL ATMLH732 SOP AT24C08A ATMEL ATMLH733 SOP AT24C04N ATMEL ATMLH734 SOP AT24C04BN ATMEL ATMLH735 SOP AT24C04 ATMEL ATMLH736 SOPAT24C02B ATMEL ATMLH737 SOP AT24C02BN ATMEL ATMLH738 SOP AT24C02B ATMEL ATMLH739 SOP AT24C01B ATMEL ATMLH740 SOP AT24C01BN ATMEL ATMLH741 SOP ATTINY28L ATMEL ATMLU701 SOP ATTINY26L ATMEL ATMLU702 SOP ATTINY26 ATMEL ATMLU703 SOP ATTINY24 ATMEL ATMLU704 SOP ATTINY2313V ATMEL ATMLU705 SOP ATTINY2313 ATMEL ATMLU706 SOP ATTINY15L ATMEL ATMLU707 SOP ATTINY13V ATMEL ATMLU708 SOP ATTINY13 ATMEL ATMLU709 SOP ATTINY11L ATMEL ATMLU710 SOP ATMEGA8L ATMEL ATMLU711 SOP ATMEGA88V ATMEL ATMLU712 SOPATMEGA8535L ATMEL ATMLU714 SOP ATMEGA8535 ATMEL ATMLU715 SOP ATMEGA8515L ATMEL ATMLU716 SOP ATMEGA8515 ATMEL ATMLU717 SOP ATMEGA8 ATMEL ATMLU718 SOP ATMEGA64L ATMEL ATMLU719 SOP ATMEGA64 ATMEL ATMLU720 SOP ATMEGA640V ATMEL ATMLU721 SOP ATMEGA48V ATMEL ATMLU722 SOP ATMEGA48 ATMEL ATMLU723 SOP ATMEGA32L ATMEL ATMLU724 SOP ATMEGA325V ATMEL ATMLU725 SOP ATMEGA32 ATMEL ATMLU726 SOP ATMEGA16L ATMEL ATMLU727 SOP ATMEGA169V ATMEL ATMLU728 SOP ATMEGA169PV ATMEL ATMLU729 SOP ATMEGA169P ATMEL ATMLU730 SOP ATMEGA168V ATMEL ATMLU731 SOP ATMEGA168 ATMEL ATMLU732 SOP ATMEGA162V ATMEL ATMLU733 SOP ATMEGA162 ATMEL ATMLU734 SOP ATMEGA16 ATMEL ATMLU735 SOP ATMEGA128L ATMEL ATMLU736 SOP ATMEGA128 ATMEL ATMLU737 SOP ATMEGA1280V ATMEL ATMLU738 SOP ATJTAGICE2 ATMEL ATMLU739 SOP ATF20V8B ATMEL ATMLU740 SOPATF16V8BQL ATMEL ATMLU741 SOP ATF16V8B ATMEL ATMLU742 SOPATF1508AS ATMEL ATMLU743 SOP ATF1502AS ATMEL ATMLU744 SOP ATAVRISP2 ATMEL ATMLU745 SOP ATAVRDRAGON ATMEL ATMLU746 SOP AT93C66A ATMEL ATMLU747 SOPAT93C56A ATMEL ATMLU748 SOPAT93C46DN ATMEL ATMLU749 SOPAT93C46DH ATMEL ATMLU750 SOPAT93C46 ATMEL ATMLU751 SOPAT91SAM ATMEL ATMLU752 SOPAT91SAM9263 ATMEL ATMLU801 SOP AT91SAM9261S ATMEL ATMLU802 SOPAT91SAM9260 ATMEL ATMLU804 SOP AT91SAM7X ATMEL ATMLU805 SOPAT91SAM7X256 ATMEL ATMLU806 SOP AT91SAM7SE32 ATMEL ATMLU807 SOP AT91SAM7S64 ATMEL ATMLU808 SOP AT91SAM7S32 ATMEL ATMLU809 SOP AT91SAM7S321 ATMEL ATMLU810 SOP AT91SAM7S256 ATMEL ATMLU811 SOP AT91RM9200 ATMEL ATMLU812 SOPAT91M55800A ATMEL ATMLU813 SOP AT91M40800 ATMEL ATMLU814 SOPAT90CAN32 ATMEL ATMLU815 SOPAT90CAN128 ATMEL ATMLU816 SOPAT89S8253 ATMEL ATMLU817 SOPAT89S58 ATMEL ATMLU818 SOPAT89S54 ATMEL ATMLU819 SOPAT89S52 ATMEL ATMLU820 SOPAT89S51 ATMEL ATMLU821 SOPAT89LV51 ATMEL ATMLU822 SOPAT89LS52 ATMEL ATMLU823 SOPAT89C55WD ATMEL ATMLU824 SOPAT89C52 ATMEL ATMLU825 SOPAT89C51RD2 ATMEL ATMLU826 SOPAT89C51RC2 ATMEL ATMLU827 SOPAT89C51RC ATMEL ATMLU828 SOPAT89C51RC2 ATMEL ATMLU829 SOPAT89C51RB2 ATMEL ATMLU830 SOPAT89C51ED2 ATMEL ATMLU831 SOPAT89C51CC01UA ATMEL ATMLU832 SOP AT89C51CC01CA ATMEL ATMLU833 SOP AT89C51AU2 ATMEL ATMLU834 SOPAT89C5131A ATMEL ATMLU835 SOPAT89C51 ATMEL ATMLU836 SOPAT89C4051 ATMEL ATMLU837 SOPAT89C2051 ATMEL ATMLU838 SOPAT88SC153 ATMEL ATMLU839 SOPAT88SC0104C ATMEL ATMLU840 SOP AT49BV512 ATMEL ATMLU841 SOPAT49BV322DT ATMEL ATMLU842 SOP AT49BV040B ATMEL ATMLU843 SOPAT47BV163A ATMEL ATMLU844 SOPAT45DB321DU ATMEL ATMLU846 SOP AT45DB321D ATMEL ATMLU847 SOP AT45DB161DU ATMEL ATMLU848 SOP AT45DB161D ATMEL ATMLU849 SOP AT45DB081D ATMEL ATMLU850 SOP AT45DB041D ATMEL ATMLU851 SOP AT45DB021B ATMEL ATMLU852 SOP AT29LV512 ATMEL ATMLU901 SOP AT29LV040A ATMEL ATMLU902 SOP AT29LV020 ATMEL ATMLU903 SOP AT29C040A ATMEL ATMLU904 SOP AT29C020 ATMEL ATMLU905 SOPAT29C010A ATMEL ATMLU906 SOP AT28C64B ATMEL ATMLU907 SOPAT28C256 ATMEL ATMLU908 SOPAT28BV256 ATMEL ATMLU909 SOP AT27C512R ATMEL ATMLU910 SOP AT27C256R ATMEL ATMLH701 DIPAT27C040 ATMEL ATMLH702 DIPAT27C010 ATMEL ATMLH703 DIPAT27BV256 ATMEL ATMLH704 DIPAT26DF321 ATMEL ATMLH705 DIPAT26DF161 ATMEL ATMLH706 DIPAT26DF081A ATMEL ATMLH707 DIP AT25F512AN ATMEL ATMLH708 DIP AT25F1024AN ATMEL ATMLH709 DIP AT25DF041A ATMEL ATMLH710 DIP AT25256AN ATMEL ATMLH711 DIPAT25128A ATMEL ATMLH712 DIPAT24C64CN ATMEL ATMLH713 DIPAT24C64AN ATMEL ATMLH714 DIPAT24C64A ATMEL ATMLH715 DIPAT24C512N ATMEL ATMLH716 DIPAT24C512B ATMEL ATMLH717 DIPAT24C512BN ATMEL ATMLH718 DIP AT24C512 ATMEL ATMLH719 DIPAT24C32CN ATMEL ATMLH720 DIPAT24C32AN ATMEL ATMLH721 DIPAT24C32A ATMEL ATMLH722 DIPAT24C256N ATMEL ATMLH723 DIPAT24C256B ATMEL ATMLH724 DIPAT24C256B ATMEL ATMLH726 DIP AT24C16BN ATMEL ATMLH727 DIP AT24C16AN ATMEL ATMLH728 DIP AT24C16A ATMEL ATMLH729 DIP AT24C128N ATMEL ATMLH730 DIP AT24C128 ATMEL ATMLH731 DIP AT24C08AN ATMEL ATMLH732 DIP AT24C08A ATMEL ATMLH733 DIP AT24C04N ATMEL ATMLH734 DIP AT24C04BN ATMEL ATMLH735 DIP AT24C04 ATMEL ATMLH736 DIP AT24C02B ATMEL ATMLH737 DIP AT24C02BN ATMEL ATMLH738 DIP AT24C02B ATMEL ATMLH739 DIP AT24C01B ATMEL ATMLH740 DIP AT24C01BN ATMEL ATMLH741 DIP。
Atmel加密认证芯片的应用实例_

图1 Atmel加密认证芯片的防护措施7986ELECTRONIC ENGINEERING & PRODUCT WORLD2018.7候,可以使用write 命令来写操作,但0x00-0x03地址不能写,序列号和版本号出厂固定。
0x15地址不能用write命令来写;4)在Configuration锁定前,Data和OTP区既不能写也不能读。
而在Configuration锁定后,Data区锁定前,Data区只能写不能读,在Data区锁定后,是否可读写由Configuration中的配置来决定。
5)配置区与秘钥存储区有严格的对应关系,秘钥区的使用需要遵守配置区的配置参数,不匹配的话会导钥做加密认证的应用4 软件实现M i c r o c h i p本为C r y p t o a u t hATECC608A。
下载时邮箱注册即可CryptoAuthLib口,分别为atcab、1)atcab是ATCA图2 ACES配置环境软件图3 笔记本电池的配件防伪有的初始化,芯片配置和设置。
2) atcah提供在ATCA设备上执行的命令,这些命令支持高级调试和MCU的模拟。
3)atcac提供对在软件中实现的加密命令的访问。
5 对称加密认证实例对称身份验证是一个挑战/响应过程,主机设备挑战远程设备,例如附件(如电池)或可消耗设备(墨盒),以确保真实可信。
被挑战的设备对预期的结果作出反应。
该方法要求主机和远程设备共享相同的密钥。
开发人员面临的问题是如何安全地将这些秘密嵌入到主机和远程设备中,解决方案是使用一个安全的硬件密钥一的序列号。
配置共享密钥:芯片在使用前需要进行配置,配置的内容包括,对配置区进行写操作,内容是设置秘钥槽的使用和访问权限,之后对配置区进行锁定。
锁定配置区后才可以写数据区,对数据区的操作就是写秘钥槽,这时数据区为只读,通过返回值判断写入是否成功。
注意事项:第一步,MCU从主机端ATECC508读取序列号,由它生产一个随机数;第二步,MCU切换到与从机ATECC508A通讯,读取序列号,再由从机ATECC508A利用自己的序列号,刚才生产的随机数和保存在它里面的秘钥进行硬件哈希运算,运算结果发给主机MCU;第三步,MCU重新切换回与主机ATECC508的通图4 加密认证的原理图框图图5 加密认证的实现过程图6 加密认证的硬件连接8188ELECTRONIC ENGINEERING & PRODUCT WORLD。
ATECC508A Atmel密钥字符串认证设备数据手册说明书

ATECC508AAtmel CryptoAuthentication DeviceSUMMARY DATASHEETFeatures∙ Cryptographic Co-processor with Secure Hardware-based Key Storage ∙ Performs High-Speed Public Key (PKI) Algorithms– ECDSA: FIPS186-3 Elliptic Curve Digital Signature Algorithm – ECDH: FIPS SP800-56A Elliptic Curve Diffie-Hellman Algorithm ∙ NIST Standard P256 Elliptic Curve Support ∙ SHA-256 Hash Algorithm with HMAC Option ∙ Host and Client Operations ∙ 256-bit Key Length ∙ Storage for up to 16 Keys∙ Two high-endurance monotonic counters ∙ Guaranteed Unique 72-bit Serial Number∙ Internal High-quality FIPS Random Number Generator (RNG) ∙ 10Kb EEPROM Memory for Keys, Certificates, and Data ∙ Storage for up to 16 Keys∙ Multiple Options for Consumption Logging and One Time Write Information∙ Intrusion Latch for External Tamper Switch or Power-on Chip Enablement. Multiple I/O Options:– High-speed Single Pin Interface, with One GPIO Pin – 1MHz Standard I 2C Interface ∙ 2.0V to 5.5V Supply Voltage Range ∙ 1.8V to 5.5V IO levels ∙ <150nA Sleep Current∙ 8-pad UDFN, 8-lead SOIC, and 3-lead CONTACT PackagesApplications∙ IoT Node Security and ID ∙ S ecure Download and Boot ∙ E cosystem Control ∙ M essage Security ∙ A nti-CloningThis is a summary document. The complete document is available under NDA. For more information, please contact your local Atmel sales office.Secure Download and BootAuthentication and Protect Code In-transitEcosystem ControlEnsure Only OEM/Licensed Nodes and Accessories WorkAnti-cloningPrevent Building with Identical BOM or Stolen CodeMessage SecurityAuthentication, Message Integrity,and Confidentiality of Network Nodes (IoT)CryptoAuthenticationEnsures Things and Code are Real, Untampered, and ConfidentialPin Configuration and Pinouts Table 1. Pin ConfigurationFigure 1. PinoutsATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_102015221 Introduction1.1 ApplicationsThe Atmel® ATECC508A is a member of the Atmel CryptoAuthentication™ family of crypto engine authentication devices with highly secure hardware-based key storage.The ATECC508A has a flexible command set that allows use in many applications, including the following,among many others:∙Network/IoT Node ProtectionAuthenticates node IDs, ensures the integrity of messages, and supports key agreement to create sessionkeys for message encryption.∙Anti-CounterfeitingValidates that a removable, replaceable, or consumable client is authentic. Examples of clients could besystem accessories, electronic daughter cards, or other spare parts. It can also be used to validate asoftware/firmware module or memory storage element.∙Protecting Firmware or MediaValidates code stored in flash memory at boot to prevent unauthorized modifications, encrypt downloadedprogram files as a common broadcast, or uniquely encrypt code images to be usable on a single systemonly.∙Storing Secure DataStore secret keys for use by crypto accelerators in standard microprocessors. Programmable protection isavailable using encrypted/authenticated reads and writes.∙Checking User PasswordValidates user-entered passwords without letting the expected value become known, maps memorablepasswords to a random number, and securely exchanges password values with remote systems.1.2 Device FeaturesThe ATECC508A includes an EEPROM array which can be used for storage of up to 16 keys, certificates,miscellaneous read/write, read-only or secret data, consumption logging, and security configurations. Access to the various sections of memory can be restricted in a variety of ways and then the configuration can be locked to prevent changes.The ATECC508A features a wide array of defense mechanisms specifically designed to prevent physical attacks on the device itself, or logical attacks on the data transmitted between the device and the system. Hardware restrictions on the ways in which keys are used or generated provide further defense against certain styles of attack.Access to the device is made through a standard I2C Interface at speeds of up to 1Mb/s. The interface iscompatible with standard Serial EEPROM I2C interface specifications. The device also supports a Single-Wire Interface (SWI), which can reduce the number of GPIOs required on the system processor, and/or reduce the number of pins on connectors. If the Single-Wire Interface is enabled, the remaining pin is available for use as a GPIO, an authenticated output or tamper input.Using either the I2C or Single-Wire Interface, multiple ATECC508A devices can share the same bus, which saves processor GPIO usage in systems with multiple clients such as different color ink tanks or multiple spare parts, for example.Each ATECC508A ships with a guaranteed unique 72-bit serial number. Using the cryptographic protocolssupported by the device, a host system or remote server can verify a signature of the serial number to prove that the serial number is authentic and not a copy. Serial numbers are often stored in a standard Serial EEPROM;however, these can be easily copied with no way for the host to know if the serial number is authentic or if it is a clone.ATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_1020153 3ATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_10201544The ATECC508A can generate high-quality FIPS random numbers and employ them for any purpose, including usage as part of the device’s crypto protocols. Because each random number is guaranteed to be essentially unique from all numbers ever generated on this or any other device, their inclusion in the protocol calculation ensures that replay attacks (i.e. re-transmitting a previously successful transaction) will always fail.System integration is easy due to a wide supply voltage range (of 2.0V to 5.5V) and an ultra-low sleep current (of <150nA). Multiple package options are available.See Section 3 for information regarding compatibility with the Atmel ATSHA204 and ATECC108.1.3 Cryptographic OperationThe ATECC508A implements a complete asymmetric (public/private) key cryptographic signature solution based upon Elliptic Curve Cryptography and the ECDSA signature protocol. The device features hardware acceleration for the NIST standard P256 prime curve and supports the complete key life cycle from high quality private key generation, to ECDSA signature generation, ECDH key agreement, and ECDSA public key signature verification.The hardware accelerator can implement such asymmetric cryptographic operations from ten to one-thousand times faster than software running on standard microprocessors, without the usual high risk of key exposure that is endemic to standard microprocessors.The device is designed to securely store multiple private keys along with their associated public keys andcertificates. The signature verification command can use any stored or an external ECC public key. Public keys stored within the device can be configured to require validation via a certificate chain to speed-up subsequent device authentications.Random private key generation is supported internally within the device to ensure that the private key can never be known outside of the device. The public key corresponding to a stored private key is always returned when the key is generated and it may optionally be computed at a later time.The ATECC508A also supports a standard hash-based challenge-response protocol in order to simplifyprogramming. In its most basic instantiation, the system sends a challenge to the device, which combines that challenge with a secret key and then sends the response back to the system. The device uses a SHA-256cryptographic hash algorithm to make that combination so that an observer on the bus cannot derive the value of the secret key, but preserving that ability of a recipient to verify that the response is correct by performing the same calculation with a stored copy of the secret on the recipient’s system.Due to the flexible command set of the ATECC508A, these basic operation sets (i.e. ECDSA signatures, ECDH key agreement and SHA-256 challenge-response) can be expanded in many ways.In a host-client configuration where the host (for instance a mobile phone) needs to verify a client (for instance an OEM battery), there is a need to store the secret in the host in order to validate the response from the client. The CheckMac command allows the device to securely store the secret in the host system and hides the correct response value from the pins, returning only a yes or no answer to the system.All hashing functions are implemented using the industry-standard SHA-256 secure hash algorithm, which is part of the latest set of high-security cryptographic algorithms recommended by various government agencies and cryptographic experts. The ATECC508A employs full-sized 256 bit secret keys to prevent any kind of exhaustive attack.2 Electrical Characteristics 2.1 Absolute Maximum Ratings*Operating Temperature .......................... -40°C to 85°C Storage Temperature ........................... -65°C to 150°C Maximum Operating Voltage................................. 6.0V DC Output Current ................................................ 5mA Voltage on any pin ...................... -0.5V to (V CC + 0.5V) *Notice: Stresses beyond those listed under “AbsoluteMaximum Ratings” may cause permanent damage tothe device. This is a stress rating only and functionaloperation of the device at these or any otherconditions beyond those indicated in the operationalsections of this specification are not implied.Exposure to absolute maximum rating conditions forextended periods may affect device reliability.2.2 ReliabilityThe ATECC508A is fabricated with the Atmel high reliability of the CMOS EEPROM manufacturing technology.Table 2-1. EEPROM Reliability2.3 AC Parameters: All I/O InterfacesFigure 2-1. AC Parameters: All I/O InterfacesNote: 1. These parameters are guaranteed through characterization, but not tested.ATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_1020155 5ATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_102015662.3.1AC Parameters: Single-Wire InterfaceTable 2-2.AC Parameters: Single-Wire InterfaceApplicable from T A = -40°C to +85°C, V CC = +2.0V to +5.5V, CL =100pF (unless otherwise noted).Note: 1.START, ZLO, ZHI, and BIT are designed to be compatible with a standard UART running at 230.4Kbaud for both transmit and receive. The UART should be set to seven data bits, no parity and one Stop bit.2.3.2 AC Parameters: I2C InterfaceTable 2-3. AC Characteristics of I2C InterfaceApplicable over recommended operating range from TA = -40°C to + 85°C, V CC = +2.0V to +5.5V, CL = 1 TTL Gate and 100pF (unless otherwise noted).Note: 1. Values are based on characterization and are not tested.AC measurement conditions:∙RL (connects between SDA and V CC): 1.2k (for V CC +2.0V to +5.0V)∙Input pulse voltages: 0.3V CC to 0.7V CC∙Input rise and fall times: ≤ 50ns∙Input and output timing reference voltage: 0.5V CCATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_1020157 7ATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_102015882.4DC Parameters: All I/O InterfacesTable 2-4. DC Parameters on All I/O Interfaces2.4.1V IH and V IL SpecificationsThe input voltage thresholds when in sleep or idle mode are dependent on the V CC level as shown in the graphbelow. When the device is active (i.e. not in sleep or idle mode), the input voltage thresholds are different depending upon the state of TTLenable (bit 1) within the ChipMode byte in the Configuration zone of theEEPROM. When a common voltage is used for the ATECC508A V CC pin and the input pull-up resistor, then this bit should be set to a one, which permits the input thresholds to track the supply.If the voltage supplied to the V CC pin of the ATECC508A is different than the system voltage to which the input pull-up resistor is connected, then the system designer may choose to set TTLenable to zero, which enables a fixed input threshold according to the following table. The following applies only when the device is active:Table 2-5. V IL , V IH on All I/O Interfaces3 Compatibility3.1 Atmel ATSHA204ATECC508A is fully compatible with the ATSHA204 and ATSHA204A devices. If properly configured, it can be used in all situations where the ATSHA204 or ATSHA204A is currently employed. Because the Configuration zone is larger, the personalization procedures for the device must be updated when personalizing theATSHA204 or ATSHA204A.3.2 Atmel ATECC108ATECC508A is designed to be fully compatible with the ATECC108 and ATECC108A devices. If properlyconfigured, can be used in all situations where ATECC108 is currently employed. In many situations, theATECC508A can also be used in an ATECC108 application without change. The new revisions providesignificant advantages as outlined below:New Features in ATECC108A vs. ATECC108∙Intrusion Detection Capability, Including Gating Key Use∙New SHA Command, Also Computes HMAC∙X.509 Certificate Verification Capability∙Programmable Watchdog Timer Length∙Programmable Power Reduction∙Shared Random Nonce and Key Configuration Validation (Gendig Command)∙Larger Slot 8 which is Extended to 416 bytes4 Ordering InformationNotes: 1. Please contact Atmel for availability.2. Please contact Atmel for thinner packages.ATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_1020159 9ATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_1020151105Package Drawings5.18-lead SOICATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_10201511 115.2 8-pad UDFNATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_1020151125.33-lead CONTACTATECC508A [Summary Datasheet]Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_10201513 136 Revision HistoryATECC508A [Summary Datasheet] Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_102015114Atmel Corporation 1600 Technology Drive, San Jose, CA 95110 USA T: (+1)(408) 441.0311 F: (+1)(408) 436.4200 │ © 2015 Atmel Corporation. / Rev.:Atmel-8923BS-CryptoAuth-ATECC508A-Datasheet-Summary_102015.Atmel ®, Atmel logo and combinations thereof, Enabling Unlimited Possibilities ®, CryptoAuthentication™, and others are registered trademarks or trademarks of Atmel Corporation in U.S. and other countries.DISCLAIMER: The information in this document is provided in connection with Atmel products. No license, express or implied, by estoppel or otherwise, to any intellectual property right is granted by this document or in connection with the sale of Atmel products. EXCEPT AS SET FORTH IN THE ATMEL TERMS AND COND ITIONS OF SALES LOCATED ON THE ATMEL WEBSITE, ATMEL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON -INFRINGEMENT. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDENTAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAG ES FOR LOSS AND PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF THE USE OR INABILITY TO USE THIS DOCUMENT , EVEN IF ATMEL HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Atmel makes no representations or warranties with respect to the accuracy or completeness of the contents of this document and reserves the right to make changes to specifications and products descriptions at any time without notice. Atmel does not make any commitment to update the information contained herein. Unless specifically provided otherwise, Atmel products are not suitable for, and shall not be used in, automotive applications. At mel products are not intended, authorized, or warranted for use as components in applications intended to support or sustain life.SAFETY-CRITICAL, MILITARY, AND AUTOMOTIVE APPLICATIONS DISCLAIMER: Atmel products are not designed for and will not be used in connection with any applications where the failure of such products would reasonably be expected to result in significant personal injury or death (“Safety -Critical Applications”) without an Atmel officer's specific written consent. Safety-Critical Applications include, without limitation, life support devices and systems, equipment or systems for the operation of nuclear fac ilities and weapons systems. Atmel products are not designed nor intended for use in military or aerospace applications or environments unless specifically designated by Atmel as military-grade. Atmel products are not designed nor intended for use in automotive applications unless specifically designated by Atmel as automotive -grade.。
单片机保密芯片ATSHA204 datasheet

Atmel ATSHA204 Firmware LibraryAtmel ATSHA204User GuideFeatures•Layered and modular design•Compact and optimized for 8-bit microcontrollers•Easy to port•Supports I2C and single-wire communication•Distributed as source codeIntroductionThis user guide describes how to use the Atmel® ATSHA204 firmware library with your own security project and how to tune it towards your hardware. To fully understand this document, it is required to have the library code base.8770A–CRYPTO–5/111.Overviewyered DesignThe library consists of logically layered components in each successive layer. Since the library is distributed as Csource code, a customer application project can use or include specific parts of the library code. For instance, you can compile and link the command marshaling layer functionality or exclude it. For an embedded application thatonly wants authentication from the device, it would make sense for that application to construct the byte streamper the device specification and communicate directly with the silicon via one of the communication methodsavailable. This would generate the smallest code size and simplest code.Figure 1-1.Atmel ATSHA204 library design.2 Atmel ATSHA204 User Guide8770A–CRYPTO–5/111.1.2.Physical LayerThe physical layer is divided into hardware-dependent and hardware-independent parts. Two physical interfaces are provided: an I2C interface and a single-wire interface (SWI). The physical layer provides a common callinginterface that abstracts the hardware (or SWI). By keeping the hardware-independent function names the same for the interfaces, the driver modules can easily be exchanged in a project/makefile without touching the source code.Atmel provides an implementation of the I2C and SWI interfaces for the Atmel AVR® AT90USB1287microcontroller. It also provides an implementation for the Atmel AT91SAM9 processor.munication LayerThe communication layer provides a straightforward conduit for data exchange between the device and theapplication software. Data exchange is based on sending a command and reading its response after commandexecution. This layer retries a communication sequence in case of certain communication errors reported by the Physical layer or the device status register, or when there is an inconsistent response packet (value in count byte, CRC).mand Marshaling LayerThe command marshaling layer is built on top of the communication layer to implement commands that the device supports. Such commands are assembled or marshaled into the correct byte streams expected by the device.1.1.5.Application LayerCustomers may build an API layer on top of the library to provide an easier interface for their security solution.1.2.PortabilityThe library has been tested for building applications and running them without errors for several target platforms, including the Atmel AVR 8-bit MCU family and the Atmel AT91SAM9. To make porting the library to a different target as easy as possible, specific coding rules were applied:•No structures are used to avoid any “packed” and addressing issues on 32-bit targets•Functions in hardware-dependent modules (spi_phys.c and i2c_phys.c) do not “know” any specifics of the device. It will be easy to replace these functions with others from target libraries or with your own. Many I2Cperipherals on 32-bit CPUs implement hardware-dependent module functionality. For such cases, portinginvolves discarding the hardware-dependent I2C module altogether and adapting the functions in thehardware-independent I2C module to the peripheral, or to an I2C library provided by the CPU manufacturer orfirmware development tool•Where 16-bit variables are inserted into or extracted from a communication buffer (LSB first), no type casting is used [(uint8_t *) &uint16_variable], but the MSB and LSB are calculated (msb = uint16_variable>> 8; lsb = uint16_variable & 0xFF). There is no need for a distinction between big- and little-endian targets •Delays and timeouts are implemented using loop counters instead of hardware timers. They need to be tuned to your specific CPU. If hardware or software timers are available in your system, you might replace thepieces of the library that use loop counters with calls to those timer functions. All timing values that all layersneed to access are defined in sha204_config.h1.3.RobustnessThe library applies retry mechanisms in its communication layer (sha204_comm.c) in case of communicationfailures. Therefore, there is no need for an application to implement such retries.Atmel ATSHA204 User Guide 3 8770A–CRYPTO–5/111.4.OptimizationIn addition to the size and speed optimizations left to the compiler, certain requirements were established for the code:•Feature creep is kept in check.•Only 8- and 16-bit variables are used, and so there is no need to import 32-bit compiler libraries. This also makes the library run faster on 8-bit targets.•The layered architecture makes it easy to reduce code size by removing layers and/or functions that are not needed in your project.•Some speed and size penalties are incurred in the communication layer (sha204_comm.c) due to increased robustness. For instance, implementing retries increases code size, while error checking (CRC, count byte inresponse buffer) reduces speed and increases code size.•Arrays for certain commands and memory addresses are declared as “const,” which allows compilers to skip copying such arrays to RAM at startup.2.Example ProjectsAtmel provides example projects for an Atmel AT90USB1287 and an Atmel AT91SAM9 CPU. To become familiar with the library, we advise customers to use an Atmel development kit, such as an Atmel AT88CK101STK3. With this and an integrated development environment (some can be downloaded for free, such as Atmel AVR Studio®or Eclipse with AVR plug-in), you will be able to rebuild the library, download the binary to the target, and start a debug session.3.Project IntegrationIntegrating the library into your project is straightforward. What to modify in the physical layer modules and incertain header files is explained in the following subchapters. The header file “includes” do not contain paths, but only file names. Only one compilation switch to select the interface is used. The source compiles under C99, but should also compile under ANSI C, with the exception of double slashes used for comments.3.1.Folder StructureAll modules reside in one folder. Because of this, you can either add the entire folder to your project and thenexclude the modules you don’t need from compilation, or you can add the modules that you do need one by one.Which modules to exclude from compilation depend on the interface you plan to use. Table 3-1 shows whichmodules to include in your project, depending on your interface. The modules in the other two columns have to be excluded if they do not appear in the column you selected.Table 3-1.Interface Modules2 Hardware-independent file sha204_swi.c sha204_swi.c sha204_i2c.cHardware-dependent files bitbang_phys.cbitbang_config.hswi_phys.h uart_phys.cuart_config.hswi_phys.havr_compatible.hi2c_phys.ci2c_phys.hCompilation switch SHA204_GPIO_BITBANG SHA204_GPIO_UART SHA204_I2C4 Atmel ATSHA204 User Guide8770A–CRYPTO–5/11Atmel ATSHA204 User Guide58770A–CRYPTO–5/113.2.PortingWhen porting the library to other targets or when using CPU clock speeds other than the ones provided by the examples, certain modules have to be modified, including the physical layer modules you plan to use (SWI or I 2C) and the timer_utilities.c timer function (see Timer Functions, Section 3.2.3).3.2.1.Physical Layer ModulesTo port the hardware-dependent modules for SWI or I 2C to your target, you have several options: • Implement the modules from scratch• Modify the UART or I 2C module(s) provided by your target library•Create a wrapper around your target library that matches the software interface of the ATSHA204 library’s physical layer. For instance, your target library for I 2C might use parameters of different type, number, or sequence than those in the i2c_phys.c module [e.g., i2c_send_bytes(uint8_t count, uint8_t *data) ] •Modify the calls to hardware-dependent functions in the hardware-independent module for the physical layer (sha204_swi.c / sha204_i2c.c) to match the functions in your target library. The hardware-dependent module for I 2C reflects a simple I 2C peripheral, where single I 2C operations can be performed (start, stop, write byte, read byte, etc.). Many targets contain more sophisticated I 2C peripherals, where registers have to be loaded first with an I 2C address, a start or stop condition, a data buffer pointer, etc. In such cases,sha204_i2c.c has to be rewritten. A version for such a case that uses the Atmel at91lib library for processors in the Atmel AT91 family (ARM core) is provided as an example in the library distributionThe hardware-dependent modules provided by Atmel use loop counters for timeout detection. When porting, you can either adjust the loop counter start values, which get decremented while waiting for flags to be set or cleared, or you can use hardware timers or timer services provided by a real-time operating system you may be using. These values are defined in bitbang_phys.h (SWI GPIO), uart_phys.h (SWI UART), and i2c_phys.h (I 2C), respectively.3.2.2.Communication Layer Timeout TuningFor SWI, it can take a maximum time of 312.5µs after sending a transmit flag until the device responds. For I 2C, this time depends on the I 2C clock frequency. For many AVR 8-bit CPUs, the maximum frequency is 400kHz. For SWI, every polling cycle takes 312.5µs, while for I 2C at 400kHz, every polling cycle takes 37µs. These values are defined as SHA204_RESPONSE_TIMEOUT in sha204_config.h. If you are running I 2C at a frequency other than 400kHz, calculate the value using the formulas below, or measure it, and change the value in sha204_config.h.Two descriptions follow about how to establish the SHA204_RESPONSE_TIMEOUT.1. With an oscilloscope or logic analyzer, measure the time it takes for one loop iteration in the inner do-whileloop inside the sha204c_send_and_receive function. 2. Or, if you cannot measure the time for one device polling iteration, you can derive it by establishing threeseparate values:• The transmission time for one byte• The transmission overhead time (for instance, setting peripheral registers or checking peripheral status) •The loop iteration time. Consider the following formulas:Time to poll the device:loop overhead comm comm poll t t t t ++=,6Atmel ATSHA204 User Guide8770A–CRYPTO–5/11where:s t GPIO comm µ5.312)(=,0)(=GPIO overhead comm t , (negligible)stop start nacked gets address C I when C I comm t t clockC I clocksbyte address C I t ++⋅=22)"",(9__22, function stop execute write register data function start execute C I overhead comm t t t t ++=)(2,)___204(receive and send sha loop loop t t =, (do-while loop inside function)I 2C example, clocked at 200kHz:s s s MHzclocksbyte address C I t nacked when C I comm µµµ2.516.36.22.09__2)"",(2=++⋅=,s t C I overhead comm µ6.18)(2=,s t C I loop µ0.13)(2=,s s s s t C I poll µµµµ8.820.136.182.51)(2=++=3.2.3.Timer FunctionsThe library provides two blocking timer functions, delay_10us and delay_ms. If you have hardware or software timers available in your system, you may want to replace the library timer functions with those. This way, you may be able to convert the provided blocking timer functions into non-blocking (interrupt driven or taskswitched) ones. Be aware that because delay_ms uses a parameter of uint8_t type, this function can only provide a delay of up to 255ms. The delay_ms function is used to read the response buffer after a memory write or command execution delay. Both are shorter than 255ms.3.3.TuningBy decreasing robustness, features, and/or modularity, you can decrease code size and increase execution speed. This chapter describes a few areas where you could start tuning the library towards smaller code size and/or faster execution. As most of such modifications affect size and speed, they are described in unison.3.3.1.Removal of Command Marshaling LayerThis modification achieves the maximum reduction of code size, but removing the command marshaling layer makes the library more difficult to use. It does not need any modifications of the library code.3.3.2.Removal of Communication LayerThis modification probably achieves the maximum of a combined reduction of code size and increase in speed, but at the expense of communication robustness and ease of use. It does not need any modifications of the library code. Without the presence of the communication layer, an application has to provide the CRC for commands it is sending and for evaluating the status byte in the response. The application can still use any definitions contained it might need in sha204_comm.h, such as the codes for the response status byte.There are other ways to reduce code size and increase the speed of the communication layer. You could remove the CRC check on responses, or you could disable retries by setting SHA204_RETRY_COUNT in sha204_config.h to zero.ing UART Instead of GPIOThe code space for the single-wire interface is smaller when using a UART than GPIO. Also, the code execution is allowed to be slower than when using GPIO since a UART buffers at least one byte. Since the maximum UART bit width is 4.34µs, the GPIO code has to be executed at a speed that allows reliable generation of this bit. There is no such low limit in execution speed for a UART implementation.4.Revision History8770A 05/2011 Initial document for reviewAtmel ATSHA204 User Guide7 8770A–CRYPTO–5/11Atmel Corporation2325 Orchard ParkwaySan Jose, CA 95131USATel: (+1)(408) 441-0311 Fax:(+1)(408) 487-2600 Atmel Asia LimitedUnit 01-5 & 16, 19FBEA Tower, Millennium City 5418 Kwun Tong RoadKwun Tong, KowloonHONG KONGTel:(+852) 2245-6100Fax:(+852) 2722-1369Atmel Munich GmbHBusiness CampusParkring 4D-85748 Garching b. MunichGERMANYTel:(+49) 89-31970-0Fax:(+49) 89-3194621Atmel Japan9F, Tonetsu Shinkawa Bldg.1-24-8 ShinkawaChuo-ku, Tokyo 104-0033JAPANTel:(+81)(3) 3523-3551Fax: (+81)(3) 3523-7581© 2011 Atmel Corporation. All rights reserved. / Rev.:8770A−CRYPTO−5/11Atmel®, logo and combinations thereof, CryptoAuthentication™ and others are registered trademarks or trademarks of Atmel Corporation or its subsidiaries. Other terms and product names may be trademarks of others.Disclaimer: The information in this document is provided in connection with Atmel products. No license, express or implied, by estoppel or otherwise, to any intellectual property right is granted by this document or in connection with the sale of Atmel products. EXCEPT AS SET FORTH IN THE ATMEL TERMS AND CONDITIONS OF SALES LOCATED ON THE ATMEL WEBSITE, ATMEL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDENTAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS AND PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF THE USE OR INABILITY TO USE THIS DOCUMENT, EVEN IF ATMEL HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Atmel makes no representations or warranties with respect to the accuracy or completeness of the contents of this document and reserves the right to make changes to specifications and products descriptions at any time without notice. Atmel does not make any commitment to update the information contained herein. Unless specifically provided otherwise, Atmel products are not suitable for, and shall not be used in, automotive applications. Atmel products are not intended, authorized, or warranted for use as components in applications intended to support or sustain life.。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Session Key Exchange
AES
AES
AES Key
• Same secrets in
both ATSHA204s uniqueness
AES Key
• RNG ensures key • ATSHA204 MAC
High Quality RNG
Page 20 / Copyright 2011 Atmel Confidential
ATSHA204
AT88SC0104 vs ATSHA204
Algorithm Key length Interface Memory NDA requirement
Page 13 / Copyright 2011 Atmel Confidential
AT88SC0104 Atmel Algorithm 64bit I2C 1KB Yes
什么是加密芯片 它本身具有十分安全的保密性,内部可以 存储秘密数据,内置加密算法,通过安全 的认证协议进行认证过程。
认证协议的作用 认证双方在不直接出示密钥的情况下,能 够证明自己知道密钥。
/ Copyright 2011 Atmel Confidential
Page 2
散列函数Hash
Alan 你算出来是多少? Bell
Competitors
Designed
to Defend Against:
‘Dumpster-diving’ attacks Microprobe attacks Timing attacks Protocol attacks Fault attacks Power cycling
Active shield over entire chip All memories internally encrypted Internal state consistency checking Security protocols hard coded Supply tamper protection Internal clock generation Secure test methods, no JTAG No debug probe points, no test pads
Secure Storage
Storage
Key
SHA-256 Hash Calculation
Clear Data to Write
Clear Data to Read
Cryto Data Read
Clear Data Clear Data
SHA-256 Hash Engine
Page 19 / Copyright 2011 Atmel Confidential
(1) Diversified keys根据产品序列码生成key (2) Rolled Keys: 防止每次认证都使用相同的key (3) Created Keys:根据已知的key产生新的key (4) Single-use Keys 使用有次数限制 (5) Password Checking 密码检查
Page 21 / Copyright 2011 Atmel Confidential
Managing Subcontractors
•
Chip Limits Subcontractor Actions
Prevent unauthorized overbuilds • OEM gives subcontractor limited qty of security devices • Warranty Tracking • Subcontractor logs mfr date, conditions, etc • Personalize chip for use at one subcontractor only • Match correct part with equipment/information at that subcon • Control model numbers built by particular subcon • Subcon only has authentication information for certain models
SHA256("Linux"): 4828E60247C1636F57B7446A314E7F599 C12B53D40061CC851A1442004354FED
Page 8
/ Copyright 2011 Atmel Confidential
散列函数Hash
Hash算法与加密算法
Hash算法是不可逆的,也就是不能通过输出文 本转化回原文本。不同文本经过Hash算法后可能 输出相同的结果。 而加密算法是可逆的,每个加密算法都会有相应 的解密算法。原文与密文一一对应。
No
Yes
Page 18 / Copyright 2011 Atmel Confidential
Secret Storage
Customer Board
Key
Random Number Generator
AVR or ARM Microprocessor
Cryto Data Write
ATSHA204
Device
ATSHA204
Secure Key Storage
Random FIPS Number RNG Generator
Accessory
AVR or ARM Microprocessor
ATSHA204
Challenge
Secure Key Storage
SHA-256 Hash Engine
ATSHA204
What can ATSHA204 do?
Authenticate an Accessory Authenticate Firmware Securely Exchange Session Keys Secret Storage
Page 12 / Copyright 2011 Atmel Confidential
Response
Do They Match ?
ห้องสมุดไป่ตู้Stop
SHA-256 Hash Engine
Continue
Page 17 / Copyright 2011 Atmel Confidential
Firmware Authentication
Customer Board
AVR or ARM Microprocessor
Page 15 / Copyright 2011 Atmel Confidential
Accessory Authentication
Device
AVR or ARM Microprocessor
Accessory
ATSHA204
Storage
Key
Random Date / Number Time Generator
Page 9
/ Copyright 2011 Atmel Confidential
HMAC 挑战响应
HMAC
HMAC是密钥相关的哈希运算消息认证码( Hash-based Message Authentication Code ),HMAC运算利用哈希算法,以一个密钥和一个 消息为输入,生成一个消息摘要作为输出。
Challenge
Secure Storage
Key
SHA-256 Hash Calculation
Response
Do They Match ?
SHA-256 Hash Engine
No
Yes
Page 16 / Copyright 2011 Atmel Confidential
Accessory Authentication – Host Chip
Page 6
/ Copyright 2011 Atmel Confidential
散列函数Hash
sha256算法
Page 7
/ Copyright 2011 Atmel Confidential
散列函数Hash
256bit _ string SHA256(string _ anylong )
你先说。如果我说了,我 怎么知道是你算出来的。
不,你先说。我怎么 又知道呢你算过呢? Alan和Bell都是密码学教授,有一天,他们共同解决一个数学难题。 在办公室里他们都没有想出来,却恰好在家里同时想出了答案。
Page 3 / Copyright 2011 Atmel Confidential
散列函数Hash
ATSHA204
Storage
Key
Random Date / Number Time Generator
Challenge
Secure Storage
Key
SHA-256 Hash Calculation
Response
Do They Match ?
SHA-256 Hash Engine
挑战\响应
客户端发送一个消息作为挑战给服务器,服务器 使用事先存储好的密钥求MAC,发回客户端,这 是响应。客户端根据响应来认证。
Page 10 / Copyright 2011 Atmel Confidential
HMAC 挑战响应
挑战\响应
Page 11 / Copyright 2011 Atmel Confidential