5

AES256-GCM は、 https://gist.github.com/cannium/c167a19030f2a3c6adbb5a5174bea3ffとして実装できます。

ただし、Sealインターフェイスのメソッドにcipher.AEADは署名があります。

Seal(dst, nonce, plaintext, additionalData []byte) []byte

そのため、非常に大きなファイルの場合、すべてのファイルの内容をメモリに読み込まなければならず、これは受け入れられません。

可能な方法はとにReader/Writerインターフェイスを実装することですが、それは AEAD のブロック暗号「モード」によって解決されるべきではありませんか? これはgolang cipher libの設計ミスなのか、それともGCMで何か重要なことを見逃したのでしょうか?SealOpen

4

2 に答える 2