1.一种PKI域内的用户访问IBC域内的资源的认证密钥协商方法,其操作步骤是:
A、申请访问
PKI域的用户U向PKI域的认证服务器CA发出访问IBC域的资源S的请求,PKI域认证服务器CA对PKI域的用户U的身份合法性进行认证;若认证未通过,则跳转至步骤E;否则,向IBC域认证服务器TA转发PKI域的用户U的访问请求;
B、生成用户索引并发送
IBC域认证服务器TA对PKI域认证服务器CA进行身份认证,若认证未通过,则跳转至步骤E;否则,IBC域认证服务器TA生成PKI域的用户U访问IBC域内资源S的会话密钥K的认证服务器部分k1,并生成会话密钥K的认证服务器部分k1对应的用户索引Na;且该用户索引Na为随机产生并与已有用户索引不相同;
IBC域认证服务器TA利用自身私钥SKTA对IBC域认证服务器TA的身份标识IDTA、用户索引Na及会话密钥K的认证服务器部分k1,进行签名得到已签名消息Msign,再利用PKI域的用户U的公钥PKU对已签名消息Msign进行加密,得到用户接收消息MA2TA->U,并将用户接收消息MA2TA->U发送给PKI域的用户U;
同时,IBC域认证服务器TA利用IBC域内资源S的公钥QS对已签名消息Msign进行加密,得到资源接收信息MA2TA->S,并将资源接收信息MA2TA->S发送给IBC域内的资源S;
C、双向身份认证以及协商会话密钥
C1、PKI域的用户U利用自身私钥SKU对IBC域认证服务器TA发来的用户接收消息MA2TA->U进行解密,得到IBC域认证服务器TA的身份标识IDTA、用户索引Na及会话密钥K的认证服务器部分k1;再利用IBC域认证服务器TA的身份标识IDTA,计算出IBC域认证服务器TA的公钥QTA,并用IBC域认证服务器TA的公钥QTA来验证签名的有效性,若验证未通过,则跳转至步骤E;否则,PKI域的用户U生成会话密钥K的用户部分k2,并将会话密钥K的用户部分k2首位处进行填充,使其与会话密钥K的认证服务器部分k1的位数相同,然后对会话密钥K的认证服务器部分k1和填充后的用户部分k2进行异或处理得到完整的会话密钥K;
C2、IBC域内的资源S用自身私钥SS对B步骤中IBC域内认证服务器TA发送来的资源接收消息MA2TA->S进行解密,得到解密会话密钥K’的认证服务器部分K1'以及对应的资源端用户索引Na';
C3、PKI域的用户U再利用IBC域内的资源S的身份标识IDS,计算出IBC域内的资源S的公钥QS,对会话密钥K的用户部分K2和用户索引Na进行加密,得到用户密文S-k2;同时,利用会话密钥K对IBC域内的资源S的身份标识IDS进行加密,得到身份标识密文S-ID;再将用户密文S-k2和身份标识密文S-ID一起发送给IBC域内的资源S;
C4、IBC域内的资源S对收到的用户密文S-k2进行解密,得到资源端会话密钥K″的用户部分K2″以及用户端用户索引Na″;再搜索出与用户端用户索引Na″对应的检出解密会话密钥K″′的认证服务器部分K1″′;再将资源端会话密钥K″的用户部分K2″首位处进行填充,使其与检出解密会话密钥K″′的认证服务器部分K1″′的位数相同,然后对检出解密会话密钥K″′的认证服务器部分K1″′和填充后的用户部分K2″进行异或处理得到完整的资源端会话密钥K″;
再用资源端会话密钥K″解密收到的身份标识密文S-ID,得到IBC域内资源S的提取身份标识IDS',将提取身份标识IDS'和IBC域的资源S的身份标识IDS进行验证,若二者不一致,则跳转至步骤E;否则,IBC域内的资源S用资源端会话密钥K″对其身份标识IDS进行加密,得到IBC域内的资源S的资源端身份标识密文MA3S->U,并将其发送给PKI域的用户U;
C5、PKI域的用户U用会话密钥K对收到的资源端身份标识密文MA3S->U进行解密,得到IBC域内的资源S的用户端身份标识IDS”,并验证IBC域内的资源S的用户端身份标识IDS”的有效性,若验证未通过,则跳转至步骤E;否则PKI域的用户U与IBC域的资源S的认证密钥协商完成,PKI域的用户U利用会话密钥K对IBC域的资源S进行安全访问;
D、重认证
当会话密钥K的认证服务器部分k1超出其生命周期时,IBC域认证服务器TA销毁B步骤中生成的与会话密钥K的认证服务器部分k1对应的用户索引Na;IBC域内的资源S销毁C2步骤中得到的与会话密钥K的认证服务器部分K1对应的用户索引Na;若PKI域的用户U不再访问IBC域的资源S,则跳转至步骤E;若PKI域的用户U仍需访问IBC域的资源S,则跳转至步骤A;
当会话密钥K的用户部分k2超出其生命周期,但会话密钥K的认证服务器部分k1仍在其生命周期中,若PKI域的用户U不再访问IBC域的资源S时,则跳转至步骤E;若PKI域的用户U仍需访问IBC域的资源S,则跳转至步骤A或者进行快速重认证;
E、中止会话。
2.根据权利要求1所述的一种PKI域内的用户访问IBC域内的资源的认证密钥协商方法,其特征在于,所述的B步骤中的会话密钥K的认证服务器部分k1的位数为128位;所述的C1步骤中,PKI域的用户U生成会话密钥K的用户部分k2的长度为80位。
3.根据权利要求1所述的一种PKI域内的用户访问IBC域内的资源的认证密钥协商方法,其特征在于,所述D步骤中的快速重认证的具体做法是:PKI域内的用户U生成重认证会话密钥KR的用户部分KR2,并将重认证会话密钥KR的用户部分KR2首位处进行填充,使其与重认证会话密钥KR的认证服务器部分k1的位数相同,然后对重认证会话密钥KR的认证服务器部分k1和填充后的用户部分KR2进行异或处理得到完整的重认证会话密钥KR;转至C3步骤。