2010-12-06 3 views
0

私は20オクテットと32オクテットのテキストを持っています。したがって、最初のブロックは完全な16バイトブロックであり、32オクテットは26バイトです。ファイルをaes-cbcモードで暗号化すると、最初のパディングは行われませんが、パディングは2番目のパディングが行われます。 32にする必要があるゼロの数は32です。つまり、32番目のバイトは5になり、残りのバイトはゼロになります。私が鍵でファイルを暗号化したとき..私はいくつかの暗号テキストを持っています。 私の質問は27-31からです。なぜなら、アルゴリズムが27-31の間に同じ暗号文を私に与えるならば、テキストが暗号化されているときにゼロであるからです。または、値が暗号化されているため、0が追加され、5がテキストの32番目のバイトであることをどのように知ることになりますか?私が間違っている場合 pcks5パディング

は私を修正..

答えて

1

RFC2898によると - PKCS#5のパディングを定義する - パディングは、各バイトに(バイト)パディングの長さが含まれています。したがって、最後に復号化されたブロックの最後のバイトを読み取ると、破棄できるパディングバイトの数がわかります。