使用Go 以ECB 模式解密AES 資料
針對Go 中使用AES-ECB 解密資料的查詢,解決方案如下可以採用:
電子密碼本(ECB)模式是一種基本的加密方法,它將資料分割為指定大小的區塊(例如,AES-128 使用16 位元組區塊)。然後使用 AES 演算法獨立加密每個區塊,從而產生加密區塊。
解密使用AES-128 ECB 加密的數據,請按照以下步驟操作:
導入必要的模組:
<code class="go">import ( "crypto/aes" )</code>
建立一個新的密碼:
<code class="go">cipher, _ := aes.NewCipher([]byte(key))</code>
用加密金鑰取代金鑰用於加密資料。
建立一個空緩衝區來儲存解密後的資料:
<code class="go">decrypted := make([]byte, len(data))</code>
data代表加密後的資料。
定義區塊大小:
<code class="go">size := 16 // block size for AES-128</code>
每個區塊
<code class="go">for bs, be := 0, size; bs < len(data); bs, be = bs+size, be+size { cipher.Decrypt(decrypted[bs:be], data[bs:be]) }</code>
返回解密的資料:
<code class="go">return decrypted</code>
以上是如何使用Go在ECB模式下解密AES資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!