Skip to content

Instantly share code, notes, and snippets.

@shuangjj
Last active December 29, 2016 15:44
Show Gist options
  • Save shuangjj/633ca50a653515094abb7668e1fe780e to your computer and use it in GitHub Desktop.
Save shuangjj/633ca50a653515094abb7668e1fe780e to your computer and use it in GitHub Desktop.
### HSM (Hardware Secure Module) vs. TPM (Trusted Platform Module)
http://security.stackexchange.com/questions/88744/what-are-the-differences-between-tpm-and-hsm
- List all i2c buses on BBB
`i2cdetect -l`
i2c-0 unknown OMAP I2C adapter N/A
i2c-2 unknown OMAP I2C adapter N/A
- Detect online i2c slaves
`sudo i2cdetect -y -r 2`
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- 29 -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- 42 -- -- -- -- -- -- -- -- -- -- -- -- --
50: 50 -- -- -- UU UU UU UU -- -- -- -- -- -- -- --
60: 60 -- -- -- 64 -- -- -- UU -- -- -- -- -- -- --
You may encounter error Error: "Can't use SMBus Quick Write command on this bus" if not using `i2cdetect` with the `-r` option.
[Command Reference]: https://github.com/kelly/node-i2c/issues/27
For detailed reference of the `i2cdetect` command: https://linux.die.net/man/8/i2cdetect
Dump the content of EEPROM: `sudo cat /sys/bus/i2c/devices/2-0057/eeprom| hexdump -C`
00000000 aa 55 33 ee 41 31 42 42 2d 42 4f 4e 45 2d 43 52 |.U3.A1BB-BONE-CR|
00000010 59 50 54 4f 00 00 00 00 00 00 00 00 00 00 00 00 |YPTO............|
00000020 00 00 00 00 00 00 30 30 41 30 53 70 61 72 6b 46 |......00A0SparkF|
00000030 75 6e 00 00 00 00 00 00 00 00 42 42 2d 42 4f 4e |un........BB-BON|
00000040 45 2d 43 52 59 50 54 4f 00 00 00 11 32 30 31 34 |E-CRYPTO....2014|
00000050 30 30 30 30 30 30 30 30 00 00 00 00 00 00 00 00 |00000000........|
00000060 00 00 00 00 00 00 00 00 00 00 e0 73 e0 73 00 00 |...........s.s..|
00000070 00 00 00 00 00 00 00 00 00 00 00 00 a0 26 c0 06 |.............&..|
00000080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000090 00 00 a0 2f 00 00 00 00 00 00 c0 17 00 00 00 00 |.../............|
000000a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000000e0 00 00 00 00 00 00 00 00 00 00 00 00 01 f4 00 00 |................|
000000f0 00 00 00 00 47 50 47 20 46 69 6e 67 65 72 70 72 |....GPG Fingerpr|
00000100 69 6e 74 3a 20 30 78 42 35 39 31 39 42 31 41 43 |int: 0xB5919B1AC|
00000110 37 31 33 35 39 30 35 46 34 36 36 39 43 38 34 37 |7135905F4669C847|
00000120 42 46 41 35 30 33 31 42 44 32 45 44 45 41 36 0a |BFA5031BD2EDEA6.|
00000130 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
*
00008000
### ATECC108 doesn't support bitcoin/etherreum secp256k1 ECDSA
- EClet Link: https://cryptotronix.com/products/retired-products/eclet/
- ATECC108 datasheet: http://www.atmel.com/Images/Atmel-8873S-CryptoAuth-ATECC108-Datasheet-Summary.pdf
- Ethereum Hashing and DSA algorithms summarized by ledger: https://blog.ledger.co/innovating-with-bolos-building-an-ethereum-hardware-wallet-216cf5e248a1#.20u7suma8
### Cape Guide
- http://elinux.org/Cryptotronix:CryptoCape
- https://learn.sparkfun.com/tutorials/cryptocape-hookup-guide
### Why secp256k1, not secp256r1/P256
https://bitcointalk.org/index.php?topic=151120.0
http://frass.woodcoin.org/secp256k1-vs-p256/
https://safecurves.cr.yp.to/
Secure Communications Hub (Atmel SAME70)
Atmel SAML21J17A
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment