MetaRubyWEB3 LIBRARY

What Is a Transaction Hash?

著者:MetaRuby編集部公開日:最終更新日:約6分で読めます
指紋のような同心円の弧とブロックの列で、取引の固有性を表したイラスト

トランザクションハッシュ(TXハッシュ、TXIDとも呼ばれます)とは、ブロックチェーン上の取引1件ごとに自動的に割り当てられる固有のIDです。銀行振込でいう「受付番号」に近い役割を持ち、この文字列をブロックエクスプローラーに入力すると、送金の状況や内容を誰でも確認できます。

本記事では、ハッシュという技術の性質、トランザクションハッシュの読み方、実際の確認手順、そして混同しやすい用語との違いを、架空の例を使いながら整理します。

この記事の要点

  • トランザクションハッシュは、取引1件ごとに発行される世界に1つのID
  • 正体は、ハッシュ関数が取引データから計算した固定長の文字列
  • ブロックエクスプローラーに入力すれば、状態・金額・手数料を確認できる
  • ブロックハッシュやウォレットアドレスとは役割が異なる

トランザクションハッシュとは何ですか?

トランザクションハッシュは、取引データ全体を要約した「指紋」のような文字列で、同じものが2つと存在しない前提で設計されています。

Ethereum系のネットワークでは、トランザクションハッシュは0xで始まる合計66文字(0x+16進数64文字)で表されます。形のイメージをつかむために、説明用の架空の例を挙げます。

0x7c9a1f4e2b8d5c03a6e9f1b2473d8e05c1a4f6b9d2e7038c5b1f4a6d9e2c7508

先頭の0xは「これは16進数表記である」ことを示す接頭辞で、続く64文字が32バイト分のハッシュ値の本体です。この文字列そのものに金額や宛先が書かれているわけではなく、あくまで取引を一意に指し示す「名札」として機能します。

ハッシュ値はどのように作られますか?

ハッシュ値は「ハッシュ関数」という計算によって生成されます。入力がわずかに変わるだけで出力が大きく変わる性質が、改ざんの検知に役立っています。

ハッシュ関数は、どんな長さのデータを入力しても、決まった長さの文字列を返す計算手順です。同じ入力からは必ず同じ出力が得られる一方で、出力から入力を逆算することは事実上できません。取引の確認に関係する主な性質を表にまとめます。

ハッシュ関数の主な性質と取引確認との関係
性質意味取引確認との関係
一方向性出力から入力を逆算できないハッシュから取引内容を捏造できない
固定長入力の長さによらず出力の長さは一定どの取引もIDの形式が揃う
雪崩効果入力が1文字違うだけで出力が大きく変わる改ざんがあれば別のハッシュになり、すぐ分かる
衝突耐性同じ出力になる別の入力を見つけるのが極めて困難IDの重複を事実上防ぐ

使われる関数はネットワークによって異なり、Ethereum系ではKeccak-256、BitcoinではSHA-256が代表的です。関数の名前は違っても、「データの指紋を作る」という役割は共通しています。

トランザクションハッシュで何が確認できますか?

ハッシュをブロックエクスプローラーで検索すると、取引の成否から手数料まで、その取引に関する公開情報が一覧で表示されます。

取引詳細ページで確認できる主な項目
項目内容
Status取引が成功(Success)・処理待ち(Pending)・失敗(Failed)のどれか
Block取引が取り込まれたブロックの番号
From/To送信元・送信先のウォレットアドレス
Value送られた数量・金額
Transaction Fee支払われた手数料(ガス代)
Timestampブロックに記録された日時

項目名の表記はエクスプローラーごとに多少異なりますが、見るべきポイントはほぼ共通です。最初に確認するのはStatusで、ここがSuccessになっていれば、その取引はブロックチェーン上で確定しています。

トランザクションハッシュはどこで確認できますか?

確認の流れは「ハッシュを控える」「エクスプローラーに貼り付ける」の2段階だけです。具体的には次の4ステップで進めます。

  1. ハッシュを控えるウォレットの取引履歴や送金完了画面に表示される文字列をコピーします。たとえばMetaMaskでは、履歴の各取引の詳細から確認できます。履歴画面を開くまでの流れは「How to Log In to MetaMask(メタマスク)?」で解説しています。
  2. エクスプローラーを開く利用しているネットワークに対応したブロックエクスプローラー(Ethereumであれば広く使われているEtherscanなど)にアクセスします。
  3. 検索欄に貼り付けるコピーしたハッシュを検索欄に貼り付けて検索すると、取引の詳細ページが表示されます。
  4. Statusを確認するSuccess/Pending/Failedの別と、ブロック番号や手数料を確認します。これで取引の確認は完了です。

混同しやすい用語との違いは何ですか?

「ハッシュ」と名の付く用語や長い英数字の文字列は複数あります。指している対象がそれぞれ違うため、例えで整理しておきましょう。

トランザクションハッシュと似た用語の整理
用語指すもの例えるなら
トランザクションハッシュ取引1件のID振込の受付番号
ブロックハッシュ取引をまとめた「ブロック」のID帳簿のページ番号
ウォレットアドレス資産の送り先・受け取り口口座番号

DeFiでトークンを交換した場合も、最後に確認するのは結局このトランザクションハッシュです。取引が生まれる側の仕組みは「How Does DeFi Work?」で整理しています。

よくある質問

同じトランザクションハッシュが2回発行されることはありますか?

ハッシュ関数の衝突耐性により、同一のハッシュが別の取引に割り当てられることは事実上想定されていません。だからこそ、ハッシュは取引の一意なIDとして使えます。

ハッシュを他人に知られても問題ありませんか?

ブロックチェーン上の取引はもともと公開情報のため、ハッシュ自体は秘密情報ではありません。ただし、自分のアドレスとあわせて公開すると、保有状況や取引のつながりが推測されやすくなる点は知っておくとよいでしょう。

取引がずっとPendingのままの場合はどう考えればよいですか?

ネットワークの混雑や手数料の設定が原因で、確定までに時間がかかることがあります。多くの場合は時間の経過とともに処理されます。挙動の詳細は、利用しているウォレットやネットワークの公式情報をご確認ください。

まとめ

トランザクションハッシュは、ハッシュ関数が取引データから計算した、世界に1つだけの取引IDです。ウォレットで控えてブロックエクスプローラーに貼り付けるだけで、StatusがSuccessかどうか、いくらの手数料でいつ確定したのかを自分の目で確認できます。「送ったはずの取引がどうなったか」を人に聞かずに確かめられること。それが、この66文字を読めるようになる一番の価値です。