O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
The Algorand Blockchain -
Decentralized and for Developers
The documents and statements presented on (or directly accessible from)
this presentation may contain forward-looking stat...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Get the goods
• Code and SDKs...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Tamperproof Transparency Trus...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Ransomware Attacks!!!
• City ...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Today’s Centralized Economies...
Agenda
§ What is Algorand?
§ Algorand’s Consensus Model
§ Algorand Foundation
§ TestNet
§ Process Architecture
§ APIs, SDK...
What is Algorand?
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Borderless…
Commerce
Transact...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand
§ Pure Proof of Stak...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
We have stats!
• We have been...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Permissioned vs Permissionles...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Open vs Closed
15
Public & Cl...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
The Blockchain Trilemma
“At m...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
So that is the “What”, now fo...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Generating New Blocks
• Vario...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
How do you select a new block...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
How do you select a new block...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
How do you select a new block...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand’s Logic and Pure Pro...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Defeating the Trilemma
§ Secu...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
’s Technical Advancements
• A...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Verifiable Random Function (V...
Algorand Consensus
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Consensus Overview
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Consensus Block Prop...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Consensus Soft Vote
...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Soft Vote Continued
...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Consensus Certify Vo...
Algorand Foundation
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Foundation Dutch Auc...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Foundation Rewards
§...
Algorand TestNet
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
TestNet Rocks!
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
TestNet Node Map
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
TestNet AlgoExplorer
39
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Install your node!
Install ne...
Process Architecture
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Wallets and Accounts - Logica...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Multi-Sig accounts
Multi-Sig
...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Participation Keys- Logical O...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Processes
kmd
algod
...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Node Scenarios
kmd
algod
Node...
APIs and Command Line
Tools
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand APIs and Command Lin...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Goal
goal
clerk
account
addpa...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Private Network
Private Netwo...
SDKs and Swagger
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Swagger.Json
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
How do you download the swagg...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Generating Clients
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
SDK Functionality
55
kmd Wrap...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
SDK Documentation at Develope...
Demos
JS, Go, and Java SDK’s
Algorand TestNet Dispenser
REST API
goal
Algoexplorer.io
Private Network
Resources
57
Coming Features
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Near Term Projects
§ Vault - ...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Become An Algorand Ambassador...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Summary
• Algorand Has Launch...
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Sign up Today!
62
Questions?
The Algorand Blockchain  Decentralized and for Developers
Próximos SlideShares
Carregando em…5
×

The Algorand Blockchain Decentralized and for Developers

84 visualizações

Publicada em

Algorand is a new blockchain built on a Permissionless, pure proof of stake, decentralized agreement protocol, where anyone can participate and requires minimal computational power. This protocol finalizes transactions very quickly and offers true decentralization.

For developers the Algorand blockchain provides JavaScript, Java, and Go SDKs. Additionally REST endpoints are provided for interacting with the nodes and handling wallet functions. These REST endpoints are based on the OpenAPI Specification and can be used to build clients in any language.

This session covers the basics of how the Algorand protocol works, cover the architecture overview, managing the node with the command line tools, and show developers how to integrate using the SDKs to build Layer 2 applications.

Publicada em: Software
  • Seja o primeiro a comentar

The Algorand Blockchain Decentralized and for Developers

  1. 1. The Algorand Blockchain - Decentralized and for Developers
  2. 2. The documents and statements presented on (or directly accessible from) this presentation may contain forward-looking statements. These statements relate to future events or Algorand Network's future performance, financial or otherwise. Any statements that are not statements of historical fact (including without limitation statements to the effect that the Company or its management “believes”, “expects”, “anticipates”, “plans” (and similar expressions) should be considered forward looking statements. There are a number of important factors that could cause Algorand Network’s actual results and outcomes to differ materially from those indicated by the forward looking statements. The Algorand or any other party contained within disclaim any obligation to update any forward looking statement. Safe Harbor
  3. 3. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Get the goods • Code and SDKs: https://github.com/algorand • PowerPoint: TBD 5
  4. 4. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Tamperproof Transparency Trust The Blockchain Promise Unlimited Applications
  5. 5. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Ransomware Attacks!!! • City of Baltimore and over 25 other cities! • $100,000 • What is worse then Ransomware Attack? • Ransomware Paid! by Palm Beach, FL • $60,000 7
  6. 6. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Today’s Centralized Economies Are Broken 8 *Sources: McKinsey, Fundstrat, Bloomberg, PwC
  7. 7. Agenda § What is Algorand? § Algorand’s Consensus Model § Algorand Foundation § TestNet § Process Architecture § APIs, SDKs and Command Line tools § Planned Developer Features
  8. 8. What is Algorand?
  9. 9. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Borderless… Commerce Transactions Exchange Opportunity Applications Development Finance Currency EconomyMoney Governance Investment Participation Trade Markets Customers Technology Innovation Contracts
  10. 10. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand § Pure Proof of Stake (PPOS) Blockchain § Permissionless § Fast Transaction Throughput and Finality § No Forking – only one Block can get Quorum § Upgrades on Chain § Scale to billions of users Consensus Keynote by Silvio Micali, Founder of Algorand “Building the Technical Innovation Required for a New Borderless Economy“ (#40 in the Construct section) https://www.coindesk.com/events/consensus-2019/videos Algorand YouTube Channel https://www.youtube.com/algorand
  11. 11. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level We have stats! • We have been running since June 19 and have processed blocks under 5 seconds. 13
  12. 12. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Permissioned vs Permissionless Public vs Private Public Blockchain Permissionless Private Blockchain Permissioned Anyone can join the Blockchain network, this means they can read, write, or participate with a public blockchain. Public blockchains are decentralized and no one has control over the network and they are secure in that the data cannot be changed once validated on the blockchain. Permissioned networks place restrictions on who is allowed to participate in the network and in what transactions. 14
  13. 13. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Open vs Closed 15 Public & Closed Public & Open • Voting • Voting records • Whistleblower • Currencies • Betting • Video Games Private & Closed Private & Open • Construction • National Defense • Law Enforcement • Military • Tax Returns • Supply Chain • Government financial records • Corporate earning statements
  14. 14. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level The Blockchain Trilemma “At most two of…” Security Scalability Decentralization
  15. 15. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level So that is the “What”, now for the “How”? • All blocks have one way hashes tying the blocks together • All blockchains share this approach, including Algorand’s. 17
  16. 16. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Generating New Blocks • Various approaches for choosing the next block: • Proof-of-work • Delegated proof of stake • Bonded proof of stake • All these approaches have a fatal flaw • “The whole economy is at the mercy of a small part of the economy.” 18
  17. 17. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level How do you select a new block to be appended to the chain? proof-of-work • Miners own only a small fraction of the money in a proof-of- work blockchain • There are only 3 mining pools • The chain is not secure. • An adversary may thus attack either the protocol  or communication network • Forks can cause scalability issues • Not Green 19
  18. 18. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level How do you select a new block to be appended to the chain? (continued) Delegated proof-of-stake • The community empowers a few special delegates, to choose the next block • It is centralized from the get-go. • Since the delegates are known, a determined adversary could bring down all the delegates by a fast DoS attack. 20
  19. 19. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level How do you select a new block to be appended to the chain? (Continued) Bonded Proof-of-Stake • Bonded PoS allows 20 users, or as many as are willing, to put some money on the table — a bond. • These are the users who select the next block. • If they misbehave, their money is confiscated. • makes it easy for big thieves to put a disproportionate amount of money on the table for the sole purpose of controlling the blockchain. 21
  20. 20. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand’s Logic and Pure Proof-of-Stake • No money is ever hostage. • All money is always where it should be: in your wallet, at your fingertips ready to be spent, or in the various financial instruments that the Algorand blockchain offers you. • We want block generation to be simultaneously scalable, secure, and decentralized. Phase 1 • A single token is randomly selected, and its owner is the user who proposes the next block. Phase 2 • A number tokens are selected among all tokens currently in the system. The owners of these tokens are selected to be part of a phase-2 ‘committee,’ which approves the block proposed by the first user. 22
  21. 21. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Defeating the Trilemma § Security – § Committee members are not known until after the fact § Everything is cryptographically signed § Scalability § Minimal messages § Lottery execution extremely fast § Decentralization § Low barrier to entry § Anyone can participate in consensus 23 Alogorand’s CORE Technology (in a nutshell) https://medium.com/algorand/algorands-core-technology-in-a-nutshell-e2b824e03c77
  22. 22. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level ’s Technical Advancements • A new and super fast Byzantine agreement – Allows system to agree on a new block while that block propagates • VRFs (Verifiable Random Function) is open sourced and Cryptographic Self-Selection to Blockchains. Allow users to secretly, fairly and provable select themselves • Player Replaceability – Withstands the corruption of all users in the middle of a protocol. 24
  23. 23. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Verifiable Random Function (VRF) A Verifiable Random Function (VRF) is a cryptographic primitive that maps inputs to verifiable pseudorandom outputs. VRFs were Introduced by Micali (founder of Algorand), Rabin, and Vadhan in ’99 • Open Sourced • Used in block proposal and committee selection • Cryptographic Lottery • Self Selected and Verifiable
  24. 24. Algorand Consensus
  25. 25. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Consensus Overview
  26. 26. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Consensus Block Proposal ❖ Nodes run lottery for accounts they manage ❖ At most one winner’s proposal for the node is propagated to the Algorand network ❖ Other nodes do the same ❖ Very few winners
  27. 27. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Consensus Soft Vote ❖ Cull to one proposal ❖ Each winner is examined and one is selected and propagated ❖ Results in one proposal (After step time)
  28. 28. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Soft Vote Continued ❖ Committee selected to vote on the proposal using VRF lottery ❖ Weighted votes on winning tokens ❖ Prevents multiple account advantage ❖ Committee votes on its best proposal ❖ Quorum moves to Certify step
  29. 29. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Consensus Certify Vote § Intent is to certify block § New committee is chosen to certify the block using VRF § Committee votes on the Proposal that came out of Soft Vote § Quorum reached, block is certified and written to the Blockchain
  30. 30. Algorand Foundation
  31. 31. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Foundation Dutch Auctions • https://algorand.foundation/ • Foundation has launched Auctions • Tokens bids stored on chain • Auction winners are recorded on chain • Auction parameters posted to chain prior to Auction
  32. 32. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Foundation Rewards § See Foundation site § https://algorand.foundation/token-dynamics § All users online and offline are eligible to earn rewards
  33. 33. Algorand TestNet
  34. 34. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level TestNet Rocks!
  35. 35. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level TestNet Node Map
  36. 36. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level TestNet AlgoExplorer 39
  37. 37. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Install your node! Install new node • Log into https://developer.algorand.org/ • https://developer.algorand.org/docs/introduction-installing-node 40
  38. 38. Process Architecture
  39. 39. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Wallets and Accounts - Logical Overview wallet Account Private Key Address/Public Key Derived Mnemonic Spending Account Account Im port/Export Stand Alone SDK/Algokey Generated Mobile Apps/AirGapped or non KMD Managed Wallets WalletID Wallet Name Wallet Mnemonic Wallet Driver Managed By KMD process on Node
  40. 40. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Multi-Sig accounts Multi-Sig Account Address2 (PK2) Address1 (PK1) Address3 (PK3) Threshold Level Address(Hash of PKs)
  41. 41. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Participation Keys- Logical Overview Account VRF Key using in VRF function Voting Keys are generated for round range Participation Keys are used for participating in consensus and associated to spending keys Spending keys used for creating and issuing signed transactions Algorand Participation Node Participation Key Set VRF Key Voting Keys Generate Parkeys Goal/Algokey Take Online Transaction Can be Signed on or offline Associates Keys to Account
  42. 42. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Processes kmd algod Node 1 2 1. KMD handles all interaction with spending keys, including signing transactions. Signing can be stand alone as well. 2. Algod is responsible for processing the protocol and interacting with SQLite to record the ledger. Implements REST API for read only APIs.
  43. 43. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Node Scenarios kmd algod Node kmd algod Node kmd algod Node algod Node algod Node kmd algod Node kmd Node Offline algod Relay App Algorand Wallet Air Gapped Application JS SDK, GO SDK, Java SDK
  44. 44. APIs and Command Line Tools
  45. 45. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand APIs and Command Line Tools • algod process is for protocol and read only Rest APIs, submit signed txs • kmd process is for wallet integrations and transactions • Goal command line tool for interacting with Node • algokey stand-alone command line utility used to generate, import, export keys and to sign transactions. Can be used offline • SDKs stand alone key functions Goal kmdSwagger Supported Rest/JSON HTTP PORT Swagger Supported Rest/JSON HTTP PORT algod Algorand Node JS SDK, GO SDK, Java SDK Algokey Custom Code
  46. 46. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Goal goal clerk account addpartkey balance changeonlinestatus importrootkey list new multisig rename send multisig rawsend ledger supply logging disable enable send network create delete restart start status stop node clone generatetoken lastround restart start status stop version Wallet KMD list new start stop delete listpartkeys rewards pendingtxns export import partkeyinfo renewallpartkeys renewpartkey
  47. 47. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Private Network Private Networks are primarily for developers to learn from locally.
  48. 48. SDKs and Swagger
  49. 49. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Swagger.Json
  50. 50. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level How do you download the swagger files? There are two swagger definition json files, one for Algod and one for KMD For Alogd use this: http://localhost:8080/swagger.json curl http://$(cat ~/node/data/algod.net)/swagger.json > swagger.json For kmd use this: http://localhost:7833/swagger.json curl http://$(cat ~/node/data/kmd-v0.5/kmd.net)/swagger.json > swaggerkmd.json 53
  51. 51. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Generating Clients
  52. 52. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level SDK Functionality 55 kmd Wrapper algod Wrapper Stand-alone functions Create accounts Account Mnemonic Create Transaction kmd algod Sign Transaction Air Gapped Applications Networked Applications
  53. 53. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level SDK Documentation at Developer.Algorand.org 56
  54. 54. Demos JS, Go, and Java SDK’s Algorand TestNet Dispenser REST API goal Algoexplorer.io Private Network Resources 57
  55. 55. Coming Features
  56. 56. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Near Term Projects § Vault - Solve blockchain storage issues § Pixel – Address size and bandwidth of multi-signature requirements § Self Validating Transactions – Address balance time constraint § Atomic Swaps – Crosschain and multi-asset swaps in single transactions § Post-and-Sale Trades – Get buyers and sellers together quickly Further out Smart² contracts, quantum-resiliency Source: https://algorand.foundation/roadmap
  57. 57. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Become An Algorand Ambassador • Work directly with the Algorand team and learn from the best in the field • Host your own hackathon or developer meetup to help others in your community build on top of Algorand • Connect with other developers from all over the world who are also building on Algorand • Get the latest news and updates about our platform before anyone else hears about it 60 è Visit community.algorand.org
  58. 58. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Summary • Algorand Has Launched! • https://twitter.com/Algorand/status/1141368150467993601 61 § What is Algorand? § Algorand’s Consensus Model § Algorand Foundation § TestNet § Process Architecture § APIs, SDKs and Command Line tools § Planned Developer Features
  59. 59. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Sign up Today! 62
  60. 60. Questions?

×