第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

需要aes密碼功能允許輸入[6]字節(jié)

需要aes密碼功能允許輸入[6]字節(jié)

Go
縹緲止盈 2022-10-24 15:51:27
背景需要一種可以編碼和解碼[6]字節(jié)的密碼。std 函數(shù) aes.NewCipher 不允許這樣做,因?yàn)樗膲K大小定義是 16 字節(jié)。不能簡單地將 6 個(gè)字節(jié)填充到 16 個(gè)字節(jié)。我需要打印 [6]byte 作為條形碼并使用條形碼進(jìn)行遠(yuǎn)程和遠(yuǎn)程解碼。代碼這可以在去操場上運(yùn)行// You can edit this code!// Click here and start typing.package mainimport (    "bytes"    "crypto/aes"    "fmt")func main() {    plain := []byte("4512wqdeqwbuobouihodqwbuo")[:6]    encrypt := make([]byte, 6)    plain2 := make([]byte, 6)    cipher, err := aes.NewCipher([]byte("4512wqdeqwbuobouihodqwbuo")[:16])    if err != nil {        fmt.Println(err)        return    }    cipher.Encrypt(encrypt, plain)    cipher.Decrypt(plain2, encrypt)    if bytes.Compare(plain, plain2) != 0 {        fmt.Println("can't be", plain, plain2, encrypt)    }}錯(cuò)誤:加密/aes:輸入未滿塊問題是否有第三方功能可以滿足我的要求?或者 std 函數(shù)可以以某種方式實(shí)現(xiàn)這一點(diǎn)?通過位移和異或來實(shí)現(xiàn)這個(gè)指定的功能很幼稚,還有更多嗎?對(duì)于新的,我已經(jīng)用位移實(shí)現(xiàn)了這個(gè)功能。
查看完整描述

1 回答

?
POPMUISE

TA貢獻(xiàn)1765條經(jīng)驗(yàn) 獲得超5個(gè)贊

需要一種可以編碼和解碼[6]字節(jié)的密碼。

編碼(以不同格式顯示數(shù)據(jù))和加密(提供機(jī)密性)之間存在差異。密碼用于加密。此外,我假設(shè)您出于保密原因想要加密數(shù)據(jù)。

是否有第三方功能可以滿足我的要求?或者 std 函數(shù)可以以某種方式實(shí)現(xiàn)這一點(diǎn)?

理論上 - 有些方法不需要填充。請(qǐng)參閱不同的操作模式。有些模式(CTR、OFB、..)不需要填充,從而有效地將塊密碼轉(zhuǎn)換為流密碼。

甚至還有專用的流密碼,例如 Salsa 或 ChaCha。

所以 - 現(xiàn)在您可以將 6 個(gè)字節(jié)的明文加密為 6 個(gè)字節(jié)的密文。

當(dāng)您需要發(fā)送與明文相同數(shù)量的加密數(shù)據(jù)時(shí),有兩個(gè)問題:

  • 為了在重復(fù)使用相同密鑰進(jìn)行多次加密時(shí)保持?jǐn)?shù)據(jù)機(jī)密性,每個(gè)密碼都需要一些初始狀態(tài) (IV),它可以是隨機(jī)的或計(jì)數(shù)器。必須不重復(fù)使用相同的 Key 和 IV。所以在正常情況下,這個(gè)計(jì)數(shù)器或狀態(tài)是隨加密數(shù)據(jù)一起發(fā)送的。使用一些靜態(tài)向量可以破壞加密(部分或完全)。這就是評(píng)論中的人不能給你簡單答案的原因。如果沒有傳輸額外的數(shù)據(jù),就沒有適當(dāng)?shù)募用堋?/p>

  • 另一個(gè)問題是數(shù)據(jù)完整性。如果密文在傳輸過程中被修改(有意或無意),如果不傳輸額外的字節(jié),接收方就無法檢測(cè)到數(shù)據(jù)已被修改。我假設(shè) 6 字節(jié)無論如何都沒有完整性控制,所以也許這不是你關(guān)心的問題。

通過位移和異或來實(shí)現(xiàn)這個(gè)指定的功能很幼稚,還有更多嗎?

是的,您可以使用靜態(tài) IV 向量加密數(shù)據(jù),但正如我們所理解的那樣,這并沒有正確加密,因此知道多個(gè)消息或初始信息,數(shù)據(jù)可以被完全解密。

使用 XOR、矩陣運(yùn)算等簡單的東西……也可以揭示密鑰本身。


查看完整回答
反對(duì) 回復(fù) 2022-10-24
  • 1 回答
  • 0 關(guān)注
  • 111 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)