タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

暗号化に関するk-holyのブックマーク (2)

  • 「PHPで暗号化・復号あれこれ」の続き - Do You PHP はてブロ

    ラボブログの続きですが。。。 mcryptのpaddingは 平文の長さがブロックサイズ倍になるように ASCIIZ('\0')を付けるだけなので, base64化することで末尾のASCIIZを正しく保持する効果があると思われます(試してはいません). 今回挙げたサンプルを作る際、復号データの末尾に何か付加されているのは確認していたのですが、base64_encodeするとうまくいったので、今回はそれ以上深く追っていませんでした。また、コメントにある「padding」を見て、パディングのことをすっかり忘れていたことを思い出しました。 ということで、PEAR::Crypt_Blowfishを使ったサンプルを元に見てみました。以下のコードはラボブログに書いたサンプルからbase64_xxxxxxを抜いて、文字列長やコード出力(面倒なのでurlencodeで代用)を追加したものです。サンプルのフ

    「PHPで暗号化・復号あれこれ」の続き - Do You PHP はてブロ
  • mcrypt_generic関数とmdecrypt_generic関数 - ます’s Blog - どうでもいい記事100選

    パディング方法 パディング方法を変更するためには'padding'オプションを使ってください。 平文の最後のブロックがブロックサイズよりも短いとき、それはパディングされなければなりません。 パディング方法には以下のものがあります。 standard: (デフォルト) バイナリに対しても安全 切り落されるべきバイト数で埋められます。そのためブロックサイズが 8であれば、"0A0B0C"は"05"で埋められ、結果は"0A0B0C0505050505"に なります。もし最後のブロックがブロック全体で、ブロックサイズが8で あれば、"0808080808080808"というブロックが追加されます。 null: テキストのみ ブロックを一杯にするために必要なだけ"00"で埋めます。最後の ブロックがブロック全体で、ブロックサイズが8であれば、 "0000000000000000"というブロックが追加

    mcrypt_generic関数とmdecrypt_generic関数 - ます’s Blog - どうでもいい記事100選
  • 1