一种用于收发双方之间认证报文的方法

文档序号:7615165阅读:127来源:国知局
专利名称:一种用于收发双方之间认证报文的方法
技术领域
本发明涉及一种用于收发双方之间认证报文的方法,更具体地说是涉及一种使用收发双方之间共享的消息认证算法、共享的密钥认证报文的方法,也就是一种用于收发双方之间认证报文的方法。
背景技术
现存的一种使用收发双方之间共享的消息认证算法、共享的密钥,利用具有生存时间的随机询问数认证报文的方法,要求认证双方的时钟必须保持高度的一致,对认证双方的时钟精度要求较高,而且,在随机询问数的生存时间内不能拒绝第三方的重放攻击,现存的另一种使用收发双方之间共享的消息认证算法、共享的密钥,利用仅可使用一次的随机询问数认证报文的方法,不能有效的防止第三方对口令的猜测和穷举攻击。而本发明提供的一种使用收发双方之间共享的消息认证算法、共享的密钥,利用报文接受信息和具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数认证报文的方法,可以自动调整发送方与接收方随机询问数的生存时间段保持同步,对认证双方的时钟精度要求不高,仅要求认证双方的时钟在随机询问数的生存时间段内不致产生较大的偏差即可,可以拒绝第三方的重放攻击,有效的防止第三方对口令的猜测和穷举攻击,而且,本发明提供的报文认证方法,在认证过程中,还可以及时判断出接收方是否已接受发送方发送的报文、是否受到过非法侵入,发送方是否已接受接收方回复的包含报文处理执行信息的应答消息。

发明内容
本发明的目的在于,克服现有技术的不足之处,提供一种用于收发双方之间认证报文的方法。本发明所述的用于收发双方之间认证报文的方法在认证双方共享的消息认证算法、共享的密钥基础上,包含如下步骤(a)发送方生成并发送检测请求消息和附加摘要;(b)接收方根据接收到的检测请求消息和附加摘要及接收方自行计算出的摘要,决定是直接回复发送方结合接收方接受信息单元存储的报文接受信息生成的检测应答消息和附加摘要,还是直接结束本次认证过程;(c)发送方根据发送方发送信息单元存储的报文发送信息、发送方应答信息单元存储的报文应答信息、发送方接受信息单元存储的报文接受信息和发送方接受的检测应答消息中包含的报文接受信息,判断接收方是否已接受上次认证过程中发送方发送的报文,上次认证过程中接收方是否受到了非法侵入,发送方是否已接受上次认证过程中接收方回复的包含报文处理执行信息的应答消息,当发送方不需要向接收方发送报文时,发送方即结束本次认证过程,当发送方需要向接收方发送报文时,发送方即把接受的检测应答消息中包含的报文接受信息写入发送方接受信息单元,发送方采用与接收方计算报文接受信息相同的算法并结合接受的检测应答消息中包含的报文接受信息和需要发送的报文计算出一个新报文发送信息,并把计算出的新报文发送信息写入发送方发送信息单元,发送方结合接受的检测应答消息中包含的报文接受信息生成并发送询问请求消息和附加摘要;(d)接收方根据或利用接收到的询问请求消息和附加摘要、接收方接受信息单元存储的报文接受信息及接收方自行计算出的摘要,决定是直接回复发送方结合接收方接受信息单元存储的报文接受信息、接收方询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数生成的询问应答消息和附加摘要,还是直接回复发送方结合接收方接受信息单元存储的报文接受信息、接收方事件信息单元存储的报文处理执行信息生成的询问应答消息和附加摘要,还是直接结束本次认证过程;(e)发送方根据发送方发送信息单元存储的报文发送信息、发送方接受信息单元存储的报文接受信息和发送方接受的询问应答消息中包含的报文接受信息,判断接收方是否非法接受了在步骤(c)中发送方需要发送的报文,是否在本次认证过程中受到了非法侵入,发送方接受的询问应答消息中包含的另一数据是报文处理执行信息还是具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数,发送方是根据接受的询问应答消息中包含的报文处理执行信息判断接收方对报文的处理执行情况并把接受的询问应答消息中包含的报文接受信息写入发送方应答信息单元,还是结合发送方在步骤(c)中接受的检测应答消息中包含的报文接受信息和在步骤(c)中发送方需要发送的报文及接受的询问应答消息中包含的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数生成并发送认证请求消息和附加摘要;(f)接收方根据或利用接收到的认证请求消息和附加摘要、接收方询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数、接收方声明单元队列按照丧失认证功能的先后顺序存储的仅具有声明功能不具有认证功能的随机询问数、接收方接受信息单元存储的报文接受信息及接收方自行计算出的摘要,决定是在接受认证请求消息中包含的报文,采用与发送方计算报文发送信息相同的算法并结合接收方接受信息单元存储的报文接受信息和接受的报文计算出一个新报文接受信息,并把计算出的新报文接受信息写入接收方接受信息单元,处理执行接受的报文,并把报文处理执行信息写入接收方事件信息单元后,再回复发送方结合接收方接受信息单元存储的报文接受信息、接收方事件信息单元存储的报文处理执行信息生成的认证应答消息和附加摘要,还是直接回复发送方结合接收方接受信息单元存储的报文接受信息、接收方事件信息单元存储的报文处理执行信息生成的认证应答消息和附加摘要,还是直接回复发送方结合接收方接受信息单元存储的报文接受信息、接收方询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数生成的认证应答消息和附加摘要,还是直接结束本次认证过程;(g)发送方根据发送方发送信息单元存储的报文发送信息、发送方接受信息单元存储的报文接受信息和发送方接受的认证应答消息中包含的报文接受信息,判断接收方是否已接受在步骤(c)中发送方需要发送的报文,是否在本次认证过程中受到了非法侵入,发送方接受的认证应答消息中包含的另一数据是报文处理执行信息还是具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数,发送方是否根据接受的认证应答消息中包含的报文处理执行信息判断接收方对报文的处理执行情况并把接受的认证应答消息中包含的报文接受信息写入发送方应答信息单元,在本次认证过程中,当发送方接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息相一致的次数不超过规定的次数时,发送方即结合在步骤(c)中接受的检测应答消息中包含的报文接受信息和在步骤(c)中发送方需要发送的报文及接受的认证应答消息中包含的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数重新生成并发送新认证请求消息和附加摘要,当发送方接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息相一致的次数超过规定的次数时,发送方即结束本次认证过程。
通过参照附图来描述本发明的优选实施例,本发明的上述目的和优点将变的更加明白。


图1是报文认证示意图;图2是发送方检测请求流程图;图3是发送方询问请求流程图;图4是发送方认证请求流程图;图5是接收方检测应答流程图;图6是接收方询问应答流程图;图7是接收方认证应答流程图;图8是接收方结合声明单元队列回复认证应答消息的流程图;图9是接收方随机询问数流程图。
具体实施例方式现参照附图1、2、3、4、5、6、7、8、9,结合实施例说明如下1、报文是指为特定目的而指定的一串连续字符。
2、检测请求消息是指发送方要发送给接收方的检测请求标志和检测请求salt值。
3、检测请求标志是指接收方用以判断接收到的请求消息是否为检测请求消息的标示符。
4、检测请求发送序列号是指发送方向接收方顺次发送检测请求消息和附加摘要的编号,实际值记为n1,最大值记为N1。
5、检测请求salt值是指发送方在接受接收方回复的检测应答消息时防止预计算的随机数。
6、T1是指发送方顺次发送检测请求消息和附加摘要的规定时间间隔。
7、询问请求消息是指询问请求标志、询问请求salt值和发送方在步骤F106中接受的检测应答消息中包含的报文接受信息。
8、询问请求标志是指接收方用以判断接收到的请求消息是否为询问请求消息的标示符。
9、询问请求发送序列号是指发送方向接收方顺次发送询问请求消息和附加摘要的编号,实际值记为n2,最大值记为N2。
10、询问请求salt值是指发送方在接受接收方回复的询问应答消息时防止预计算的随机数。
11、T2是指发送方顺次发送询问请求消息和附加摘要的规定时间间隔。
12、认证请求消息是指认证请求标志、认证请求salt值、发送方在步骤F106中接受的检测应答消息中包含的报文接受信息和发送方在步骤F201中需要发送的报文。
13、认证请求标志是指接收方用以判断接收到的请求消息是否为认证请求消息的标示符。
14、认证请求发送序列号是指发送方向接收方顺次发送认证请求消息和附加摘要的编号,实际值记为n3,最大值记为N3。
15、认证请求salt值是指发送方在接受接收方回复的认证应答消息时防止预计算的随机数。
16、T3是指发送方顺次发送认证请求消息和附加摘要的规定时间间隔。
此后,将参照附图详细描述本发明的实施例。本发明并不受后述实施例的限制,并且在本发明的精神和范围内许多变化是可能的。提供本发明的实施例是为了向任何本领域的技术人员更为完整的说明本发明。
参照图1现将说明根据本发明的报文认证方法。
步骤(a)发送方生成包含检测请求标志和检测请求salt值的检测请求消息,发送方采用认证双方共享的消息认证算法结合认证双方共享的密钥和刚刚生成的检测请求消息计算出检测请求消息的附加摘要,发送方发送刚刚生成的检测请求消息和附加摘要。
步骤(b)当接收方接收到发送方发送的检测请求消息和附加摘要时,接收方即采用认证双方共享的消息认证算法结合认证双方共享的密钥、刚刚接收到的检测请求消息自行计算出一个摘要,接收方比较自行计算出的摘要与刚刚接收到的检测请求消息的附加摘要是否一致?当一致时,接收方接受与接收方自行计算出的摘要相一致的附加摘要同时接收到的检测请求消息,接收方生成包含接收方接受信息单元此时存储的报文接受信息的检测应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、接收方刚刚接受的检测请求消息中包含的检测请求salt值和刚刚生成的检测应答消息计算出检测应答消息的附加摘要,接收方回复发送方刚刚生成的检测应答消息和附加摘要,当接收方自行计算出的摘要与刚刚接收到的检测请求消息的附加摘要不一致时,接收方即直接结束本次认证过程。
步骤(c)包含如下步骤(c1)当发送方接收到接收方回复的检测应答消息和附加摘要时,发送方即采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤(a)中发送给接收方的检测请求消息中包含的检测请求salt值和刚刚接收到的检测应答消息自行计算出一个摘要,发送方比较自行计算出的摘要与刚刚接收到的检测应答消息的附加摘要是否一致?当一致时,则进入步骤(c2),当不一致时,再次发送在步骤(a)中生成的检测请求消息和附加摘要;(c2)发送方接受与发送方在步骤(c1)中自行计算出的摘要相一致的附加摘要同时接收到的检测应答消息,发送方比较刚刚接受的检测应答消息中包含的报文接受信息与发送方发送信息单元此时存储的报文发送信息是否一致?当一致时,则进入步骤(c3),当不一致时,则进入步骤(c4);(c3)发送方比较在步骤(c2)中接受的检测应答消息中包含的报文接受信息与发送方应答信息单元此时存储的报文应答信息是否一致?当一致时,即表示接收方已接受上次认证过程中发送方发送的报文且发送方已接受上次认证过程中接收方回复的包含报文处理执行信息的应答消息,当不一致时,即表示接收方已接受上次认证过程中发送方发送的报文但发送方未接受上次认证过程中接收方回复的包含报文处理执行信息的应答消息;(c4)发送方比较在步骤(c2)中接受的检测应答消息中包含的报文接受信息与发送方接受信息单元此时存储的报文接受信息是否一致?当一致时,即表示上次认证过程中接收方未接受发送方发送的报文,当不一致时,即表示上次认证过程中接收方受到了非法侵入;(c5)当发送方不需要向接收方发送报文时,发送方即结束本次认证过程,当发送方需要向接收方发送报文时,发送方即把在步骤(c2)中接受的检测应答消息中包含的报文接受信息写入发送方接受信息单元,发送方采用与接收方计算报文接受信息相同的算法并结合在步骤(c2)中接受的检测应答消息中包含的报文接受信息和发送方需要发送的报文计算出一个新报文发送信息,并把刚刚计算出的新报文发送信息写入发送方发送信息单元,发送方生成包含询问请求标志、询问请求salt值和在步骤(c2)中接受的检测应答消息中包含的报文接受信息的询问请求消息,发送方采用认证双方共享的消息认证算法结合认证双方共享的密钥和刚刚生成的询问请求消息计算出询问请求消息的附加摘要,发送方发送刚刚生成的询问请求消息和附加摘要。
步骤(d)包含如下步骤(d1)当接收方接收到发送方发送的询问请求消息和附加摘要时,接收方即采用认证双方共享的消息认证算法结合认证双方共享的密钥、刚刚接收到的询问请求消息自行计算出一个摘要,接收方比较自行计算出的摘要与刚刚接收到的询问请求消息的附加摘要是否一致?当一致时,接收方即进入步骤(d2),当不一致时,接收方即直接结束本次认证过程;(d2)接收方接受与接收方在步骤(d1)中自行计算出的摘要相一致的附加摘要同时接收到的询问请求消息,接收方比较刚刚接受的询问请求消息中包含的报文接受信息与接收方接受信息单元此时存储的报文接受信息是否一致?当一致时,接收方生成包含接收方接受信息单元此时存储的报文接受信息和接收方询问单元此时存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数的询问应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、接收方刚刚接受的询问请求消息中包含的询问请求salt值和刚刚生成的询问应答消息计算出询问应答消息的附加摘要,并进入步骤(d3),当接收方刚刚接受的询问请求消息中包含的报文接受信息与接收方接受信息单元此时存储的报文接受信息不一致时,接收方生成包含接收方接受信息单元此时存储的报文接受信息和接收方事件信息单元此时存储的报文处理执行信息的询问应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、接收方刚刚接受的询问请求消息中包含的询问请求salt值和刚刚生成的询问应答消息计算出询问应答消息的附加摘要,并进入步骤(d3);(d3)接收方回复在步骤(d2)中生成的询问应答消息和附加摘要,并结束本次认证过程。
步骤(e)包含如下步骤(e1)当发送方接收到接收方回复的询问应答消息和附加摘要时,发送方即采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤(c)中发送给接收方的询问请求消息中包含的询问请求salt值和刚刚接收到的询问应答消息自行计算出一个摘要,发送方比较自行计算出的摘要与刚刚接收到的询问应答消息的附加摘要是否一致?当一致时,则进入步骤(e2),当不一致时,再次发送在步骤(c)中生成的询问请求消息和附加摘要;(e2)发送方接受与发送方在步骤(e1)中自行计算出的摘要相一致的附加摘要同时接收到的询问应答消息,发送方比较刚刚接受的询问应答消息中包含的报文接受信息与发送方发送信息单元此时存储的报文发送信息是否一致?当一致时,即表示接收方已非法接受了在步骤(c)中发送方需要发送的报文,发送方即认为刚刚接受的询问应答消息中包含的另一数据是报文处理执行信息,发送方即根据此报文处理执行信息判断接收方对报文的处理执行情况并把刚刚接受的询问应答消息中包含的报文接受信息写入发送方应答信息单元后结束本次认证过程,当不一致时,则进入步骤(e3);(e3)发送方比较在步骤(e2)中接受的询问应答消息中包含的报文接受信息与发送方接受信息单元此时存储的报文接受信息是否一致?当一致时,发送方即认为在步骤(e2)中接受的询问应答消息中包含的另一数据是具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数,发送方即生成包含认证请求标志、认证请求salt值、在步骤(c)中接受的检测应答消息中包含的报文接受信息和在步骤(c)中发送方需要发送的报文的认证请求消息,发送方即采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤(e2)中接受的询问应答消息中包含的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数和刚刚生成的认证请求消息计算出认证请求消息的附加摘要,发送方发送刚刚生成的认证请求消息和附加摘要,当发送方在步骤(e2)中接受的询问应答消息中包含的报文接受信息与发送方接受信息单元此时存储的报文接受信息不一致时,即表示接收方在本次认证过程中受到了非法侵入,并结束本次认证过程。
步骤(f)包含如下步骤(f1)当接收方接收到发送方发送的认证请求消息和附加摘要时,接收方即采用认证双方共享的消息认证算法结合认证双方共享的密钥、刚刚接收到的认证请求消息和接收方询问单元此时存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数自行计算出一个摘要,接收方比较自行计算出的摘要与刚刚接收到的认证请求消息的附加摘要是否一致?当一致时,则进入步骤(f2),当不一致时,则进入步骤(f4);(f2)接收方询问单元此时存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数即丧失其认证功能,接收方接受与接收方在步骤(f1)中自行计算出的摘要相一致的附加摘要同时接收到的认证请求消息,接收方比较刚刚接受的认证请求消息中包含的报文接受信息与接收方接受信息单元此时存储的报文接受信息是否一致?当一致时,接收方接受与接收方在步骤(f1)中自行计算出的摘要相一致的附加摘要同时接收到的认证请求消息包含的报文,接收方采用与发送方计算报文发送信息相同的算法并结合接收方接受信息单元此时存储的报文接受信息和接收方刚刚接受的报文计算出一个新报文接受信息,并把刚刚计算出的新报文接受信息写入接收方接受信息单元,接收方处理执行刚刚接受的报文,并把报文处理执行信息写入接收方事件信息单元后进入步骤(f3),当接收方刚刚接受的认证请求消息中包含的报文接受信息与接收方接受信息单元此时存储的报文接受信息不一致时,接收方即直接进入步骤(f3);(f3)接收方生成包含接收方接受信息单元此时存储的报文接受信息和接收方事件信息单元此时存储的报文处理执行信息的认证应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、接收方在步骤(f2)中接受的认证请求消息中包含的认证请求salt值和刚刚生成的认证应答消息计算出认证应答消息的附加摘要,接收方回复刚刚生成的认证应答消息和附加摘要,并结束本次认证过程;(f4)接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、接收方在步骤(f1)中接收到的认证请求消息和接收方声明单元队列的队尾此时存储的仅具有声明功能不具有认证功能的随机询问数自行计算出一个的摘要,接收方比较自行计算出的摘要与接收方在步骤(f1)中接收到的认证请求消息的附加摘要是否一致?当一致时,则进入步骤(f5),当不一致时,接收方再采用认证双方共享的消息认证算法结合认证双方共享的密钥、接收方在步骤(f1)中接收到的认证请求消息和接收方声明单元队列的队尾前趋此时存储的仅具有声明功能不具有认证功能的随机询问数自行计算出一个的摘要,接收方比较自行计算出的摘要与接收方在步骤(f1)中接收到的认证请求消息的附加摘要是否一致?当一致时,则进入步骤(f5),当不一致时,接收方再比较采用认证双方共享的消息认证算法结合认证双方共享的密钥、接收方在步骤(f1)中接收到的认证请求消息和接收方声明单元队列的队尾前趋的前趋此时存储的仅具有声明功能不具有认证功能的随机询问数自行计算出的摘要与接收方在步骤(f1)中接收到的认证请求消息的附加摘要是否一致,依次类推直至队头,一旦发现接收方自行计算出的摘要与接收方在步骤(f1)中接收到的认证请求消息的附加摘要相一致时,即进入步骤(f5),当接收方遍历整个声明单元队列自行计算出的摘要都与接收方在步骤(f1)中接收到的认证请求消息的附加摘要不一致时,即直接结束本次认证过程;(f5)接收方接受与接收方在步骤(f4)中自行计算出的摘要相一致的附加摘要同时接收到的认证请求消息,接收方比较刚刚接受的认证请求消息中包含的报文接受信息与接收方接受信息单元此时存储的报文接受信息是否一致?当一致时,接收方生成包含接收方接受信息单元此时存储的报文接受信息和接收方询问单元此时存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数的认证应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、接收方刚刚接受的认证请求消息中包含的认证请求salt值和刚刚生成的认证应答消息计算出认证应答消息的附加摘要,并进入步骤(f6),当接收方刚刚接受的认证请求消息中包含的报文接受信息与接收方接受信息单元此时存储的报文接受信息不一致时,接收方生成包含接收方接受信息单元此时存储的报文接受信息和接收方事件信息单元此时存储的报文处理执行信息的认证应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、接收方刚刚接受的认证请求消息中包含的认证请求salt值和刚刚生成的认证应答消息计算出认证应答消息的附加摘要,并进入步骤(f6);(f6)接收方回复在步骤(f5)中生成的认证应答消息和附加摘要,并结束本次认证过程。
步骤(g)包含如下步骤(g1)当发送方接收到接收方回复的认证应答消息和附加摘要时,发送方即采用认证双方共享的消息认证算法结合认证双方共享的密钥、在本次认证过程中发送方刚刚发送给接收方的认证请求消息中包含的认证请求salt值和刚刚接收到的认证应答消息自行计算出一个摘要,发送方比较自行计算出的摘要与刚刚接收到的认证应答消息的附加摘要是否一致?当一致时,则进入步骤(g2),当不一致时,再次发送在本次认证过程中发送方刚刚生成的认证请求消息和附加摘要;(g2)发送方接受与发送方在步骤(g1)中自行计算出的摘要相一致的附加摘要同时接收到的认证应答消息,发送方比较刚刚接受的认证应答消息中包含的报文接受信息与发送方发送信息单元此时存储的报文发送信息是否一致?当一致时,即表示接收方已接受了在步骤(c)中发送方需要发送的报文,发送方即认为刚刚接受的认证应答消息中包含的另一数据是报文处理执行信息,发送方即根据此报文处理执行信息判断接收方对报文的处理执行情况并把刚刚接受的认证应答消息中包含的报文接受信息写入发送方应答信息单元后结束本次认证过程,当不一致时,则进入步骤(g3);(g3)发送方比较在步骤(g2)中接受的认证应答消息中包含的报文接受信息与发送方接受信息单元此时存储的报文接受信息是否一致?当一致时,则进入步骤(g4),当不一致时,即表示接收方在本次认证过程中受到了非法侵入,并结束本次认证过程;(g4)发送方比较在本次认证过程中,发送方在步骤(g2)中接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息相一致的次数是否超过规定的次数,当不超过规定的次数时,发送方即认为在步骤(g2)中接受的认证应答消息中包含的另一数据是具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数,发送方即重新生成包含认证请求标志、认证请求salt值、在步骤(c)中接受的检测应答消息中包含的报文接受信息和在步骤(c)中发送方需要发送的报文的新认证请求消息,发送方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤(g2)中接受的认证应答消息中包含的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数和刚刚生成的新认证请求消息重新计算出新认证请求消息的附加摘要,发送方发送刚刚生成的新认证请求消息和附加摘要,当超过规定的次数时,即表示接收方未接受在步骤(c)中发送方需要发送的报文,并结束本次认证过程。
步骤(h)同步骤(f)。
在步骤(f)中,当接收方询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数因其认证功能至其规定的生存时间或者在其规定的生存时间内其认证功能被使用一次丧失其认证功能后,若接收方声明单元队列此时未满,接收方即直接把询问单元此时存储的随机询问数从询问单元读出写入声明单元队列,若接收方声明单元队列此时已满,接收方对声明单元队列进行出队操作后再把询问单元此时存储的随机询问数从询问单元读出写入声明单元队列,然后,接收方再把重新生成的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数写入接收方询问单元,接收方对询问单元此时存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数重新开始计时,在计时的过程中,当其认证功能未被使用时,则一直计时至其规定的生存时间。
参照图2现将说明根据本发明的发送方检测请求进程。
在步骤F101中,发送方生成包含检测请求标志和检测请求salt值的检测请求消息,发送方采用认证双方共享的消息认证算法结合认证双方共享的密钥和刚刚生成的检测请求消息计算出检测请求消息的附加摘要,置检测请求发送序列号n1=1,在步骤F102中,发送方比较n1<N1?当n1<N1时,即进入步骤F103,当n1=N1时,发送方结束本次认证过程。
在步骤F103中,发送方发送在步骤F101中生成的检测请求消息和附加摘要,检测请求发送序列号n1=n1+1,计时器开始计时,在步骤F104中,在时间段T1内,当发送方接收到接收方回复的检测应答消息和附加摘要时,发送方即采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤F103中发送给接收方的检测请求消息中包含的检测请求salt值和刚刚接收到的检测应答消息自行计算出一个摘要,当发送方自行计算出的摘要与接收到的检测应答消息的附加摘要一致时,即进入步骤F106,当发送方自行计算出的摘要与接收到的检测应答消息的附加摘要不一致或者在时间段T1内未接收到接收方回复的检测应答消息和附加摘要时,即进入步骤F105,在步骤F105中,计时器停止计时,并再次进入步骤F102。
在步骤F106中,计时器停止计时,发送方接受与发送方在步骤F104中自行计算出的摘要相一致的附加摘要同时接收到的检测应答消息,并进入步骤F107,在步骤F107中,发送方比较发送方在步骤F106中接受的检测应答消息中包含的报文接受信息与发送方发送信息单元此时存储的报文发送信息是否一致?当一致时,即进入步骤F108,当不一致时,即进入步骤F111。
在步骤F108中,发送方比较发送方在步骤F106中接受的检测应答消息中包含的报文接受信息与发送方应答信息单元此时存储的报文应答信息是否一致?当一致时,即进入步骤F109,在步骤F109中,发送方即认为接收方已接受上次认证过程中发送方发送的报文且发送方已接受上次认证过程中接收方回复的包含报文处理执行信息的应答消息,并进入发送方询问请求进程,当不一致时,即进入步骤F110,在步骤F110中,发送方即认为接收方已接受上次认证过程中发送方发送的报文但发送方未接受上次认证过程中接收方回复的包含报文处理执行信息的应答消息,并进入发送方询问请求进程。
在步骤F111中,发送方比较发送方在步骤F106中接受的检测应答消息中包含的报文接受信息与发送方接受信息单元此时存储的报文接受信息是否一致?当一致时,即进入步骤F112,在步骤F112中,发送方即认为上次认证过程中接收方未接受发送方发送的报文,并进入发送方询问请求进程,当不一致时,即进入步骤F113,在步骤F113中,发送方即认为上次认证过程中接收方受到了非法侵入,并进入发送方询问请求进程。
参照图3现将说明根据本发明的发送方询问请求进程。
在步骤F201中,发送方决定是否需要向接收方发送报文?当不需要向接收方发送报文时,发送方即结束本次认证过程,当需要向接收方发送报文时,即进入步骤F202。在步骤F202中,发送方把在步骤F106中接受的检测应答消息中包含的报文接受信息写入发送方接受信息单元,采用与接收方计算报文接受信息相同的算法并结合在步骤F106中接受的检测应答消息中包含的报文接受信息和在步骤F201中需要向接收方发送的报文计算出一个新报文发送信息,并把刚刚计算出的新报文发送信息写入发送方发送信息单元,生成包含询问请求标志、询问请求salt值和在步骤F106中接受的检测应答消息中包含的报文接受信息的询问请求消息,发送方采用认证双方共享的消息认证算法结合认证双方共享的密钥和刚刚生成的询问请求消息计算出询问请求消息的附加摘要,置询问请求发送序列号n2=1,在步骤F203中,发送方比较n2<N2?当n2<N2时,即进入步骤F204,当n2=N2时,发送方结束本次认证过程。
在步骤F204中,发送方发送在步骤F202中生成的询问请求消息和附加摘要,询问请求发送序列号n2=n2+1,计时器开始计时,在步骤F205中,在时间段T2内,当发送方接收到接收方回复的询问应答消息和附加摘要时,发送方即采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤F204中发送给接收方的询问请求消息中包含的询问请求salt值和刚刚接收到的询问应答消息自行计算出一个摘要,当发送方自行计算出的摘要与接收到的询问应答消息的附加摘要一致时,即进入步骤F207,当发送方自行计算出的摘要与接收到的询问应答消息的附加摘要不一致或者在时间段T2内未接收到接收方回复的询问应答消息和附加摘要时,即进入步骤F206,在步骤F206中,计时器停止计时,并再次进入步骤F203。
在步骤F207中,计时器停止计时,发送方接受与发送方在步骤F205中自行计算出的摘要相一致的附加摘要同时接收到的询问应答消息,并进入步骤F208,在步骤F208中,发送方比较发送方在步骤F207中接受的询问应答消息中包含的报文接受信息与发送方发送信息单元此时存储的报文发送信息是否一致?当一致时,即进入步骤F209,当不一致时,即进入步骤F210。
在步骤F209中,发送方即认为接收方已非法接受了在步骤F201中发送方需要发送的报文,在步骤F207中接受的询问应答消息中包含的另一数据是报文处理执行信息并根据此报文处理执行信息判断接收方对报文的处理执行情况,把在步骤F207中接受的询问应答消息中包含的报文接受信息写入发送方应答信息单元后结束本次认证过程。
在步骤F210中,发送方比较发送方在步骤F207中接受的询问应答消息中包含的报文接受信息与发送方接受信息单元此时存储的报文接受信息是否一致?当一致时,即进入步骤F212,当不一致时,即进入步骤F211,在步骤F211中,发送方即认为接收方在本次认证过程中受到了非法侵入,并结束本次认证过程。
在步骤F212中,发送方即认为在步骤F207中接受的询问应答消息中包含的另一数据是具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数,并进入发送方认证请求进程。
参照图4现将说明根据本发明的发送方认证请求进程。
在图4所示的实施过程中,把发送方接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息相一致的规定次数设置为1。
在步骤F301中,发送方生成包含认证请求标志、认证请求salt值、在步骤F106中接受的检测应答消息中包含的报文接受信息和在步骤F201中发送方需要发送的报文的认证请求消息,发送方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤F207中接受的询问应答消息中包含的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数和刚刚生成的认证请求消息计算出认证请求消息的附加摘要,并进入步骤F302。
在步骤F302中,置认证请求发送序列号n3=1,在步骤F303中,发送方比较n3<N3?,当n3<N3时,即进入步骤F304,当n3=N3时,发送方结束本次认证过程。
在步骤F304中,发送方发送刚刚生成的认证请求消息和附加摘要,认证请求发送序列号n3=n3+1,计时器开始计时,在步骤F305中,在时间段T3内,当发送方接收到接收方回复的认证应答消息和附加摘要时,发送方即采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤F304中发送给接收方的认证请求消息中包含的认证请求salt值和刚刚接收到的认证应答消息自行计算出一个摘要,当发送方自行计算出的摘要与接收到的认证应答消息的附加摘要一致时,即进入步骤F307,当发送方自行计算出的摘要与接收到的认证应答消息的附加摘要不一致或者在时间段T3内未接收到接收方回复的认证应答消息和附加摘要时,即进入步骤F306,在步骤F306中,计时器停止计时,并再次进入步骤F303。
在步骤F307中,计时器停止计时,发送方接受与发送方在步骤F305中自行计算出的摘要相一致的附加摘要同时接收到的认证应答消息,并进入步骤F308,在步骤F308中,发送方比较发送方在步骤F307中接受的认证应答消息中包含的报文接受信息与发送方发送信息单元此时存储的报文发送信息是否一致?当一致时,即进入步骤F309,当不一致时,即进入步骤F310。
在步骤F309中,发送方即认为接收方已接受了在步骤F201中发送方需要发送的报文,发送方即认为在步骤F307中接受的认证应答消息中包含的另一数据是报文处理执行信息,根据此报文处理执行信息判断接收方对报文的处理执行情况,并把在步骤F307中接受的认证应答消息中包含的报文接受信息写入发送方应答信息单元后结束本次认证过程。
在步骤F310中,发送方比较发送方在步骤F307中接受的认证应答消息中包含的报文接受信息与发送方接受信息单元此时存储的报文接受信息是否一致?当一致时,即进入步骤F312,当不一致时,即进入步骤F311,在步骤F311中,发送方即认为接收方在本次认证过程中受到了非法侵入,并结束本次认证过程。
在步骤F312中,发送方判断在本次认证过程中发送方在步骤F307中接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息相一致的次数是否超过规定的次数1,当不超过规定的次数1时,即进入步骤F314,当超过规定的次数1时,即进入步骤F313,在步骤F313中,发送方即认为接收方未接受在步骤F201中发送方需要发送的报文,并结束本次认证过程。
在步骤F314中,发送方即认为在步骤F307中接受的认证应答消息中包含的另一数据是具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数,并重新生成包含认证请求标志、认证请求salt值、在步骤F106中接受的检测应答消息中包含的报文接受信息和在步骤F201中发送方需要发送的报文的新认证请求消息,发送方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤F307中接受的认证应答消息中包含的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数和刚刚生成的新认证请求消息重新计算出新认证请求消息的附加摘要,并再次进入步骤F302。
为了提高发送方发送报文的成功率,在发送方发送认证请求消息和附加摘要的次数N3一定时,也可以通过适当增加发送方接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息相一致的规定次数来实现,例如,可以把发送方接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息相一致的规定次数设置为1,也可以设置为2或3等。
参照图5现将说明根据本发明的接收方检测应答进程。
在步骤S101中,当接收方接收到请求消息和附加摘要时,接收方即判断接收到的请求消息中包含的请求标志是否是检测请求标志?当是检测请求标志时,接收方即认为刚刚接收到的请求消息为检测请求消息,刚刚接收到的附加摘要为检测请求消息的附加摘要,并进入步骤S102,当不是检测请求标志时,即进入接收方询问应答进程。
在步骤S102中,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤S101中接收到的检测请求消息自行计算出一个摘要,当接收方自行计算出的摘要与在步骤S101中接收到的检测请求消息的附加摘要一致时,即进入步骤S103,当不一致时,接收方结束本次认证过程。
在步骤S103中,接收方接受接收到的检测请求消息,生成包含接收方接受信息单元此时存储的报文接受信息的检测应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、与接收方在步骤S102中自行计算出的摘要相一致的附加摘要同时接收到的检测请求消息中包含的检测请求salt值和刚刚生成的检测应答消息计算出检测应答消息的附加摘要,并进入步骤S104,在步骤S104中,接收方回复在步骤S103中生成的检测应答消息和附加摘要,并结束本次认证过程。
参照图6现将说明根据本发明的接收方询问应答进程。
在步骤S201中,接收方判断在步骤S101中接收到的请求消息中包含的请求标志是否是询问请求标志?当是询问请求标志时,接收方即认为在步骤S101中接收到的请求消息为询问请求消息,在步骤S101中接收到的附加摘要为询问请求消息的附加摘要,并进入步骤S202,当不是询问请求标志时,即进入接收方认证应答进程。
在步骤S202中,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤S101中接收到的询问请求消息自行计算出一个摘要,当接收方自行计算出的摘要与在步骤S101中接收到的询问请求消息的附加摘要一致时,即进入步骤S203,当不一致时,接收方结束本次认证过程。
在步骤S203中,接收方接受与接收方在步骤S202中自行计算出的摘要相一致的附加摘要同时接收到的询问请求消息,并进入步骤S204,在步骤S204中,接收方比较接收方在步骤S203中接受的询问请求消息中包含的报文接受信息与接收方接受信息单元此时存储的报文接受信息是否一致?当一致时,即进入步骤S205,当不一致时,即进入步骤S206。
在步骤S205中,接收方生成包含接收方接受信息单元此时存储的报文接受信息和接收方询问单元此时存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数的询问应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤S203中接受的询问请求消息中包含的询问请求salt值和刚刚生成的询问应答消息计算出询问应答消息的附加摘要,并进入步骤S207。
在步骤S206中,接收方生成包含接收方接受信息单元此时存储的报文接受信息和接收方事件信息单元此时存储的报文处理执行信息的询问应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤S203中接受的询问请求消息中包含的询问请求salt值和刚刚生成的询问应答消息计算出询问应答消息的附加摘要,并进入步骤S207。
在步骤S207中,接收方回复刚刚生成的询问应答消息和附加摘要,并结束本次认证过程。
参照图7现将说明根据本发明的接收方认证应答进程。
在步骤S301中,接收方判断在步骤S101中接收到的请求消息中包含的请求标志是否是认证请求标志?当是认证请求标志时,接收方即认为在步骤S101中接收到的请求消息为认证请求消息,在步骤S101中接收到的附加摘要为认证请求消息的附加摘要,并进入步骤S302,当不是认证请求标志时,接收方结束本次认证过程。
在步骤S302中,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤S101中接收到的认证请求消息和接收方询问单元此时存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数自行计算出一个摘要,当接收方自行计算出的摘要与在步骤S101中接收到的认证请求消息的附加摘要一致时,即进入步骤S303,当不一致时,即进入接收方结合声明单元队列回复认证应答消息的进程。
在步骤S303中,接收方询问单元此时存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数即丧失其认证功能,接收方接受与接收方在步骤S302中自行计算出的摘要相一致的附加摘要同时接收到的认证请求消息,并进入步骤S304,在步骤S304中,接收方比较接收方在步骤S303中接受的认证请求消息中包含的报文接受信息与接收方接受信息单元此时存储的报文接受信息是否一致?当一致时,即进入步骤S305,当不一致时,即进入步骤S306。
在步骤S305中,接收方接受在步骤S303中接受的认证请求消息中包含的报文,采用与发送方计算报文发送信息相同的算法并结合接收方接受信息单元此时存储的报文接受信息和接收方刚刚接受的报文计算出一个新报文接受信息,并把刚刚计算出的新报文接受信息写入接收方接受信息单元,接收方处理执行刚刚接受的报文,并把报文处理执行信息写入接收方事件信息单元后,进入步骤S306。
在步骤S306中,接收方生成包含接收方接受信息单元此时存储的报文接受信息和接收方事件信息单元此时存储的报文处理执行信息的认证应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤S303中接受的认证请求消息中包含的认证请求salt值和刚刚生成的认证应答消息计算出认证应答消息的附加摘要,接收方回复刚刚生成的认证应答消息和附加摘要,并结束本次认证过程。
参照图8现将说明根据本发明的接收方结合声明单元队列回复认证应答消息的进程。
在图8所示的实施过程中,把接收方用于存储连续的仅具有声明功能不具有认证功能的随机询问数的声明单元队列长度设置为2,则此声明单元队列即仅包含队头和队尾。
在步骤S401中,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤S101中接收到的认证请求消息和接收方声明单元队列的队尾此时存储的仅具有声明功能不具有认证功能的随机询问数自行计算出一个摘要,当接收方自行计算出的摘要与在步骤S101中接收到的认证请求消息的附加摘要一致时,即进入步骤S403,当不一致时,即进入步骤S402。
在步骤S402中,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤S101中接收到的认证请求消息和接收方声明单元队列的队头此时存储的仅具有声明功能不具有认证功能的随机询问数自行计算出一个摘要,当接收方自行计算出的摘要与在步骤S101中接收到的认证请求消息的附加摘要一致时,即进入步骤S403,当不一致时,接收方结束本次认证过程。
在步骤S403中,接收方接受与接收方结合声明单元队列存储的仅具有声明功能不具有认证功能的随机询问数自行计算出的摘要相一致的附加摘要同时接收到的认证请求消息,并进入步骤S404,在步骤S404中,接收方比较接收方在步骤S403中接受的认证请求消息中包含的报文接受信息与接收方接受信息单元此时存储的报文接受信息是否一致?当一致时,即进入步骤S405,当不一致时,即进入步骤S406。
在步骤S405中,接收方生成包含接收方接受信息单元此时存储的报文接受信息和接收方询问单元此时存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数的认证应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤S403中接受的认证请求消息中包含的认证请求salt值和刚刚生成的认证应答消息计算出认证应答消息的附加摘要,并进入步骤S407。
在步骤S406中,接收方生成包含接收方接受信息单元此时存储的报文接受信息和接收方事件信息单元此时存储的报文处理执行信息的认证应答消息,接收方采用认证双方共享的消息认证算法结合认证双方共享的密钥、在步骤S403中接受的认证请求消息中包含的认证请求salt值和刚刚生成的认证应答消息计算出认证应答消息的附加摘要,并进入步骤S407。
在步骤S407中,接收方回复刚刚生成的认证应答消息和附加摘要,并结束本次认证过程。
为了保证发送方发送的认证请求消息和附加摘要在接收方的有效处理范围之内,可以通过适当增加用于存储连续的仅具有声明功能不具有认证功能的随机询问数的声明单元队列长度来实现,例如,可以把接收方用于存储连续的仅具有声明功能不具有认证功能的随机询问数的声明单元队列长度设置为2,也可以设置为3或4等。
参照图9现将说明根据本发明的接收方随机询问数进程。
在步骤X501中,当接收方询问单元此时存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数因其认证功能至其规定的生存时间或者在其规定的生存时间内其认证功能被使用一次丧失其认证功能后,即进入步骤X502。
在步骤X502中,当接收方声明单元队列此时未满,接收方即直接把询问单元此时存储的随机询问数从询问单元读出写入声明单元队列,当接收方声明单元队列此时已满,接收方对声明单元队列进行出队操作后再把询问单元此时存储的随机询问数从询问单元读出写入声明单元队列,然后,进入步骤X503。
在步骤X503中,接收方重新生成具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数并把其写入接收方询问单元,然后,进入步骤X504。
在步骤X504中,接收方对询问单元此时存储具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数重新开始计时,在计时的过程中,当其认证功能未被使用时,则一直计时至其规定的生存时间。
在图5、图6、图7、图8、图9所示的进程中,当若干事务访问同一个存储单元记录时,按照以下规则处理一组事务的并发执行,下面仅以接收方接受信息单元、事件信息单元,询问单元和声明单元队列中的询问单元为例用PACAL编程语言进行说明接收方询问单元的记录记作R,“FIND R”表示事务对询问单元的读取操作,“UPD R”表示事务对询问单元的修改操作,FMAX表示成功执行了一个“FIND R”操作的最年轻的事务时标,UMAX表示成功执行了一个“UPD R”操作的最年轻的事务时标,设T是既要“FIND R”又要“UPD R”的一个事务,t是T的时标,则对询问单元的访问按以下规则进行FIND Rift>=UMAXthen/*接受FIND操作*/FMAX=MAX(t,FMAX);else/*发生冲突*/restart T;UPD R ift>=FMAX and t>=UMAXthen/*接受UPD操作*/UMAX=t;else/*发生冲突*/restart T;“restart T”表示事务T重新启动,并被赋予新的时标。
如上所述,本发明提供的一种用于收发双方之间认证报文的方法,不仅能保证收发双方之间在不安全的信道上安全的认证报文,而且能保证发送方及时判断出接收方是否已接受发送方发送的报文、是否受到过非法侵入,及时判断出发送方是否已接受接收方回复的包含报文处理执行信息的应答消息,其中,当收发双方之间认证的报文为控制数据时,发送方可利用发送给接收方的控制数据并通过接收方的执行机构对用户实施控制,并可及时判断出接收方的执行机构是否按照发送方的要求对用户实施了控制,是否实施了非法控制,当收发双方之间认证的报文为收费数据时,发送方可利用发送给接收方的收费数据并通过接收方的执行机构对用户实施收费,并可及时判断出接收方的执行机构是否按照发送方的要求对用户实施了收费,是否实施了非法收费,当收发双方之间认证的报文为随机数时,可用于接收方对发送方的身份认证,当用于接收方对发送方的身份认证时,发送方可及时判断出接收方是否受到过非法侵入。
权利要求
1.一种用于收发双方之间认证报文的方法,其特征在于在认证双方共享的消息认证算法、共享的密钥基础上,包含如下步骤(a)发送方生成并发送检测请求消息和附加摘要;(b)接收方根据接收到的检测请求消息和附加摘要及接收方自行计算出的摘要,决定是直接回复发送方结合接收方接受信息单元存储的报文接受信息生成的检测应答消息和附加摘要,还是直接结束本次认证过程;(c)发送方根据发送方发送信息单元存储的报文发送信息、发送方应答信息单元存储的报文应答信息、发送方接受信息单元存储的报文接受信息和发送方接受的检测应答消息中包含的报文接受信息,判断接收方是否已接受上次认证过程中发送方发送的报文,上次认证过程中接收方是否受到了非法侵入,发送方是否已接受上次认证过程中接收方回复的包含报文处理执行信息的应答消息,当发送方不需要向接收方发送报文时,发送方即结束本次认证过程,当发送方需要向接收方发送报文时,发送方即把接受的检测应答消息中包含的报文接受信息写入发送方接受信息单元,发送方采用与接收方计算报文接受信息相同的算法并结合接受的检测应答消息中包含的报文接受信息和需要发送的报文计算出一个新报文发送信息,并把计算出的新报文发送信息写入发送方发送信息单元,发送方结合接受的检测应答消息中包含的报文接受信息生成并发送询问请求消息和附加摘要;(d)接收方根据或利用接收到的询问请求消息和附加摘要、接收方接受信息单元存储的报文接受信息及接收方自行计算出的摘要,决定是直接回复发送方结合接收方接受信息单元存储的报文接受信息、接收方询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数生成的询问应答消息和附加摘要,还是直接回复发送方结合接收方接受信息单元存储的报文接受信息、接收方事件信息单元存储的报文处理执行信息生成的询问应答消息和附加摘要,还是直接结束本次认证过程;(e)发送方根据发送方发送信息单元存储的报文发送信息、发送方接受信息单元存储的报文接受信息和发送方接受的询问应答消息中包含的报文接受信息,判断接收方是否非法接受了在步骤(c)中发送方需要发送的报文,是否在本次认证过程中受到了非法侵入,发送方接受的询问应答消息中包含的另一数据是报文处理执行信息还是具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数,发送方是根据接受的询问应答消息中包含的报文处理执行信息判断接收方对报文的处理执行情况并把接受的询问应答消息中包含的报文接受信息写入发送方应答信息单元,还是结合发送方在步骤(c)中接受的检测应答消息中包含的报文接受信息和在步骤(c)中发送方需要发送的报文及接受的询问应答消息中包含的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数生成并发送认证请求消息和附加摘要;(f)接收方根据或利用接收到的认证请求消息和附加摘要、接收方询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数、接收方声明单元队列按照丧失认证功能的先后顺序存储的仅具有声明功能不具有认证功能的随机询问数、接收方接受信息单元存储的报文接受信息及接收方自行计算出的摘要,决定是在接受认证请求消息中包含的报文,采用与发送方计算报文发送信息相同的算法并结合接收方接受信息单元存储的报文接受信息和接受的报文计算出一个新报文接受信息,并把计算出的新报文接受信息写入接收方接受信息单元,处理执行接受的报文,并把报文处理执行信息写入接收方事件信息单元后,再回复发送方结合接收方接受信息单元存储的报文接受信息、接收方事件信息单元存储的报文处理执行信息生成的认证应答消息和附加摘要,还是直接回复发送方结合接收方接受信息单元存储的报文接受信息、接收方事件信息单元存储的报文处理执行信息生成的认证应答消息和附加摘要,还是直接回复发送方结合接收方接受信息单元存储的报文接受信息、接收方询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数生成的认证应答消息和附加摘要,还是直接结束本次认证过程;(g)发送方根据发送方发送信息单元存储的报文发送信息、发送方接受信息单元存储的报文接受信息和发送方接受的认证应答消息中包含的报文接受信息,判断接收方是否已接受在步骤(c)中发送方需要发送的报文,是否在本次认证过程中受到了非法侵入,发送方接受的认证应答消息中包含的另一数据是报文处理执行信息还是具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数,发送方是否根据接受的认证应答消息中包含的报文处理执行信息判断接收方对报文的处理执行情况并把接受的认证应答消息中包含的报文接受信息写入发送方应答信息单元,在本次认证过程中,当发送方接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息相一致的次数不超过规定的次数时,发送方即结合在步骤(c)中接受的检测应答消息中包含的报文接受信息和在步骤(c)中发送方需要发送的报文及接受的认证应答消息中包含的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数重新生成并发送新认证请求消息和附加摘要,当发送方接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息相一致的次数超过规定的次数时,发送方即结束本次认证过程。
2.根据权利要求1所述的一种用于收发双方之间认证报文的方法,其特征在于步骤(c)还包括如下子步骤(c1)发送方比较发送方接受的检测应答消息中包含的报文接受信息与发送方发送信息单元存储的报文发送信息是否一致,当一致时,则进入步骤(c2),当不一致时,则进入步骤(c3);(c2)发送方比较发送方接受的检测应答消息中包含的报文接受信息与发送方应答信息单元存储的报文应答信息是否一致,当一致时,即表示接收方已接受上次认证过程中发送方发送的报文且发送方已接受上次认证过程中接收方回复的包含报文处理执行信息的应答消息,当不一致时,即表示接收方已接受上次认证过程中发送方发送的报文但发送方未接受上次认证过程中接收方回复的包含报文处理执行信息的应答消息;(c3)发送方比较发送方接受的检测应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息是否一致,当一致时,即表示上次认证过程中接收方未接受发送方发送的报文,当不一致时,即表示上次认证过程中接收方受到了非法侵入。
3.根据权利要求1所述的一种用于收发双方之间认证报文的方法,其特征在于在步骤(d)中,当接收方接受的询问请求消息中包含的报文接受信息与接收方接受信息单元存储的报文接受信息一致时,接收方即结合接收方接受信息单元存储的报文接受信息和接收方询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数生成并回复询问应答消息和附加摘要,当不一致时,接收方即结合接收方接受信息单元存储的报文接受信息和接收方事件信息单元存储的报文处理执行信息生成并回复询问应答消息和附加摘要。
4.根据权利要求1所述的一种用于收发双方之间认证报文的方法,其特征在于步骤(e)还包括如下子步骤(e1)发送方比较发送方接受的询问应答消息中包含的报文接受信息与发送方发送信息单元存储的报文发送信息是否一致,当一致时,即表示接收方已非法接受了在步骤(c)中发送方需要发送的报文,发送方即认为发送方接受的询问应答消息中包含的另一数据是报文处理执行信息,发送方即根据此报文处理执行信息判断接收方对报文的处理执行情况并把接受的询问应答消息中包含的报文接受信息写入发送方应答信息单元后结束本次认证过程,当不一致时,则进入步骤(e2);(e2)发送方比较发送方接受的询问应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息是否一致,当一致时,发送方即认为发送方接受的询问应答消息中包含的另一数据是具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数,发送方即结合在步骤(c)中接受的检测应答消息中包含的报文接受信息和在步骤(c)中发送方需要发送的报文生成需要发送给接收方的认证请求消息,结合生成的认证请求消息和接受的询问应答消息中包含的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数计算出需要发送给接收方的认证请求消息的附加摘要,当发送方接受的询问应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息不一致时,即表示接收方在本次认证过程中受到了非法侵入,并结束本次认证过程。
5.根据权利要求1所述的一种用于收发双方之间认证报文的方法,其特征在于步骤(f)还包括如下子步骤(f1)当接收方接收到认证请求消息和附加摘要时,接收方即结合询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数自行计算出一个摘要,接收方比较自行计算出的摘要与接收到的认证请求消息的附加摘要是否一致,当一致时,则进入步骤(f2),当不一致时,则进入步骤(f4);(f2)接收方询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数即丧失其认证功能,接收方接受与接收方在步骤(f1)中自行计算出的摘要相一致的附加摘要同时接收到的认证请求消息,接收方比较接受的认证请求消息中包含的报文接受信息与接收方接受信息单元存储的报文接受信息是否一致,当一致时,接收方接受与接收方在步骤(f1)中自行计算出的摘要相一致的附加摘要同时接收到的认证请求消息中包含的报文,接收方采用与发送方计算报文发送信息相同的算法并结合接收方接受信息单元存储的报文接受信息和接收方接受的报文计算出一个新报文接受信息,并把计算出的新报文接受信息写入接收方接受信息单元,接收方处理执行接受的报文,并把报文处理执行信息写入接收方事件信息单元后进入步骤(f3),当接收方接受的认证请求消息中包含的报文接受信息与接收方接受信息单元存储的报文接受信息不一致时,接收方即直接进入步骤(f3);(f3)接收方结合接收方接受信息单元存储的报文接受信息和接收方事件信息单元存储的报文处理执行信息生成并回复认证应答消息和附加摘要;(f4)接收方先比较结合声明单元队列的队尾存储的仅具有声明功能不具有认证功能的随机询问数自行计算出的摘要与在步骤(f1)中接收到的认证请求消息的附加摘要是否一致,当一致时,即进入步骤(f5),当不一致时,接收方再比较结合声明单元队列的队尾前趋存储的仅具有声明功能不具有认证功能的随机询问数自行计算出的摘要与在步骤(f1)中接收到的认证请求消息的附加摘要是否一致,当一致时,即进入步骤(f5),当不一致时,接收方再比较结合声明单元队列的队尾前趋的前趋存储的仅具有声明功能不具有认证功能的随机询问数自行计算出的摘要与在步骤(f1)中接收到的认证请求消息的附加摘要是否一致,依次类推直至队头,一旦发现接收方自行计算出的摘要与接收方在步骤(f1)中接收到的认证请求消息的附加摘要相一致时,即进入步骤(f5),当接收方遍历整个声明单元队列自行计算出的摘要都与在步骤(f1)中接收到的认证请求消息的附加摘要不一致时,即直接结束本次认证过程;(f5)接收方接受与接收方在步骤(f4)中自行计算出的摘要相一致的附加摘要同时接收到的认证请求消息,接收方比较接受的认证请求消息中包含的报文接受信息与接收方接受信息单元存储的报文接受信息是否一致,当一致时,接收方结合接收方接受信息单元存储的报文接受信息和接收方询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数生成并回复认证应答消息和附加摘要,当不一致时,接收方结合接收方接受信息单元存储的报文接受信息和接收方事件信息单元存储的报文处理执行信息生成并回复认证应答消息和附加摘要。
6.根据权利要求1所述的一种用于收发双方之间认证报文的方法,其特征在于步骤(g)还包括如下子步骤(g1)发送方比较发送方接受的认证应答消息中包含的报文接受信息与发送方发送信息单元存储的报文发送信息是否一致,当一致时,即表示接收方已接受了在步骤(c)中发送方需要发送的报文,发送方即认为发送方接受的认证应答消息中包含的另一数据是报文处理执行信息,发送方即根据此报文处理执行信息判断接收方对报文的处理执行情况并把接受的认证应答消息中包含的报文接受信息写入发送方应答信息单元后结束本次认证过程,当不一致时,则进入步骤(g2);(g2)发送方比较发送方接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息是否一致,当一致时,则进入步骤(g3),当不一致时,即表示接收方在本次认证过程中受到了非法侵入,并结束本次认证过程;(g3)发送方比较在本次认证过程中发送方接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息相一致的次数是否超过规定的次数,当不超过规定的次数时,发送方即认为发送方接受的认证应答消息中包含的另一数据是具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数,发送方即结合在步骤(c)中接受的检测应答消息中包含的报文接受信息和在步骤(c)中发送方需要发送的报文重新生成需要发送给接收方的新认证请求消息,结合重新生成的新认证请求消息和接受的认证应答消息中包含的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数重新计算出需要发送给接收方的新认证请求消息的附加摘要,当发送方接受的认证应答消息中包含的报文接受信息与发送方接受信息单元存储的报文接受信息相一致的次数超过规定的次数时,即表示接收方未接受在步骤(c)中发送方需要发送的报文,并结束本次认证过程。
7.根据权利要求1所述的一种用于收发双方之间认证报文的方法,其特征在于在步骤(f)中,当接收方询问单元存储的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数因其认证功能至其规定的生存时间或者在其规定的生存时间内其认证功能被使用一次丧失其认证功能后,若接收方声明单元队列未满,接收方即直接把询问单元存储的随机询问数从询问单元读出写入声明单元队列,若接收方声明单元队列已满,接收方对声明单元队列进行出队操作后再把询问单元存储的随机询问数从询问单元读出写入声明单元队列,然后,接收方再把重新生成的具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的新随机询问数写入接收方询问单元并对其重新开始计时,在计时的过程中,当其认证功能未被使用时,则一直计时至其规定的生存时间。
全文摘要
一种用于收发双方之间认证报文的方法,使用收发双方之间共享的消息认证算法、共享的密钥,利用报文接受信息和具有认证功能且其认证功能具有规定的生存时间或者在规定的生存时间内其认证功能被使用一次即丧失其认证功能的随机询问数认证报文的方法,可以自动调整发送方与接收方随机询问数的生存时间段保持同步,对认证双方的时钟精度要求不高,可以拒绝第三方的重放攻击,有效的防止第三方对口令的猜测和穷举攻击,而且,还可以及时判断出接收方是否已接受报文、是否受到过非法侵入,发送方是否已接受包含报文处理执行信息的应答消息,其中,当报文为控制或收费数据时,可用于控制或收费领域,当报文为随机数时,可用于口令和身份认证。
文档编号H04L9/00GK1645790SQ20051004235
公开日2005年7月27日 申请日期2005年1月23日 优先权日2005年1月23日
发明者姚忠凯 申请人:姚忠凯
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1