Last Update: 2011-03-08 (火) 16:46:00 (2329d)
FrontPage / Linux / hexへの変換方法

hex への変換方法

WEPのASCIIをhexに表記した際、どのように記述すればよいか。
これらの用途にも利用可能である為、メモを残すとする。
Cisco Aironet では、HEXでは記述可能だが、ASCIIで記述し、自動的に変換するということは出来ないため、こういった方法で変換が可能となる。

ツールを使う

C を使った場合

#include<stdio.h>
#include<string.h>

int main(int argc, char *argv[]) {
  char *key = argv[1];
  while(*key != '\0')
  printf("%X", *(key++));
  printf("\n");
  return 0;
}
./a.out AregeNoGeGeGe
41726567654E6F476547654765

od/hexdumpを使った場合

$ echo -n 'AregeNoGeGeGe'| od -t x1z
0000000 41 72 65 67 65 4e 6f 47 65 47 65 47 65           >AregeNoGeGeGe<
0000015
$ echo -n 'AregeNoGeGeGe'| hexdump -C
00000000  41 72 65 67 65 4e 6f 47  65 47 65 47 65           |AregeNoGeGeGe|
0000000d

perl/ruby を使った場合

$ echo 'AregeNoGeGeGe' | perl -lne 'print unpack("H*", $_)'
41726567654e6f476547654765
$ ruby -le 'print "AregeNoGeGeGe".unpack("H*")'
41726567654e6f476547654765

ついでに逆も

echo '41726567654e6f476547654765' | perl -lne 'print pack("H*", $_)'
AregeNoGeGeGe

TOPページへ戻るページの更新   ページの編集新しいページの作成新しい下位ページの作成そのページを引用して新規作成そのページにファイルの添付ページの削除ページ名の変更前回の編集内容の表示ページの凍結バックアップページの参照ページへのリンク元を表示   サイトのページ一覧サイト内単語検索編集したページの履歴削除したページの履歴   別ウィンドウでマニュアルページへ