1.一种基于对称密码的群组密钥协商方法,用于在n个通信节点u之间建立会话密钥,每个通信节点ui(1≤i≤n)具有一个身份信息IDi(1≤i≤n),每个通信节点ui内预置一个与服务器S共享的共享密钥ski(1≤i≤n);在服务器S内存储有通信节点ui与共享密钥ski和身份信息IDi的映射表,其特征在于:具体步骤包括:步骤1、所有通信节点u向同一个服务器S发送认证信息;其中,每个通信节点ui发送的认证信息均包括利用其自身共享密钥ski加密的随机数ki(1≤i≤n)和身份信息IDi,其中,每个通信节点ui生成一个随机数ki(1≤i≤n);
步骤2、服务器S接收认证信息,然后根据认证信息对所有通信节点u进行认证;
步骤3、服务器S对所有通信节点u进行认证后,向所有通信节点u广播校验信息;其中,服务器S发送给每个通信节点ui的校验信息中包含利用与该通信节点ui之间的共享密钥ski和加密算法E'加密的k′i,步骤4、所有通信节点u接收校验信息,然后根据校验信息对服务器S进行校验;
步骤5、所有通信节点u对服务器S进行校验后,各自独立计算出会话密钥,方法为:每个通信节点ui计算 并将会话密钥设置为sk=H(k||ID1||ID2||...||IDn),H表示哈希算法。
2.如权利要求1所述的一种基于对称密码的群组密钥协商方法,其特征在于:所述步骤
1的具体过程包括:
步骤1.1、每个通信节点ui生成一个随机数ki(1≤i≤n);
步骤1.2、每个通信节点ui利用自身的共享密钥ski对随机数ki和身份信息IDi进行加密,得到一条密文 其中E表示加密算法;
步骤1.3、每个通信节点ui将密文C与身份信息IDi组成认证信息(IDi,C);
步骤1.4、每个通信节点将认证信息(IDi,C)发送给服务器。
3.如权利要求2所述的一种基于对称密码的群组密钥协商方法,其特征在于:所述步骤
2的具体过程包括:
步骤2.1、服务器S根据认证信息(IDi,C)中的身份信息IDi从映射表中检索到该通信节点ui的共享密钥ski;
步骤2.2、服务器S根据检索到的共享密钥ski对密文C进行解密,解密后得到(ID′i,ki);
步骤2.3、服务器S对IDi和ID′i进行对比,如果IDi和ID′i一致则对该通信节点ui的认证通过。
4.如权利要求3所述的一种基于对称密码的群组密钥协商方法,其特征在于:所述步骤
3的具体过程包括:
步骤3.1A、服务器S计算
步骤3.2A、服务器S根据k′i计算 和H(ki'),其中 是服务器S利用通信节点ui的共享密钥ski和加密算法E'对k′i进行加密后得到的,H表示哈希算法;
步骤3.3A、服务器S将 和H(k′i)作为校验信息广播给所有通信节点u。
5.如权利要求4所述的一种基于对称密码的群组密钥协商方法,其特征在于:所述步骤
4的具体过程包括:
步骤4.1A、每个通信节点ui接收到校验信息后对 进行解密,解密得到k″i;
步骤4.2A、每个通信节点ui对解密得到的k″i进行哈希运算得到H(k″i);
步骤4.3A、每个通信节点ui对H(k″i)和H(k′i)进行比对,如果H(k″i)和H(k′i)相同则对服务器S的校验通过。
6.如权利要求3所述的一种基于对称密码的群组密钥协商方法,其特征在于:所述步骤
3的具体过程包括:
步骤3.1B、服务器S计算
sk=H(k||ID1||ID2||...||IDn);
步骤3.2B、服务器S根据k′i计算 和H(k′i),其中 是服务器S利用通信节点ui的共享密钥ski和加密算法E'对k′i进行加密后得到的,H表示哈希算法;
步骤3.3B、服务器S以sk作为密钥对一个通信数据m进行加密产生认证码Macsk(m);
步骤3.4B、服务器S将 H(k′i)和Macsk(m)作为校验信息广播给所有通信节点u。
7.如权利要求6所述的一种基于对称密码的群组密钥协商方法,其特征在于:所述步骤
4的具体过程包括:
步骤4.1B、每个通信节点ui接收到校验信息后对 进行解密,解密得到k″i;
步骤4.2B、每个通信节点ui对解密得到的k″i进行哈希运算得到H(k″i);
步骤4.3B、每个通信节点ui对H(k″i)和H(k′i)进行比对,如果H(k″i)和H(k′i)相同则对服务器S的校验通过。
8.如权利要求7所述的一种基于对称密码的群组密钥协商方法,其特征在于:所述步骤
5的具体过程包括:
步骤5.1B、每个通信节点ui计算
步骤5.2B、每个通信节点ui将会话密钥设置为sk=H(k||ID1||ID2||...||IDn);
步骤5.3B、每个通信节点ui利用会话密钥sk对认证码Macsk(m)进行校验。