SparkFun CryptoShield
sparkfun.com
sparkfun.com
It supports features like "encrypted writes" where the host microcontroller encrypts data, sends the ciphertext on the SPI link, ATAES132 decrypts it, and stores the plaintext in internal EEPROM. Later the host can do "encrypted reads" where ATAES132 reads the plaintext from internal EEPROM, encrypts it (possibly with a different key), sends it on the SPI link, and the host decrypts the ciphertext.
Firstly, there is no mechanism in place for the host to securely share a key with ATAES132. The key would have to be pre-shared during manufacturing. Secondly, if the host has to have the key and has to do encryption/decryption by itself, why not just read/write encrypted data on a standard SPI EEPROM? Thirdly, if I am misunderstanding things and in fact plaintext or keys are exchanged on the SPI link, then nothing stops an attacker from sniffing the SPI link or doing active MitM attacks.
This whole chip smells like it was invented to satisfy PHBs who demand crypto but who have no understanding how to implement crypto correctly.
It's odd to see these chips get attention, as I just ordered some of them to play around with no particular goal in mind. It did make it easier to find out what public information is available on the ECC and TPM chips (the actual datasheets are NDA-only - a sure sign we're dealing with people who have a much different view of "crypto" ! )
IMHO there isn't a specific purpose for each of the chips included (like most dev boards). It's just one each of http://www.atmel.com/products/security-ics/cryptoauthenticat... and their TPM. The individual chips are only $1 for singles.
Power usage approaches Raspberry Pi anyway; the RTC in this device uses between 0.75 and 1W
Oh, wait, datasheet says its 0.0015mW max. https://cdn.sparkfun.com/datasheets/Dev/Beagle/DS3231M.pdf And 1 Watt would make the part run at 120˚C above ambient.
I think you mean 1.5mW.
Yeah it's totally unrealistic!
For rapid prototyping - the rapid prototyper shouldn't be dealing with cryptographic primitives full stop.
The bigger concern is what you're actually doing with the crypto. Almost every use for crypto is intrinsically linked to transmitting the encrypted data; the amount of work to do something nontrivial would be pretty mental.
Any commercial project would probably approach the problem at a higher level; i.e. you'd buy an ARM microcontroller and a TLS stack.
More generally (and this is not necessarily addressed to you specifically), I find the knee-jerk response of "just use a Raspberry Pi" amusing. I design embedded systems. Raspberry Pi is, at a first approximation, completely useless, for any task you might want to throw at it.
There are many reasons. Power consumption, complexity, failure rate, poor reliability, reliance on SD cards, poor SD card reliability, poor peripherals, poor documentation, I could go on. RPI has two things going for it: 1) the video processing peripherals, 2) publicity/popularity.
Now, when thinking about embedded systems, most of the time I won't even consider things the size of a Pi (or the much, much better BeagleBone Black). They are monsters, enormously complex and power-hungry beasts. What I will consider are MSP430s, STM32s, Kinetis K and L, and similar — so ARM Cortex M0, M0+ and M4 cores, running at about 50MHz, consuming around 60mW of power (about as much as an LED), and taking up about, say, 8mm2 of board space (that includes all necessary passives). These are well documented, have reasonable complexity, and can be programmed carefully to achieve excellent reliability.
These systems also need crypto, and by crypto I don't just mean "accelerated AES". The Atmel security line is not just "accelerators".
In other words, this board is a very interesting prototyping tool, and no, the answer to any problem is not "just use a Raspberry Pi".
Well, the point of using special-purpose chips like the ATAES132, which has a hardware implementation of AES, is so you wouldn't have to implement the algorithm in AVR.
Crypto is easy to get wrong in every corner - and using a Neo+GPG it's more likely to actually work (plus, it's FIPS-140 certified)
For learning, this seems cool - although I don't see the ways in which it is more educating than software only crypto.