Atmel Sam Cryptography with CryptoAuth-Xpro-B

From Embedded Lab Vienna for IoT & Security
Revision as of 11:41, 23 June 2019 by Nmuehlberger (talk | contribs)
Jump to navigation Jump to search

Summary

This documentation describes the usage of security features for microcontrollers especially for the Atmel Sam R21 with the expansion board Atcryptoauth Xpro B.

Requirements

Description

The Cryptoauth expansion board contains four chips which gets connected via I2C Chips:

Implementation for ATECCx08A and ATSHA204A

The implementation for ATECCx08A and ATSHA204A is based on the Cryptoauthlib.For ease of use of the ASF USART a custom abstraction layer got implemented.

The example program Implements:

  • Showing the serial numbers of the chips
  • Hashing a message
  • Showing locked zones
  • Locking zones
  • Generate a random number (only works with locked configuration Zone)
  • Generate a keypair (only works with locked configuration Zone)

Usage:

  • Connect your microcontroller to the EDGB USB port and upload the software
  • Open a terminal Program (Putty, TeraTerm)
  • Terminal program configuration:
  Baud rate     115200
  Data bits     8
  Stop bits     1
  Parity        none
  • Press the restart button in the controller
  • The implementation has an text menu which allows you to navigate by numbers

Implementation for ATAES132A

The ATAES132A Chip is NOT based on the Cryptoauthlib. Therefor Atmel doesn't offer complete or functioning example codes for this Chip. There are some example codes that might be working but only for the SAMD21 Xplained Pro board not the SAMR21 Xplained Pro B board, which we are using. I tried to use those example codes, with some changes so it would be working with our board, but I got ERROR messages each time. The main error probably is, that the SAMR21 Xplained Pro Microcontroller is not able to connect to the ATAES132A chip as a I2C slave.

Security Features

File:Sicherheits-Features.pdf

Cryptographic algorithms

Click here for Pdf

User Guides

Used Hardware

Courses

Wahlfachprojekt1 2019

References

Implementation:

Cryptographic algorithms: