使用Python来操作Microchip安全芯片

python读usb_使用Python来操作Microchip安全芯片 Microchip提供业界优秀的安全方案,包括支持SHA256,ECC P256和AES128的完整算法支持,同时提供了基于C语言的器件支持库cryptoauthlib. 由于Python语言的通用性和便利性,Microchip也提供了基于Python语言的CryptoAuthLib和相关的例程cryptoauthtools。CryptoAuthLib Python库可以... 阅读详情

使用Python来操作Microchip安全芯片


Microchip提供业界优秀的安全方案,包括支持SHA256,ECC P256和AES128的完整算法支持,同时提供了基于C语言的器件支持库cryptoauthlib.

由于Python语言的通用性和便利性,Microchip同时提供了基于Python语言的CryptoAuthLib和相关的例程cryptoauthtools。

CryptoAuthLib Python库可以做什么 ?

CryptoAuthLib库提供了访问cryptoauthlib大部分功能的模块,这些模块只是对C语言库cryptoauth中的API做了一层封装,以实现在Python中的调用。

Microchip的cryptoauthlib的访问页面如下:
CryptoAuthLib Link

准备工作

软件部分

首先从github上下载最新的例程代码,地址如下:
https://github.com/MicrochipTech/cryptoauthtools

安装Python需要的组件。
进入cryptoauthtools\python\examples目录中,运行以下命令:

    pip install -r requirements.txt

Python将自动安装cryptoauthlib和cryptography库(需要v2.3以上的版本)

另外,也可以手动安装cryptoauthlib和cryptography

    pip install cryptoauthlib
    pip install cryptography
硬件部分

支持的硬件如下:

支持的器件型号如下:

下面的演示是在Windows 10 64bit,Python 3.6下运行的,使用的硬件是CryptoAuthentication Starter Kit。使用SAMD21实现USB HID通信,再转换为I2C接口控制安全芯片。

  • Tips: 需注意USB线应该插到Target USB上。

可以使用SAMD21的开发板烧录一个固件来实现的。这个固件可以在官网下载ATCRYPTOAUTHSSH-XSTK_v1.0.1.zip

运行例程

这些例子旨在简单明了地说明基本概念。
要获得任何示例的帮助,您可以参考相关文档(例如:[info.py] 有一个[info.md]说明文档)或者通过命令行:

    info.py -h
usage: info.py [-h] [-i {i2c,hid}] [-d {ecc,sha}] [-p [PARAMS [PARAMS ...]]]

示例列表:

  • [info.py]: 读器件信息. 详见[info.md]
  • [config.py]: 配置器件. 详见[config.md]
  • [ecdh.py]: 演示 ECDH 运算. 详见[ecdh.md]
  • [sign_verify.py]: 演示 ECDSA 签名和验证. 详见[sign_verify.md]
  • [read_write.py]: 演示从Slot中连续加密写和读. 详见[read_write.md]
Info例程

这个示例从设备中提取标识信息和配置。

  • 设备类型识别和掩码OTP修改
  • 序列号
  • 配置区数据
  • 锁状态

可选的参数:

  -h, --help            显示帮助信息
  -i {i2c,hid}, --iface {i2c,hid}
                        接口类型 (默认: hid)
  -d {ecc,sha}, --device {ecc,sha}
                        器件类型(默认: ecc)
  -p [PARAMS [PARAMS ...]], --params [PARAMS [PARAMS ...]]
                        接口参数如key=value

使用DM320109和ATECC508A运行如下:

$ python info.py

Device Part:
    ATECC508A

Serial number:
    01 23 6B 3F AC 10 2F 1B A5


Configuration Zone:
    01 23 6B 3F 00 00 50 00 AC 10 2F 1B A5 00 45 00
    B0 00 55 00 8F 20 C4 44 87 20 87 20 8F 0F C4 36
    9F 0F 82 20 0F 0F C4 44 0F 0F 0F 0F 0F 0F 0F 0F
    0F 0F 0F 0F FF FF FF FF 00 00 00 00 FF FF FF FF
    00 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF
    FF FF FF FF 00 00 00 00 FF FF 00 00 00 00 00 00
    33 00 1C 00 13 00 13 00 7C 00 1C 00 3C 00 33 00
    3C 00 3C 00 3C 00 30 00 3C 00 3C 00 3C 00 30 00


Check Device Locks
    Config Zone is locked
    Data Zone is locked

Loading Public key

-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE5O6vcWT7anlt+HFc6AAkF+rOBtly
uOXuM78qcnXtIA+nxvPzSWWiF0yruZK/4ANK8q2C21dICxDwxo7YyYpc4w==
-----END PUBLIC KEY-----

Done
Config例程

在使用加密身份验证设备之前,必须为器件设置好适当的配置。
配置可能非常复杂,需要仔细创建和分析配置交互可能带来的安全漏洞。
开发新配置时,请同时查阅数据表和联系FAE。

这个脚本将编写一个通用配置程序,允许对各种示例进行评估。
在生产设备使用之前,应该修改这个配置。
为了让实验人员更容易使用配置,下面列出了一些设置项。

ATECC508A配置
  • Slot 4 & 6允许非加密写入,这意味着保护密钥可以在不需要很强安全性的前提下可以被改写。
# Example configuration for ATECC508A minus the first 16 bytes which are fixed by the factory
_atecc508_config = bytearray.fromhex(
    'B0 00 55 00 8F 20 C4 44 87 20 87 20 8F 0F C4 36'
    '9F 0F 82 20 0F 0F C4 44 0F 0F 0F 0F 0F 0F 0F 0F'
    '0F 0F 0F 0F FF FF FF FF 00 00 00 00 FF FF FF FF'
    '00 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF'
    'FF FF FF FF 00 00 55 55 FF FF 00 00 00 00 00 00'
    '33 00 1C 00 13 00 13 00 7C 00 1C 00 3C 00 33 00'
    '3C 00 3C 00 3C 00 30 00 3C 00 3C 00 3C 00 30 00')
ATECC608A配置:
  • 同ATECC508A
  • Slot 4是额外增加的,用作从tempkey中读取ECDH前导密钥和KDF因子的保护密钥
# Example configuration for ATECC608A minus the first 16 bytes which are fixed by the factory
_atecc608_config = bytearray.fromhex(
    'B0 00 55 01 8F 20 C4 44  87 20 87 20 8F 0F C4 36'
    '9F 0F 82 20 0F 0F C4 44  0F 0F 0F 0F 0F 0F 0F 0F'
    '0F 0F 0F 0F FF FF FF FF  00 00 00 00 FF FF FF FF'
    '00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00'
    '00 00 00 00 00 00 55 55  FF FF 06 40 00 00 00 00'
    '33 00 1C 00 13 00 13 00  7C 00 1C 00 3C 00 33 00'
    '3C 00 3C 00 3C 00 30 00  3C 00 3C 00 3C 00 30 00')
ATSHA204A配置:
  • Solt可自由写入,无需事先知道Slot中的内容
_atsha204_config = bytearray.fromhex(
    'C8 00 55 00 8F 80 80 A1 82 E0 C4 F4 84 00 A0 85'
    '86 40 87 07 0F 00 C4 64 8A 7A 0B 8B 0C 4C DD 4D'
    'C2 42 AF 8F FF 00 FF 00 FF 00 FF 00 FF 00 FF 00'
    'FF 00 FF 00 FF FF FF FF FF FF FF FF FF FF FF FF'
    'FF FF FF FF 00 00 55 55')

上述示例主要是为了演示。实际使用中有一些安全性常识特别需注意的:

  • 设备的用户/实验者必须仔细设置和管理密钥。
  • 否则,如果这些密钥丢失或不小心设置,就会使设备变得异常。

如果设备之前没有被配置为可以使用,那么可以编写一个支持许多用例的基本配置(这是不可逆的)。

运行配置脚本可以如下运行:

查看脚本的可选项和帮助信息:

$ python config.py -h

运行配置脚本:

$ python config.py
ECDH例子

ECDH命令实现了椭圆曲线Diffie-Hellman算法,将内部私钥与外部公钥组合在一起,以计算共享密钥。
示例中genkey命令生成两个独立的ECC密钥对,然后通过ECDH命令计算共享密钥。

如果设备之前没有被配置为可以使用,那么可以编写一个支持许多用例的基本配置(这是不可逆的)。

$ python config.py

运行此示例的步骤:
查看脚本的可选项和帮助信息:

$ python ecdh.py -h

运行ECDH脚本:

$ python .\ecdh.py

Performing ECDH operations in the clear - see datasheet for encryption details

Host Public Key:
    9C 9C 1F 4D 71 0F 39 6E C0 49 80 E3 C7 A5 FA F7
    89 E6 39 F4 55 13 49 51 16 1D AA 93 58 52 07 7F
    87 36 AD DA 8E 4F 88 BF 51 29 F3 08 94 28 FC 7C
    C8 82 B5 33 AD E8 93 8B FC 52 33 35 22 F6 E2 3C


Device public key:
    49 E5 CE F0 48 F9 3C 81 D0 99 6D F0 E9 BD 6F 70
    A3 C9 7C 61 46 89 26 49 1E 0B E1 24 C1 42 95 58
    A3 8F 97 8B E6 CF 78 64 EC C8 81 7A A0 4D E8 BB
    E1 4E 99 F7 35 31 ED E1 05 88 97 37 BE B9 E1 2D


Host Calculated Shared Secret:
    E5 0B 40 8F F7 8F C7 92 4B AA 5F 04 9F 5E 16 64
    E7 80 11 A3 FC 7D B4 8E 17 4B 05 44 3E 85 12 2E


Device Calculated Shared Secret:
    E5 0B 40 8F F7 8F C7 92 4B AA 5F 04 9F 5E 16 64
    E7 80 11 A3 FC 7D B4 8E 17 4B 05 44 3E 85 12 2E


Comparing host and device generated secrets:
    Success - Generated secrets match!

Done
read_write示例

Read命令从设备的一个内存区域读取。数据在返回到系统之前可以选择加密。
写入命令写入设备上的EEPROM区域。
根据槽的WriteConfig字节的值,数据可能需要在发送到设备之前由系统加密
这个例子说明了明文写、明文读、加密读和加密写的使用

$ python .\read_write.py -d sha

Basic Read/Write Example

Generaing data using RAND command
    Generated data:
        31 38 23 06 13 74 7E 6B 3C 3B 10 76 01 D8 3A F3
        C3 27 3F 73 22 E4 7F 64 3C 89 D6 2A B9 FA 22 0D


Write command:
    Writing data to slot 8
    Write Success

Read command:
    Reading data stored in slot 8
    Read data:
        31 38 23 06 13 74 7E 6B 3C 3B 10 76 01 D8 3A F3
        C3 27 3F 73 22 E4 7F 64 3C 89 D6 2A B9 FA 22 0D


Verifing read data matches written data:
    Data Matches!

Writing IO Protection Secret

Generaing data using RAND command
    Generated data:
        E3 C0 60 F4 6F 48 70 83 F8 C8 7F 1C B0 25 93 F0
        2B 5B F4 D8 4E 50 E8 B1 3C 5E 94 1E 76 4A 11 BF


Encrypted Write Command:
    Writing data to slot 3
    Write Success

Encrypted Read Command:
    Reading data stored in slot 3
    Read data:
        E3 C0 60 F4 6F 48 70 83 F8 C8 7F 1C B0 25 93 F0
        2B 5B F4 D8 4E 50 E8 B1 3C 5E 94 1E 76 4A 11 BF


Verifing read data matches written data:
    Data Matches!

Done
ECDSA签名验证示例

Sign命令使用ECDSA算法和Slot中的私钥生成签名。

Verify命令接受ECDSA签名,并验证该签名是否由输入消息给定的摘要和公钥正确生成的。

这个例子演示了ECC Sign和Verify命令在受支持的情况下的使用加密身份验证设备以及主机端创建和验证签名的步骤。

在这个例子中:

  • 生成随机消息
  • 消息使用私钥签名
  • 签名消息使用关联的公钥验证

签名的创建和验证可以由设备或主机根据脚本参数执行。

$ python .\sign_verify.py

Sign/Verify Example

Signing Public key:
    2A 51 36 3C 62 10 6A D5 27 8E 0B 72 ED 3A A1 B9
    4E DF 3B C8 45 82 44 93 9E 18 C3 36 FB 7F A3 2C
    F5 B0 47 0E 3D CE 55 7D 99 A0 56 34 BE 43 59 36
    50 82 93 49 58 7B F4 2B 99 DA 3C 33 12 19 99 82

Message Digest:
    09 BA 4E F5 83 A1 E8 19 19 1F FD 4B 86 D5 55 0D
    27 6B 4A C0 D3 54 E1 C4 FD CC 47 D6 D8 8C DC 33


Signing the Message Digest
    Signing with device

Signature:
    22 3C 80 CE F4 2C DB 55 FB 8D 5B 57 03 FB 3A 4C
    0A EB 98 90 85 DC 33 7B D7 3B E8 4B B3 3E 36 C5
    E0 89 C6 F6 AA 80 DC 9F 37 13 97 2D 18 ED 3D BF
    62 10 0A CC 68 6B 1A 45 21 71 2E 5C 14 86 F9 98


Verifing the signature:
    Verifying with host
    Signature is valid!

Done
物联网设备安全芯片SE050与PIC18F26K22应用指南 在物联网安全领域,硬件级安全元件(Secure Element)通过内置加密引擎和防篡改设计,为设备提供比软件方案更可靠的数据保护。其核心原理是将密钥生成、存储和运算完全隔离在安全芯片内,结合ECC/PKI加密算法实现端到端安全。这类技术特别适用于智能电表、支付终端等需要CC EAL6+认证的高安全场景。以恩智浦SE050为例,这款3mm×3mm的安全芯片集成真随机数生成器和X.509证书支持,与PIC18F26K22等低功耗MCU配合时,既能满足物联网终端对SPI/I2C接口的需求,又能有效防御旁路攻击等 阅读详情

相关推荐

Microchip单线EEPROM评估套件GUI操作与固件更新全指南

串行EEPROM是一种通过串行接口进行数据读写的非易失性存储器,其核心原理是利用浮栅晶体管存储电荷来保存数据,掉电后信息不丢失。该技术因其接口简单、占用引脚少、功耗低等优势,在嵌入式系统中被广泛用于存储配置参数、校准数据和用户设置。从技术价值看,串行EEPROM简化了硬件设计,降低了系统成本,并支持在线编程,极大方便了产品开发与后期维护。其典型应用场景包括智能电池管理、医疗传感器、可穿戴设备以及工业控制等对空间和可靠性要求高的领域。本文以Microchip AT21CS系列单线EEPROM及其官方DM160

483

ATSHA204A加密芯片攻略——使用篇

ATSHA204A加密芯片是ATMEL公司研发的一款高安全性的,功能丰富的加密IC,使用SHA-256算法进行加密操作,内置16*32字节的slot(EEPROM)可以存储用户数据和秘钥,唯一的9字节序列号用于区分其他芯片,还有512bits的OTP区用于保存一些固定信息。芯片对外有2中通信方式,分别是单bus和i2c方式,本文所演示的全部使用I2C方式,但所有功能使用单bus方式也可以实现。 ...

a5882230的专栏 5万+

Microchip加入AGL:嵌入式Linux与车载系统生态的软硬协同新局

在嵌入式开发领域,单片机与Linux的边界正被悄然打破。传统上,MCU厂商专注外设与功耗,而随着汽车智能化升级,车载系统对软件工程能力的要求已远超裸机开发范畴。Yocto Project作为构建嵌入式Linux系统的核心工具,为BSP定制和镜像生成提供了标准化框架;Wayland显示协议则替代X11,成为车机HMI的底层合成方案。与此同时,Linux Foundation旗下的Automotive Grade Linux(AGL)项目,正试图将内核、中间件、应用框架与安全策略封装为一套面向量产的车规级参考平

weixin_34293246的博客 777

mirochip的ATECC608B物联网加密芯片中文完整资料(自己翻译的)

CryptoAuthentication™设备完整的资料 介绍功能 •具有基于硬件的安全密钥存储的加密协处理器: –最多可存储16个密钥、证书或数据的受保护存储 •硬件支持非对称签名、验证、,密钥协议: –ECDSA:FIPS186-3椭圆曲线数字签名 –ECDH:FIPS SP800-56A椭圆曲线Diffie-Hellman,密钥协商算法,使用ECC和DH算法结合 –NIST标准P256(ECC secp256r1)椭圆曲线支持 y ^ 2 = x ^ 3 + ax + b secp256r1 p

qq_40916866的博客 3195

Microchip DM160232 EEPROM评估套件与GUI软件实战指南

串行EEPROM作为一种非易失性存储器,通过简单的单线或I2C/SPI接口与主控芯片通信,其核心原理是利用浮栅晶体管存储电荷来实现数据持久化。这项技术因其小尺寸、低功耗和高可靠性,在嵌入式系统中具有重要价值,尤其适用于存储设备配置参数、校准数据或用户设置。其典型应用场景包括IoT传感器节点、可穿戴设备、智能仪表等对功耗和空间敏感的产品。本文以Microchip的DM160232单线EEPROM评估套件为例,深入解析如何利用官方GUI软件进行高效的硬件连接、软件配置、数据读写与擦除操作。文中将结合**评估板*

weixin_30240349的博客 356

嵌入式开发者的技术宝库:Microchip全球支持网络与MPLAB生态实战指南

在嵌入式系统开发领域,高效获取技术支持和学习资源是项目成功的关键。一个强大的技术支持生态系统,通常由系统化的知识库、集成开发工具链、活跃的开发者社区以及详尽的参考设计构成,其核心价值在于帮助开发者从概念评估、原型设计到量产部署的全生命周期中,解决芯片选型、驱动开发、系统调试等实际问题。这类生态通过提供结构化的在线课程、图形化代码配置工具以及实时技术培训,能够显著提升开发效率,降低学习曲线。例如,利用**MPLAB® Code Configurator (MCC)** 这类工具进行图形化外设配置,可以自动生成

dianwonin4433的博客 414

加密芯片法(一)ATSHA204A 特性理解

作用:在基本质询‑响应只用到一个密钥的基础上,GenDig 允许把芯片里“另一个槽(Slot)”里的数据(比如第二把密钥、设备 ID、计数器……)也一起“揉”进摘要里。通俗比喻:就像签合同的时候,不仅在合同上签字,还附上身份证扫描件+合同编号一起盖章,外人更难冒充。好处多层验证:多把“钥匙”同时参与,攻击者必须同时知道所有被混合的内容才能伪造响应。防中间人:即使有人在总线上动手脚、插入假数据,也因为摘要里“包含了真实芯片里数据”,所以伪数据无法通过验证。

你要拥有一个你喜欢并且热爱的人生 1万+

ATECC508A芯片开发笔记(二):开发准备之 CryptoAuthLib 库简介与移植

ATECC508A芯片开发笔记(二):开发准备之 CryptoAuthLib 库简介与移植 Atmel两个官方lib介绍 CryptoAuthLib简介 bitbang方式移植CryptoAuthLib 从逻辑和代码上分析CryptoAuthLib的底层驱动调用结构关系 508A 另一个小型libATECC108A-508A Library简介 Atmel两个官方lib介绍 At

HowieXue 薛永浩的博客 3万+

python 开发板加密_使用Python来操作Microchip安全芯片

Microchip提供业界优秀的安全方案,包括支持SHA256,ECC P256和AES128的完整算法支持,同时提供了基于C语言的器件支持库cryptoauthlib.由于Python语言的通用性和便利性,Microchip也提供了基于Python语言的CryptoAuthLib和相关的例程cryptoauthtools。CryptoAuthLib Python库可以做什么 ?CryptoAut...

weixin_39629269的博客 482

基于STM32、HAL库的ATECC608A安全验证及加密芯片驱动程序设计

一、简介:ATECC608A是Microchip公司生产的一款安全加密芯片,提供以下主要特性:硬件加密加速器(AES-128, SHA-256, ECC P-256)安全密钥存储(最多16个密钥槽)真随机数生成器(TRNG)支持ECDSA签名和验证支持ECDH密钥交换极低功耗(适合STM32L4低功耗应用)I²C接口(最高1MHz)典型应用场景:设备认证安全启动数据加密/解密安全固件更新物联网设备安全二、硬件接口: STM32L4xx <--> ATECC608A PB6 (SCL) <-

corlin6688的博客 1466

源码编译部署篇(二)源码编译milvus成功后如何启动standalone并调试成功!

由于Milvus官方文档只提及如何使用docker安装部署Milvus,关于源码安装方式篇幅较少,因此,我整理撰写了如何通过源码编译方式成功安装Milvus,详见此篇。之所以选择这种复杂的安装方式,可以调试源码进而熟悉Milvus如何搭建整个框架支持AI上层应用功能。根据上篇步骤部署虽然可以成功,然而,我却不能成功启动Milvus服务,这个问题困扰了一两天,现在终于得以解决并能成功调试Milvus源码。接下来,分为三个部分介绍如何启动和成功调试。

qq_43893755的博客 3367

awvs 13使用_使用Python来操作Microchip安全芯片

Microchip提供业界优秀的安全方案,包括支持SHA256,ECC P256和AES128的完整算法支持,同时提供了基于C语言的器件支持库cryptoauthlib. 由于Python语言的通用性和便利性,Microchip也提供了基于Python语言的CryptoAuthLib和相关的例程cryptoauthtools。CryptoAuthLib Python库可以...

weixin_39904587的博客 274

万象RK3506-EG1800网关使用说明

摘要:HD-RK3506-EG1800是一款高性能工业物联网边缘计算网关,支持Buildroot和Ubuntu双系统。文档详细介绍了网关的网络配置(包括ETH0/ETH1的静态IP设置、WiFi连接)、时钟同步、HSL软件安装配置(含开机自启动服务)、系统日志优化以及刷机操作指南(Loader/Maskrom模式)。特别提供了基于lighttpd的网页管理方案,通过HTML界面实现网络参数可视化配置,包含身份验证、实时状态显示和表单提交功能。网关默认ETH0固定IP为192.168.1.10,提供完整的CL

tian_jiangnan的博客 174

pymcuprog:轻松编程Microchip微控制器的Python工具

pymcuprog:轻松编程Microchip微控制器的Python工具 在现代电子开发中,高效且易用的编程工具对于微控制器(MCU)的开发至关重要。pymcuprog 是一款基于 Python 的编程工具,它支持使用 Microchip CMSIS-DAP based 调试器对各种 Microchip MCU 设备进行编程。 项目介绍 pymcuprog 是一个强大的 Python 实用程序,旨...

gitblog_01148的博客 1079

保姆级教程:手把手带你复现APFNet论文的RGBT目标跟踪模型(附完整代码与数据集配置)

本文提供了一份详细的APFNet论文复现指南,涵盖从环境搭建到模型测试的全流程。通过解析多模态融合模块和渐进式训练流程,帮助读者高效完成RGBT目标跟踪模型的复现工作,特别针对训练和测试中的常见问题提供实用解决方案。

weixin_29056781的博客 342

储能系统架构和控制

探讨了储能系统中EMS(能源管理系统)、BMS(电池管理系统)和PCS(功率转换系统)之间的协同机制,以及组串式和集中式储能系统的技术架构、优势和局限性。EMS根据电价、电网需求和电池状态制定充放电策略,BMS提供电池数据,PCS执行充放电控制。组串式系统具有独立管理和灵活扩展的优势,但成本较高;集中式系统成本效益高,但存在环流和木桶效应问题。

蓝龙宝藏的博客 3966

Microchip DM160232 EEPROM评估套件:从GUI操作到固件更新的实战指南

EEPROM作为一种非易失性存储器,广泛应用于嵌入式系统中存储配置参数、校准数据和序列号。其工作原理基于浮栅晶体管,通过电荷存储实现数据保持,具备字节级擦写和较高耐久性。在工程实践中,EEPROM的价值在于提供可靠的小容量数据存储方案,常用于物联网设备、工业控制和消费电子等场景。为了高效评估和开发EEPROM,厂商提供了配套的评估套件,其中图形用户界面(GUI)和固件更新是关键工具。GUI软件集成了器件识别、存储单元操作和协议分析等功能,能显著降低开发门槛。而固件更新则确保了评估工具对新器件和功能的持续支持

weixin_30654583的博客 316

C#与数据采集卡集成开发全指南:从硬件连接到实时数据处理(附工业传感器监测实战)

C#数据采集卡集成开发指南 本文系统介绍了不同类型数据采集卡(DAQ卡)与C#的集成方法。主要内容包括: 数据采集卡分类:按接口分为PCIe/PCI(高带宽低延迟)、USB(便携即插即用)和以太网(远距离组网);按信号类型分为模拟量输入、数字量输入/输出等。 C#集成核心方法: 优先使用厂商SDK(如NI DAQmx),提供完整功能封装 无SDK时采用通用协议(如USB HID、Modbus TCP) 具体实现示例: NI DAQmx采集热电偶温度代码 USB HID协议读取模拟量电压值 工业应用要点:实时

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1969

物联网设备安全芯片SE050与PIC32MZ的协同设计

物联网设备的安全防护是当前技术领域的重要课题,特别是在智能家居、工业传感器等应用中,数据安全尤为关键。传统MCU如PIC32MZ虽然性能强大,但在密钥存储和加密处理上存在明显短板。SE050安全芯片通过物理隔离的安全存储区和硬件加密加速器,显著提升了设备的安全性。其支持ECC、RSA、AES等加密算法,并通过Common Criteria EAL 6+和FIPS 140-2认证,有效抵御侧信道攻击。在实际应用中,SE050与PIC32MZ的协同工作不仅提升了加密性能,还确保了密钥的安全隔离。这种硬件安全方案

weixin_33736649的博客 410

2025年下半年网络工程师案例分析真题及答案解析

2025年下半年网络工程师案例分析真题及答案解析

鹿鸣天涯 1088

linux arm64 Debian12移植操作手册

2023年6月10号Debian官方出了debian12 arm64版本的。如果需要完全适配这个系统的话,需要linux6.10版本。应客户的需求,需要在Debian11升级为Debian12版本。

qq_45147279的博客 2169

物联网设备安全芯片SE050与PIC18F4553集成方案

物联网安全是智能家居和工业物联网项目的核心需求,硬件级安全芯片如恩智浦SE050提供了比软件加密更可靠的解决方案。SE050集成了EAL6+认证的安全enclave、真随机数发生器和硬件加密加速器,能有效防止密钥泄露和侧信道攻击。通过与PIC18F4553等通用MCU的硬件集成,SE050不仅提升了加密性能(如SHA-256加速40倍),还实现了安全启动和安全通信协议优化。这种方案特别适用于智能电表、智能水表等对安全性和实时性要求高的场景,同时满足IEC 62443等工业标准。

weixin_30314793的博客 382

Android 15.0 添加自定义服务,并生成jar给第三方app调用

在15.0系统ROM产品定制化开发中,由于需要新增加自定义的功能,所以要增加自定义服务,而app上层通过调用自定义服务,来调用相应的功能,所以系统需要先生成jar,然后生成jar 给上层app调用,接下来就来分析实现的步骤,然后来实现相关的功能 从而来实现所需要的功能

安卓兼职framework和app工程师的博客 668

Microchip PIC集成加密引擎实战:从AES到密钥管理

在嵌入式系统开发中,数据加密与设备安全是产品落地绕不开的挑战。传统软件AES方案不仅占用CPU资源,还面临密钥暴露风险。硬件加密引擎通过将对称加密、哈希运算和真随机数生成下沉到专用外设,在提升加解密效率的同时实现密钥的安全隔离。以Microchip PIC系列内置的Crypto Engine为例,它支持AES-128/192/256、TRNG及安全密钥存储,广泛应用于物联网终端、智能家居、工业网关等场景。本文从实际工程出发,讲解PIC集成加密引擎的工作原理、MCC配置流程、AES-CBC加密示例、TRNG动

weixin_34268310的博客 313

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

物联网设备安全芯片应用与PIC18LF4525集成方案

物联网安全是当前技术领域的重要议题,特别是在智能家居和工业控制系统中。传统的MCU如PIC18LF4525虽然具备基础安全功能,但在面对物理攻击、侧信道攻击等专业级威胁时显得力不从心。专用安全芯片如SE050 Plug&Trust通过集成真随机数发生器、硬件加密加速器和安全存储区,提供了更高级别的防护。本文通过实际案例和技术分析,探讨了如何将SE050与PIC18LF4525集成,实现安全启动、加密通信和防篡改设计。这些技术不仅提升了设备的安全性,还满足了IEC 62443和FIPS 140-2等国际标准的

weixin_34008805的博客 373

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Microchip技术文档免责声明与商标指南:嵌入式开发者的合规与避险手册

在嵌入式系统与单片机开发领域,技术文档是工程师进行硬件选型、电路设计和软件编程的核心依据。其价值不仅在于提供寄存器描述、电气参数和参考代码等技术细节,更在于明确了开发者与原厂之间的权责边界与知识产权框架。理解技术文档中的法律与合规部分,是规避项目风险、保障设计可靠性的重要基础。从原理上看,芯片原厂通过免责声明界定技术信息的“按现状提供”原则与应用责任,通过商标信息构建知识产权生态,并通过全球服务网络提供支持路径。这为开发者安全、合规地利用技术资源进行产品创新提供了结构性保障。其技术价值在于将枯燥的法律文本转

dianwonin4433的博客 453

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

上一篇: ATSHA204A在OBD产品中的防克隆应用
下一篇: 对于布尔曼减压算法的解释An Explanation of Professor A.A. Buehlmann‘s ZH-L16 Algorithm
FlyerInk
博客等级 码龄10年 187粉丝 8原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值