「堅牢なスマートコンストラクト開発 ブロックチェーン[技術]入門」memo
堅牢なスマートコンストラクト開発
ブロックチェーン[技術]入門
ブロックチェーンと関連技術
ブロックチェーンの全体像
ビットコインネットワーク
Ethereum
ブロックチェーンネットワーク
パブリック型
プライベート型
コンソーシアム型
Hyperledger Fabric
スマートコントラクト
P2P
ピア・ツー・ピア
参加者
ユーザ
マイナー
トランザクション
取引
ブロック
分散台帳
マイニング
ブロックチェーンを理解するための暗号技術
ハッシュ関数
ハッシュ値
SHA-256
RIPEMD-160
HASH169
公開鍵暗号
楕円曲線暗号
キーペア
公開鍵
秘密鍵
デジタル署名
ビットコインネットワーク
お金のように扱える仕組み
Base58Check
ウォレット
鍵管理
秘密鍵
ホットウォレット
PC
Bitcoin Core
Electrum
Mobile
breadwallet
Copay
Mycelium
取引所内作成タイプ
bitFlyer
coincheck
Poloniex
ペーパーウォレット
bitaddress.org
pointbiz/bitaddress.org
ハードウェアウォレット
TREZOR
Ledger Wallet
トランザクション
生成
署名
伝搬
ブロック取込
UTXO
unspent transaction output
ブロックとブロックチェーン
SPVノード
フルブロックチェーン
マークルツリー
マイニングとコンセンサスアルゴリズム
ビザンチン将軍問題
Proof-Of-Work
仕事量による証明
Nonce
Ethereumとスマートコントラクト開発
Ethereumとビットコインネットワークの主な違い
スマートコントラクト開発の準備とSolidityの基本文法
geth
https://geth.ethereum.org/downloads/
Solidity
https://solidity-jp.readthedocs.io/ja/latest/
Mist Wallet
https://github.com/ethereum/mist/releases
スマートコントラクトの用途別サンプル
HelloEthereum
クラウドファンディング用
名前とアドレスを管理
スマートコンストラクトのセキュリティ
スマートコンストラクトのセキュリティプラクティス
Condition-Effects-Interactionパターン
Reentrancy問題
Withdrawパターン
push vs pull
AccessRestrictionパターン
Mortalパターン
Circuit Breakerパターン
スマートコントラクトの脆弱性の仕組みと攻撃
Reentrancy問題
再入可能性
Transaction-Ordering Dependence
TOD
Timestamp Dependence
重要情報の取り扱い
オーバーフロー
事例から学ぶブロックチェーンのセキュリティ
参考図書
Mastering Bitcoin, 2nd Edition - Programming Open Blockchain
Mastering Blockchain
Blockchain Applications : A Hands-On Approach
ブロックチェーン・レボリューション - ビットコインを支える技術はどのようにビジネスと経済、そして世界を変えるのか
代数学から学ぶ暗号理論 : 整数論の基礎から楕円曲線暗号の実装まで
P2Pがわかる本