Aes
可以將 IV 作為自定義 HTTP 標頭傳輸嗎?
考慮 AES OFB 加密算法,假設我通過 HTTP(不是 HTTPS)發送消息,並且我的消息正文包含密文。我想知道將隨機初始化向量作為自定義 HTTP 標頭傳輸是否被認為是一種不好的做法,考慮到它通常附加到密文的開頭。
從密碼學的角度來看,如何傳輸 IV 並不重要。您可以將其作為標頭、消息正文、請求方法中的路徑,甚至是幾個 TCP 數據包中的 URG 指針發送。從加密過程本身來看,它不關心它是如何得到IV的,不管使用的傳輸方法多麼愚蠢,只要最後得到它就行了。
從 Web 開發的角度來看,在標頭中包含適用於有效負載的數據是一種不好的做法。與簡單地將其添加到密文並發送所有內容相比,在自定義 HTTP 標頭中發送 IV 會稍微增加成本。您甚至不需要復雜的序列化格式。只需在固定大小的 IV 前面加上一天即可。這具有不破壞 HEAD 方法的額外好處,該方法請求 HTTP 標頭而不是正文。我想不出任何你可能想要 IV 無密文的理由。