System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于椭圆曲线的群组密钥协商及验证方法技术_技高网

一种基于椭圆曲线的群组密钥协商及验证方法技术

技术编号:40011320 阅读:12 留言:0更新日期:2024-01-16 15:19
一种基于椭圆曲线的群组密钥协商及验证方法,涉及信息安全的技术领域。本发明专利技术是为了解决现有群组密钥协商方法消耗资源大导致通信开销和通信时延高的问题。本发明专利技术包括:对全局初始化,每个用户向可信第三方注册,获得用户ID与时间戳信息;用户利用私钥在群组内生成会话密钥和用户公钥;获取群组内每个用户的公钥证书,并进行群签名以及群签名验证,若群签名验证通过,则表示当前群组安全;若群名验证不通过,则删除异常用户,将剩余用户组成安全临时会话群组;用户利用会话密钥和用户公钥对安全群组中的密文进行加密解密,进行群组安全通信,获得群组通信安全提示。本发明专利技术用于群组加密通信。

【技术实现步骤摘要】

本专利技术涉及信息安全的,特别涉及一种基于椭圆曲线的群组密钥协商及验证方法


技术介绍

1、为了保证群组内的通信安全,群组密钥协商应用而生,群组密钥协商主要应用在安全多方计算、资源安全共享和分布式协同计算等方向。群组密钥协商方案一般是群组之间先计算出群组会话密钥,进而用会话密钥进行群组加密通信的方法,群组密钥协商是保障群组之间进行安全信息交换与传输的关键技术之一。

2、目前,在传统物联网(iot)数据通信场景中,主要采用涉及大素数的生成、模幂运算等涉及大数的运算的算法,如非对称加密算法rsa等。然而现有群组密钥协商方法计算复杂度较高,因此对于资源受限的物联网设备可能会消耗大量计算资源,进而导致通信开销和通信时延高。


技术实现思路

1、本专利技术目的是为了解决现有群组密钥协商方法消耗资源大导致通信开销和通信时延高的问题,而提出了一种基于椭圆曲线的群组密钥协商及验证方法。

2、一种基于椭圆曲线的群组密钥协商及验证方法具体过程为:

3、步骤一、对全局初始化,然后每个用户向可信第三方ta注册,获得用户id与时间戳信息;

4、步骤二、用户获取随机私钥,用户加入群组后,利用私钥在群组内协商生成会话密钥ck和用户公钥pkri,若有新用户加入已建立的群组或已建群组中的老用户离开当前群组,则更新会话密钥和用户公钥;

5、所述群组内的用户数量设为n个;

6、步骤三、获取群组内每个用户的公钥证书,并利用群组内每个用户的公钥证书进行群签名以及群签名验证,若群签名验证通过,则表示当前群组安全,然后执行步骤四;若群名验证不通过,则删除异常用户,并将群组的空位置广播给所有未加入群组的用户,若有新用户加入则返回执行步骤二,直至签名验证通过且无新用户加入后执行步骤四;

7、若当前安全群组中用户人数小于n,则将剩余用户组成安全临时会话群组;

8、步骤四、步骤三获得的安全群组中的用户利用会话密钥和用户公钥对群组中的密文进行加密解密,从而进行群组安全通信,获得群组通信安全提示。

9、进一步地,所述对全局初始化具体为:可信第三方ta向注册的用户发布全局的系统参数

10、其中,p是大于64位的随机质数,g是原根,id(ui)是用户ui的id,是用户ui的时间戳,f(p)是哈希域;

11、所述哈希域f(p),通过以下方式获得:

12、将p和椭圆曲线作为规约,使椭圆曲线上的点p(x,y)在域上,从而确定哈希域f(p);

13、所述椭圆曲线为:

14、y2=x3+324x+1287

15、其中,x,y∈f(p)且x,y mod p∈(0,p-1)。

16、进一步地,所述步骤二中的用户加入群组后,利用私钥在群组内协商生成会话密钥ck和用户公钥具体为:

17、(a)将用户标号i初始化为i=1;

18、(b)用户u1根据u1的私钥r1,获取用户u1的公钥并将发送给用户u2;

19、(c)令i=i+1;

20、(d)用户ui根据ui的私钥ri,获得用户ui的公钥并将发送给用户ui+1;

21、(e)判断i是否小于n,若i<n,则令i=i+1并返回(d),直至i=n,则执行(f);

22、(f)用户un利用接收的用户un-1的公钥,从而获得会话密钥

23、其中,ui是u1,u2,u3,....,un中的任一用户,{r1,r2,r3,r4,r5,....rn}∈{1,p-1},ri是ui的私钥,n是群组中用户总数。

24、进一步地,所述步骤二中的若有新用户加入已建立的群组或已建群组中的老用户离开当前群组,则更新会话密钥和用户公钥,具体为:

25、新用户通过以下方式加入已建立的群组并更新会话密钥:

26、a1、若群组内用户位置i为空位置,则令list[i]=0,并向所有未加入群组的用户广播并记录空位置;

27、a2、按照用户在ta注册的顺序将未加入群组的用户加入到群组中,并令list[i]=1;

28、a3、利用新加入用户的私钥和群组中原有用户的私钥重新获取当前群组中每个用户的公钥,从而获取当前群组的会话密钥,并更新会话密钥ck。

29、已建群组中的老用户离开当前群组,通过以下方式更新会话密钥:

30、b1、老用户离开群组后,获取空缺位置i,令list[i]=0;

31、b2、利用群组内剩余用户组成临时会话群组,并获得临时会话密钥:

32、当用户ui退出群组后,核对剩余用户的id是否为{id(u1),id(u2),....,id(ui-1),id(ui+1),...,id(un)},若用户id无异常,则获得临时会话密钥若有用户id异常,则剔除异常用户,再获取临时会话密钥。

33、进一步地,所述步骤三中的获取群组内每个用户的公钥证书,并利用群组内每个用户的公钥证书进行群签名以及群签名验证,若群签名验证通过,则表示当前群组安全,然后执行步骤四;若群名验证不通过,则删除异常用户,并将群组的空位置广播给所有未加入群组的用户,若有新用户加入则返回执行步骤二,直至签名验证通过且无新用户加入后执行步骤四,具体为:

34、步骤三一、群组内每个用户ui向ca申请获得公钥证书

35、其中,是用户ui的签名验证算法,signca是公钥证书的签名算法;

36、步骤三二、利用步骤三一获得的公钥证书进行群签名:

37、步骤三二一、用户un计算用户un的签名并将将发送给用户un-1;

38、所述用户un的签名为:

39、

40、步骤三二二、用户un-1计算用户un的验证私钥并将发送给用户un,用户un-1计算用户un-1的签名并将与传给用户un-2;

41、所述用户un的验证私钥为:

42、

43、所述用户un-1的签名为:

44、

45、步骤三二三、用户un-2计算用户un-1的验证私钥并将发送给用户un-1,用户un-2计算用户un-2的签名并将与传给用户un-3;

46、所述用户un-1的验证私钥为:

47、

48、所述用户un-2的签名为:

49、

50、步骤三二四、按照步骤三二一到步骤三二三方式对会话群中的所有用户进行群签名,直至用户u1计算用户u2的验证私钥获得用户u1的签名将和发送给用户un;

51、所述用户u2的验证私钥为:

52、

53、所述用户u1的签名为:

54、

55、步骤三二五、用户un计算验证会话密钥

56、步骤三三、对步骤三二获得的群签名进行验证,若群签名验证通过,则表示当前群组安全,然后执行步骤四;若群签名验证不通过,本文档来自技高网...

【技术保护点】

1.一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于所述方法具体过程为:

2.根据权利要求1所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述对全局初始化具体为:可信第三方TA向注册的用户发布全局的系统参数

3.根据权利要求2所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述步骤二中的用户加入群组后,利用私钥在群组内协商生成会话密钥CK和用户公钥具体为:

4.根据权利要求3所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述步骤二中的若有新用户加入已建立的群组或已建群组中的老用户离开当前群组,则更新会话密钥和用户公钥,具体为:

5.根据权利要求4所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述步骤三中的获取群组内每个用户的公钥证书,并利用群组内每个用户的公钥证书进行群签名以及群签名验证,若群签名验证通过,则表示当前群组安全,然后执行步骤四;若群名验证不通过,则删除异常用户,并将群组的空位置广播给所有未加入群组的用户,若有新用户加入则返回执行步骤二,直至签名验证通过且无新用户加入后执行步骤四,具体为:

6.根据权利要求5所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述步骤三三中的对步骤三二获得的群签名进行验证,若群签名验证通过,则表示当前群组安全,然后执行步骤四;若群签名验证不通过,则删除异常用户,并将群组的空位置广播给所有未加入群组的用户,若有新用户加入则返回执行步骤二,直至签名验证通过且无新用户加入后执行步骤四,具体为:

7.根据权利要求6所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述步骤四中的步骤三获得的安全群组中的用户利用会话密钥和用户公钥对群组中的密文进行加密解密,从而进行群组安全通信,获得群组通信安全提示,具体为:

8.根据权利要求7所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述步骤四四中的在步骤四三获得的安全群组内通信,获得群组通信安全提示,具体为:

9.根据权利要求8所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述步骤四四三中的从用户Un开始,每个用户利用步骤四四二获得的对密文进行轮询解密,从而进行群组通信,获得群组通信安全提示,具体为:

10.根据权利要求9所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述step7中的利用step1到step6获得的Hash U1、Hash U2、......、Hash Un和r'1、r'2、....r'n-2、r'n-1获取群组通信安全提示,具体为:

...

【技术特征摘要】

1.一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于所述方法具体过程为:

2.根据权利要求1所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述对全局初始化具体为:可信第三方ta向注册的用户发布全局的系统参数

3.根据权利要求2所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述步骤二中的用户加入群组后,利用私钥在群组内协商生成会话密钥ck和用户公钥具体为:

4.根据权利要求3所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述步骤二中的若有新用户加入已建立的群组或已建群组中的老用户离开当前群组,则更新会话密钥和用户公钥,具体为:

5.根据权利要求4所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述步骤三中的获取群组内每个用户的公钥证书,并利用群组内每个用户的公钥证书进行群签名以及群签名验证,若群签名验证通过,则表示当前群组安全,然后执行步骤四;若群名验证不通过,则删除异常用户,并将群组的空位置广播给所有未加入群组的用户,若有新用户加入则返回执行步骤二,直至签名验证通过且无新用户加入后执行步骤四,具体为:

6.根据权利要求5所述的一种基于椭圆曲线的群组密钥协商及验证方法,其特征在于:所述步骤三三中的对步骤三二获得的...

【专利技术属性】
技术研发人员:袁琪袁昊郑晓东周美彤温京京王艳春
申请(专利权)人:齐齐哈尔大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1