DES算法為密碼體質中的對稱密碼體制,又被稱為美國數據加密標準,是1972年美國IBM公司研制的對稱密碼體制加密算法。 明文按64位進行分組,密鑰長64位,密鑰事實上是56位參與DES運算(第8、16、24、32、40、48、56、64位是校驗位, 使得每個密鑰都有奇數個1)分組后的明文組和56位的密鑰按位替代或交換的方法形成密文組的加密方法。 實際應用中注意的幾個問題: 1、數據補位 DES加密解密就是將數據按8字節一段進行DES加密或解密,得到一段8個字節的密文或明文,最后一段不足8字節的(通常補全00或者FF),需要根據實際需求來定,之后按順序連在一起。 2、ECB模式 ECB模式(電子密本方式)按8字節一段進行DES加密或解密得到明文或者密文,最后不足8字節的按要求補全8字節 加密步驟: (1)將加密數據塊分成以8字節為單位的數據塊,表示為D0、D1、D2等。最后的數據塊有可能是1~8個字節。 (2)如果最后(或唯一)的數據塊的長度是8字節的話,轉到第三步;如果不足8字節,則在其后(根據規定)補全8字節,如果達到8字節長度,則轉到第三步。 (3)按照下圖ECB加密模式所述的算法使用指定密鑰對每一個數據塊進行加密。 (4)計算結束后,所有加密后的數據塊依照原順序連接在一起組成加密密文。 優點:1、加密方式簡單有利于加密計算;2、單步加密錯誤誤差不會被傳送; 缺點:1、可以對明文進行主動攻擊,明文數據不易隱藏。 3、CBC模式 CBC模式(密文分組鏈接方式) 加密步驟: (1)將明文數據以8字節一組分組,得到D1...Dn(不足補位)。 (2)將D1與初始向量I異或后的結果進行DES加密運算得到第一組密文C1。 (3)D2與第一組加密數據C1異或后進行DES加密運算得到第二組密文C2。 (4)以此類推,將最后的加密結果C1....Cn拼接起來組成密文C。 優點:1、安全性高于ECB方式,不容易被主動攻擊; 缺點:1、不利于并行計算;2、誤差傳遞;3、需要初始化向量IV。 LKT加密芯片支持DES-CBC、DES-ECB和國際上通用的對稱和非對稱加密算法,多種型號的加密芯片支持UART、IIC、SPI、USB等不同接口,滿足不同客戶的不同需求。 |