Secure 2 Click Board
Secure 2 Click Board
Key Features
- Crypto element device with secure hardware-based key storage, 512 bit OTP (One Time Programmable) Bits for Fixed Information
- Based on the ATAES132A - a cryptographic coprocessor with secure hardware-based key storage from Microchip
- Used for storage of up to 16 keys, certificates, miscellaneous read/write, read-only or secret data, consumption logging, and security configurations
- mikroBUS: I2C and SPI Interface
Overview
The Secure 2 Click Board™ carries the ATAES132A, a cryptographic coprocessor with secure hardware-based key storage from Microchip. The Click Board™ is designed to run on either 3.3V or 5V power supply. The Secure 2 Click Board™ communicates with the target microcontroller over SPI and I2C interface, with additional functionality provided by the INT pin on the mikroBUS line.
The Secure 2 Click Board™ carries the ATAES132A, a cryptographic coprocessor with secure hardware-based key storage from Microchip. The click is designed to run on either 3.3V or 5V power supply. Secure 2 click communicates with the target microcontroller over SPI and I2C interface, with additional functionality provided by the INT pin on the mikroBUS™ line. The click comes with stackable headers so you can put another click on the top of it.
NOTE: The Secure 2 Click Board™comes with stacking headers which allow you to combine it with other clicks more easily by using just one mikroBUS™ socket.
ATAES132A FEATURES
The ATAES132A is a high-security, Serial Electrically-Erasable and Programmable Read-Only Memory (Serial EEPROM) providing both authentication and confidential nonvolatile data storage capabilities. Access restrictions for the 16 user zones are independently configured, and any key can be used with any zone. In addition, keys can be used for standalone authentication.
The AES-128 cryptographic engine operates in AES-CCM mode to provide authentication, stored data encryption/decryption, and Message Authentication Codes. Data encryption/decryption can be performed for internally stored data or for small external data packets, depending upon the configuration. Data encrypted by one ATAES132A device can be decrypted by another, and vice versa.
SPECIFICATIONS
Type | Encryption |
Applications | The Secure 2 Click Board™ can store up to 16 keys, certificates, miscellaneous read/write, read-only or secret data, consumption logging, and security configurations |
On-board modules | ATAES132A - a cryptographic coprocessor with secure hardware-based key storage from Microchip |
Key Features | Crypto element device with secure hardware-based key storage, 512 bit OTP (One Time Programmable) Bits for Fixed Information |
Interface | I2C,SPI |
Compatibility | mikroBUS |
Click board size | M (42.9 x 25.4 mm) |
Input Voltage | 3.3V or 5V |
PINOUT DIAGRAM
This table shows how the pinout of the Secure 2 Click Board™ corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | Pin | Notes | ||||
---|---|---|---|---|---|---|---|
NC | 1 | AN | PWM | 16 | NC | ||
NC | 2 | RST | INT | 15 | AUTH | Auth signaling | |
Chip select | CS | 3 | CS | TX | 14 | NC | |
SPI clock | SCK | 4 | SCK | RX | 13 | NC | |
Slave data out for SPI | SDO | 5 | MISO | SCL | 12 | SCL | I2C clock |
Slave data in for SPI | SDI | 6 | MOSI | SDA | 11 | SDA | I2C data |
Power supply | +3.3V | 7 | 3.3V | 5V | 10 | +5V | Power supply |
Ground | GND | 8 | GND | GND | 9 | GND | Ground |
Software Support
Code examples for the Secure 2 Click Board™, written for MikroElektronika hardware and compilers are available on Libstock.
CODE SNIPPET
The following code snippet shows functions that will lock the configuration zone of the device and then output a generated random number.
01 //Configuration zone locking 02 if (aes132m_execute(AES132_LOCK, 0x02, 0x0000, 0x0000, 03 0, 0, 0, 0, 0, 0, 0, 0, txBuffer, rxBuffer) 04 == AES132_FUNCTION_RETCODE_SUCCESS) 05 { 06 LOG( "rnrn Configuration zone locked! " ); 07 } 08 else 09 { 10 LOG( "rnrn Configuration zone locking failed" ); 11 LOG( " or it is already locked." ); 12 } 13 memset (txBuffer, 0, 84); 14 memset (rxBuffer, 0, 36); 15 /* 16 Fourth test - Random number generator 17 Will only return 0xA5 unless config zone is locked first. 18 */ 19 if (aes132m_execute(AES132_RANDOM, 0x00, 0x0000, 0x0000, 20 0, 0, 0, 0, 0, 0, 0, 0, txBuffer, rxBuffer) 21 == AES132_FUNCTION_RETCODE_SUCCESS) 22 { 23 LOG( "rnrn Generated random number: " ); 24 outputHex (&rxBuffer[2], 16); 25 } 26 else LOG( "rnrn Random number generation failed..." ); 27 28 memset (txBuffer, 0, 84); 29 memset (rxBuffer, 0, 36);
Software Support
Code examples for the Secure 2 Click Board™, written for MikroElektronika hardware and compilers are available on Libstock.
CODE SNIPPET
The following code snippet shows functions that will lock the configuration zone of the device and then output a generated random number.
01 //Configuration zone locking 02 if (aes132m_execute(AES132_LOCK, 0x02, 0x0000, 0x0000, 03 0, 0, 0, 0, 0, 0, 0, 0, txBuffer, rxBuffer) 04 == AES132_FUNCTION_RETCODE_SUCCESS) 05 { 06 LOG( "rnrn Configuration zone locked! " ); 07 } 08 else 09 { 10 LOG( "rnrn Configuration zone locking failed" ); 11 LOG( " or it is already locked." ); 12 } 13 memset (txBuffer, 0, 84); 14 memset (rxBuffer, 0, 36); 15 /* 16 Fourth test - Random number generator 17 Will only return 0xA5 unless config zone is locked first. 18 */ 19 if (aes132m_execute(AES132_RANDOM, 0x00, 0x0000, 0x0000, 20 0, 0, 0, 0, 0, 0, 0, 0, txBuffer, rxBuffer) 21 == AES132_FUNCTION_RETCODE_SUCCESS) 22 { 23 LOG( "rnrn Generated random number: " ); 24 outputHex (&rxBuffer[2], 16); 25 } 26 else LOG( "rnrn Random number generation failed..." ); 27 28 memset (txBuffer, 0, 84); 29 memset (rxBuffer, 0, 36);
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.