Atmel ATSHA204应用总结

1 ACES软件安装
Atmel Crypto Evaluation Studio (ACES)
https://www.microchip.com/DevelopmentTools/ProductDetails/PartNO/Atmel%20Crypto%20%20Studio%20(ACES)

2 基本概念
ACES CE:Atmel Crypto Evalution Studio Configuration Environment(基于加密芯片ATSHA204的USB Dongle IDE配置环境)
ATSHA204:官方参考板使用3pin接口,用的是单线SDA通信协议;如果要I2C支持(7位地址是0x64),那么就需要选择8pin芯片
MAC:ATSHA204A Message Authentication Code
nonce随机数生成器:就是challenge

3 数据包格式
Figure 3-1 Command Packets

Figure 3-2 Response Packets

[ACES][Tools] [Command Builder]
Figure 3-3 Command Builder

4 工作原理
1)在ATSHA204A芯片的slot0中写入一个32字节的秘钥,设置为不可读。这个秘钥只有几个人知道,并且不外泄,主控MCU与芯片相连,MCU启动时候,读取ATSHA204A芯片序列号,为后面计算MAC做准备
2)发送一个nonce命令给ATSHA204A,让其更新内部的TempKey中的值
3)MCU内部也根据nonce的模式计算一下Tempkey的值,称之为host_tempkey,如果一切正常,那么Tempkey和host_tempkey中的值是一致的
4)MCU根据host_tempkey、序列号、以及秘钥,计算出一个摘要digest1
5) 给ATSHA204A发送MAC命令,ATSHA204A根据存储在slot区域中的秘钥来计算digest2并返回给MCU
6)MCU判断digest1和digest2是否匹配,不匹配将程序挂起即可

5 python SDK
1)安装Python 3.8
安装时选择安装pip工具

2)安装Visual Studio
VS提供了nmake命令

3)cmake for Windows
CMAKE_C_COMPILER:指定C编译器
CMAKE_CXX_COMPILER:指定C++编译器

在CMakeLists.txt中指定,使用SET设定这2个变量,需要将设置编译器的代码放在project之前
SET(CMAKE_C_COMPILER “/tools/gcc-4.2.0/bin/gcc”)
SET(CMAKE_CXX_COMPILER “/home/tools/gcc-4.2.0/bin/g++”)

4)安装ATSHA204A库
https://github.com/MicrochipTech/cryptoauthtools

cd PATH_TO\cryptoauthtools\python\examples
python -m pip install -r requirements.txt
或者
python -m pip install cryptoauthlib
python -m pip install cryptography

cryptoauthlib,可能会安装失败,可以根据安装提示从对应的URL上下载,下载下来后,进入对应目录,使用python setup.py install手工安装

6 URLs
Atmel AT88CK454BLACK Quick Start Guide
http://ww1.microchip.com/downloads/en/DeviceDoc/doc8724.pdf

使用Python来操作Microchip安全芯片
https://blog.csdn.net/FlyerInk/article/details/85772140

ATSHA204A加密芯片攻略--使用篇
https://blog.csdn.net/a5882230/article/details/51931099

7 Abbreviations
AVE:Average
BP:Blockproducer,区块生产者
cert.sf:sigfile
EOS:区块链Enterprise Operation System
learning_rate:学习速率,即是“步长”的意思
MSD:Mean Square Differences,均方差
PAM:Pluggable Authentication Modules
PEM:Privacy Enhanced Mail(一种公匙和私匙文件存储格式)
PKCS:The Public-Key Cryptography Standards
pk8:PKCS #8,
RSA:1977年由罗纳德•李维斯特(Ron Rivest)、阿迪•萨莫尔(Adi Shamir)和伦纳德•阿德曼(Leonard Adleman)一起提出的。
y = kx + b(b表示bias)
convergence:收敛
RMSE:root mean square error,均方根误差

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/473859.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

L2-021 点赞狂魔

一、题目 二、解题思路 统计每个人点赞的不同标签的数量:每行列出一位用户的点赞标签,这些标签可能有重复的,所以将用户的点赞标签存放在 set 里,通过 size() 函数获得点赞的不同标签的数量;结构体包括用户的信息&…

Uniapp真机调试没有检测到设备,请插入设备或启动模拟器后刷新再试

最近用HbuilderX开发遇到了一个问题,之前插上手机就能调试,但最近再写app的时候,插上手机,也打开了开发者模式,但就是检测不到设备。 后来发现是要打开MIDI模式。vivo手机路径为:系统管理与升级->开发者…

VS2022创建控制台应用程序后没有Main了,该如何解决?

用VS2022创建一个控制台应用后,没有名称空间和Main函数了,只有一个WriteLine,如下所示。 // See https://aka.ms/new-console-template for more information Console.WriteLine("Hello, World!");首先说明一下原因,在…

元器件焊盘的PCB处理方式分析与总结

对于高速信号走线的特性阻抗,都需要按照实际要求进行精度控制,所以,任何因设计因素带来的阻抗波动都应该进行优化,如下图所示,为一个12层板设计中的50Ω微带走线,需要在走线之上放置电感; 但是&…

django定时任务(django-crontab)

目录 一:安装django-crontab: 二:添加django_crontab到你的INSTALLED_APPS设置: 三:运行crontab命令来创建或更新cron作业: 四:定义你的cron作业 五:创建你的管理命令&#xff…

RCS系统之:基础算法

设计仓库机器人的控制管理系统涉及到路径规划、任务分配、库存管理、通信系统等方面。以下是一个基本的仓库机器人控制管理系统方案的概述: 路径规划:设计一个路径规划系统,用于确定机器人在仓库内的最佳行驶路径,以最大程度地提…

vue3之setup的基本使用

setup是一个全新的配置项,值是一个函数,既然是配置项,是否与data、methods是兄弟? 没错,确实是兄弟关系,只不过到了vue3,就不怎么使用data这些配置项,会使用setup,让我为…

02 c++入门

目录 c关键字命名空间c输入&输出缺省参数函数重载引用内联函数auto关键字(c11)基于范围的for循环(c11)指针空值—nullptr(c11) 0. 本节知识点安排目的 c是在c的基础上,容纳进去了面向对象编程思想,并增加了许多有用的库,以及编程范式等…

(07)Hive——窗口函数详解

一、 窗口函数知识点 1.1 窗户函数的定义 窗口函数可以拆分为【窗口函数】。窗口函数官网指路: LanguageManual WindowingAndAnalytics - Apache Hive - Apache Software Foundationhttps://cwiki.apache.org/confluence/display/Hive/LanguageManual%20Windowing…

时序预测 | Matlab实现BO-LSSVM贝叶斯算法优化最小二乘支持向量机时间序列预测

时序预测 | Matlab实现BO-LSSVM贝叶斯算法优化最小二乘支持向量机时间序列预测 目录 时序预测 | Matlab实现BO-LSSVM贝叶斯算法优化最小二乘支持向量机时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 Matlab实现BO-LSSVM贝叶斯算法优化最小二乘支持向量机时间…

pubg开启之路

概要: pubg中文名绝地求生,一款免费游戏,本篇主要讲述如何在电脑上开始pubg 要想下载并开始玩pubg有两个方法(具体就是两个软件),一个是epic games,另一个是steam 一、加速器是必要的吗? 1、不使用加速…

[word] word怎么使用平均函数 #职场发展#知识分享#其他

word怎么使用平均函数 word怎么使用平均函数? 以word 2016版本为例,具体的操作方法步骤如下: 所需的工具材料:电脑、office软件 步骤一、打开需要求平均数的word文件,。 步骤二、选择工具栏中的“布局”标签&#…