找回密码
 立即注册

QQ登录

只需一步,快速开始

打印 上一主题 下一主题
开启左侧

[M23] ECC连续签名/验签的问题

[复制链接]
跳转到指定楼层
楼主
匿名  发表于 2022-9-23 10:31:15 回帖奖励 |倒序浏览 |阅读模式
一、复现问题的前提条件:不产生密钥对(即都使用固定的值):1、如果先进行P224曲线的签名,然后进行P192曲线的验签,则P192的验签会失败,但是再次验签又能成功。
2、如果先进行P192曲线的签名,然后进行P224曲线的验签,则能成功。

3、如果先进行P192曲线的签名,然后再次进行P192曲线的验签,也能成功。

测试了P192~P521的这几组曲线,都存在这个问题。
实验结论:进行不同曲线参数的签名/验签操作,如果后做的曲线位数小于前一次做的,则会失败。

二、出问题的驱动接口ECC_VerifySignature的具体步骤是:
5. Compute X * (x1', y1') = u1 * G + u2 * Q
(7) Read X1, Y1 registers to get u1*G
u1*G的值在出错时每次的值都不同,当成功时,该值会是固定的值。而且,打印log和debug对比了成功和失败的时候,5-(7)这一步的输入参数:CRPT_ECC_CURVE_A、CRPT_ECC_CURVE_B、CRPT_ECC_POINT_X1、CRPT_ECC_POINT_Y1和CRPT_ECC_CURVE_N,以及crpt->ECC_CTL的值,两种情况下都是一致的;

所以,比较怀疑是硬件算法自身存在bug。



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 顶 踩
回复

使用道具

沙发
admin 发表于 2022-9-23 10:38:33 | 只看该作者
您的问题看起来比较复杂,要不您来电 021-6236-5999 转技术支持,和我们的技术详细聊一聊吧.
牛卧堂
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

新唐MCU