1.一種防止重放攻擊的方法,其特征在于,包括如下步驟:
步驟S1,發(fā)送者向接收者發(fā)起協(xié)商隨機(jī)數(shù)請(qǐng)求,并接收由所述接收者返回的由其生成的第i隨機(jī)數(shù),i為正整數(shù);
步驟S2,所述發(fā)送者將所述第i隨機(jī)數(shù)與第i指令進(jìn)行加密處理,生成指令加密結(jié)果,并將所述指令加密結(jié)果連同所述發(fā)送者生成的第i+1隨機(jī)數(shù),發(fā)送至所述接收者;
步驟S3,所述接收者利用所述第i隨機(jī)數(shù)對(duì)所述指令加密結(jié)果進(jìn)行解密處理,以獲得所述第i指令的原文,并響應(yīng)所述第i指令,生成響應(yīng)數(shù)據(jù);
步驟S4,所述接收者將所述第i+1隨機(jī)數(shù)和所述響應(yīng)數(shù)據(jù)進(jìn)行加密處理,生成響應(yīng)加密結(jié)果,并將所述響應(yīng)加密結(jié)果連同所述接收者生成的第i+2隨機(jī)數(shù),發(fā)送至所述接收者;
步驟S5,所述接收者利用所述第i+1隨機(jī)數(shù)對(duì)所述響應(yīng)加密結(jié)果進(jìn)行解密處理,以獲得所述響應(yīng)數(shù)據(jù),并存儲(chǔ)所述第i+2隨機(jī)數(shù),以用于下次指令發(fā)送,如此類(lèi)推。
2.如權(quán)利要求1所述的防止重放攻擊的方法,其特征在于,所述隨機(jī)數(shù)與所述指令相對(duì)應(yīng),以保證所述指令的唯一性。
3.如權(quán)利要求1所述的防止重放攻擊的方法,其特征在于,在所述步驟S2中,所述發(fā)送者將所述第i隨機(jī)數(shù)與第i指令進(jìn)行加密處理,包括:將所述第i隨機(jī)數(shù)與第i指令進(jìn)行異或運(yùn)算,生成指令加密結(jié)果;
在所述步驟S3中,所述接收者利用所述第i隨機(jī)數(shù)對(duì)所述指令加密結(jié)果進(jìn)行解密處理,包括:利用所述第i隨機(jī)數(shù)對(duì)所述指令加密結(jié)果進(jìn)行異或運(yùn)算,以獲得所述第i指令的原文。
4.如權(quán)利要求3所述的防止重放攻擊的方法,其特征在于,在所述步驟S4中,所述接收者將所述第i+1隨機(jī)數(shù)和所述響應(yīng)數(shù)據(jù)進(jìn)行加密處理,包括:將所述第i+1隨機(jī)數(shù)和所述響應(yīng)數(shù)據(jù)進(jìn)行異或運(yùn)算,得到所述響應(yīng)加密數(shù)據(jù);
在所述步驟S5中,所述接收者利用所述第i+1隨機(jī)數(shù)對(duì)所述響應(yīng)加密結(jié)果進(jìn)行解密處理,以獲得所述響應(yīng)數(shù)據(jù)。