||
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等不同接口,滿足不同客戶的不同需求。