Workshops
Workshops Day is October 13, 2022
98% Real Bitcoin Smart Contracts™
Duration
3 - 3.5 Hours
What will I get out of this workshop?
Good Vibes. Play a fun game.
What will I learn?
Architecting Federated Smart Contracts with Judica’s Software, Sapio Basics, Basic Bitcoin DeFi Concepts, Rollups, Alternative Market Makers, NFT-ized Positions, Bonded Attestation Chain, Automated Bitcoin Contract Execution, BTC Smart Contract Types
Description
Judica is building a complete toolchain that unlocks a new paradigm for Bitcoin Smart Contract Development. Does that sound Big, Complicated, and Scary? It doesn’t have to be – to make it easy and fun to learn, we’ve created a low-latency multiplayer bitcoin mining empire-building game that is backed by 98% Real Bitcoin Smart Contracts™ that you can join us to play. After a few solid play sessions, we’ll dive into how it all works under the hood and relates to non-game applications, followed by an open discussion on the frontier of what you can build.
What knowledge do I need beforehand?
Knowledge needed to play:
- Setting up / Configuring software (git, installing dependencies, building)
- Comfortable with basic command line usage
Knowledge needed to learn:
- How Bitcoin Transactions work
- Capabilities of Bitcoin Script
Do I need to setup an environment or download any software?
Game software to be distributed at workshop. Supports Unix (Mac / Linux) with Limited Windows Support.
Do I need access to a BTC or LN node?
Yes, come with a local Bitcoin Core node on laptop or otherwise reachable. Mainnet Pruned is OK, we may also connect to a custom Signet.
Anything else I should know?
Keep an open mind & good attitude!
Optional: Come with a group of up to 5 people. We’ll pair up people who come without.
LDK
Duration
TBD
What will I get out of this workshop?
TBD
What will I learn?
TBD
Description
TBD
Attacking Lightning
Duration
1 hour
What will I get out of this workshop?
– Hands on experience exploiting known vulnerabilites on Lightning
What will I learn?
– They will learn what some of the vulnerabilities are on Lightning and how to exploit them and defend from them.
Description
– This will be very “Red Team” / “Hack The Box” style where attendees will have a simulated Lightning Network on their computer (via custom polar docker nodes) and their job is to “Capture The Flags” via attacking the other simulated nodes. Such attacks include things like channel jamming to stop payments, finding unannounced channels, inserting themselves into routes to find payments between two nodes, etc.
– The spirit is to have fun but also learn how some of the attacks can be a concern.
– I will help walk people through it and ideally present so people can follow along, but they are also encouraged to experiment on their own.
What knowledge do I need beforehand?
– How to use Polar and understand basic Lightning networking / opening channels / making payments.
Do I need to setup an environment or download any software?
– Polar with custom docker images. Instructions will be given on how to do this.
Do I need access to a BTC or LN node?
- Only locally via Polar.
Anything else I should know?
– Requires own computer with Docker & Polar installed.
Build a Fedimint Module
Duration
1.5 - 2 hours
What will I get out of this workshop?
– Setup dev environment
– Understand general layout of the codebase
– Walk through making a PR
– Maybe hang out for a while afterwards to try to help other people make small PRs
– Another idea was to make a “federated notes app” using Fedimint.
What will I learn?
You’ll get high-level intro to how Fedimint works at the core, and how end-user functionality (e.g. chaumian mint or bitcoin deposits) is implemented in modules. If there’s time we’ll do a little walkthrough of chaumian mint module.
What knowledge do I need beforehand?
Helpful to know Rust, but you should be able to follow along without.
Do I need to setup an environment or download any software?
nope
Do I need access to a BTC or LN node?
nope
Anything else I should know?
nope
Building Lightning-based Authentication with LSATs
Duration
1 hour 30 minutes
What will I get out of this workshop?
Building Lightning-based Authentication with LSATs
What will I learn?
Lightning Service Authentication Tokens (LSATs), 402 Response Error Code, Macaroons,
Description
Come learn about Lightning Service Authentication Tokens (LSATs), the 402 Response Error Code why macaroons are better than cookies, and how they can be used to build a better authentication ecosystem.
Attendees will be able to practice parsing and validating LSATs with the LSAT Playground. In addition, this workshop with help you build your own custom paywall using LSATs by deploying a proxy server that is capable returning 402 responses and validating paid requests to access a restricted endpoint. Extra credit will include support for delegation: clients can sell restricted use of an LSAT they paid for to another user.
What knowledge do I need beforehand?
Read up on LSATs from Lightning Labs docs and macaroons vs cookies. Play around with the LSAT Playground.
Do I need to setup an environment or download any software?
Setup Polar or something similar for a local bitcoin and lightning network dev environment.
Do I need access to a BTC or LN node?
Yes
Anything else I should know?
No
Demystifying Elliptic Curves
Duration
1 Hour
Description
We provide a gentle introduction to elliptic curve cryptography, including continuous and finite point spaces, point addition, and point multiplication, with application to ecsda signatures, secret sharing and encrypted messaging. The material is presented in a visual manner supported with interactive dashboards. This allows for an intuitive grasp of the basic components behind bitcoin scripting with no prior knowledge of programming languages required. All materials are available on github, and attendees are encouraged to contribute https://github.com/asher-pembroke/elliptic . This work is supported by Satoshi Energy.
What knowledge do I need beforehand?
None
Do I need to setup an environment or download any software?
No
Do I need access to a BTC or LN node?
No
Getting Started with LNC-Web
Duration
45-60 min
What will I get out of this workshop?
Attendees will get an overview of how Lightning Node Connect works.
What will I learn?
Attendees will learn how to get started with building our own lightning web apps with lnc-web.
Description
Attendees can expect to learn about the following topics:
- Overview of LNC
- Overview of lnc-web
- Overview of Lightning Terminal and getting an LNC connection string
- Walkthrough of setting up LNC connection
- Walkthrough of available calls
- Demo app
What knowledge do I need beforehand?
- General knowledge of LN recommended
- Node.js required
- Experience with ReactJS frontend recommended
Do I need to setup an environment or download any software?
Yes, you will need an LND node with litd running on mainnet or testnet.
Do I need access to a BTC or LN node?
Yes
Integration of Lightning into Web Apps
Duration
2 hours
What will I get out of this workshop?
You will gain a basic familiarity of the integration of both backend and frontend webapp development with lightning functionality.
What will I learn?
You will learn the basic functions and processes to connect a lightning node to webapps.
Description
Follow along with the devs of Voltage as they walk through the process of connecting a lightning node to a pre-built webapp project. Only a laptop is required to participate. All knowledge levels are welcome to join in. This will be a beginner friendly workshop. We are hoping to inspire and grow confidence in the developer community to integrate lightning into more applications.
What knowledge do I need beforehand?
-Basic python or JS.
-Familiarity with LND encouraged but not required.
Do I need to setup an environment or download any software?
No. We will be utilizing a pre-built environment to keep it simple, but you may clone it if you wish during the workshop setup.
Do I need access to a BTC or LN node?
No. It will be provided as part of the workshop, including liquidity so we can skip as much set-up as possible and get right into the fun.
Intro to 3D Printing: create and take home a bitcoin product
Duration
A table will be setup throughout the conference to learn all conference long!
What will I get out of this workshop?
You will be able to take home a 3d printed object.
What will I learn?
Will learn how to use free cad and slicer software.
Attendees will get knowledge of how 3d printing works with hands on experience.
Description
– Describe the overall workshop and spirit of what will happen.
This workshop will help you turn your ideas into physical things! Great for getting started or for printing veterans.
Do I need to setup an environment or download any software?
Laptop (Mac/Windows or popular linux distro)slicer and design software downloaded ideally before the start of the workshop. All software will be free.
Do I need access to a BTC or LN node?
No
Intro to Multisig and Sovereign Recovery
Duration
1 hour and 30 mins
What will I get out of this workshop?
A deeper understanding of multisig technology, as well as, how to build your own multisig wallet/address (and rebuild it) across multiple wallet software platforms.
What will I learn?
Multisig overview, single-sig vs multi-sig, building a multi-sig wallet, deep dive into recovering your multi-sig wallet, and intro to collaborative multi-sig custody.
Description
Join the Unchained team for a workshop all about multi-sig! Multisig is a bitcoin native protocol that allows you to build wallets created with multiple keys, while also establishing your own quorum of signatures needed to redeem (or spend) that bitcoin. In this workshop, we will be digging into the nuts and bolts of multisig and walking you through how to build your own. Good for beginners, or those who are just trying to continue to build their knowledge.
What knowledge do I need beforehand?
All are welcome – We will start with the basics!
Do I need to setup an environment or download any software?
Nope!
Do I need access to a BTC or LN node?
Nope!
Anything else I should know?
We will be raffling off a Coldcard Mk4 as well as some other swag at the end of the workshop for those who actively participate.
Magma Channel Shop
Duration
15-30 mins
What will I get out of this workshop?
Experience purchasing a channel and posting a channel offer on Magma
What will I learn?
How to use Magma Channel Marketplace, Valuing Liquidity on Lightning, How to post an offer, How to buy a lightning channel.
Description
Attendees will learn fundamentals of lightning liquidity and what makes it valuable. Magma channel marketplace will be explained, enabling attendees to post an offer of bitcoin liquidity and to buy an offer if they would like.
What knowledge do I need beforehand?
Do I need to setup an environment or download any software?
Thunderhub will be used to display node information, which is available for LND nodes and is a standard offering for Umbrel, Raspiblitz, and Voltage.
Do I need access to a BTC or LN node?
Yes, bitcoin and a lightning node are required.
Anything else I should know?
A willingness to learn! Voltage can set you up with a node, but participation requires that your node already has a channel and is visible in the lightning network graph. This sometimes takes several hours after opening a channel.
Packaging Your Favorite Open Source Project for Start9 EmbassyOS
Duration
2 hours
What will I get out of this workshop?
If you follow along on your own Embassy One, you will get your own custom app running on your EmbassyOS
What will I learn?
Service Packaging Best Practices for the Start9 EmbassyOS
Description
Are you tired of waiting for your favorite Bitcoin applications to show up on your Start9 Embassy? Have you ever wanted to use your own custom web-based application hosted on your own server?
This workshop will show you step-by-step how to package, install, and run your choice of software on Embassy.
Minimum development experience is needed, as this workshop will be just the beginning of your hero’s journey into service packaging for Embassy. Get ready to join the community of package developers building out the future of sovereign computing!
What knowledge do I need beforehand?
Recommended: basic programming background
Do I need to setup an environment or download any software?
Environment Setup is optional but recommended. Setup instructions here: https://start9.com/latest/developer-docs/getting-started/environment-setup
Do I need access to a BTC or LN node?
No.
Anything else I should know?
Optional in order to follow along, bring your own Embassy, or your own DIY Equipment (Raspberry Pi, 1TB SSD Drive, 32GB SD Card)
Cheers!
Dread
Remote Signing for Lightning Node with Sphinx Chat
Duration
1 - 1.5 hours
What will I get out of this workshop?
A prototype board that works with Core lightning and possibly greenlight.
What will I learn?
How to flash, pair and use a remote signing device running the Validated Lightning Signer with Core Lightning.
Description
Come learn with the Sphinx Chat team and get hands-on experience running a node and learning real life use cases for separating the private keys from hosted lightning nodes.
What knowledge do I need beforehand?
The ability to use CLI for tailing logs.
Do I need to setup an environment or download any software?
Follow these instructions to build and run the Sphinx Key signer.
Do I need access to a BTC or LN node?
No, we will host one or Voltage will assist in booting up Core lightning nodes.
Anything else I should know?
You will need to run Sphinx on your mobile device to configure the signer hardware.
Setting Up Vortex on Your Lightning Node
Duration
1 - 1.5 hours
What will I get out of this workshop?
Testnet (or signet) node with a coin-joined channel. Knowledge of vortex and how to set it up on your own.
What will I learn?
Intro to Vortex software. Setup tutorial. CoinJoins.
Description
Join Ben the Carman in learning about LN Vortex: a tool to allow users to open lightning channels in a collaborative transaction when using lnd and Core Lightning.
What knowledge do I need beforehand?
General knowledge about running a BTC/LN node.
Do I need to setup an environment or download any software?
Git, Java, SBT. Find more about LN Vortex here.
Do I need access to a BTC or LN node?
Yes, both.
Anything else I should know?
Bring testnet or signet funds.
Simplicity Playground
Duration
30-60 Mins
What will I get out of this workshop?
– Types, Terms, and Arguments in Simplicity
– Typing rules and strict script-wiz typing format
– Defining bits, bit-strings and byte-strings
– Writing and executing Simplicity programs
What will I learn?
You will get to know Simplicity basics and how to write Simplicity programs with no prior background in bitcoin programming.
What knowledge do I need beforehand?
No programming skills are required.
Do I need to setup an environment or download any software?
Nope. Just bring your web browser.
Do I need access to a BTC or LN node?
No.
Anything else I should know?
No.
Starter kit for building your own Bitcoin hardware project with MicroPython
Duration
??
What will I get out of this workshop?
Keith will walk you through the building blocks you’ll need to get started. We’ll build a Bitcoin-enabled custom MicroPython firmware for a variety of inexpensive microprocessor boards (e.g. ESP32, Raspi RP2040, STM32). We’ll compile in Bitcoin Core’s secp256k1 library for fast elliptic curve calculations. We’ll also include Stepan Snigirev’s “embit” library (used by Specter Desktop, Specter-DIY, SeedSigner) to provide higher-level Bitcoin functions; I don’t know how to sign a psbt or what to do with secp256k1 but Stepan’s library does!
We’ll then briefly discuss incorporating displays, UI/graphics libraries (LVGL), cameras, buttons, etc.
From this starting point you’ll be able to build ANY Bitcoin hardware project you can imagine, coding it in easy, mostly-familiar MicroPython (essentially the same as Python 3 but with some limitations).
Description
What if you could devise your own Bitcoin hardware device from a cheap, off-the-shelf microprocessor board? What new, innovative solutions would you create?
What knowledge do I need beforehand?
Basic Linux and Python proficiency.
Laptop w/Docker installed. Downloading dependencies (compilers, etc) ahead of time will speed things up.
ZERO experience with MicroPython or microprocessor boards required.
Anything else I should know?
Attendees can bring their own microprocessor boards (easily sourced from places like Adafruit.com; I can provide a list of recommended starter boards).
Attendees will receive a FREE esp32-S2 kit, courtesy of Bitcoin Magazine! All you need to bring is a laptop and a micro USB cable.
Working with the Taro Protocol
Duration
90 mins
What will I get out of this workshop?
Have a solid understanding of what Taro is and what it can and can’t do
Understand some basic Taro use cases
Be able to differentiate between Taro universe types
Understand the basics of how fungible assets are transferred on the Lightning Network
Have experience installing and configuring Taro, and created their own (regtest/testnet) asset
Description
This workshop is designed for tech savvy Bitcoiners who want to dive into the Taro protocol! After 90mins attendees will leave with a solid understanding of what Taro is, how it can be used, and will gain some hands-on experience with the Taro client.
What knowledge do I need beforehand?
A solid understanding of the Bitcoin protocol, familiarity with the Lightning Network, and a basic understanding of Taproot.
Some familiarity with Linux/Unix as all examples and demos will be shown on a Ubuntu server.
Do I need to setup an environment or download any software?
Access to a computer with GoLang installed
Do I need access to a BTC or LN node?
regtest/testnet Bitcoin node setup.
Anything else I should know?
Recommended reading/viewing prior to the workshop…
https://youtu.be/-yiTtO_p3Cw
https://docs.lightning.engineering/the-lightning-network/taro
Workshops Day is October 13, 2022
Workshop Sign Up
Looking to attend one or more workshops? Fill out this form to let us know which ones you plan to attend! This form is not required and does not serve in place of a ticket. This just lets us gauge what interest is like for the workshops so we can allocate enough room for each one. It's also a way the workshop host to contact you before the event in case they want to send you some info before the event.