1.一种基于单向累加器的匿名认证与密钥交换方法,其特征在于,包括:密钥管理中心利用单向累加器为每个用户生成并颁发唯一的身份票据;
用户端生成随机数,基于所述随机数生成临时认证票据并发送;
所述用户端接收来自其他用户端的临时认证票据,并计算出认证值,再根据所述随机数计算出密钥;
所述用户端利用共享密钥加密所述随机数并与其他用户端交换随机数密文,并结合所述认证值进行双向认证。
2.根据权利要求1所述的一种基于单向累加器的匿名认证与密钥交换方法,其特征在于,所述密钥管理中心利用单向累加器为每个用户生成并颁发唯一的身份票据的过程包括:
所述密钥管理中心利用单向累加器生成认证根;
所述密钥管理中心为每个变量生成累加值;
所述密钥管理中心根据生成的累加值,为每个用户生成身份票据。
3.根据权利要求2所述的一种基于单向累加器的匿名认证与密钥交换方法,其特征在于,所述密钥管理中心生成的认证根,表示为z=f(...f(x,y1)...,yl),其中,函数f为单向累加器,z为累加值,x和y1,...,l为随机选取的自然数,l为允许注册成员的总数;所述单向累y
加器定义为f(x,y)=en(x,y)=xmod n,p和q为2个大素数,且满足 和 为大素数,n=pq。
4.根据权利要求3所述的一种基于单向累加器的匿名认证与密钥交换方法,其特征在于,所述密钥管理中心为每个变量生成的累加值zi如下,变量为yi=1,...,l:zi=f(...f(f(...f(x,y1)...,yi‑1),yi+1)...,yl);
所述密钥管理中心为每个用户生成身份票据记为Ti=(zi,yi)。
5.根据权利要求4所述的一种基于单向累加器的匿名认证与密钥交换方法,其特征在于,所述用户端生成的临时认证票据表示为RTa=(f(za,ra),ya),ra为本端生成的随机数,其中,f(za,ra)=f(f(...f(f(...f(x,y1)...,ya‑1),ya+1)...,yl),ra);
所述用户端计算出的认证值表示为AUb=f(f(zb,rb),yb),rb为其他端生成的随机数,所述用户端计算出的密钥Ka,b=f(AUb,ra)。
6.根据权利要求5所述的一种基于单向累加器的匿名认证与密钥交换方法,其特征在于,所述用户端利用共享密钥加密所述随机数并与其他用户端交换随机数密文,并结合所述认证值进行双向认证的过程包括:
所述用户端利用计算出的密钥Ka,b加密随机数ra,得到密文 并发送;
所述用户端利用密钥Ka,b对本端接收到的来自其他用户端的密文cb进行解密,获得计算f(f(za,ya),rb')并与认证值AUb进行比较,如果f(f(za,ya),rb')=AUb,则本端对其他客户端的认证通过,否则认证不通过。