WEPのASCIIをhexに表記した際、どのように記述すればよいか。
これらの用途にも利用可能である為、メモを残すとする。
Cisco Aironet では、HEXでは記述可能だが、ASCIIで記述し、自動的に変換するということは出来ないため、こういった方法で変換が可能となる。
#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
$ 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
$ echo 'AregeNoGeGeGe' | perl -lne 'print unpack("H*", $_)' 41726567654e6f476547654765
$ ruby -le 'print "AregeNoGeGeGe".unpack("H*")' 41726567654e6f476547654765
ついでに逆も
echo '41726567654e6f476547654765' | perl -lne 'print pack("H*", $_)' AregeNoGeGeGe