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

基于多种不同公钥密码体制的异构工业物联网认证方法

2022-07-16 23:47:14 来源:中国专利 TAG:


1.本发明涉及工业物联网设备认证技术领域,特别涉及基于多种不同公钥密码体制的异构工业物联网认证方法。


背景技术:

2.目前,工业物联网是物联网领域最重要应用方向之一,借助传感器、无线通信以及人工智能等技术,工业物联网提升了传统产业的智能化程度,极大地提高了工厂的生产率和产品质量,同时降低了生产成本与资源消耗。
3.大规模工业物联网涉及到机器人、传感器以及智能工具等设备,各设备之间常常需要保持通信。因此,如何有效对设备进行认证是至关重要的。若无法对设备实施认证,则敌手可能冒充设备发送虚假消息,或者篡改消息,对工业物联网安全造成巨大的影响。数字签名是一种最常用的认证方式,在收到签名后,签名接收方利用签名设备的公钥对其进行有效性验证。由于公钥和设备是一一对应的,这种方式会泄露设备身份信息,从而产生隐私泄露问题。
4.为了实现签名有效性验证的同时隐藏设备的身份信息,常常采用环签名。通过环签名,只能确定签名者是否为环成员,但不能确定实际签名者。一般的环签名方案要求环成员采用同一种密码系统。目前,已知的基于不同密码系统的认证方案,仅仅考虑了环成员采用rsa公钥密码体制和离散对数公钥密码体制等两种密码系统。在工业物联网环境,不同设备之间存在巨大的差异,所采用的密码系统也千差万别,使用的密码系统可能涉及rsa公钥密码体制、离散对数公钥密码体制和椭圆曲线公钥密码体制等。同时近几年来,随着量子计算机的发展,其强大计算能力对传统公钥密码体制的威胁越来越大,后量子密码算法越来越受到关注。随着工业物联网技术的发展,设备的存储、运算能力逐渐增强,足以支撑后量子密码算法。
5.因此,如何构建一种兼容所有常见密码系统,如支持rsa公钥密码体制、离散对数公钥密码体制、椭圆曲线公钥密码体制等传统密码系统和后量子密码系统如格公钥密码体制的环签名方案,是一个亟待解决的问题。基于此,为了防止工业物联网中传输和存储的消息被有意无意的篡改、保护消息发送者身份隐私,有必要提出一种基于密码系统异构的工业物联网的认证方法,能够同时支持所有常见密码系统,如rsa、dl、ecc和lattice等密码系统,从而解决上述技术问题。


技术实现要素:

6.鉴于上述状况,本发明的主要目的是为了提出基于多种不同公钥密码体制的异构工业物联网认证方法,以解决上述技术问题。
7.本发明实施例提出一种基于多种不同公钥密码体制的异构工业物联网认证方法,其中,所述方法包括如下步骤:步骤一,初始化:
通过密钥生成中心为工业物联网环境中的不同类型密码设备生成对应的群并构造对应的哈希函数,将所述群以及所述哈希函数作为系统公共参数;其中所述密码设备的类型至少包括rsa类设备、dl类设备、ecc类设备以及lattice类设备,所述rsa类设备为使用rsa公钥密码体制的设备,所述dl类设备为使用离散对数公钥密码体制的设备,所述ecc类设备为椭圆曲线公钥密码体制的设备,所述lattice类设备为格公钥密码体制的设备;步骤二,生成密钥:由所述密钥生成中心为工业物联网环境中的rsa类设备、dl类设备、ecc类设备以及lattice类设备生成对应的公私钥对;步骤三,生成签名的离线计算阶段:所述rsa类设备、所述dl类设备、所述ecc类设备以及所述lattice类设备分别从整数乘法群或整数循环群中随机选取随机数,根据所述随机数计算得到对应的离线计算结果值;步骤四,生成签名的在线计算阶段;选取n台设备构成一环签名成员环,根据所述rsa类设备、所述dl类设备、所述ecc类设备以及所述lattice类设备对应的公私钥对,以及对应的离线计算结果值进行在线计算以得到关于签名消息m的环签名;步骤五,签名验证:根据所述环签名成员环中的环成员排列顺序以及所述关于签名消息m的环签名验证签名的有效性。
8.本发明提出基于多种不同公钥密码体制的异构工业物联网认证方法,在设置阶段分别为工业物联网环境中rsa公钥密码体制、离散对数(dl)公钥密码体制、椭圆曲线公钥密码体制(ecc)以及格公钥密码体制生成对应的群及哈希函数作为系统公共参数;为分别使用rsa公钥密码体制、离散对数公钥密码体制、椭圆曲线公钥密码体制以及格公钥密码体制的设备生成公私钥对;选定n个不同类型的设备并按顺序组成环,环成员通过离线和在线两个阶段的依次计算,最后形成环签名;环签名接收者可对签名的有效性进行验证。本发明能够同时支持所有常见密码系统,如rsa公钥密码体制、离散对数公钥密码体制、椭圆曲线公钥密码体制以及格公钥密码体制等,并有效防止工业物联网中传输和存储的消息被有意无意的篡改、保护消息发送者身份隐私。
9.所述基于多种不同公钥密码体制的异构工业物联网认证方法,其中,在所述步骤一中,通过密钥生成中心为工业物联网环境中的不同类型密码设备生成对应的群的方法包括:为dl类设备生成dl类型群;其中,为第一个大素数,为乘法群,为乘法群的生成元;为ecc类设备生成ecc类型群;其中,为阶循环群,为群的生成元,为第二个大素数;为lattice类设备生成lattice类型群;其中,为多项式环,为在多
项式环中随机选取的一个非零元,为第三个大素数。
10.所述基于多种不同公钥密码体制的异构工业物联网认证方法,其中,在所述步骤一中,通过密钥生成中心为工业物联网环境中的不同类型密码设备构造对应的哈希函数的方法包括如下步骤:为rsa类设备构造的rsa哈希函数表示为:;其中,为可将任意长度0、1组成的串映射到中的哈希函数,为环,,表示所有rsa类设备选取模数的最小值,表示第t个rsa类设备选取的模数,t表示rsa类设备最大序号;为dl类设备构造的dl哈希函数表示为:;其中,为可将任意长度0、1组成的比特串映射到中的哈希函数,为阶整数群;为ecc类设备构造的ec哈希函数表示为:;其中,为可将任意长度0、1组成的比特串映射到中的哈希函数,为阶整数循环群;为lattice类设备构造的lattice哈希函数表示为:;其中,为可将任意长度0、1组成的比特串映射到中的哈希函数,为阶整数乘法群。
11.所述基于多种不同公钥密码体制的异构工业物联网认证方法,其中,在所述步骤二中,由密钥生成中心为工业物联网环境中的rsa类设备、dl类设备、ecc类设备以及lattice类设备生成对应的公私钥对的方法包括如下步骤:对于rsa类设备,rsa类设备的私钥为 ,rsa类设备的公钥为;其中,为rsa类设备的私钥表示符,为rsa类设备的公钥表示符,为rsa类设备i的私钥,为rsa类设备i的公钥,为rsa类设备i在计算过程中用到的模数,,为rsa类设备i选取的第四个大素数,为rsa类设备i选取的第五个大素数,且满足公式,,表示欧拉函数,表示取模运算符,表示求最大公约数的函数;对于dl类设备,dl类设备i的私钥为,dl类设备i的公钥为;
其中,为dl类设备i的私钥表示符,为dl类设备i的公钥表示符,为dl类设备i的私钥,为dl类设备i的公钥,且满足公式,由中随机抽取得到;对于ecc类设备,ecc类设备i的私钥为,ecc类设备i的公钥为;其中,为ecc类设备i的私钥表示符,为ecc类设备i的公钥表示符,为ecc类设备i的私钥,为ecc类设备i的公钥,且满足公式,由中随机抽取得到,为去除零元的阶整数循环群;对于lattice类设备,lattice类设备i的私钥为,lattice类设备i的公钥为;其中,为lattice类设备i的私钥,为lattice类设备i的公钥,为从多项式环中选取的第z个元素,为从多项式环中选取的第z个元素,且与满足公式,z为一个正整数。
12.所述基于多种不同公钥密码体制的异构工业物联网认证方法,其中,在所述步骤三中,所述rsa类设备、所述dl类设备、所述ecc类设备以及所述lattice类设备分别从整数乘法群或整数循环群中随机选取随机数,根据所述随机数计算得到对应的离线计算结果值的方法包括如下步骤:对于rsa类设备,从中随机选取rsa随机数,然后根据rsa随机数计算得到rsa离线计算结果值;其中,为去除零元的阶整数循环群,为rsa离线计算结果值;对于dl类设备,从中随机选取dl随机数,然后根据dl随机数计算得到dl离线计算结果值;其中,为dl离线计算结果值;对于ecc类设备,从中随机选取ecc随机数,然后根据ecc随机数
计算得到ecc离线计算结果值;其中,为ecc离线计算结果值;对于lattice类设备,从多项式环中随机选取多个元素构成lattice随机向量,根据lattice随机向量和公钥的内积计算得到lattice离线计算结果值;其中,为计算向量内积的函数,为lattice离线计算结果值。所述基于多种不同公钥密码体制的异构工业物联网认证方法,其中,在所述步骤四中,选取n台真实签名设备构成一个环签名成员环,并根据所述rsa类设备、所述dl类设备、所述ecc类设备以及所述lattice类设备对应的公私钥对,以及对应的离线计算结果值进行在线计算以得到对应的关于签名消息m的最终签名结果。计算得到关于签名消息m的环签名的方法包括:若真实签名设备为rsa类型,则从中随机选取值,其中为rsa类设备从中随机选取的值,为去除零元的阶整数循环群;若真实签名设备为dl类型,则从中随机选取值,其中,为dl类设备从中随机选取的值;若真实签名设备为ecc类型,则从中随机选取值,其中,为ecc类设备从中随机选取的值;若真实签名设备为lattice类型,则从多项式环中随机选取多个元素构成向量;通过真实签名设备计算得到真实签名设备的第一签名中间值,对应的计算公式为:
ꢀꢀꢀ
(1)其中,为取椭圆曲线上一点横坐标的函数;通过真实签名设备,基于真实签名设备的第一签名中间值计算得到真实签
名设备的第二签名中间值,对应的计算公式为:
ꢀꢀ
(2)其中,为签名消息,为环签名成员环;通过密码设备i计算得到密码设备的第三签名中间值,对应的计算公式为:
ꢀꢀ
(3)其中,为取椭圆曲线上一点横坐标的函数;通过密码设备i,根据密码设备的第三签名中间值为密码设备i 1计算得到密码设备的第四签名中间值,对应的计算公式为:
ꢀꢀꢀꢀ
(4)其中,,且循环公式(3)与公式(4)计算最终得到真实签名设备的第五签名中间值,为密码设备i的第六签名中间值,n为环签名成员环的大小;真实签名设备根据公式(5)计算得到真实签名设备的最终签名,对应的计算公式为:
ꢀꢀꢀ
(5)其中,关于签名消息m的环签名,为第一签名成分,为第二签名成分,为第n 1签名成分,n为环签名成员环的大小,为rsa类设备j的私钥,为dl类设备j的私钥,为ecc类设备j的私钥,为lattice类设备j的私钥。
13.所述基于多种不同公钥密码体制的异构工业物联网认证方法,其中,在所述步骤五中,根据所述环签名成员环中的环成员排列顺序以及所述关于签名消息m的环签名验证签名的有效性的方法包括如下步骤:对于密码设备i,且,按照公式(6)计算得到密码设备的第一验证中间结果;
ꢀꢀ
(6)其中,为关于签名消息m的环签名的第i 1签名成分;对于密码设备i,且,按照公式(7)计算得到密码设备的第二验证中间结果;
(7)循环执行公式(6)与公式(7),以计算得到,其中,为第三验证中间结果;根据计算得到,其中,为第三验证中间结果,为第四验证中间结果,对应的计算公式为:
ꢀꢀꢀꢀꢀꢀ
(8)若,则签名真实有效,验证通过,其中为关于签名消息m的环签名的第一签名成分。
14.本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实施例了解到。
15.附图说明
16.图1为本发明提出的基于多种不同公钥密码体制的异构工业物联网认证方法的流程图;图2为本发明与现有方案的计算开销对比图。
具体实施方式
17.下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
18.参照下面的描述和附图,将清楚本发明的实施例的这些和其他方面。在这些描述
和附图中,具体公开了本发明的实施例中的一些特定实施方式,来表示实施本发明的实施例的原理的一些方式,但是应当理解,本发明的实施例的范围不受此限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
19.请参阅图1,本发明提出一种基于多种不同公钥密码体制的异构工业物联网认证方法,其中,所述方法包括如下步骤:s101,初始化。
20.通过密钥生成中心为工业物联网环境中的不同类型密码设备生成对应的群并构造对应的哈希函数,将所述群以及所述哈希函数作为系统公共参数;其中所述密码设备的类型至少包括rsa类设备、dl类设备、ecc类设备以及lattice类设备,所述rsa类设备为使用rsa公钥密码体制的设备,所述dl类设备为使用离散对数公钥密码体制的设备,所述ecc类设备为椭圆曲线公钥密码体制的设备,所述lattice类设备为格公钥密码体制的设备。
21.在步骤s101中,通过密钥生成中心为工业物联网环境中的不同类型密码设备生成对应的群的方法包括:为dl类设备生成dl类型群;其中,为第一个大素数,为乘法群,为乘法群的生成元;为ecc类设备生成ecc类型群;其中,为阶循环群,为群的生成元,为第二个大素数;为lattice类设备生成lattice类型群;其中,为多项式环,为在多项式环中随机选取的一个非零元,为第三个大素数。
22.此外,在本步骤中,通过密钥生成中心为工业物联网环境中的不同类型密码设备构造对应的哈希函数的方法包括如下步骤:为rsa类设备构造的rsa哈希函数表示为:;其中,为可将任意长度0、1组成的串映射到中的哈希函数,为环,,表示所有rsa类设备选取模数的最小值,表示第t个rsa类设备选取的模数,t表示rsa类设备最大序号;为dl类设备构造的dl哈希函数表示为:;其中,为可将任意长度0、1组成的比特串映射到中的哈希函数,为阶整数群;为ecc类设备构造的ec哈希函数表示为:;其中,为可将任意长度0、1组成的比特串映射到中的哈希函数,为阶整数循环群;为lattice类设备构造的lattice哈希函数表示为:;其
中,为可将任意长度0、1组成的比特串映射到中的哈希函数,为阶整数乘法群。
23.s102,生成密钥。
24.由所述密钥生成中心为工业物联网环境中的rsa类设备、dl类设备、ecc类设备以及lattice类设备生成对应的公私钥对。
25.在步骤s102中,由密钥生成中心为工业物联网环境中的rsa类设备、dl类设备、ecc类设备以及lattice类设备生成对应的公私钥对的方法包括如下步骤:对于rsa类设备,rsa类设备的私钥为 ,rsa类设备的公钥为;其中,为rsa类设备的私钥表示符,为rsa类设备的公钥表示符,为rsa类设备i的私钥,为rsa类设备i的公钥,为rsa类设备i在计算过程中用到的模数,,为rsa类设备i选取的第四个大素数,为rsa类设备i选取的第五个大素数,且满足公式,,表示欧拉函数,表示取模运算符,表示求最大公约数的函数;对于dl类设备,dl类设备i的私钥为,dl类设备i的公钥为;其中,为dl类设备i的私钥表示符,为dl类设备i的公钥表示符,为dl类设备i的私钥,为dl类设备i的公钥,且满足公式,由中随机抽取得到;对于ecc类设备,ecc类设备i的私钥为,ecc类设备i的公钥为;其中,为ecc类设备i的私钥表示符,为ecc类设备i的公钥表示符,为ecc类设备i的私钥,为ecc类设备i的公钥,且满足公式,由中随机抽取得到,为去除零元的阶整数循环群;对于lattice类设备,lattice类设备i的私钥为,lattice类
设备i的公钥为;其中,为lattice类设备i的私钥,为lattice类设备i的公钥,为从多项式环中选取的第z个元素,为从多项式环中选取的第z个元素,且与满足公式,z为一个正整数。
26.s103,生成签名的离线计算阶段。
27.所述rsa类设备、所述dl类设备、所述ecc类设备以及所述lattice类设备分别从整数乘法群或整数循环群中随机选取随机数,根据所述随机数计算得到对应的离线计算结果值。
28.在步骤s103中,rsa类设备、dl类设备、ecc类设备以及lattice类设备分别从整数乘法群或整数循环群中随机选取随机数,根据所述随机数计算得到对应的离线计算结果值的方法包括如下步骤:对于rsa类设备,从中随机选取rsa随机数,然后根据rsa随机数计算得到rsa离线计算结果值;其中,为去除零元的阶整数循环群,为rsa离线计算结果值;对于dl类设备,从中随机选取dl随机数,然后根据dl随机数计算得到dl离线计算结果值;其中,为dl离线计算结果值;对于ecc类设备,从中随机选取ecc随机数,然后根据ecc随机数计算得到ecc离线计算结果值;其中,为ecc离线计算结果值;对于lattice类设备,从多项式环中随机选取多个元素构成lattice随机向量,根据lattice随机向量和公钥的内积计算得到lattice离线计算结果值;其中,为计算向量内积的函数,为lattice离线计算结果值。
29.s104,生成签名的在线计算阶段。
30.选取n台真实签名设备构成一个环签名成员环,并根据所述rsa类设备、所述dl类设备、所述ecc类设备以及所述lattice类设备对应的公私钥对,以及对应的离线计算结果
值进行在线计算以得到对应的关于签名消息m的环签名。
31.在步骤s104中,选取n台真实签名设备构成一个环签名成员环,并根据rsa类设备、dl类设备、ecc类设备以及lattice类设备对应的公私钥对,以及对应的离线计算结果值进行在线计算以得到对应的关于签名消息m的最终签名结果。计算得到关于签名消息m的环签名的方法包括:若真实签名设备为rsa类型,则从中随机选取值,其中为rsa类设备从中随机选取的值,为去除零元的阶整数循环群;若真实签名设备为dl类型,则从中随机选取值,其中,为dl类设备从中随机选取的值;若真实签名设备为ecc类型,则从中随机选取值,其中,为ecc类设备从中随机选取的值;若真实签名设备为lattice类型,则从多项式环中随机选取多个元素构成向量;通过真实签名设备计算得到真实签名设备的第一签名中间值,对应的计算公式为:
ꢀꢀꢀꢀ
(1)其中,为取椭圆曲线上一点横坐标的函数;通过真实签名设备,基于真实签名设备的第一签名中间值计算得到真实签名设备的第二签名中间值,对应的计算公式为:
ꢀꢀ
(2)
其中,为签名消息,为环签名成员环;通过密码设备i计算得到密码设备的第三签名中间值,对应的计算公式为:
ꢀꢀ
(3)通过密码设备i,根据密码设备的第三签名中间值为密码设备i 1计算得到密码设备的第四签名中间值,对应的计算公式为:
ꢀꢀꢀꢀ
(4)其中,,且循环公式(3)与公式(4)计算最终得到真实签名设备的第五签名中间值,为密码设备i的第六签名中间值,n为环签名成员环的大小;真实签名设备根据公式(5)计算得到真实签名设备的最终签名,对应的计算公式为:
ꢀꢀꢀ
(5)其中,关于签名消息m的环签名,为第一签名成分,为第二签名成分,为第n 1签名成分,n为环签名成员环的大小,为rsa类设备j的私
钥,为dl类设备j的私钥,为ecc类设备j的私钥,为lattice类设备j的私钥。
32.s105,签名验证。
33.根据所述环签名成员环中的环成员排列顺序以及所述关于签名消息m的环签名验证签名的有效性。
34.在步骤s105中,根据所述环签名成员环中的环成员排列顺序以及所述关于签名消息m的环签名验证签名的有效性的方法包括如下步骤:对于密码设备i,且,按照公式(6)计算得到密码设备的第一验证中间结果;
ꢀꢀ
(6)其中,为关于签名消息m的环签名的第i 1签名成分;对于密码设备i,且,按照公式(7)计算得到密码设备的第二验证中间结果; (7)循环执行公式(6)与公式(7),以计算得到,其中,为第三验证中间结果;根据计算得到,其中,为第三验证中间结果,为第四验证中间结果,对应的计算公式为:
ꢀꢀꢀꢀꢀꢀꢀ
(8)若,则签名真实有效,验证通过,其中为关于签名消息m的环签名的第一签名成分。
35.本发明提出基于多种不同公钥密码体制的异构工业物联网认证方法,在设置阶段分别为工业物联网环境中rsa公钥密码体制、离散对数(dl)公钥密码体制、椭圆曲线公钥密码体制(ecc)以及格公钥密码体制生成对应的群及哈希函数作为系统公共参数;分别为使用rsa公钥密码体制、离散对数公钥密码体制、椭圆曲线公钥密码体制以及格公钥密码体制的设备生成公私钥对;选定n个不同类型的设备并按顺序组成环,环成员通过离线和在线两个阶段的依次计算,最后形成环签名;环签名接收者可对签名的有效性进行验证。本发明能够同时支持所有常见密码系统,如rsa公钥密码体制、离散对数公钥密码体制、椭圆曲线公钥密码体制以及格公钥密码体制等,并有效防止工业物联网中传输和存储的消息被有意无意的篡改、保护消息发送者身份隐私。
36.实施例二:为验证本发明提出的使用多种不同公钥密码体制的异构工业物联网认证方案的效率,本发明与现有已知的支持使用两种不同公钥密码体制的异构工业物联网环境的认证方案sama进行对比,选取设备数量为20、40、60、80、100、200分别对离线计算、在线计算和签名验证三个阶段的计算开销进行对比,并进一步对比了两种方案通信开销的大小。验证采用的软硬件环境采用intel core i7-8550 2.00 ghz 处理器、 16 gb 内存、 windows 10 操作系统;代码基于ntl库编写;安全参数方面,rsa类设备密码算法安全参数为1024位,dl类设备密码算法安全参数为1024位,ecc类设备密码算法安全参数设定为160位,lattice类设备密码算法安全参数为16位,本发明中格密码采用16维向量和256次多项式。为方便起见,在进行实验时,现有方案rsa类设备数量占比50%,dl类设备数量占比50%;本发明rsa类设备数量占比25%,dl类设备数量占比25%,ecc类设备数量占比25%,lattice类设备数量占比25%。
37.请参阅图2,图2中计算开销数据单位为毫秒,
“‑”
表示不支持,从图2中可以看出:本发明的有益效果在于提出的认证方法具有支持更多类型密码系统、计算效率高的特点,适合于工业物联网异构密码体制及设备资源受限的环境下使用。应当理解的,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的
组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
38.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、
ꢀ“
示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
39.以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
再多了解一些

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

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

相关文献