[发明专利]一种不可克隆芯片ID的验证方法及系统有效
申请号: | 201911348615.2 | 申请日: | 2019-12-24 |
公开(公告)号: | CN111125782B | 公开(公告)日: | 2022-12-09 |
发明(设计)人: | 姚长远 | 申请(专利权)人: | 兴唐通信科技有限公司;数据通信科学技术研究所 |
主分类号: | G06F21/64 | 分类号: | G06F21/64;G06F21/60;G06F21/62;G06F21/71 |
代理公司: | 北京天达知识产权代理事务所有限公司 11386 | 代理人: | 刘志永 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 不可 克隆 芯片 id 验证 方法 系统 | ||
1.一种不可克隆芯片ID的验证方法,其特征在于,所述方法包括以下步骤:
向待验证芯片输入一个随机挑战数,利用ECC点乘算法处理所述随机挑战数和所述待验证芯片的私钥得到椭圆曲线上点P的坐标值;若所述点P的坐标值与所述待验证芯片的ID相等,则所述待验证芯片的ID验证通过;
其中,所述待验证芯片的私钥为所述待验证芯片对应的不可克隆响应或由所述不可克隆响应经数学变化生成,所述待验证芯片的ID为利用ECC点乘算法处理所述私钥得到的公钥;
通过执行以下操作获得所述椭圆曲线上点P的坐标值:
验证方生成随机挑战数c,并将其发送至所述待验证芯片,其中,所述随机挑战数c不为零;
所述待验证芯片随机选取整数k,k∈[1,n-1],使用ECC点乘算法计算椭圆曲线上的点R(x,y)=kG(xG,yG);
所述待验证芯片基于所述随机挑战数c、Rx、私钥dA计算签名消息值(r,s),并根据Ry的奇偶性得到奇偶校验数flag,将挑战应答(r,s,flag)返回给验证方;其中,Rx、Ry分别为R(x,y)在x轴方向、y轴方向上的坐标值;所述验证方根据椭圆曲线方程、Rx以及所述奇偶校验数flag,得到Ry;
r=c+Rx,所述验证方根据以下公式计算所述椭圆曲线上的点P的坐标值:P(x,y)=t-1×(R(x,y)-sG(xG,yG)),其中,t=r+s;
或者,r=Rx,所述验证方根据以下公式计算所述椭圆曲线上的点P的坐标值:P(x,y)=u2×R(x,y)+u1×G(xG,yG),其中,
所述验证方接收所述挑战应答(r,s,flag),计算得到Rx和Ry;
所述验证方根据所述(r,s)、所述随机挑战数c、所述R(x,y)与所述私钥dA之间的关系,计算所述椭圆曲线上的点P的坐标值;所述点P的坐标值为点P的x轴坐标值和/或点P的y轴坐标值;所述公钥为利用ECC点乘算法处理所述私钥所得结果的x轴坐标值和/或y轴坐标值;
通过执行以下操作获得所述利用ECC点乘算法处理所述私钥所得结果:
选取有限域GF(p)上的椭圆曲线Ep(a,b)、以及椭圆曲线Ep(a,b)上一个拥有素数阶n的基点G(xG,yG),其中,xG和yG是GF(p)中的两个元素;所述椭圆曲线Ep(a,b)满足:y2=x3+ax+b(mod p),其中,p为大于3的素数;
利用ECC点乘算法处理所述私钥所得结果PK(x,y)为:
PK(x,y)=dAG(xG,yG)
其中,dA为所述待验证芯片的私钥。
2.根据权利要求1所述的不可克隆芯片ID的验证方法,其特征在于,所述根据Ry的奇偶性得到奇偶校验数flag,包括:
当所述Ry为奇数,所述奇偶校验数flag=1;
当所述Ry为偶数,所述奇偶校验数flag=0。
3.一种不可克隆芯片ID的验证系统,其特征在于,所述系统包括:验证方、待验证芯片;
所述验证方向待验证芯片输入一个随机挑战数,利用ECC点乘算法处理所述随机挑战数和所述待验证芯片的私钥得到椭圆曲线上点P的坐标值;若所述点P的坐标值与所述待验证芯片的ID相等,则所述待验证芯片的ID验证通过;
其中,所述待验证芯片的私钥为所述待验证芯片对应的不可克隆响应或由所述不可克隆响应经数学变化生成,所述待验证芯片的ID为利用ECC点乘算法处理所述私钥得到的公钥;
通过执行以下操作获得所述椭圆曲线上点P的坐标值:
验证方生成所述随机挑战数c,并将其发送至所述待验证芯片,其中,所述随机挑战数c不为零;
所述待验证芯片随机选取整数k,k∈[1,n-1],使用ECC点乘算法计算椭圆曲线上的点R(x,y)=kG(xG,yG);
所述待验证芯片基于所述随机挑战数c、Rx、私钥dA计算签名消息值(r,s),并根据Ry的奇偶性得到奇偶校验数flag,将挑战应答(r,s,flag)返回给验证方;其中,Rx、Ry分别为R(x,y)在x轴方向、y轴方向上的坐标值;所述验证方根据椭圆曲线方程、Rx以及所述奇偶校验数flag,得到Ry;
r=c+Rx,所述验证方根据以下公式计算所述椭圆曲线上的点P的坐标值:P(x,y)=t-1×(R(x,y)-sG(xG,yG)),其中,t=r+s;
或者,r=Rx,所述验证方根据以下公式计算所述椭圆曲线上的点P的坐标值:P(x,y)=u2×R(x,y)+u1×G(xG,yG),其中,
所述验证方接收所述挑战应答(r,s,flag),计算得到Rx和Ry;
所述验证方根据所述(r,s)、所述随机挑战数c、所述R(x,y)与所述私钥dA之间的关系,计算所述椭圆曲线上的点P的坐标值所述点P的坐标值为点P的x轴坐标值和/或点P的y轴坐标值;所述公钥为利用ECC点乘算法处理所述私钥所得结果的x轴坐标值和/或y轴坐标值;
通过执行以下操作获得所述利用ECC点乘算法处理所述私钥所得结果:
选取有限域GF(p)上的椭圆曲线Ep(a,b)、以及椭圆曲线Ep(a,b)上一个拥有素数阶n的基点G(xG,yG),其中,xG和yG是GF(p)中的两个元素;所述椭圆曲线Ep(a,b)满足:y2=x3+ax+b(mod p),其中,p为大于3的素数;
利用ECC点乘算法处理所述私钥所得结果PK(x,y)为:
PK(x,y)=dAG(xG,yG)
其中,dA为所述待验证芯片的私钥。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于兴唐通信科技有限公司;数据通信科学技术研究所,未经兴唐通信科技有限公司;数据通信科学技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911348615.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种汽车刹车油管端面检测装置
- 下一篇:一种具有废水回收利用的洗碗装置及方法