The Bitcoin Rocketship @ BTC Miami 2015
Post on 16-Jul-2015
2221 Views
Preview:
Transcript
The Bitcoin RocketshipJeff Garzik
CEO @ Dunvegan Space Systems
Bitcoin Core Developer @ BitPay
Bitcoin Core
“Headers first” network sync
Operation:
1. Download all 300,000+ block headers x 80 bytes
2. Download blocks proven to be in longest chain
Faster… than a speeding torrent
Parallel
More secure
Smart transaction fees
bitcoind wallet
Estimate TX fee required to confirm “quickly”
Statistically based
Observes mempool + blocks to ascertain which TXs
confirmed within 1 block, 2 blocks, … etc.
HTTP REST API
Unauthenticated access to public blockchain data
GET /rest/tx/$TXID
GET /rest/block/$BLOCKID
Same address/port as RPC
Other queries planned, such as UTXO
Other changes
Almost any P2SH redemption script relayed. Permits apps to make use
of scripts such as “m-of-n OR y” or hash-locked oracle addresses.
Watch-only wallets, sans private keys.
Improved signing security (RFC 6979) via
libsecp256k1 - Believed to be better reviewed & tested than
OpenSSL itself
Consensus library: Make consensus-critical code available to other
applications and language bindings.
CLI utility “bitcoin-tx” enables easy creation, manipulation of
transactions
Impulse instant payments
Impulse resources
http://impulse.is
http://impulse.is/impulse.pdf
Overview
• Holy grail:
Instant, secure
payments
• Payment channel
technology base
• Open protocol; not
limited to BitPay.
Payment channel review
Trustless
Multi-sig 2-of-2 (Customer + BitPay)
1. Exchange public keys, opening BTC value.
2. Customer creates on-chain payment, provides TXID only to BitPay.
3. Customer creates time-locked refund TX, BitPay signs.
4. Customer publishes on-chain payment. Channel open.
5. Customer makes one or more off-chain 2of2 payments.
6. Final payment signed by both parties, published on block chain.
Impulse payment example
Model: Payment channels at unspent transaction outputs (UTXOs)
Example: Customer pays Lyft 1.0 BTC for a ride.
Wallet keeps open multiple payment channels at all times
Wallet obtains payment information from somewhere, determines processor
(BitPay) and merchant (Lyft).
Wallet gathers open channels totaling 1 BTC
Wallet adds Lyft TX output to each payment channel payment, signs, obtains
BitPay signature.
Wallet closes channels just used; opens new “change” channel.
Impulse analysis
What just happened?
Customer made instant, secure payment to Lyft
Customer is secure against BitPay stealing funds
Lyft & BitPay are secure against Customer clawback
BitPay does not hold funds; funds go straight to Lyft.
Caveat: Increased TX activity on blockchain (+fees)
Impulse status
Protocol specification published
Basic payment channel work in Bitcore, the open
source JavaScript bitcoin library @ http://bitcore.io
Impulse protocol code under development
Publishing now to engage others in space working on
payment channels, e.g. StrawPay’s hub-and-spoke
payment channel technology can complement this.
BitSat: bitcoins in space
BitSat design parameters
5-year lifespan
3U cubesat
33 kb/s downlink
100 kb/s uplink
Peak power 18.5W
15 minutes comms per pass
4-14 ground station passes/day
Status
Design & operate BitSat
Design completed State
Dept. review
Commerce Dept
reviewing
Current raising investor
capital
Fini
Open email policy — anyone can email a question
jgarzik@bitpay.com + https://BitPay.com
jgarzik@dunveganspace.com +
http://DunveganSpace.com
Thanks for listening!
top related