~あるいはTrustless Bitcoin Bridgeと、その先~ 暗号学のメガトレンド トーラスの画像出典:https://ameblo.jp/belly3/entry-12608353136.html
(第三者)検証可能な形で情報の非改ざんを保証することブロックチェーン技術の登場により、「情報が改ざんされずに検証できる形で残る」という機能が注目を集めている。しかし、ブロックチェーン技術の文脈でこの機能との関係を考える時に、多くの議論において技術史を踏まえない曖昧な議論が散見され、これが様々な場面で無用なディベートを生み出しているように見られる。そこで、この機能についての歴史を紐解きながら、「いわゆるブロックチェーン」をどう理解したらいいのかを述べたい。 この節のタイトルのように、第三者検証可能な形で情報の非改ざんを保証すること、という要請はもちろん古くから存在する。その多くは、信頼される第三者機関が、ある時点で文書が存在したことを証明するというもので、日本では法務省が所轄する公証制度が存在する[1]。[1]では、公証制度のことを以下のように書いている。 公証制度とは,国民の私的な法律紛争
BlockChain Advent Calendar 2018 17日目の記事です。 (散々書かれているテーマですが自分の復習用に) TL;DR Solidityでのストレージへの書き込み(SSTORE)は32byte単位で行われ、gasを節約するには 変数を並べて宣言するときには出来るだけ32byteごとにまとまるようにする 上記を構造体のメンバーに対しても行う の2点を気を付けるのが良さそうです。 概論 概論を知っている人は飛ばしてこちらから Solidityでのストレージの書き込みは、コンパイル後のopcode上ではSSTOREという命令によって行われます。 SSTOREは(というよりはEVM自体が)32byteのwordを引数として取るため、32byte未満の値を1つだけ書き込もうとすると効率が悪く(=gasの無駄が多く)なってしまいます。 そのため32byte未満の値を効率的に書
ビットコインをJavascriptで実装しながら理解しましょう。 前回までにブロックチェーンの実装を行ないました。今回はブロックをマイニングする処理を実装してみます。 開発の流れ 前回までの状態を再現 マイナーの実装 ブロックチェーンでマイニングされたブロックの有効性確認 マイニングのテスト ディフィカルティターゲットの調整 ディフィカルティターゲット調整のテスト まとめ GitHub 開発の流れ ブロックの実装 ブロックチェーンの実装 マイニングの実装 ← 今回はここ トランザクションの実装 ウォレットの実装 P2Pネットワーク 前回までの状態を再現 必要な場合は、前回の状態を再現しましょう。 $ git clone https://github.com/mizumotok/blockchain-js.git $ cd blockchain-js $ git checkout 02_bl
Bitcoinの技術的な入門書として有名な本はおそらくMastering Bitcoinでしょう。Bitcoinライクなブロックチェーンの技術的な解説が非常に詳しくされており、ブロックチェーンを学ぶ人にとってはもはや登竜門的な本になっています。 しかし、Mastering Bitcoinを読んでも実際にブロックチェーンそのものを実装することはありません。ブロックチェーンを学ぶ者として、「1度くらい実装した方がいいよな〜」と思っていました。 そんな時に以下の記事を見つけました。 Swiftでブロックチェーンを実装してみる この記事はPythonで実装された記事1に触発されて、Swiftでブロックチェーンを実装してみたとのことだったので、私は、Swiftではなく、Rubyで書いてみることにしました。 (上記の記事を参考に、自分なりにアレンジしながら実装してみました) 1. ブロックチェーンを作
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く