MurmurHash3ハッシュ計算
Hello, world!を入力すると、既定のシード0で13バイト分のMurmurHash3(x86・32ビット)ハッシュc0363e43が得られます。ハッシュテーブルや分散キー、テスト値の確認向けで、パスワードの保護には使えません。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- テキスト
- Hello, world!
- 結果
- c0363e43
- Murmur3 ハッシュ
- c0363e43
- Hex
- c0363e43
- シード値
- 0
MurmurHash3はAustin Applebyが設計した高速な非暗号ハッシュで、ハッシュテーブル、シャーディングキー、ブルームフィルタ、コンテンツ指紋など、敵対者に対する衝突耐性より速度と分布の良さが重要な場面向けです。広く使われるx86 32ビット版は、公開された定数でメッセージを4バイトブロックごとに混ぜ、短いテールを折り込み、長さを反映した最終ミックスで符号なし32ビット語を1つ生成します。開発者はしばしば、フィクスチャ・ログ・言語横断チェック用にその語を8桁の小文字16進で必要とし、任意シードにより同じ文字列でもマルチバケット設計で異なる安定ダイジェストを得られます。本MurmurHash3ハッシュツールは空でないテキストを受け取り、UTF-8に符号化し、符号なし32ビット全範囲の任意シードを適用し、hexダイジェストとともにアルゴリズムラベル・シード・バイト数・短い要約を返します。
MurmurHash3 x86 32ビットが計算する内容とシードの意味
MurmurHash3 x86 32ビットは、各メッセージを順序付きオクテット列として扱います。ハッシュレジスタは呼び出し側が渡すシードで初期化され、省略時はゼロです。
ストリームはリトルエンディアンの4バイトブロックで処理され、各ブロックは定数 c c 九 e 二 d 五 一 を乗算し、15ビット左回転し、一 b 八 七 三 五 九 三 を乗算し、13ビット左回転と五 および e 六 五 四 六 b 六 四 の乗加算で走行ハッシュに混ぜます。
残り1〜3バイトのテールは同じ定数で混ぜたあと、最終化で総長をxorし、八 五 e b c a 六 b と c 二 b 二 a e 三 五 の2回のアバランチ乗算と右シフトを挟みます。ツールは符号なし結果を8桁の小文字hexに整形し、大文字小文字・符号付き表示・パディングの議論を不要にします。
既知の検査として、ASCIIのfooをシード0で計算すると f 六 a 五 c 四 二 零、Hello カンマ 空白 world 感嘆符をシード0で計算すると c 零 三 六 三 e 四 三 となります。シードを変えると同じバイトでもダイジェストが変わり、マルチハッシュ集合や分割マップに意図的に使えます。
MurmurHash3は動機ある攻撃者への衝突耐性がなく、秘密鍵化されず、パスワードや署名には向かないため、高速なコンテンツ識別子やハッシュテーブル混合器として扱い、真正性の証明には使わないでください。検索意図が暗号ハッシュである場合はSHA系ダイジェストを優先し、非暗号のMurmurHash3とは切り分けてください。
MurmurHash3ハッシュが役立つ場面
言語ランタイム作者やシステム系の学生は、言語ごとに完全なアバランチループを書かずに、手計算のブロック混合と最終化を公開定数と照合するためにMurmurHash3ハッシュ計算機を使います。
教育プラットフォームやLMSプラグインは、空入力と不良シードを黙ってラップせず拒否する決定論的オラクルを必要とし、自動採点が設定ミスと本物のダイジェストを区別できるようにします。MurmurHash3ハッシュやmurmurhash3計算機で順位を狙うコンテンツサイトは、無料経路が有料自動化と同一純粋モジュールでバイト一致するライブツールの恩恵を受けます。
検証失敗は拒否後に残高を消費しません。検索意図がMurmurHash3を離れるときだけFNV-1・Adler-32・CRC・暗号ハッシュのランディングと組み合わせ、本ページはMurmurHash3 x86 32ビットに集中させ、関連チェックサムやダイジェストの意図を食い合わないようにします。
活用例
ハッシュテーブルとシャーディングキー
マップのバケット、シャードID、フィーチャーフラグ区画に使う短い文字列向けに、任意シード付きで安定したMurmurHash3-x86-32のhexキーを生成します。
教室向けMurmurHash3デモ
教員がシード0のfooとHello, world!の古典値を示し、学生はネイティブモジュールなしで他の短い文字列を再計算できます。
非暗号ハッシュヘルパのCIフィクスチャ
パイプラインが決定論的なMurmurHash3 hex出力と無効シードエラーを固定し、定数・回転・ラップの事故的変更を即座に失敗させます。
よくある質問
テキストが空の場合はどうなりますか?
空でない文字列が必須で、空入力は成功したハッシュとしては扱いません。
MurmurHash3は暗号ハッシュですか?
いいえ。 MurmurHash3はハッシュテーブルやコンテンツキー向けの高速な非暗号ハッシュです。衝突耐性や認証が必要なときはSHA-256などを使ってください。
使えるシード値の範囲はどこまでですか?
0から4294967295までの整数で、符号なし32ビットの全範囲です。省略すると0が使われます。負の数や小数、範囲を超える値は受け付けません。
シードを変えるとハッシュ値も変わりますか?
はい。同じテキストでもシードごとに異なるハッシュになり、これは意図された動作です。ブルームフィルタや分割したマップ用に、独立した複数のハッシュを作れます。シードを省略すると0が使われます。
日本語や絵文字を含むテキストも計算できますか?
はい。テキストはUTF-8のバイト列に変換してから計算されるため、日本語や絵文字のような複数バイトの文字も、すべてのバイトがハッシュに反映されます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/enc/murmur3 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello, world!"}'const res = await fetch("https://api.kit.forhosting.com/enc/murmur3", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello, world!"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/murmur3",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello, world!"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/murmur3", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello, world!"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello, world!"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/murmur3", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"text": "Hello, world!"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.murmur3",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
空入力と無効シードはinvalid_inputで拒否され、欠落フィールドや不良シードを本物のハッシュと混同しません。無料ブラウザ経路と前払いAPIは同一の純粋モジュールを共有するため、教室フィクスチャと本番パイプラインは同じ文字列・シードのhex語で常に一致します。
入力契約・シード検証・JSON応答の形
ハッシュしたい空でない文字の列です。seedを省略するとアルゴリズムは0を使います。文字列はMurmurループの前にUTF-8符号化され、マルチバイト文字は同じUTF-8ストリームをハッシュする言語ランタイムと同じく各コードユニットバイトを寄与します。古典フィクスチャでは text が Hello カンマ 空白 world 感嘆符・既定シードで hex が c 零 三 六 三 e 四 三 です。別フィクスチャでは同じ文字列をシード42にすると同一アルゴリズムラベル下で別の8桁hexになります。成功経路と無効シードエラーの両方を継続的インテグレーションに固定し、定数や回転の事故的変更が気づかれずに出荷されないようにしてください。必須の文字列フィールド text を含むJSON本体をPOSTしてください。同一フィールドに alias の input、value、s、data、message、payload が使えるため、SDKスタブとフォーム投稿が柔軟に保てます。任意フィールド seed は0から四十二億九千四百九十六万七千二百九十五まで(符号なし32ビット全範囲)の整数で、alias の salt と init を受け付けます。text欠落・非文字列・空文字はすべてinvalid_inputとなり、空でない文字列が必要である旨が明示され、前払いAPIでは課金されません。非数値・小数・真偽値・負数・2の32乗マイナス1超など無効シードもinvalid_inputと明示メッセージで失敗し、静かなモジュララップなしで設定を直せます。成功時は result・murmur3・hex が同一の8桁小文字hex、seed が使用値、algorithm が MurmurHash3-x86-32 固定、input_bytes がUTF-8長、text が入力のエコー、message がバイト数・シード・hex結果の要約です。任意のnullフィールドはnullとして出さず省略し、宣言的レンダラ契約のきれいなWebフォームに合わせます。
MurmurHash3ハッシュAPIが役立つ場面と料金の仕組み
単発確認は無料のブラウザツールを、安定契約と残高下の自動化はバックエンド・サーバーレス・SDKから前払いKIT APIを $0.002 の成功アイテム単位で呼び出してください。ペイロードはWorker isolateのアイテム呼び出しに適した通常のテキスト長に保ち、数メガのバイナリ塊ではなく短い文字列とプロトコル断片向けとしてください。
技術的な質問
テキストのMurmurHash3ハッシュはどう計算しますか?
空でない文字列フィールド text と任意の seed(uint32、既定0)をJSONで送ってください。APIは文字列をUTF-8符号化し、MurmurHash3 x86 32ビットを実行し、result・murmur3・hex に8桁小文字hexを返します。
どのシード値が許可されますか?
シードは0から4294967295までの整数です。省略すると0です。非整数・負数・真偽値・2^32-1超はinvalid_inputになります。
MurmurHash3計算機は無料ですか?
ブラウザツールはお使いの端末で無料です。API呼び出しは前払いKIT残高を成功アイテムあたり$0.002で使用し、検証失敗は課金されません。