An Introduction for Legislatures

Austin Roberts

What problems can a blockchain solve?

Byzantine Generals Problem

Coordinated Attack leads to Victory

Uncoordinated Attack leads to Defeat

Messages can be delayed or lost

Messengers are not always trustworthy

How do we know we're all on the same page?

Same challenges apply to networks

Multiple systems need to agree on something

Each participant has its own interests

Messages can be delayed or lost

Network layer is not always trustworthy

How do you know if everyone is on the same page?

## Partial Solutions * Cryptographic signatures * Networks are fast (but still have latencies) * TCP ACKs / Sliding Window
## Proof-of-work ### A heuristic solution to distributed consensus


  • First modern blockchain
  • Goal: Agree on account balances
  • Nobody is in charge
## Solution * Agree to a set of rules * Download historical data * Validate historical data against agreed rules * Contribute new data that follows the rules * Validate that other users follow the rules Note: * Set of rules -> Blockchain client


Comprised of chunks of data called "blocks"

Blocks are added to the chain periodically

Valid blocks have valid transactions

Block is valid if its hash starts with enough 0 bits (difficulty)

Nonce can be changed to manipulate hash

Network recognizes the valid block with the most ancestors

Miner address gets block reward

## Block Mining * "Miners" hash the block * Hash fails difficulty requirement → change nonce & repeat * Hash meets difficulty requirement → broadcast to peers * Peers validate hash, then validate transactions, then broadcast to their peers * Network recognizes all transactions in the new block * Periodic difficulty adjustment
## Blockchain Benefit #2 ### Unassailable Audit Logs

Audit History

## Periodically Publish Block Hash * Allows you to later prove state at that block * Reveals no meaningful data about your content * Destinations: * Twitter * Other blockchains (Bitcoin, Ethereum)


  • Builds on blockchain concepts
  • Goal: Consensus for arbitrary applications
## Ethereum vs Bitcoin: Similarities * Proof-of-Work (different algorithms) * Peer-to-peer networks (no central authority) * Block and transaction level validation
## Ethereum vs Bitcoin: Differences * Ledger Transactions vs Smart Contracts * Block Times * Transaction Complexity - Gas * Arbitrary Data Storage

Ethereum Applications

## Proof-of-Authority (PoA) * Alternative to proof-of-work * No computationally intensive calculations * Faster * Less costly * Lower environmental impacts * Potentially multiple authorities * Same application layer as proof-of-work Note: * (200 transactions per second vs 15)
## PoA - Drawbacks * Requires trust * Censorship
## PoA in Legislatures * Audit Logs * Multiple authorities * Each caucus could run an authority node * Validated workflow rules

Potential Legislative Applications

Chamber process

  • Bill Introductions
  • Committee Assignments
  • Readings
  • Testimony
  • Amendment
  • Passage
  • Veto / Signing
### Potential Legislative Applications ## Bill Drafting * Process Tracking * Requests & Assignment * Introductions * Amendments * Conflict Resolution

Potential Legislative Applications

Electronic Signatures

  • Keys
    • Hardware Keys
    • On-Device Keys
  • Signatures
    • Documents
    • Cast Votes
    • Sign Bills into Law
  • Tooling makes key management transparent
### Potential Legislative Applications ## Voting * Committee & Floor Voting * Votes signed on Legislators' devices * Contracts tally votes, evaluate outcomes * Automatically progress workflows * Actions visible across network Note: * Different logic for simple majority vs supermajority * Wokflows: * Pass -> Governor's Desk * Fail -> Dead Bills * Tie -> Lt. Governor's Desk
### Other Government Applications ## Regulators * Regulated entities report through blockchain * Supply Chain Tracking * Separation Duties * Ongoing Self-auditing * Licensure * Publication of Official Opinions * Public Notice Requirements * Reporting Requirements * Freedom of Information
### Conclusions * Benefits of Blockchain * Distributed Consensus * Unassailable audit logs * Increasingly user-friendly key management
# Questions?