1. 程式人生 > 其它 >[GO] 解決:crypto/aes: invalid key size 14

[GO] 解決:crypto/aes: invalid key size 14

當使用AES加解密的時候報了這個錯誤

原因是AES的key位元組長度不對

看原始碼

// NewCipher creates and returns a new cipher.Block.
// The key argument should be the AES key,
// either 16, 24, or 32 bytes to select
// AES-128, AES-192, or AES-256.
func NewCipher(key []byte) (cipher.Block, error) {
    k := len(key)
    switch k {
    default:
        
return nil, KeySizeError(k) case 16, 24, 32: break } return newCipher(key) }

只允許16、24、32位元組長度

所以把key設定成16位元組長度就ok了,英文等字元,一個字元一個位元組

開源作品

GO-FLY,一套可私有化部署的免費開源客服系統,安裝過程不超過五分鐘(超過你打我 !),基於Golang開發,二進位制檔案可直接使用無需搭開發環境,下載zip解壓即可,僅依賴MySQL資料庫,是一個開箱即用的網頁線上客服系統,致力於幫助廣大開發者/中小站長快速整合私有客服功能 github地址:
go-fly
官網地址:https://gofly.sopans.com

讚賞作者

微信交流