サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
買ってよかったもの
bitcoin.peryaudo.org
Mt.Goxに使われた脆弱性、トランザクション展性とは? 「システムに弱いところがあってビットコインがいなくなった」? ここまで解説してきた知識から、実際にニュースに登場するBitcoinの問題を理解できるということを見ていこう。 ここでは、Mt.Goxの攻撃に使われたとされる、Bitcoinシステム全体の脆弱性、Transaction Malleability(トランザクション・マレアビリティー、トランザクション展性)問題について解説する。 Mt.GoxのCEOが会見で口にした、「システムに弱いところがあってビットコインがいなくなった」というふざけた説明をはじめとして、なかなか詳細に語られることの少ない「トランザクション展性」問題だが、このサイトを通してBitcoinの実装の詳細を学ばれた方は、これがとても単純な問題であり、巨額のコインがお粗末とも言うべき理由によって喪失したという事に驚
Bitcoinの仕組み Bitcoinは、銀行のような中央を経由せず、直接、1対1で通貨のようなものを取引できる仕組みである。これはつまり、サーバー・クライアントモデルに基づいた信用によらず、取引ができるということである。 この仕組みは、P2P(Peer-to-peer)技術と、公開鍵暗号などの暗号技術を用いて実現されている。このような「通貨」は、Bitcoinによってはじめて実現されたが、現在、同様の仕組みを用いた通貨は、Bitcoinの他にも多数存在する。(Bitcoinの歴史、Bitcoinの派生通貨)これらをまとめて、「暗号通貨」(Cryptocurrency; クリプト・カレンシー)と呼ぶ。 ファイル共有やVoIPなどで用いられるP2P技術には、様々な凝ったアルゴリズムが存在している。しかし、Bitcoinはそういったアルゴリズムとは無縁の、非常に単純な構造のP2Pのネットワーク
完全クライアントは、ブロックチェーンの全てのデータをダウンロードするという特徴がある。これは最も標準的ではあるが、問題もある。Bitcoin開始以来の全ての取引履歴(ブロックチェーン)は数十GBにも達するため、これらを全てダウンロードするのには、かなりの時間を要する。そのため、インストールから実際に使いはじめることができるまでには、何時間もかかってしまうのである。また、これに応じて、ディスクにも相応の空き容量が必要となる。 Bitcoin-Qtやbitcoindは、Bitcoin発案者のSatoshi Nakamotoによる、オリジナルのBitcoinクライアントのコードをベースにしたクライアントである。Bitcoin-Qtは個人の使うBitcoinウォレットの中で最も一般的なものである。 bitcoindは名前の通りunixのデーモンとして動作する事を目的とするBitcoinのクライアン
Bitcoinウォレットを実装する Bitcoinの仕組みについてより深く解説するため、実際に筆者が簡易的なBitcoinウォレットをRubyで実装した。(bcwallet.rb) Rubyの標準ライブラリのみで書かれ、コメント・空行を除いて800行程度と、非常にコンパクトに収まったと自負している。 全体のソースコードはGithubにアップロードしたのでご覧頂きたい。 この章では、実際にこのクライアントのソースコードを解説しつつ、Bitcoinの仕組みについてさらに詳しく掘り下げていく。 Rubyに慣れていない読者もおられるかもしれないが、決してRubyとして高度な使い方をしている訳ではないのでどうかお付き合いいただきたい。 以下ではソースコードを引用しながら解説していくが、その全てを掲載する訳ではないので、適宜Githubの完全版を参照してほしい。 ダウンロードデータが小さい方が気軽にテ
Bitcoinの細部 ここまで、Bitcoinの仕組みの本質的な部分について説明してきた。しかし、Bitcoinのウォレットを実装する上では、まだいくつかの本質的ではない概念が不足している。そのため、この章ではこれらについて解説する。 トランザクションの分割 Bitcoinのトランザクションは、複数のインプットとアウトプットを持てるようになっている。設計上は、Bitcoinの仕組みの図などで仮定していたように、1トランザクションを1コインとしても問題はない。しかし、これでは様々な面において不便である。複数のインプット・アウトプットを持つことで、コインをより細かい単位でやり取りでき、また、おつりを簡単に実装できるようになるなどの利点がある。 複数のインプット・アウトプットを使い、おつりを受け取ることを考える。例えば、自分が1コインを持っているとして、相手に0.5コインを渡し、自分は0.5コイ
このサイトについて このサイトのモットーは「ビットコインの仕組みは決して難しくない」です。 このサイトは、技術的にビットコインを解説するサイトです。簡単な説明から入り、最後は、ウォレットをRubyで実装します。しかし、プログラミングに慣れていない方にも、十分に理解できるようよう配慮しました。 私は、多くの人が容易に理解できるからこそ、ビットコインは価値ある発明だと思っています。 ビットコインの簡単な仕組み ビットコインは、中央を持たないのに、銀行を経由しているかのようにコインをやりとりできる「通貨」。 「公開鍵暗号」で第三者がコインを勝手に盗めなくなり、 「ブロックチェーン」のしくみで、当事者が通貨を二重に譲渡するのを防ぐことができる。 「ブロックチェーン」の運営に貢献した人は報酬がもらえる、これが「マイニング」。 これだけではよく分からない? はやく仕組みを知りたい:「Bitcoinの仕
このページを最初にブックマークしてみませんか?
『トップ - ビットコインの仕組み:Bitcoinを技術的に徹底解説!』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く