タグ

パディングに関するshin_bashiのブックマーク (1)

  • 暗号とパディングについて | lazynotes

    仕事で3DES暗号というのを扱ったので、忘れないうちにまとめておきます。 データを一定の長さのブロックごとに区切り、ブロック単位で暗号化を行うものをブロック暗号と言う。(逐次暗号化していく暗号はストリーム暗号。) PHPでデフォで用意されている暗号関数はcrypt()、md5()、sha1()、str_rot13() の四つで、これ以外の高度なブロック方式の暗号を使おうとすると、mcrypt拡張モジュールやらPEARのCrypt_Blowfishやらが必要になる。 ブロック暗号は、データを64ビットや128ビットなどあらかじめ決められた固定長のブロックに区切って、この単位毎に暗号化していく。 当然全てのデータが64ビットや128ビットでうまく割り切れるわけではないので、最後のブロックで固定長に満たない場合は、足りない部分に特定のデータを埋め込んで長さを揃えるパディング処理が必要。で、この

  • 1