データ変換

種類

文字コード
人間に見える文字を機械で扱いやすいバイナリ値に対応させる
ShiftJIS EUC JIS UTF-8
暗号化
持ち主以外がデータを安易に読めなくする
crypt MD5
複号化
暗号化したデータを読める状態に戻す
圧縮
データの意味を保ったままサイズを小さくする
可逆圧縮
データの意味を完全に保ったままの圧縮
GIF PNG ZIP LZH RAR GZIP
非可逆圧縮
データの意味を多少失うが圧縮率が高い。
データの劣化が目立ちにくい音楽や画像データなどに用いられる。~
JPEG MPEG MP3 DivX
解凍(展開)
圧縮したデータを元に戻す。
退避
送受信などでデータの意味を失わせないように置き換えておく
URLンコード Base64 Quoted-printable HTML特殊文字

HTML

HTML特殊文字

  • < > & " などのHTMLの記述で意味を持つ文字を
    意味を持たないただの文字として表示させる。
  • タグ内にパラメータを渡す際に
    <input type="text" value="[>>2 "title"]">
    上ように意味を持った文字がそのまま入るとデータが誤認されるため
    URLエンコードするか、特殊文字をエスケープしておくべきである。

HTML数値エンティティ &#DD; &#xHH;

&#32; のような、文字コードを数値で表したもの。
「&#半角10進数」で10進数、「&#x半角16進数」なら16進数で文字コードを指定する。

&#32; &#x20;

上記は共に半角スペースを意味する。

URLエンコード/デコード

暗号化

暗号化方式入力出力強度備考
文字列bytebyte暗号byte
DES平文0〜80-9A-Za-z./2salt暗号化文字列1156bit一方向ハッシュ(0-9A-Za-z./)
MD5平文任意0〜8$1$salt$暗号化文字列16(16進数32)128bit一方向ハッシュ(バイナリor16進文字列)
SHA-1平文暗号化文字列20(16進数40)160bit一方向ハッシュ(バイナリor16進文字列)

crypt

crypt(str, salt)
  • ここではUNIXのcryptコマンドとして扱う。
  • 主にDES暗号化を利用しているが、稀にMD5などを使うこともある。

2chトリップ

# トリップ生成(旧鯖仕様:10桁)
sub str2trip10{
	my $tripkey = shift;		# パスワードとする文字列('#' 付き)
	$tripkey = substr($tripkey,1);	# 先頭の'#'を除く
	my $salt = substr($tripkey.'H.',1,2);
	$salt =~ s/[^\.-z]/\./go;
	$salt =~ tr/:;<=>?@[\\]^_`/ABCDEFGabcdef/;
	$trip = crypt($tripkey,$salt);
	$trip = substr($trip,-10);	#末尾10文字取得
	$trip = '◆'.$trip;
	return $trip;
}

DES

  • 一方向のハッシュ値(56bit)を生成する
  • 主にUNIXなどのcryptコマンド・関数で用いられる。
  • 第一引数に8文字の暗号化させる文字列、
    第二引数に文字列をランダムにする2文字の種saltを指定する。 8文字を越えた文字列は切り捨てられ、文字列は先頭1bitは切り捨てられる(7bitのみ)。
  • saltは半角の英数字・ピリオド「.」・スラッシュ「/」でなければならない。
  • 暗号化文字列の先頭は2文字のsaltで始まる。
  • 8+2文字だけの変化のため現在では非常に暗号化強度は低い

CRC (Cyclic Redundancy Check)

  • 誤り検出符号。一定の長さ(8bit、32bitなど)のデータの整合性を検出する。

MD5 (Message Digest Algorithm 5)

  • 一方向のハッシュ値(128bit)を生成する
  • 第一引数に任意の長さの暗号化させる文字列、第二引数に8文字までのsaltを指定する。
  • 暗号化文字列の先頭は「$1$」で始まり次にsaltと「$」、その後暗号化された固定長22バイトの文字列が続く。
  • RFC 1321 で標準化されている

SHA1 (Secure Hash Standard 1)

  • SHA (Secure Hash Standard)の1つ。
  • 一方向のハッシュ値(160bit)を生成する
  • 比較的(MD5などに比べて)暗号強度が高いとされる

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規新規下位 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2011-06-10 (金) 00:34:24 (2207d)