Bitcoin Edge Dev++

TECHNICAL BOOTCAMP • November 2nd-3rd 2017 • Stanford, USA
SCALING THE DEVELOPMENT CAPACITY OF THE INDUSTRY

Sponsors

ACADEMIC SUPPORTING ORGANIZATIONS

SUPPORTING ORGANIZATIONS

LOCAL SUPPORTING ORGANIZATIONS

Sponsorship

If you are interested in sponsoring the Bitcoin Edge Events, please contact: [email protected]
 
Sponsorship is currently available via the sponsorship of the Scaling Bitcoin events.

Important Dates:

  • 2017-10-20 23:59 UTC - Last day for sponsorship application
  • 2017-10-20 23:59 UTC - Submission of logos for print (must be submitted in AI or SVG vector file formats)

Trainers

Anditto Heristyo
DG Lab
Ethan Heilman
Researcher, Boston University
James Hilliard
MyRig
Jimmy Song
Programming Blockchain / Paxos
John Newbery
Chaincode Labs
Karl-Johan Alm
DG Lab
Nicolas Dorier
Metaco SA CTO / DG Lab
Thaddeus Dryja
MIT DCI Research Scientist
Lightning Network

Schedule

Notes:
Print

November 2nd
08:15
(15 min )
Registration

Bitcoin Core (Layer I)

08:30
(15 min )
Introduction
PRESENTER:
Anton Yemelyanov
Introduction to Bitcoin C++ project
08:45
(90 min )
Foundational Math / ECDSA
TRAINER:
Jimmy Song
Finite Fields / Elliptic Curves / ECDSA
10:15
(90 min )
Transactions
TRAINER:
Jimmy Song
Transaction Structure, P2PKH, P2SH, Addresses, Scripts
11:45
(60 min )
Lunch
12:45
(60 min )
Blocks
TRAINER:
John Newbery
Proof-of-work, Block Structure and Block Headers
13:45
(60 min )
Blockchain
TRAINER:
John Newbery
Difficulty, Issuance, Merkle Trees and Proofs, Chain Re-orgs
14:45
(60 min )
Network
TRAINER:
John Newbery
p2p Protocol, Mempool Overview
15:45
Closing

November 3rd

Layer 2

09:00
(45 min )
Wallets
TRAINER:
John Newbery, Karl-Johan Alm (Kalle)
Coin selection, HD Key Generation (BIP32)
09:45
(45 min )
Mining Overview
TRAINER:
James Hilliard
Block templates, Mining pool operation, Diff-share accounting, Payout Schemes
10:30
(30 min )
Hostile Actors and Attack Vectors
TRAINER:
Karl-Johan Alm (Kalle)
Attack / Threat Model
11:00
(60 min )
RPC
TRAINER:
Anditto Heristyo
RPC Commands, Command-line interface, Customizing Bitcoin RPC interface
12:00
(60 min )
Lunch
13:00
(150 min )
Lightning Network & Discreet Log Contracts
TRAINER:
Thaddeus Dryja (Tadge)
Lightning Network In-Depth, Discreet Log Contracts
15:30
(60 min )
Crosschain Swaps
TRAINER:
Ethan Heilman & Nicolas Dorier
Crosschain Atomic Swaps & related functionality
16:30
(10 min )
Announcement
PRESENTER:
Shin'ichiro Matsuo
Announcement of Open Technology Competition by BSafe.network
16:40
(20 min )
Discussion
17:00
Closing

Requirements

The Dev++ course is meant to familiarize you with core Bitcoin algorithms, how by being combined together they form the Bitcoin peer to peer network, as well as to review and experiment with rapidly maturing layer-2 technologies.

Trainee Requirements:

  • Background in computer engineering
  • Knowledge of data structures and networking
  • Experience with a major software development language such as C++, Java, Python, Go, JavaScript (NodeJs), Scala etc.

Requirements to participate in the hands-on part of the course:

  • Familiarity with C++
  • Familiarity with Python
  • Familiarity with GCC toolchain
  • Basic knowledge of Git

You should have previous experience working with C++ projects and possess knowledge of data structures and networking. If you develop software using a different ecosystem such as Java, NodeJs, Python, Go etc., you can participate in the course but will have difficulty performing some of the tasks.

Beneficial knowledge:

  • Experience with Unix
  • Previous experience with cryptography

What you must bring

  • Participant must bring his own laptop (Windows, OSX, Linux)

Additional information will be published closer to the date of the event.

Material

Please note that all Dev++ sessions will be recorded and published on this site under CC-BY license.

Extra Curriculum

Programming Blockchain

Please be advised that for two days prioir to Dev++, on October 31st and November 1st, Jimmy Song will be giving the Programming Blockchain course. This is an extremely in-depth technical course that will help you fully understand the math behind Elliptic Curve Cryptography (ECDSA), internals of Bitcoin transactions, Simplified Payment Verification (SPV) as well as other elements. Key elements of this course will be covered by Jimmy Song during the Dev++ Transactions session.

If you are interested in understanding the underlying cryptography, you can apply to participate in Programming Blockchain. Knowledge of Python is beneficial for this course. The cost of this course is 0.5 BTC and seating capacity is limited (20 people).

Following topics will be covered during this course:

  • Finite Fields
  • Elliptic Curves
  • Elliptic Curve Cryptography
  • Signing/Verifying Messages
  • Parsing Transactions
  • Signing Transactions
  • Creating Transactions
  • Script parsing and processing
  • Address construction/Private Key WIF Format Construction
  • Parsing Blocks
  • Validating Proof-of-Work
  • Difficulty Calculations
  • Merkle Tree Construction
  • Merkle Proofs
  • Network Message Parsing
  • Simple Bitcoin Network Node

Location

keyboard_arrow_left
keyboard_arrow_right

Stanford University

Arrillaga Alumni Center

Arrillaga Alumni Center

Arrillaga Alumni Center

Arrillaga Alumni Center

Arrillaga Alumni Center

Stanford University

DAY 1
Paul Brest Hall

555 Salvatierra Walk, Stanford, CA, 94305, USA
 

DIRECTIONS
DAY 2
Frances C. Arrillaga Alumni Center

326 Galvez Street, Stanford, CA 94305-6105, USA

DIRECTIONS
local_hotel
Hotels
• Stanford Lodging Guide
Please visit Stanford Lodging Guide for the list of hotels and prices.
directions
Directions
  • From Highway 101 North & South

    Take the Embarcadero Road exit west - toward Stanford. At El Camino Real, Embarcadero turns into Galvez Street as it enters the Stanford campus. Stay in the left lane and continue toward the center of campus. The Alumni Center is on the right side of Galvez Street, just after you cross over Campus Drive
  • From Highway 280 North & South

    Exit Sand Hill Road east toward Stanford. Continue east, turning right at the traffic light on Santa Cruz Avenue. Make an immediate left onto Junipero Serra Boulevard. Turn left at the second traffic light and onto Campus Drive East. Continue around Campus Drive East and turn left when you reach Serra Street, at the gas station. Follow Serra Street until it ends at Galvez Street.
  • From El Camino Real

    Exit El Camino Real at University Avenue. Turn toward the hills (away from the center of Palo Alto). As you enter Stanford, University Avenue becomes Palm Drive. Go through one traffic light, and turn left onto Campus Drive at the first stop sign.

Registration

- WHO SHOULD ATTEND -
  • Students preparing for internships or first year jobs
  • Developers starting with Bitcoin development
  • Developers looking to integrate with Bitcoin
Purchase tickets using Credit Card or PayPal via EventBrite
Purchase tickets using Bitcoin

The cost of the ticket is $1000 USD.
 
Student subsidy applications are no longer available due to filled capacity.

About

Planning Committee

  • Anton Yemelyanov, Base58 Association NPO. (Planning Committee Chair)
  • Nelly Milanova, Base58 Association NPO.
  • Jeremy Rubin, Bitcoin Core contributor
  • Ferdinando M. Ametrano, Bitcoin and Blockchain Technology professor at Politecnico di Milano
  • Allison Berke, Executive Director at the Stanford Cyber Initiative (Host Committee Chair)
  • Byron Gibson, Engineering Consultant and Startup Advisor
  • Alexy Khrabov, By The Bay

Tutorial Committee

  • Shin'ichiro Matsuo, Georgetown University, BSafe.network
  • Pindar Wong, BSafe.network
  • Taro Watanabe, Digital Garage
  • Jimmy Song, Paxos
  • Anton Yemelyanov, Base58 Association NPO.
  • Shigeya Suzuki, Keio University