コンテンツへスキップ
uencoder

Base16

Base16 は十六進エンコーディングであり、4 ビットごとに 1 文字の十六進文字(0-9、A-F)へ写像する。RFC 4648 で定義される Base 系の最も単純な一員である。

目的

大文字小文字を区別しない最小のアルファベットでバイナリデータを表現し、ログ、デバッグ出力、プロトコルフィールドでバイト値を簡潔に表示するのに便利である。

メカニズム

各バイト(8 ビット)を上位と下位の 4 ビットニブルに分割し、それぞれを 1 文字の十六進文字へ写像する。入力 1 バイトから出力 2 文字が生じるため、符号化長は元のちょうど 2 倍で、パディングはない。

ユースケース

  • MAC アドレスと IPv6 アドレスの表記
  • バイナリファイルの hex ダンプと差分
  • 暗号ダイジェストの表示
  • HTML/CSS のカラーコード(#RRGGBB)

例

  • 入力
    Hi
    Output
    4869

    H=0x48, i=0x69

よくあるエラー

Inconsistent letter case causing comparison failures
Normalize to upper- or lowercase before comparing

関連用語

関連ツール

References