百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
M

micro-ecc

> 编程语言
开源

用于 8 位、32 位和 64 位处理器的 ECDH 和 ECDSA。

1.4K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

用于 8 位、32 位和 64 位处理器的 ECDH 和 ECDSA。

特点

  • 可抵御已知的侧信道攻击。
  • 使用 C 语言编写,可选的 GCC 内联汇编支持 AVR、ARM 和 Thumb 平台。
  • 支持 8、32 和 64 位的架构。
  • 代码大小小。
  • 不需要动态内存分配。
  • 支持 5 个标准曲线:secp160r1、secp192r1、secp224r1、secp256r1 和 secp256k1。
  • BSD 2 条款许可证。

使用说明 ----------- ### 点表示法 ### 压缩点以标准格式表示,如 http://www.secg.org/sec1-v2.pdf; 中定义的未压缩点以标准格式表示,但不带 0x04 前缀。除了 uECC_decompress() 函数之外,所有函数都只接受未压缩点;使用 uECC_compress() 和 uECC_decompress() 来转换压缩点和未压缩点表示法。私钥以标准格式表示。 ### 使用代码 ### 我建议将 uECC 文件复制(或创建符号链接)到您的项目中。然后只需 #include "uECC.h" 即可使用微 ecc 函数。

如果要用于 Arduino,您可以使用库管理器下载 micro-ecc (Sketch=>Include Library=>Manage Libraries)。然后,您可以像使用其他 Arduino 库一样使用 uECC(在 Sketch=>Import Library 子菜单中, uECC 应显示)。

  • 如果要更改任何 uECC 编译时选项的默认值(如 uECC_OPTIMIZATION_LEVEL),则必须在 Makefile 或类似文件中更改这些值,以便 uECC.c 以所需的值进行编译(即,使用 -DuECC_OPTIMIZATION_LEVEL=3 或其他值编译 uECC.c)。 * 当为 Thumb-1 平台进行编译时,必须使用 -fomit-frame-pointer GCC 选项(默认情况下,在使用 -O1 或更高版本进行编译时,此选项已启用)。 * 当为 ARM/Thumb-2 平台进行编译时,必须使用 uECC_OPTIMIZATION_LEVEL 选项。

Issues· 62 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

PHP

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言