Skip to content

Latest commit

 

History

History
859 lines (808 loc) · 19.5 KB

dd.md

File metadata and controls

859 lines (808 loc) · 19.5 KB

Rarer than gold? There will only ever be 21 million bitcoins produced It will take until about the year 2140 to get them all. Bitcoin restricts the number of blocks that can be mined to about 1 every 10 minutes using the difficulty. This results in a controlled release of new bitcoins via the coinbase. Once all the bitcoins have been mined then the coinbase will only contain transaction fees.

How many have been mined so far? Over 15 million.

Blocks that are no longer on the longest chain are called orphaned blocks.

How long does it take to get these confirmations? Typically each confirmation takes about 10 minutes. Therefore in about an hour any transaction is irreversible.

How does the miner get the transaction fees? The fees are added to the coinbase which is paid to an address owned by the miner. They are not redeemable for about 100 blocks.

Every so often when the price of a bitcoin has stabilised for a reasonable duration (many months) the fee is adjusted by collective agreement. Currently it is 0.5mBTC which is less than 0.02 USD.

So each transaction has a parent and so on? Yes. The sum of all bitcoins paid into Bitcoin addresses that you own is your total balance.

  1. You want me to send you a diamond through the post.
  2. You send me an empty metal box containing an unlocked padlock.
  3. I put the diamond in the box. I also put my own unlocked padlock in there. Then I lock the box with your padlock.
  4. Now nobody can open that box except you so I send it through the post.
  5. It arrives and you use your private key to open your lock.
  6. You examine the diamond, and you want to send me payment (in cash) so you put the pile of notes in the box and lock it with my lock.
  7. Now nobody can open that box except me, so you send it through the post.
  8. It arrives and I use my private key to open my lock.

In the world of cryptography, the padlock is called the "public key" because it is out in the open (public) and only a single private key will unlock anything protected by it.

Also, in cryptography a "key" is just a very large number. So we have a "public very large number", and a "private very large number".

FAQ

https://crushcrypto.com/ https://cryptobriefing.com/quantstamp-ico-review-and-token-analysis/#1507666904032-fca03ddf-4ab4 https://www.investitin.com/quantstamp-review/ https://eidoo.io/erc20-tokens-list/

https://coinmarketcap.com/currencies/0x/#markets https://coinmarketcap.com/currencies/quantstamp/ https://coinmarketcap.com/currencies/qash/#markets https://coinmarketcap.com/currencies/maidsafecoin/#markets https://coinmarketcap.com/currencies/achain/#markets https://coinmarketcap.com/currencies/ark/#markets https://coinmarketcap.com/currencies/deepbrain-chain/#markets

Get a 3% discount on your hashpower purchase on Genesis Mining by using my code! - 2Mjy9X https://www.genesis-mining.com/a/807920

Free Bitcoin faucet: https://freebitco.in/?r=4494636

Check this out https://www.youtube.com/watch?v=mSWAPbxGjN0

Free Dogecoin faucet: http://freedoge.co.in/?r=906036

Buy BTC Mining Power with Hashing24!: https://hashing24.com/?rid=53616c7465...

Buy Bitcoin with a Credit Card Instantly!: https://changelly.com?ref_id=8f4a7eea...

Follow Me on Steem!: https://steemit.com/@ylgv

Buy $100 of Bitcoin on Coinbase using my link and get $10 FREE!: https://www.coinbase.com/join/57167a2...

Earn Bitcoin and Join Control Finance!: https://control-finance.com/?ref=YLGV

Get Paid to Search the Internet Like You Would On Google!: http://www.swagbucks.com/refer/astoni...

Like Me On Facebook! https://www.facebook.com/YourLegitGam...

Follow Me on Twitter!: https://twitter.com/YourLegitGaming

https://github.com/hyperledger/composer-sample-networks/tree/master/packages https://medium.com/@CazChurchUk/integrate-your-blockchain-with-anything-using-hyperledger-composer-and-nodered-4226676f7e54 https://blog.selman.org/2017/07/08/getting-started-with-blockchain-development/ https://medium.com/@karthikworks/hyperledger-chennai-meetup-july-workshop-on-hyperledger-composer-with-wavemaker-1c6f5ffed3a2 https://medium.com/@gaurangtorvekar/7-blockchain-technologies-to-watch-out-for-in-2017-4b3fc7a85707

https://chain.com/docs/1.2/core/learn-more/blockchain-operators

https://bitcoin.stackexchange.com/questions/35448/is-it-chain-of-headers-rather-than-a-chain-of-blocks https://thecontrol.co/cryptoeconomics-101-e5c883e9a8ff

https://hackernoon.com/cryptoeconomics-paving-the-future-of-blockchain-technology-13b04dab971

https://medium.com/technologymadeeasy/blockchains-explained-to-a-5-year-old-child-part-2-of-the-tutorial-series-on-ethereum-dapps-f80b866e72de

https://medium.com/technologymadeeasy/develop-dapps-on-ethereum-tutorial-series-for-beginners-part-1-basic-terminology-866d2ce4cf34

https://medium.com/technologymadeeasy/blockchains-explained-to-a-5-year-old-child-part-2-of-the-tutorial-series-on-ethereum-dapps-f80b866e72de https://medium.com/technologymadeeasy/blockchains-explained-to-a-5-year-old-child-part-2-of-the-tutorial-series-on-ethereum-dapps-f80b866e72de https://medium.com/technologymadeeasy/develop-dapps-on-ethereum-tutorial-series-for-beginners-part-1-basic-terminology-866d2ce4cf34

https://blockchainhub.net/decentralized-applications-dapps/ 7https://docs.factom.com/#more-detailed-node-information-page

https://blockgeeks.com/guides/blockchain-address-101/

Chapter 1: Blockchain 101 Distributed systems CAP theorem - https://www.youtube.com/watch?v=ytPoGSNV8z8 CAP theorem and blockchain Byzantine Generals problem Consensus Consensus mechanisms Types of consensus mechanism The history of blockchain Electronic cash The concept of electronic cash Introduction to blockchain Various technical definitions of blockchains Generic elements of a blockchain Addresses Transaction Block Peer-to-peer network Scripting or programming language Virtual machine State machine Nodes Smart contracts

  • Features of a blockchain

    • Distributed consensus
    • Transaction verification
    • Platforms for smart contracts
    • Transferring value between peers
    • Generating cryptocurrency
    • Smart property
    • Provider of security
    • Immutability
    • Uniqueness
    • Smart contracts
  • Applications of blockchain technology

    • How blockchains accumulate blocks
  • Tiers of blockchain technology

    • Blockchain 1.0
    • Blockchain 2.0
    • Blockchain 3.0
    • Generation X (Blockchain X)
  • Types of blockchain

    • Public blockchains
    • Private blockchains
    • Semi-private blockchains
    • Sidechains
    • Permissioned ledger
    • Distributed ledger
    • Shared ledger
    • Fully private and proprietary blockchains
    • Tokenized blockchains
    • Tokenless blockchains
    • Consensus in blockchain
      • Proof of Work
      • Proof of Stake
      • Delegated Proof of Stake
      • Proof of Elapsed Time
      • Deposit-based consensus
      • Proof of importance
      • Federated consensus or federated Byzantine consensus
      • Reputation-based mechanisms
      • Practical Byzantine Fault Tolerance
  • Benefits and limitations of blockchain

    • Decentralization
    • Transparency and trust
    • Immutability
    • High availability
    • Highly secure
    • Simplification of current paradigms
    • Faster dealings
    • Cost saving
    • Challenges and limitations of blockchain technology

Chapter 2: Decentralization Decentralization using blockchain Methods of decentralization Disintermediation Through competition Routes to decentralization How to decentralize Examples Blockchain and full ecosystem decentralization Storage Communication Computation Smart contract Decentralized organizations Decentralized autonomous organizations Decentralized autonomous corporations Decentralized autonomous societies Decentralized applications Requirements of a decentralized application Operations of a DAPP Examples KYC-Chain OpenBazaar Lazooz Platforms for decentralization Ethereum Maidsafe Lisk Summary Chapter 3: Cryptography and Technical Foundations Introduction Mathematics Set Group Field A finite field Order Prime fields Ring A cyclic group An abelian group Modular arithmetic Cryptography Confidentiality Integrity Authentication Entity authentication Data origin authentication Non-repudiation Accountability Cryptographic primitives Symmetric cryptography Stream ciphers Block ciphers Block encryption mode Keystream generation modes Message authentication modes Cryptographic hashes Electronic code book Cipher block chaining Counter mode Data Encryption Standard (DES) Advanced Encryption Standard (AES) AES steps An OpenSSL example of how to encrypt and decrypt using AES Asymmetric cryptography Integer factorization Discrete logarithm Elliptic curves Public and private keys RSA Encryption and decryption using RSA Elliptic curve cryptography (ECC) Mathematics behind ECC Point addition Point doubling Discrete logarithm problem How to generate public and private key pairs Private key Generate public key How to encrypt and decrypt using RSA with OpenSSL Encryption Decrypt ECC using OpenSSL ECC private and public key pair Private key Private key generation Cryptographic primitives Hash functions Compression of arbitrary messages into fixed length digest Easy to compute Pre-image resistance Second pre-image resistance Collision resistance Message Digest (MD) Secure Hash Algorithms (SHAs) Design of Secure Hash Algorithms (SHA) SHA-256 Design of SHA3 (Keccak) OpenSSL example of hash functions Message Authentication codes (MACs) MACs using block ciphers HMACs (hash-based MACs) Merkle trees Patricia trees Distributed hash tables (DHTs) Digital signatures Sign then encrypt Encrypt then sign Elliptic Curve Digital signature algorithm (ECDSA) How to generate a digital signature ECDSA using OpenSSL Homomorphic encryption Signcryption Zero knowledge proofs Blind signatures Encoding schemes Financial markets and trading Trading Exchanges Orders and order properties Order management and routing systems Components of a trade General attributes Economic Sales Counterparty Trade life cycle Order anticipators Market manipulation Summary Chapter 4: Bitcoin Bitcoin Bitcoin definition Keys and addresses Public keys in bitcoin Private keys in bitcoin Bitcoin currency units Base58Check encoding Vanity addresses Transactions The transaction life cycle The transaction structure The script language Commonly used Opcodes Types of transaction Coinbase transactions What is UTXO? Transaction fee Contracts Transaction malleability Transaction pools Transaction verification Blockchain The structure of a block The structure of a block header The genesis block Mining Task of miners Synching up with the network Proof of Work The mining algorithm The hashing rate Mining systems CPU GPU FPGA ASICs Mining pools The bitcoin network Wallets Wallet types Non-deterministic wallets Deterministic wallets Hierarchical deterministic wallets Brain wallets Paper wallets Hardware wallets Online wallets Mobile wallets Bitcoin payments Bitcoin investment and buying and selling bitcoins Bitcoin installation Setting up a bitcoin node Setting up the source code Setting up bitcoin.conf Starting up a node in testnet Starting up a node in regtest Starting up a node in live mainnet Experimenting with bitcoin-cli Bitcoin programming and the command-line interface Bitcoin improvement proposals (BIPs) Summary Chapter 5: Alternative Coins Theoretical foundations Alternatives to Proof of Work Proof of Storage Proof of Stake Proof of coinage Proof of deposit Proof of burn Proof of activity Non-outsourceable puzzles Difficulty adjustment and retargeting algorithms Kimoto Gravity Well Dark Gravity Wave DigiShield MIDAS Bitcoin limitations Privacy and anonymity Mixing protocols Third-party mixing protocols Inherent anonymity Extended protocols on top of bitcoin Colored coins Counterparty Development of altcoins Consensus algorithms Hashing algorithms Difficulty adjustment algorithms Inter-block time Block rewards Reward halving rate Block size and transaction size Interest rate Coin age Total supply of coins Namecoin Trading Namecoins Obtaining Namecoins Generating Namecoin records Litecoin Primecoin Trading Primecoin Mining guide Zcash Trading Zcash Mining guide Address generation GPU mining Downloading and compiling nheqminer Summary Chapter 6: Smart Contracts History Definition Ricardian contracts Smart contract templates Oracles Smart Oracles Deploying smart contracts on a blockchain The DAO Summary Chapter 7: Ethereum 101 Introduction Ethereum clients and releases The Ethereum stack Ethereum blockchain Currency (ETH and ETC) Forks Gas The consensus mechanism The world state The account state Nonce Balance Storageroot Codehash Transactions Nonce gasPrice gasLimit To Value Signature Init Data Contract creation transaction Message call transaction Elements of the Ethereum blockchain Ethereum virtual machine (EVM) Execution environment Machine state The iterator function Runtime byte code Opcodes and their meaning Arithmetic operations Logical operations Cryptographic operations Environmental information Block Information Stack, memory, storage and flow operations Push operations Duplication operations Exchange operations Logging operations System operations Precompiled contracts The elliptic curve public key recovery function The SHA-256 bit hash function The RIPEMD-160 bit hash function The identity function Accounts Types of accounts Block Block header Parent hash Ommers hash Beneficiary State root Transactions root Receipts root Logs bloom Difficulty Number Gas limit Gas used Timestamp Extra data Mixhash Nonce The genesis block Transaction receipts The post-transaction state Gas used Set of logs The bloom filter Transaction validation and execution The transaction sub state Suicide set Log series Refund balance The block validation mechanism Block finalization Ommers validation Transaction validation Reward application State and nonce validation Block difficulty Ether Gas Fee schedule Messages Calls Mining Ethash CPU mining GPU mining CPU benchmarking GPU benchmarking Mining rigs Motherboard SSD hard drive GPU Mining pools Clients and wallets Geth Eth Pyethapp Parity Light clients Installation Eth installation Mist browser Geth The geth console Funding the account with bitcoin Parity installation Creating accounts using the parity command line Trading and investment The yellow paper Useful symbols The Ethereum network MainNet TestNet Private net(s) Supporting protocols Whisper Swarm Applications developed on Ethereum Scalability and security issues Summary Chapter 8: Ethereum Development Setting up a development environment Test Net (Ropsten) Setting up a Private Net Network ID The genesis file Data directory Flags and their meaning Static nodes Starting up the private network Running Mist on Private Net Deploying contracts using Mist Development tools and clients Languages Compilers Solc Integrated Development Environments (IDEs) Browser solidity Remix Installation Tools and libraries Node.js version 7 Local Ethereum block explorer EthereumJS Contract development and deployment Introducing solidity Types Value types Boolean Integers Address Array value types (fixed size and dynamically sized byte arrays) Literals Integer literals String literals Hexadecimal literals Enums Function types Internal functions External functions Reference types Arrays Structs Data location Mappings Global variables Control structures Events Inheritance Libraries Functions Layout of a solidity source code file Introducing Web3 POST requests The HTML and JavaScript frontend Installing web3.js Example Development frameworks Truffle Installation Testing using truffle Build Another example Example project: Proof of Idea Permissioned distributed ledgers Summary Chapter 9: Hyperledger Projects Fabric Sawtooth lake Iroha Blockchain explorer Fabric chaintool Fabric SDK Py Corda Hyperledger as a protocol Reference architecture Requirements Modular approach Privacy and confidentiality Identity Auditability Interoperability Portability Fabric Hyperledger Fabric Fabric architecture Membership services Blockchain services Consensus manager Distributed ledger Peer to Peer protocol Ledger storage Chaincode services Events APIs and CLIs Components of the Fabric Peers or nodes Applications on blockchain Chaincode implementation Application model Sawtooth lake PoET Transaction families Consensus in Sawtooth Development environment Corda Architecture State objects Transactions Consensus Flows Components Nodes Permissioning service Network map service Notary service Oracle service Transactions Vaults CorDapp Development environment Summary Chapter 10: Alternative Blockchains Blockchains Kadena Ripple Transactions Payments related Order related Account and security related Application layer Transport layer Interledger layer Ledger layer Stellar Rootstock Drivechain Quorum Transaction manager Crypto Enclave QuorumChain Network manager Tezos Storj Maidsafe BigChainDB Multichain Tendermint Tendermint Core Tendermint Socket Protocol (TMSP) Platforms BlockApps Installation Application development and deployment using BlockApps Eris Summary Chapter 11: Blockchain-Outside of Currencies Internet of Things Physical object layer Device layer Network layer Management layer Application layer IoT blockchain experiment First node setup Raspberry Pi node setup Circuit Government Border control Voting Citizen identification (ID cards) Miscellaneous Health Finance Insurance Post trade settlement Financial crime prevention Media Summary Chapter 12: Scalability and Other Challenges Scalability Block size increase Block interval reduction Invertible Bloom lookup tables Sharding State channels Private blockchain Proof of Stake Sidechains Subchains Tree chains Privacy Indistinguishability obfuscation Homomorphic encryption Zero knowledge proofs State channels Secure multiparty computation Usage of hardware to provide confidentiality Coinjoin Confidential transactions MimbleWimble Security Smart contract security Why3 formal verification Oyente tool Summary Chapter 13: Current Landscape and 's Next Emerging trends Application-specific blockchains (ASBCs) Enterprise-grade blockchains Private blockchains Start-ups Strong research interest Standardization Enhancements Real-world implementations Consortia Answers to challenges Convergence Education of blockchain technology Employment Crypto-economics Research in cryptography New programming languages Hardware research and development Research in formal methods and security Alternatives to blockchains Interoperability efforts Blockchain as a service Efforts to reduce electricity consumption Improvement proposals BIPs BIP 152 BIP 151 BIP 150 BIP 147 BIP 146 EIPs EIP 170 EIP 150 EIP 161 EIP 160 EIP 155 Other challenges Dark side Blockchain research Smart contracts Centralization issues Limitations in cryptographic functions Consensus Algorithms Scalability Code Obfuscation List of notable projects Zcash on Ethereum CollCo Cello Qtum Bitcoin-NG Solidus Hawk Town-Crier SETLCoin TEEChan Falcon Bletchley Casper Metropolis Miscellaneous Tools Solidity extension for Microsoft Visual studio MetaMask Stratis Embark DAPPLE Meteor uPort INFURA Convergence with other industries Future Summary