本發(fā)明涉及信息安全技術(shù)領(lǐng)域,特別涉及一種防止重放攻擊的方法。
背景技術(shù):
圖1和圖2分別為現(xiàn)有技術(shù)中,在沒(méi)有防止重放攻擊的情況下,黑客截獲指令和復(fù)制偽裝指令的示意圖。如圖1所示,在無(wú)防重放攻擊的場(chǎng)景,發(fā)送者發(fā)指令給接收者(例如,轉(zhuǎn)xxx元錢(qián)),黑客可以截獲該指令。并如圖2所示,復(fù)制多份發(fā)送給接收者,讓接收者以為發(fā)送者發(fā)送了很多條這種指令,進(jìn)而接收者有可能將資金轉(zhuǎn)至黑客的賬戶,導(dǎo)致接收者的資金和個(gè)人信息的泄露,給接收者造成極大的隱患。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的旨在至少解決所述技術(shù)缺陷之一。
為此,本發(fā)明的目的在于提出一種防止重放攻擊的方法,將發(fā)送者和接收者二者之間的通訊嚴(yán)格排序,防止黑客進(jìn)行重放攻擊。
為了實(shí)現(xiàn)上述目的,本發(fā)明的實(shí)施例提供一種防止重放攻擊的方法,包括如下步驟:
步驟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ā)送,如此類推。
進(jìn)一步,所述隨機(jī)數(shù)與所述指令相對(duì)應(yīng),以保證所述指令的唯一性。
進(jìn)一步,在所述步驟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指令的原文。
進(jìn)一步,在所述步驟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ù)。
根據(jù)本發(fā)明實(shí)施例的防止重放攻擊的方法,將發(fā)送者和接收者二者之間的通訊嚴(yán)格排序,并且在發(fā)送者和接收者之間傳輸指令或響應(yīng),均采用隨機(jī)數(shù)與指令或響應(yīng)原文進(jìn)行異或運(yùn)算的方式,實(shí)現(xiàn)加密,并在到達(dá)目的地后進(jìn)行解密。當(dāng)?shù)趎條指令被黑客截取并復(fù)制后,黑客向接收者發(fā)送副本的時(shí)候,由于接收者認(rèn)為這已經(jīng)是第n+x次了(其中x>0),所以用第n+x個(gè)隨機(jī)數(shù)對(duì)指令進(jìn)行異或得不到正確的指令,所以被復(fù)制的指令不被執(zhí)行,從而可以達(dá)到防止黑客進(jìn)行重放攻擊的目的。
本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過(guò)本發(fā)明的實(shí)踐了解到。
附圖說(shuō)明
本發(fā)明的上述和/或附加的方面和優(yōu)點(diǎn)從結(jié)合下面附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中:
圖1為現(xiàn)有技術(shù)中無(wú)防止重放攻擊下,黑客截獲指令的示意圖;
圖2為現(xiàn)有技術(shù)中無(wú)防止重放攻擊下,黑客復(fù)制偽裝指令的示意圖;
圖3為根據(jù)本發(fā)明實(shí)施例的防止重放攻擊的方法的流程圖;
圖4為根據(jù)本發(fā)明實(shí)施例的發(fā)送者向接收者請(qǐng)求隨機(jī)數(shù)的示意圖;
圖5為根據(jù)本發(fā)明實(shí)施例的發(fā)送者和接收者傳輸指令和隨機(jī)數(shù)的示意圖。
具體實(shí)施方式
下面詳細(xì)描述本發(fā)明的實(shí)施例,實(shí)施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號(hào)表示相同或類似的元件或具有相同或類似功能的元件。下面通過(guò)參考附圖描述的實(shí)施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。
本發(fā)明實(shí)施例提供一種防止重放攻擊的方法,該方法可以將發(fā)送者和接收者二者之間的通訊嚴(yán)格排序,防止黑客截獲某條指令并復(fù)制發(fā)送。
如圖3所示,本發(fā)明實(shí)施例的防止重放攻擊的方法,包括如下步驟:
步驟S1,發(fā)送者向接收者發(fā)起協(xié)商隨機(jī)數(shù)請(qǐng)求,并接收由接收者返回的由其生成的第i隨機(jī)數(shù),i為正整數(shù)。需要說(shuō)明的是,隨機(jī)數(shù)與指令相對(duì)應(yīng),從而可以保證指令的唯一性。
在本步驟中,如圖4所示,初始時(shí),由發(fā)送者向接收者發(fā)起協(xié)商隨機(jī)數(shù)請(qǐng)求,然后接收接收者返回其生成的第1個(gè)隨機(jī)數(shù)。
步驟S2,發(fā)送者將第i隨機(jī)數(shù)與第i指令進(jìn)行加密處理,生成指令加密結(jié)果,并將指令加密結(jié)果連同發(fā)送者生成的第i+1隨機(jī)數(shù),發(fā)送至接收者,參考圖5。
在本發(fā)明的一個(gè)實(shí)施例中,發(fā)送者和接收者之間在傳輸指令或響應(yīng)時(shí),需要利用隨機(jī)數(shù)對(duì)數(shù)據(jù)進(jìn)行加密。優(yōu)選的,本發(fā)明采用異或運(yùn)算方式對(duì)數(shù)據(jù)加解密。
在本步驟中,發(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指令的原文,并響應(yīng)第i指令,生成響應(yīng)數(shù)據(jù)。
在本步驟中,接收者利用第i隨機(jī)數(shù)對(duì)指令加密結(jié)果進(jìn)行解密處理,包括:利用第i隨機(jī)數(shù)對(duì)指令加密結(jié)果進(jìn)行異或運(yùn)算,以獲得第i指令的原文。
步驟S4,接收者將第i+1隨機(jī)數(shù)和響應(yīng)數(shù)據(jù)進(jìn)行加密處理,生成響應(yīng)加密結(jié)果,并將響應(yīng)加密結(jié)果連同接收者生成的第i+2隨機(jī)數(shù),發(fā)送至接收者。
在本步驟中,接收者將第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ù),并存儲(chǔ)第i+2隨機(jī)數(shù),以用于下次指令發(fā)送,如此類推。
在本步驟中,接收者利用第i+1隨機(jī)數(shù)對(duì)響應(yīng)加密結(jié)果進(jìn)行解密處理,以獲得響應(yīng)數(shù)據(jù)。
下面結(jié)合具體實(shí)施例對(duì)本發(fā)明的防止重放攻擊的方法進(jìn)行說(shuō)明。
1)發(fā)送者向接收者發(fā)起協(xié)商隨機(jī)數(shù)請(qǐng)求,接收者返回它生成的第1個(gè)隨機(jī)數(shù)給發(fā)送者;
2)發(fā)送者用第1(此時(shí),i=1)隨機(jī)數(shù)和其所要發(fā)送的第1指令進(jìn)行異或運(yùn)算,并附加上發(fā)送者生成的第2隨機(jī)數(shù)(即,i=1時(shí),第i+1個(gè)隨機(jī)數(shù))發(fā)送給接收者。
3)接收者用第1隨機(jī)數(shù)對(duì)接收到的指令再次進(jìn)行異或運(yùn)算,得到指令的原文,并執(zhí)行指令操作,生成響應(yīng)數(shù)據(jù);
4)接收者用第2隨機(jī)數(shù)對(duì)指令執(zhí)行的響應(yīng)數(shù)據(jù)進(jìn)行異或運(yùn)算,并生成第3隨機(jī)數(shù)(即,i=1時(shí),第i+2個(gè)隨機(jī)數(shù))附加到異或結(jié)果之后,返回給發(fā)送者;
5)發(fā)送者用第2隨機(jī)數(shù)對(duì)響應(yīng)數(shù)據(jù)進(jìn)行異或運(yùn)算,取得真正的響應(yīng)數(shù)據(jù),并保留下第3隨機(jī)數(shù),以便進(jìn)行下一次指令發(fā)送,如此類推。
6)發(fā)送者用第n隨機(jī)數(shù)和他所要發(fā)送的第n條指令進(jìn)行異或運(yùn)算,并附加上發(fā)送者生成的第n+1個(gè)隨機(jī)數(shù)發(fā)送給接收者。
7)接收者用第n隨機(jī)數(shù)對(duì)接收到的指令再次進(jìn)行異或運(yùn)算,得到指令的原文,并執(zhí)行指令操作,生成響應(yīng)數(shù)據(jù)。
8)接收者用第n+1個(gè)隨機(jī)數(shù)對(duì)指令執(zhí)行的響應(yīng)數(shù)據(jù)進(jìn)行異或運(yùn)算,并生成第n+2個(gè)隨機(jī)數(shù)附加到異或結(jié)果之后返回給發(fā)送者。
9)發(fā)送者用第n+1個(gè)隨機(jī)數(shù)對(duì)響應(yīng)數(shù)據(jù)進(jìn)行異或運(yùn)算,取得真正的響應(yīng)數(shù)據(jù),并保留下第n+2個(gè)隨機(jī)數(shù),以便進(jìn)行下一次指令發(fā)送。
根據(jù)本發(fā)明實(shí)施例的防止重放攻擊的方法,將發(fā)送者和接收者二者之間的通訊嚴(yán)格排序,并且在發(fā)送者和接收者之間傳輸指令或響應(yīng),均采用隨機(jī)數(shù)與指令或響應(yīng)原文進(jìn)行異或運(yùn)算的方式,實(shí)現(xiàn)加密,并在到達(dá)目的地后進(jìn)行解密。當(dāng)?shù)趎條指令被黑客截取并復(fù)制后,黑客向接收者發(fā)送副本的時(shí)候,由于接收者認(rèn)為這已經(jīng)是第n+x次了(其中x>0),所以用第n+x個(gè)隨機(jī)數(shù)對(duì)指令進(jìn)行異或得不到正確的指令,所以被復(fù)制的指令不被執(zhí)行,從而可以達(dá)到防止黑客進(jìn)行重放攻擊的目的。
在本說(shuō)明書(shū)的描述中,參考術(shù)語(yǔ)“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施例或示例中。在本說(shuō)明書(shū)中,對(duì)上述術(shù)語(yǔ)的示意性表述不一定指的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任何的一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。
盡管上面已經(jīng)示出和描述了本發(fā)明的實(shí)施例,可以理解的是,上述實(shí)施例是示例性的,不能理解為對(duì)本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在不脫離本發(fā)明的原理和宗旨的情況下在本發(fā)明的范圍內(nèi)可以對(duì)上述實(shí)施例進(jìn)行變化、修改、替換和變型。本發(fā)明的范圍由所附權(quán)利要求及其等同限定。