采用TDES加密防御中途相遇攻擊的策略
問:在使用雙密匙TDES(三重?cái)?shù)據(jù)加密標(biāo)準(zhǔn))的情況下中途相遇攻擊有可能得逞嗎?這種情況具體來說就是先通過密匙一對信息進(jìn)行加密,然后再通過密匙二來加密,最后再次通過密匙二來進(jìn)行加密,也就是EK1(EK2(EK2(M)))。
答:這是一個(gè)很好的問題!很多安全人員都將精力集中于加密的方式,而沒有專注于加密的組織形式。是的,加密密匙是保護(hù)數(shù)據(jù)中的關(guān)鍵因素。
三重DES使用三個(gè)密匙的情況包括:所有的這三個(gè)密匙都是獨(dú)立的;兩個(gè)密匙是相同的,還有一個(gè)是獨(dú)立的;最后一種情況是這三個(gè)密匙都是獨(dú)立的。雖說沒有一種加密方式是完全不可攻破的,但使用的加密方式——包括密匙的數(shù)量——會增加解密的次數(shù)和難度。因?yàn)槿谼ES加密中的每次加密只占56位,使用三個(gè)都相同的密匙意味著一旦密匙泄漏(通過現(xiàn)今的解密技術(shù)可以相當(dāng)容易地做到),中途相遇攻擊就有可能得逞,因?yàn)檫@一個(gè)密匙就能夠打開所有的信封,數(shù)據(jù)會因此泄漏出去。而使用兩個(gè)密匙(占用56位x 2=112位的空間)加密通常來說會更安全,可以達(dá)到阻止中途相遇攻擊的目的。
然而,我還是建議使用這種方式:首先通過密匙一來加密,然后使用密匙二加密,最后再次使用密匙一來加密——這也是美國國家標(biāo)準(zhǔn)技術(shù)NIST特別刊物800-57為密匙管理推薦的一項(xiàng)標(biāo)準(zhǔn)——2006年五月的概要(修訂版)第一部分。標(biāo)準(zhǔn)中這樣推薦是為了讓中途相遇攻擊者需要攻克兩重不同的加密級別,以此來使數(shù)據(jù)獲取的難度加倍。若使用你所列出的加密方式,一旦攻擊者成功將外層解密,他或她能夠輕松地進(jìn)入下一層,然后獲取加密數(shù)據(jù)。我希望黑客們在攻克了第一層加密之后發(fā)現(xiàn)接下來遇到的是基于另一種密匙的新加密方式。假設(shè)破解第二層密匙需要付出同等的努力,攻擊者可能會放棄這次的攻擊轉(zhuǎn)向稍容易一些的攻擊目標(biāo)。另外,如果攻擊者能夠破解加密結(jié)構(gòu)中的這兩個(gè)密匙,那么他(她)極有可能破解出數(shù)據(jù)內(nèi)容那一層的密匙。當(dāng)然,如果你需要三重DES提供的終極保護(hù),你可以使用三個(gè)不同的密匙:這也是美國政府的標(biāo)準(zhǔn)部署采取的方式。