Electronic Components Datasheet Search
  English  ▼
ALLDATASHEET.NET

X  

DEV-15573 Datasheet(PDF) 22 Page - SparkFun Electronics

Part # DEV-15573
Description  Cryptographic Co-Processor ATECC508A (Qwiic) Hookup Guide
PDF  31 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
Manufacturer  SPARKFUN [SparkFun Electronics]
Direct Link  https://www.sparkfun.com/
Logo SPARKFUN - SparkFun Electronics

DEV-15573 Datasheet(HTML) 22 Page - SparkFun Electronics

Back Button DEV-15573 Datasheet HTML 18Page - SparkFun Electronics DEV-15573 Datasheet HTML 19Page - SparkFun Electronics DEV-15573 Datasheet HTML 20Page - SparkFun Electronics DEV-15573 Datasheet HTML 21Page - SparkFun Electronics DEV-15573 Datasheet HTML 22Page - SparkFun Electronics DEV-15573 Datasheet HTML 23Page - SparkFun Electronics DEV-15573 Datasheet HTML 24Page - SparkFun Electronics DEV-15573 Datasheet HTML 25Page - SparkFun Electronics DEV-15573 Datasheet HTML 26Page - SparkFun Electronics Next Button
Zoom Inzoom in Zoom Outzoom out
 22 / 31 page
background image
The Code
The fresh code that you see when you open up Example3_Verify.ino has place holders. Notice how all the bytes
in each array is simply a bunch of 0x00 s.
uint8_t publicKeyExternal[64] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
uint8_t message[32] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
uint8_t signature[64] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
You will need to delete these and paste in your own unique arrays. You could type them in manually, but it will be
much easier to copy and paste them from the terminal output from Example 2.
Also note, when you highlight text within an Arduino serial monitor window, you must use the keyboard to actually
copy them ( Ctrl + C ). It won't let you right-click to copy.
And the actual verification of the signature happens as a single function call. It is located at the bottom of setup().
// Let's verirfy!
if (atecc.verifySignature(message, signature, publicKeyExternal)) Serial.println("Success! Signa
ture Verified.");
else Serial.println("Verification failure.");
atecc.verifySignature(message, signature, publicKeyExternal) is the actual call. This function will return a
boolean true if all three things are good, and a false if something doesn't add up. If you change a single bit in any
three of the arguments, then it won't verify.
Two nice things to thing about:
1. The only place in the world that could create the signature that will verify (using this public key) is inside
your one unique co-processor. No one else in the world would ever be able to impersonate it. Pretty cool
huh!
2. If any of the message was changed (even just a single bit flipped), then this verification would fail. This
means that you can be very confident that the message was transmitted and received properly. In this way it
is acting as a very robust checksum. It also means that if someone actually intercepted this message, they
won't be able to change anything in the message. Sweet!
Example 4: From Alice to Bob



Html Pages

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31


Datasheet Download

Go To PDF Page


Link URL



Does ALLDATASHEET help your business so far?  [ DONATE ] 

About Alldatasheet   |   Advertisement   |   Contact us   |   Privacy Policy   |   Link to Datasheet    |   Link Exchange   |   Manufacturer List
All Rights Reserved©Alldatasheet.com


Mirror Sites
English : Alldatasheet.com  |   English : Alldatasheet.net  |   Chinese : Alldatasheetcn.com  |   German : Alldatasheetde.com  |   Japanese : Alldatasheet.jp
Russian : Alldatasheetru.com  |   Korean : Alldatasheet.co.kr  |   Spanish : Alldatasheet.es  |   French : Alldatasheet.fr  |   Italian : Alldatasheetit.com
Portuguese : Alldatasheetpt.com  |   Polish : Alldatasheet.pl  |   Vietnamese : Alldatasheet.vn
Indian : Alldatasheet.in  |   Mexican : Alldatasheet.com.mx  |   British : Alldatasheet.co.uk  |   New Zealand : Alldatasheet.co.nz
Family Site : ic2ic.com  |   icmetro.com