見出し画像

ブロックチェーンの裏側:txidの盲点

こんばんは。
今回は、ブロックチェーンにおけるトランザクションID――いわゆる「txid(トランザクションID)」について、その「落とし穴」を軽くお話ししておきます。

txidって、そんなに信じていいの?

txid(Transaction ID)は、取引データ全体をシリアライズ(直列化)し、ハッシュ関数に通した結果として得られる値です。要するに、ブロックチェーンの内部で生成された「計算結果」にすぎません。

これだけ聞くと、「え、それだけ?」と思うかもしれません。そう、それだけです。txidはただのハッシュ値であり、それ自体には何の取引保証もありません。

「txidがある=取引が成立した」……は誤解

この誤解が、スキャムの温床になっています。ブロックチェーンでは、txidが発行されただけでは、まだ何も確定していません。

本当にコインを受け取るには「承認」が必要です。つまり……。

  • トランザクションがマイナーに承認され

  • ブロックに取り込まれ

  • ブロックチェーン上に記録される

このプロセスを経て、初めて自分の資産になるのです。

スキャマーはここを突いてくる

P2P取引など(一部では取引所でもね)では、悪意ある相手が「これがtxidです」と提示してきます。しかし、それは単にメモリプールに入っただけの未承認取引かもしれません。
こうした「未承認txid」は、確定した取引とは言えません。当然ながら、相手にだけコインが送られ、こちらは“未着”で終わる、なんてことも。
あえてそうなるようにトランザクションを組み立てて、メモリプールに放り込み、取引成立しそうにみせかける、なんてこともできますので注意です。

それでも、誰も助けてはくれません。
ブロックチェーンでは「自己責任」がすべてなのです。

さらに怖いのは「フェイクtxid」

これは衝撃的かもしれませんが、偽物のtxidだって作れてしまいます。なぜなら、txidは「ただのハッシュ値」だからです。

データを好きにシリアライズし、ハッシュ関数に通せば、見た目は「本物っぽいtxid」が簡単に作れてしまいます。
それをエクスプローラに入れて、ようやく「そんな取引は存在しません」と気づく――
……ときには、すでに遅い場合もあるのです。
さらには、ただ乱数を並べていたというケースだって……。

ちなみに、さすがに「フェイクtxidってほんとかよ?」とツッコミたくなりますよね?
ええ、本当です。筆者自身が一回やられましたので。ええ……、これよりも動かぬ証拠は、ないでしょう。やっぱり、本当にやる奴は、やる、でした。

ハッシュは便利。でも、信じすぎてはいけない。

txidもハッシュも、ブロックチェーンの基盤を支える重要な技術です。しかし、それゆえに信じすぎると落ちる穴が深いのです。

次回は、いよいよハッシュの最大の落とし穴――ですね。

いいなと思ったら応援しよう!