• 締切済み

結果を10進数表記するハッシュ計算ツール

ブラウザ上で動作するMD5等のハッシュ計算ツールは色々ありますが、 題名の通り「計算したハッシュ値を16進数ではなく10進数表記してくれる計算ツール」をご存知ないでしょうか? 16進数表記のハッシュ値を出してから、何らかの方法で10進数表記に変換すれば良い話なのですが その手間を省き、一度の変換で文字列から10進数の数値にできれば便利だなぁと思っております。 ブラウザ上で動作するものであればベストですが、別にそうでなくても構いません。 ただ、できればフリーウェアに限らせてください。 よろしくお願いします。

みんなの回答

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

「ブラウザ上で動作する」というのが、サーバーサイドなのかクライアントサイドなのかがわかりませんが。 使用している言語が、「多倍長数」「任意精度数」と呼ばれるものに対応している場合、単純な16進文字列→整数の変換できます。 例) Ruby a="123456789abcdef0123456789abcdef".to_i(16) #文字列を16進数として整数に変換 # => a=1512366075204170929049582354406559215 16進文字列→多倍長整数の変換が無い場合でも、足し算とかけ算でできます。 このとき、多倍長演算用の関数を使うと、結果が多倍長になります。 例) fc3 を変換する場合 d=0 d=0 * 16 + 15 # fを足す。=15 d=15 * 16 + 12 # 上を16倍してcを足す = 240+12 = 252 d=252 * 16 + 3 # 上を16倍して3を足す = 4032 + 3 = 4035 多倍長演算が無い場合は、自作できます。 考え方は、小学校でやった筆算です。 桁分の箱を用意し、一桁ずつ計算、桁が溢れたら、その分は上の桁に足す、という感じにすればいいです。

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

EXCELをお持ちなら、MD5の関数を入手してVBAで書くとか

関連するQ&A