重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

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

ブラウザ上で動作するものであればベストですが、別にそうでなくても構いません。
ただ、できればフリーウェアに限らせてください。
よろしくお願いします。

A 回答 (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


多倍長演算が無い場合は、自作できます。
考え方は、小学校でやった筆算です。
桁分の箱を用意し、一桁ずつ計算、桁が溢れたら、その分は上の桁に足す、という感じにすればいいです。
    • good
    • 0

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

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!