「堅牢なスマートコンストラクト開発 ブロックチェーン[技術]入門」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がわかる本

memo

Posted by shi-n