一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于椭圆曲线加密的密钥的制作方法

2022-05-08 04:44:21 来源:中国专利 TAG:


1.本公开总体上涉及加密及其在数字签名和密钥协议中的使用,并且更具体地涉及椭圆曲线加密。本公开更具体地解决用于椭圆曲线加密的一对密钥的生成。


背景技术:

2.椭圆曲线加密(ecc)是一种类型的使用椭圆曲线的某些特性的加密。更具体地,与椭圆曲线兼容的加密原语在安全性和性能方面具有有利特性。
3.希望能够至少部分地改进已知的椭圆曲线加密密钥生成的方法和设备的某些方面。


技术实现要素:

4.需要更快的椭圆曲线加密密钥的生成方法。
5.需要能够实现更快的签名方法的椭圆曲线加密密钥的生成方法。
6.需要能够实现更快的密钥协议方法的椭圆曲线加密密钥的生成方法。
7.需要能够由功能较弱的处理器实现的椭圆曲线加密密钥的生成方法。
8.一个实施例促进了解决已知的椭圆曲线加密密钥的生成方法的全部或部分缺点。
9.一个实施例提供了一种用于椭圆曲线加密的n个第一ecc密钥对的生成方法,其中每个第一密钥对是先前生成的第二椭圆曲线加密密钥对的线性组合。
10.根据一个实施例,线性组合是所述第二密钥对中的一些密钥对的加法。
11.根据一个实施例,所述一些第二密钥对是在第二ecc密钥对中被随机选择的。
12.根据一个实施例,该方法包括在应用线性组合之前对n个第一密钥对进行初始化的步骤。
13.根据一个实施例,在初始化步骤期间,n个第一ecc密钥对分别被设置为零和无穷远点。
14.根据一个实施例,在初始化步骤期间,n个第一密钥对被初始化为由最后生成的第一密钥对所取的值。
15.根据一个实施例,在初始化步骤期间,n个第一密钥对(r(i),r(i))被初始化为由最后生成的w对密钥(r(i-j),r(i-j))中的一对密钥所取的值,其中j《=w,j《i以及j》=1。
16.根据一个实施例,使用k个先前生成的第二椭圆曲线加密密钥对p(k)、p(k)来生成n个第一椭圆曲线加密密钥对r(i)、r(i),其中i从1到n变化,k从1到k变化,其中k小于n,并且其中线性组合为:
[0017][0018]
其中a(i,j)表示大小为n*k的矩阵a的通用项,大小为k*k的所有子矩阵是可逆的。
[0019]
根据一个实施例,矩阵a是范德蒙矩阵。
[0020]
根据一个实施例,所述第一密钥对和第二密钥对由标量和椭圆曲线上的点形成。
[0021]
根据一个实施例,第二密钥对的数目小于n。
[0022]
一个实施例提供了一种能够通过实现所公开的方法来生成椭圆曲线加密密钥的设备。
[0023]
一个实施例提供了一种使用通过实现所公开的方法而生成的椭圆曲线加密密钥的数字签名和/或密钥协议方法。
[0024]
一个实施例提供了一种能够通过实现所公开的方法来进行数字签名和/或密钥协议的数字签名和/或密钥协议设备。
[0025]
在一个实施例中,一种方法包括:使用加密电路系统来生成n个第一椭圆曲线加密(ecc)密钥对r(i)、r(i),其中i从1到n变化,该n个第一ecc密钥对使用k个第二ecc密钥对p(k)、p(k),其中k从1到k变化,其中k小于n,并且第一密钥对中的每对密钥r(i)、r(i)是第二ecc密钥对中的ecc密钥对的线性组合,如下:
[0026][0027]
其中a(i,j)表示大小为n*k的矩阵a的通用项,并且大小为k*k的所有子矩阵是可逆的;以及使用加密电路系统来执行加密操作,该加密操作使用第一ecc密钥对中的一对或多对ecc密钥。
[0028]
在一个实施例中,一种设备包括:存储器;以及被耦合到存储器的加密电路系统。加密电路系统在操作中:使用k个第二椭圆曲线加密(ecc)密钥对p(k)、p(k)来生成n个第一ecc密钥对r(i)、r(i),其中i从1到n变化,k从1到k变化,其中k小于n,并且第一密钥对中的每对密钥r(i)、r(i)是第二ecc密钥对中的ecc密钥对的线性组合,如下:
[0029][0030]
其中a(i,j)表示大小为n*k的矩阵a的通用项,并且大小为k*k的所有子矩阵是可逆的;以及使用第一ecc密钥对中的一对或多对ecc密钥来执行加密操作。
[0031]
在一个实施例中,一种系统包括:功能电路系统;以及被耦合到功能电路系统的加密电路系统。加密电路系统在操作中:使用k个第二椭圆曲线加密(ecc)密钥对p(k)、p(k)来生成n个第一ecc密钥对r(i)、r(i),其中i从1到n变化,k从1到k变化,其中k小于n,并且第一密钥对中的每对密钥r(i)、r(i)是第二ecc密钥对中的ecc密钥对的线性组合,如下:
[0032][0033]
其中a(i,j)表示大小为n*k的矩阵a的通用项,并且大小为k*k的所有子矩阵是可逆的;以及使用第一ecc密钥对中的一对或多对ecc密钥来执行加密操作。
[0034]
在一个实施例中,一种非暂态计算机可读介质的内容将加密电路系统配置为执行方法。该方法包括:使用k个第二椭圆曲线加密(ecc)密钥对p(k)、p(k)来生成n个第一ecc密钥对r(i)、r(i),其中i从1到n变化,k从1到k变化,其中k小于n,并且第一密钥对中的每对密钥r(i)、r(i)是第二ecc密钥对中的ecc密钥对的线性组合,如下:
[0035][0036]
其中a(i,j)表示大小为n*k的矩阵a的通用项,并且大小为k*k的所有子矩阵是可逆的;以及使用第一ecc密钥对中的一对或多对ecc密钥来执行加密操作。
附图说明
[0037]
上述特征和优势以及其他特征和优势将参考附图在下面以举例说明而非限制方式给出的具体实施例的描述中进行详细描述,在附图中:
[0038]
图1以框图的形式非常示意性地示出了电子系统的实施例;
[0039]
图2以流程图的形式示出了一对椭圆曲线加密密钥的生成方法的实施例;
[0040]
图3以流程图的形式示出了一对椭圆曲线加密密钥的生成方法的另一实施例;以及
[0041]
图4以流程图的形式示出了一对椭圆曲线加密密钥的生成方法的另一实施例。
具体实施方式
[0042]
在各个图中,相似的特征由相似的附图标记指定。特别地,在各个实施例中共同的结构和/或功能特征可以具有相同的附图标记并且可以设置相同的结构、尺寸和材料特性。
[0043]
为了清楚起见,仅详细说明和描述了对理解本文中所描述的实施例有用的步骤和元件。具体地,在实施例的描述中没有提醒椭圆曲线加密的一般原理。
[0044]
除非另有说明,否则当提及被连接在一起的两个元件时,这表示除了导体之外没有任何中间元件的直接连接,并且当提及被耦合在一起的两个元件时,这表示这两个元件可以连接或者它们可以经由一个或多个其他元件耦合。
[0045]
在以下公开中,除非另有说明,否则当提及诸如术语“前”、“后”、“顶”、“底”、“左”、“右”等绝对位置限定词、或者诸如术语“上方”、“下方”、“更高”、“更低”等相对位置限定词、或者诸如“水平”、“垂直”等取向限定词时,参考图中所示的取向。
[0046]
图1以框图的形式示意性地示出了电子设备10。
[0047]
设备10包括:
[0048]
处理器(cpu)11;
[0049]
数据存储单元或存储器(mem)12,该mem能够包括一个或多个不同类型的存储器电路;
[0050]
加密协处理器(cyp)13;
[0051]
一个或多个电路(fct)14,该fct能够实现设备10的特定功能;以及
[0052]
可选地,例如,通信单元或接口(i/o)15,该i/o使设备10能够例如与其他电子设备交换数据。
[0053]
设备10中包括的不同元件被耦合在一起并且能够通过数据总线16交换数据。
[0054]
处理器11能够处理被存储在存储单元12中的数据、和/或源自电路14以及源自单元或接口15的数据。
[0055]
加密协处理器单元或电路13是能够实现模算术和椭圆曲线运算的处理器。加密协处理器单元13可以形成处理器11的部分,或者是处理器11的中介,加密协处理器单元13通过该中介与设备10的元件交换数据。例如,通过处理正在交换的数据,单元13可以用作在单元13与处理器11之间的中介。
[0056]
加密协处理器单元13更具体地能够基于椭圆曲线加密来实现数字签名和密钥协议算法。特别地,加密协处理器13能够生成椭圆曲线加密密钥对或ecc密钥对,以实现诸如关于图2至图4所描述的密钥对的生成方法。图2至图4的生成方法基于椭圆曲线加密密钥的
线性组合提供椭圆曲线加密密钥的事实。
[0057]
加密协处理器13还能够在数字签名和/或密钥协议算法中使用椭圆曲线加密密钥对。
[0058]
图2是示出了能够由关于图1所描述的设备10实现的多对ecc密钥的生成方法的实现模式的流程图。更具体地,图2的方法能够生成n对ecc密钥(r(i),r(i)),其中i从1到n变化,n是整数。一对密钥(r(i),r(i))由标量r(i)和椭圆曲线的点r(i)形成。
[0059]
本文中描述的方法能够通过使用k对ecc密钥(p(k),p(k))的线性组合来生成n对ecc密钥(r(i),r(i)),其中k从1到k变化,k是小于n的整数。一对ecc密钥(p(k),p(k))由标量p(k)和椭圆曲线的点p(k)形成。
[0060]
在预备步骤20(生成k个密钥对,gen k key pairs),通过例如使用当前ecc密钥生成方法来生成k对ecc密钥(p(k),p(k))。k对ecc密钥(p(k),p(k))例如是预先生成的,然后被存储在存储器电路中。
[0061]
在步骤20之后的步骤22,生成n对ecc密钥(r(i),r(i))。为此,每对ecc密钥(r(i),r(i))通过使用以下三个步骤来逐一生成:
[0062]
步骤221(初始化,init),对ecc密钥对(r(i),r(i))进行初始化;
[0063]
步骤222(随机加法,add rnd),预先生成的密钥对(p(k),p(k))到ecc密钥对(r(i),r(i))的加法;以及
[0064]
步骤223(返回,return),ecc密钥对(r(i),r(i))做好使用准备。
[0065]
在步骤221,将ecc密钥对(r(i),r(i))设置为零。更具体地,标量r(i)为零,并且点r(i)被设置为椭圆曲线的中性元素,也称为无穷远点。
[0066]
在步骤222,将数目为c的随机选择的ecc密钥对(p(k),p(k))加到ecc密钥对(r(i),r(i))。更具体地,步骤222是c次迭代的循环,在此期间,随机选择一对ecc密钥(p(k),p(k)),然后将其加到ecc密钥对(r(i),r(i)。更具体地,在每次迭代中,将随机选择的ecc密钥对(p(k),p(k))的标量p(k)加到ecc密钥对(r(i),r(i))的标量r(i)。类似地,在每次迭代中,将随机选择的ecc密钥对(p(k),p(k))的点p(k)加到ecc密钥对(r(i),r(i))的点r(i)。
[0067]
数目c越大,能够生成的ecc密钥对(r(i),r(i))的数目n越大,安全性越好。但是c越大,需要的计算就越多。作为示例,c为32,k为8,n为64。
[0068]
在步骤223,密钥对(r(i),r(i))准备好使用,它可以例如被存储在存储器空间中。
[0069]
一旦生成一对密钥(r(i),r(i)),该方法继续生成下一对密钥(r(i 1),r(i 1)),直到生成n对密钥。
[0070]
本文中所描述的ecc密钥对的生成方法的优势在于,基于k对ecc密钥(p(k),p(k))的常规生成,它能够通过仅执行加法来获取n对ecc密钥(r(i),r(i)),与标量乘法运算的计算时间相比,加法运算的计算时间可以忽略不计。因此,该方法能够更快地生成n对ecc密钥。这种方法的一个应用示例是它在签名方法中的使用。
[0071]
图3是示出了能够由关于图1所描述的设备10实现的多对ecc密钥的生成方法的实现模式的流程图。更具体地,图2的方法能够生成n对ecc密钥(r(i),r(i)),其中i从1到n变化,n是整数。密钥对(r(i),r(i))由标量r(i)和椭圆曲线的点r(i)形成。
[0072]
关于图3所描述的方法类似于关于图2所描述的方法,只是在初始化步骤221'中修改了初始化步骤221。两种方法共有的要素不再赘述。
[0073]
与图2的方法类似,本文中所描述的方法能够通过使用k对ecc密钥(p(k),p(k))的线性组合来生成n对ecc密钥(r(i),r(i)),其中k从1到k变化,k是小于n的整数。一对ecc密钥(p(k),p(k))由标量p(k)和椭圆曲线的点p(k)形成。k对ecc密钥(p(k),p(k))是在步骤20的实现过程中预先生成的。
[0074]
在步骤20之后的步骤22,生成n对ecc密钥(r(i),r(i))。为此,每对ecc密钥(r(i),r(i))通过使用以下三个步骤来逐一生成:
[0075]
步骤221'(初始化,init),对ecc密钥对(r(i),r(i))进行初始化;
[0076]
步骤222(随机加法,add rnd),将预先生成的密钥对(p(k),p(k))加到ecc密钥对(r(i),r(i));以及
[0077]
步骤223(返回,return),ecc密钥对(r(i),r(i))做好使用准备。
[0078]
步骤221'与关于图2所描述的步骤221的不同之处在于,ecc密钥对(r(i),r(i))未被设置为零,而是先前生成的w对ecc密钥(r(i-j),r(i-j))中的一个,其中j《=w,j《i,j》=1并且是整数,以及该整数是算法参数。更具体地,第一对密钥(r(1),r(1))被设置为第一对值,例如被设置为零和无穷远点,之后,下一对密钥取先前的w对ecc密钥(r(i-j),r(i-j))中的一对ecc密钥的值,其中j是在1与w和(i-1)之间的最大值之间的随机整数。例如,当参数w被选择为1时,ecc密钥对(r(i),r(i))未被设置为零,而是被设置为先前生成的ecc密钥对(r(i-1),r(i-1))。更具体地,第一对密钥(r(1),r(1))被设置为第一对值,例如被设置为零和无穷远点,之后,下一对密钥取直接前一对ecc密钥(r(i-1),r(i-1))的值。
[0079]
关于图3所描述的方法具有与图2的方法相同的优势,但还有额外的优势。
[0080]
特别地,与关于图2描述的方法相比,图3的方法能够实现更好的安全性,因为能够生成的ecc密钥对(r(i),r(i))的数目n变得更大。
[0081]
此外,一旦生成n对ecc密钥(r(i)、r(i)),设备10(或更具体地,加密协处理器13)仅使用m对ecc密钥(r(i)、r(i)),m是小于n的自然整数。
[0082]
如果数目m大于数目k,则由设备10或加密协处理器13使用的m对ecc密钥(r(i)、r(i))是线性相关的。换言之,发明人已经表明,当m大于k时,ecc密钥对(r(i),r(i))符合以下公式:
[0083][0084]
与关于图2所描述的方法相比,系数b(i)和b(i)的确定针对关于图3所描述的方法更困难。结果,可以通过该方法而生成的ecc密钥对(r(i),r(i))的集合更大。
[0085]
这种方法的又一优势是,可以通过这种方法生成的密钥对的集合随着n增长。
[0086]
图4是示出了能够由关于图1所描述的设备10实现的多对ecc密钥的生成方法的实现模式的流程图。更具体地,图4的方法能够生成n对ecc密钥(r(i),r(i)),其中i从1到n变
化,n是整数。如前所述,密钥对(r(i),r(i))由标量r(i)和椭圆曲线的点r(i)形成。
[0087]
类似于关于图2和图3所描述的方法,本文中所描述的方法能够通过使用k对ecc密钥(p(k),p(k))的线性组合来生成n对ecc密钥(r(i),r(i)),其中k从1到k变化,k是小于n的整数。一对ecc密钥(p(k),p(k))由标量p(k)和椭圆曲线的p(k)点形成。
[0088]
在预备步骤30(生成k个密钥对,gen k key pairs),与关于图2所描述的步骤20相同,通过使用ecc密钥生成方法来生成k对ecc密钥(p(k),p(k))。k对ecc密钥(p(k),p(k))例如是预先生成的,然后被存储在存储器电路中。
[0089]
在步骤31,生成n对ecc密钥(r(i),r(i))。针对该目的,将包括k对ecc密钥(p(k),p(k))的向量乘以矩阵a。矩阵a具有通用项a(i,j)并且大小为n*k,并且其特征在于其大小为k*k的所有方形子矩阵都是可逆的。因此,n对ecc密钥(r(i),r(i))由以下公式提供:
[0090][0091]
这种矩阵的一个示例是范德蒙矩阵。范德蒙矩阵中的每行row(i)定义如下:
[0092]
row(i)=(1,c(i),(c(i))2,...,(c(i))
k-1
)
[0093]
其中c(i)是整数或系数,针对范德蒙矩阵中的每行是不同的。
[0094]
根据一个示例,如果k是偶数,则系数c(1)、c(2)、
……
、c(k)是配对的,并且在每个配对的(c(i),c(i 1))中,c(i 1)等于c(i)的相反数,记为-c(i)。这呈现出加速了与范德蒙德矩阵的行相关联的一对密钥的生成的优势。更具体地,c(i)的示例如下:
[0095][0096]
其中表示数字d的四舍五入值。
[0097]
这种矩阵a的另一示例是帕斯卡矩阵,其定义如下:
[0098][0099]
其中表示与i j和j相关联的二项式系数。
[0100]
这种矩阵a的另一示例是来自xiali hei、xiaojiang du、binheng song所著并且参考icc 2012:810-814的题为“two matrices for blakley's secret sharing scheme”的文章的第二部分“the first matrix”中描述的矩阵族的矩阵。矩阵a具有在上述文章中
引用为ii-4的一般形式。
[0101]
针对矩阵a的每个示例,重要的是选择矩阵a的方便系数以提高与矩阵a相关联的一对密钥的生成速度。在审查本公开之后,本领域技术人员将能够选择这些方便的系数。
[0102]
在步骤32,n对ecc密钥(r(i),r(i))做好使用准备,它们可以例如被存储在存储空间中。
[0103]
此外,一旦生成n对ecc密钥(r(i)、r(i)),设备10(或更具体地,加密协处理器13)仅使用m对ecc密钥(r(i)、r(i)),m是小于n的自然整数。
[0104]
如果数目m小于或等于数目k,则由设备10或加密协处理器13使用的m对ecc密钥(r(i)、r(i))不是线性相关的。这为通过这种密钥生成的签名提供了更高的安全性。
[0105]
已经描述了各种实施例和变型。本领域技术人员将理解,可以将这些各个实施例和变型的某些特征进行组合,并且本领域技术人员将能够想到其他变型。
[0106]
最后,基于上文给出的功能指示,所描述的实施例和变型的实际实现在本领域技术人员的能力范围内。特别地,虽然本公开是关于ecc而描述的,但它可以被应用于其中通过标量乘法来生成密钥的其他有限组。
[0107]
一种用于椭圆曲线加密的n个第一ecc密钥对的生成方法,其中每个第一密钥对可以是先前生成的第二椭圆曲线加密密钥对的线性组合。
[0108]
线性组合可以是对所述第二密钥对中的一些密钥对的加法。
[0109]
所述一些第二密钥对可以在第二ecc密钥对中随机选择。
[0110]
该方法可以包括在应用线性组合之前对n个第一密钥对进行初始化(20、30)的步骤。
[0111]
在初始化步骤期间,n个第一ecc密钥对可以分别被设置为零和无穷远点。
[0112]
在初始化步骤期间,n个第一密钥对可以被初始化为由最后生成的第一密钥对所取的值。
[0113]
在初始化步骤期间,n个第一密钥对(r(i),r(i))可以被初始化为由最后生成的w个密钥对(r(i-j),r(i-j))中的一个密钥对所取的值,其中j《=w,j《i以及j》=1。
[0114]
可以使用k个先前生成的第二椭圆曲线加密密钥对p(k)、p(k)来生成n个第一椭圆曲线加密密钥对r(i)、r(i),其中i从1到n变化,k从1到k变化,其中k可以小于n,并且其中线性组合可以为:
[0115][0116]
其中a(i,j)表示大小为n*k的矩阵a的通用项,其大小为k*k的所有子矩阵都是可逆的。
[0117]
矩阵a可以是范德蒙德矩阵。
[0118]
所述第一密钥对和第二密钥对可以由标量和椭圆曲线上的点形成。
[0119]
第二密钥对(k)的数目可以小于n。
[0120]
一种设备可以能够通过实现该方法来生成椭圆曲线加密密钥。
[0121]
一种数字签名和/或密钥协议方法可以使用通过实现该方法而生成的椭圆曲线加密密钥。
[0122]
一种数字签名和/或密钥协议设备可以能够通过实现该方法来进行数字签名和/或密钥协议。
[0123]
在一个实施例中,一种方法包括:使用加密电路系统来生成n个第一椭圆曲线加密(ecc)密钥对r(i)、r(i),其中i从1到n变化,该n个第一ecc密钥对r(i)、r(i)使用k个第二ecc密钥对p(k)、p(k),其中k从1到k变化,其中k小于n,并且第一密钥对中的每对r(i)、r(i)是第二ecc密钥对中的ecc密钥对的线性组合,如下:
[0124][0125]
其中a(i,j)表示大小为n*k的矩阵a的通用项,并且大小为k*k的所有子矩阵都是可逆的;以及使用加密电路系统来执行加密操作,该加密操作使用第一ecc密钥对中的一对或多对。在一个实施例中,线性组合是所述第二密钥对中的一些密钥对的加法。在一个实施例中,所述一些第二密钥对在第二ecc密钥对中被随机选择。在一个实施例中,该方法包括在应用线性组合之前对n个第一密钥对进行初始化。在一个实施例中,在初始化期间,n个第一ecc密钥对分别被设置为零和无穷远点。在一个实施例中,在初始化期间,n个第一密钥对被初始化为由最后生成的第一密钥对所取的值。在一个实施例中,在初始化期间,n个第一密钥对(r(i),r(i))被初始化为由最后生成的w对密钥(r(i-j),r(i-j))中的一对所取的值,其中j《=w,j《i以及j》=1。在一个实施例中,矩阵a是范德蒙矩阵。在一个实施例中,所述第一密钥对和第二密钥对由标量和椭圆曲线上的点形成。在一个实施例中,加密操作包括:生成数字签名;生成密钥协议;或生成数字签名与生成密钥协议的组合。在一个实施例中,该方法包括:生成k个第二ecc密钥对;并且存储所生成的k个ecc密钥对。
[0126]
在一个实施例中,一种设备包括:存储器;以及被耦合到存储器的加密电路系统。加密电路系统在操作中:使用k个第二椭圆曲线加密(ecc)密钥对p(k)、p(k)来生成n个第一ecc密钥对r(i)、r(i),其中i从1到n变化,k从1到k变化,其中k小于n,并且第一密钥对中的每对r(i)、r(i)是第二ecc密钥对中的ecc密钥对的线性组合,如下:
[0127][0128]
其中a(i,j)表示大小为n*k的矩阵a的通用项,并且大小为k*k的所有子矩阵都是可逆的;以及使用第一ecc密钥对中的一对或多对来执行加密操作。在一个实施例中,线性组合是所述第二密钥对中的一些第二密钥对的加法。在一个实施例中,所述一些第二密钥对是在第二ecc密钥对中被随机选择的。在一个实施例中,在操作中,加密电路系统在执行线性组合之前对n个第一密钥对进行初始化。在一个实施例中,在初始化期间,n个第一ecc密钥对分别被设置为零和无穷远点。在一个实施例中,在初始化期间,n个第一密钥对被初始化为由最后生成的第一密钥对所取的值。在一个实施例中,在初始化期间,n个第一密钥对(r(i),r(i))被初始化为由最后生成的w对密钥(r(i-j),r(i-j))中的一对所取的值,其中j《=w,j《i以及j》=1。在一个实施例中,矩阵a是范德蒙矩阵。在一个实施例中,加密操作包括:生成数字签名;生成密钥协议;或生成数字签名与生成密钥协议的组合。在一个实施例中,存储器在操作中存储所生成的k个ecc密钥对。
[0129]
在一个实施例中,一种系统包括:功能电路系统;以及被耦合到功能电路系统的加密电路系统。加密电路系统在操作中:使用k个第二椭圆曲线加密(ecc)密钥对p(k)、p(k)来生成n个第一ecc密钥对r(i)、r(i),其中i从1到n变化,k从1到k变化,其中k小于n,并且第一密钥对中的每对r(i)、r(i)是第二ecc密钥对中的ecc密钥对的线性组合,如下:
[0130][0131]
其中a(i,j)表示大小为n*k的矩阵a的通用项,并且大小为k*k的所有子矩阵都是可逆的;以及使用第一ecc密钥对中的一对或多对来执行加密操作。在一个实施例中,在操作中,加密电路系统在执行线性组合之前对n个第一密钥对进行初始化。在一个实施例中,矩阵a是范德蒙矩阵。在一个实施例中,该系统包括被耦合到功能电路系统和加密电路系统的处理器,并且处理器在操作中与加密电路系统交换数据。
[0132]
在一个实施例中,一种非暂态计算机可读介质的内容将加密电路系统配置为执行方法。该方法包括:使用k个第二椭圆曲线加密(ecc)密钥对p(k)、p(k)来生成n个第一ecc密
钥对r(i)、r(i),其中i从1到n变化,k从1到k变化,其中k小于n,并且第一密钥对中的每对r(i)、r(i)是第二ecc密钥对中的ecc密钥对的线性组合,如下:
[0133][0134]
其中a(i,j)表示大小为n*k的矩阵a的通用项,并且大小为k*k的所有子矩阵都是可逆的;以及使用第一ecc密钥对中的一对或多对来执行加密操作。在一个实施例中,该方法包括:在应用线性组合之前对n个第一密钥对进行初始化。在一个实施例中,该内容包括由加密电路系统可执行的指令。
[0135]
一些实施例可以采用计算机程序产品的形式或者包括计算机程序产品。例如,根据一个实施例,提供了一种包括计算机程序的计算机可读介质,该计算机程序适于执行上述方法或功能中的一个或多个。介质可以是物理存储介质,诸如例如只读存储器(rom)芯片、或磁盘,诸如数字多功能盘(dvd-rom)、光盘(cd-rom)、硬盘、存储器、网络或由适当的驱动器或经由适当的连接来读取的便携式媒介物品,包括如以一个或多个条码或被存储在一个或多个这样的计算机可读介质上并且由适当的读取器设备可读取的其他相关代码进行编码的。
[0136]
此外,在一些实施例中,方法和/或功能性中的一些或全部可以以其他方式来实现或提供,例如至少部分地以固件和/或硬件,包括但不限于一个或多个专用集成电路(asic)、数字信号处理器、离散电路系统、逻辑门、标准集成电路、控制器(例如,通过执行适当的指令,并且包括微控制器和/或嵌入式控制器)、现场可编程门阵列(fpga)、复杂可编程逻辑器件(cpld)等、以及采用rfid技术的器件、以及它们的各种组合。
[0137]
可以对上述各个实施例进行组合以提供另外的实施例。如果需要采用各种专利、申请和出版物的概念来提供另外的实施例,则可以修改实施例的各方面。
[0138]
根据以上详细描述,可以对实施例进行这些和其他改变。一般而言,在以下权利要求中,所使用的术语不应当被解释为将权利要求限于说明书和权利要求中公开的特定实施例,而应当被解释为包括所有可能的实施例以及这样的权利要求有权享有的等效物的全部范围。因此,权利要求不受本公开的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献