�(shù)�(jù)加密�(biāo)�(zhǔn)(DES,Data Encryption Standard)是一種使用密鑰加密的塊密��1976年被美國(guó)�(lián)邦政府的�(guó)家標(biāo)�(zhǔn)局確定為聯(lián)邦資料處理標(biāo)�(zhǔn)(FIPS),隨后在國(guó)際上廣泛流傳�(kāi)�(lái)。推�(dòng)了現(xiàn)代的塊密碼及其密碼分析的�(fā)展�
為了建立適用于計(jì)算機(jī)系統(tǒng)的商用密�,美�(guó)商業(yè)部的�(guó)家標(biāo)�(zhǔn)局NBS�1973�5月和1974�8月兩次發(fā)布通告,向社會(huì)征求密碼算法。在征得的算法中,由IBM公司提出的算法lucifer中選�1975�3月,NBS向社�(huì)公布了此算法,以求得公眾的評(píng)�。于1976�11月被美國(guó)政府采用,DES隨后被美�(guó)�(guó)家標(biāo)�(zhǔn)局和美�(guó)�(guó)家標(biāo)�(zhǔn)�(xié)�(huì)(American National Standard Institute,ANSI� 承認(rèn)�1977�1月以�(shù)�(jù)加密�(biāo)�(zhǔn)DES(Data Encryption Standard)的名稱正式向社�(huì)公布�
�(shù)�(jù)加密�(biāo)�(zhǔn)使用一�(gè) 56 位的密鑰以及附加� 8 位奇偶校�(yàn)�,產(chǎn)� 64 位的分組大小。這是一�(gè)迭代的分組密碼,使用稱為 Feistel 的技�(shù),其中將加密的文本塊分成兩半。使用子密鑰�(duì)其中一半應(yīng)用循�(huán)功能,然后將輸出與另一半�(jìn)行“異或”運(yùn)算;接著交換這兩�,這一�(guò)程會(huì)繼續(xù)下去,但一�(gè)循環(huán)不交�。數(shù)�(jù)加密�(biāo)�(zhǔn)使用 16 �(gè)循環(huán),使用異�,置�,代�,移位操作四種基本運(yùn)算�
1�64bit 密鑰K �(jīng)變換KS �(chǎn)�16 �(gè)48bit 的子密鑰K1、K2…K16,分別供16 次迭代使��
2�64bit 明文段經(jīng)初始置換IP得到64bit �(shù)�(jù)�,左32bit �(gòu)成L0,右32bit �(gòu)成R0�
3、由加密函數(shù)f �(shí)�(xiàn)子密鑰Ki �(duì)Ri-1 的加密變換和Li=Ri-1,Ri=Li-1 f(Ri-1,Ki)的迭代變換,迭代過(guò)程連續(xù)16 �;(其中稱作按位�2 加運(yùn)算)
4、由Rl6 為前32bit,Ll6 為后32bit 組成�64bit �(shù)�(jù)�,經(jīng)逆初- 2 -始置換IP-1 得密��
5、脫密的算法相同,只是子密鑰使用次序顛�,K16 在次使用,K1 在使用�