We’ve bought in, but how much are these assets really worth? Turing Group’s top quants talk about a major token challenge ahead.
Last year, lawyers and law firms finally got over themselves and worked together in the blockchain space. In 2018, such teamwork will be critical.
If the U.S. government just tries to go after each problematic example of crypto on an ad-hoc basis, it’ll never get ahead of the issue.
- If you are running Electrum, shut it down right this second.
- Upgrade to 3.0.4 (making sure to verify the PGP signature).
You don’t necessarily need to rush to upgrade. In fact, in cases like this it can be prudent to wait a while just to make sure that everything is settled. The important thing is to not use the old versions. If you have an old version sitting somewhere not being used, then it is harmless as long as you do not forget to upgrade it before using it again later.
If at any point in the past you:
- Had Electrum open with the wallet unlocked, or with no wallet passphrase set; and,
- Had a webpage open
Then it is possible that your wallet is already compromised. Particularly paranoid people might want to send all of the BTC in their old Electrum wallet to a newly-generated Electrum wallet. (Though probably if someone has your wallet, then they already would’ve stolen all of the BTC in it…)
This was just fixed hours ago. The Electrum developer will presumably post more detailed info and instructions in the near future.
Bitcoin users can help lower transaction fees and improve bitcoin by switching to SegWit addresses and encourage wallets/exchanges to do the same.
Segregated Witness (SegWit) was activated on the Bitcoin network August 24 2017 as a soft fork that is backward compatible with previous bitcoin transactions (Understanding Segregated Witness). Since that time wallets and exchanges have been slow to deploy SegWit, some admitting in December 2017 that they have not even started work on integrating it. Others, such as Zebpay in India have already implemented SegWit and are reaping the benefits of reduced transaction fees. If bitcoin users demand SegWit now it will temporarily relieve the transaction backlog while more even more advanced solutions such as Lightning are developed.
Batching is another great way that exchanges can reduce their fees. See: Saving up to 80% on Bitcoin transaction fees by batching payments. Despite the benefits of batching, some exchanges have been slow to implement it.
There is an opportunity now for all bitcoin users to individually contribute to help strengthen and improve the bitcoin protocol. At this point, the process requires a bit of work/learning on the part of the user, but in doing so you’ll actually be advancing bitcoin and leaving what could turn out to be a multi-generational legacy for humanity.
- BitInfoCharts.com – Average Transaction Fees – $32USD per Tx
- Blockchain.info – Unconfirmed Transactions – 170K unconfirmed Tx’s
- SegWit Charts – 10% SegWit Tx’s
On Dec 18 Subhan Nadeem has pointed out that:
If every transaction in the Bitcoin network was a SegWit transaction today, blocks would contain up to 8,000 transactions, and the 138,000 unconfirmed transaction backlog would disappear instantly. Transaction fees would be almost non-existent once again.
A few thousand bitcoin users from /r/Bitcoin switching to making their next transactions SegWit transactions will help take pressure off the network now, and together we can encourage exchanges/wallets to rapidly deploy SegWit for everyone ASAP. Let’s make 80%+ SegWit happen fast. You can help by taking one or more of the action steps below.
- If your favorite wallet has not yet implemented SegWit, kindly ask them to do so immediately. In the meantime start using a wallet that has already implemented SegWit.
- If your favorite exchange has not yet implemented SegWit, try to avoid making any further purchases of bitcoin at that exchange and politely inform them that if they do not enable SegWit within 30-days they will lose your business. Sign-up for an account at a SegWit deployed/ready exchange now and initiate the verification process so you’ll be ready to bail
- Help educate newcomers to bitcoin about the transaction issue, steer them towards SegWit wallets from day one, and encourage them to avoid ever purchasing bitcoin through non-SegWit ready exchanges that are harming bitcoin.
- Spread the word! Conact individuals, websites, etc that use bitcoin, explain the benefits of SegWit to everyone, and request they make the switch
IMPORTANT NOTE: The mempool is currently still quite backlogged. If you are a long-term holder and really have no reason to move your bitcoins at this time, wait until the mempool starts to clear and transaction fees go down before moving your bitcoins to a SegWit address or SegWit friendly exchange.
SELECTED TOP EXCHANGES BY BATCHING & SEGWIT STATUS
|Exchange||Segwit Status||Batching Status|
Note: all exchanges that have deployed SegWit are currently only sending to p2sh SegWit addresses for now. No exchange will send to a bech32 address like the ones that Electrum generates
Official statements from exchanges:
- Bitonic: SegWit: In testing (including send from bech32). Batching: Have been for years.
- Kraken: Deposits are made to Segwit addresses and withdrawls are sent in Segwit format, but frontend presentation is pending full implementation/support in wallets such as bitcoin core.
- Shapeshift: We don’t order batch, but we will get to it. So much engineering to do :/
SELECTED WALLETS THAT HAVE SEGWIT ALREADY
Make sure you have a SegWit capable wallet installed and ready to use for your next bitcoin transaction
|SegWit Enabled Wallets||Wallet Type|
|Ledger Nano S||Hardware|
If I’m a HODLer, will it help to send my BTC to a SegWit address now?
- No, just get ready now so that your NEXT transaction will be to a SegWit wallet. Avoid burdening the network with any unneccessary transactions for now.
Why is SegWit adoption going so slowly? Is it a time-consuming process, is there risk involved, is it laziness, or something else?
- SegWit will require some extra work to be done right and securely. Also, most exchanges let the user pay the fee, and up to now users have not been overly concerned about fees so for some exchanges it hasn’t been a priority.
Once Segwit is FULLY adopted, what do we see the fees/transaction times going to?
- Times stay the same – fees will go down. How much and for how long depends on what the demand for transactions will be at that time.
What determines bitcoin transaction fees, to begin with?
- Fees are charged per byte of data and are bid up by users. Miners will typically include the transaction with the highest fee/byte first.
Can you please tell me how to move my bitcoins to SegWit address in Bitcoin core wallet? Does the sender or receiver matter?
The Bitcoin core wallet does not yet have a GUI for its SegWit functionality. Download Electrum v3.0.3 to generate a SegWit address.
A transaction between two SegWit addresses is a SegWit transaction.
A transaction sent from a SegWit address to a non-SegWit address is a SegWit transaction.
A transaction sent from a non-SegWit address to a SegWit address is NOT a SegWit transaction. You can send a SegWit Tx if the sending address is a SegWit address.
What wallet are you using to “batch your sends”? And how can I do that?
Using Electrum, the “Tools” menu option: “Pay to many”.
Just enter your receive addresses and the amounts for each, and you can send multiple transactions for nearly the price of one.
Why doesn’t the Core Wallet yet support SegWit?
- The Core Wallet supports SegWit, but its GUI doesn’t. The next update will likely have GUI support built-in
Why isn’t a large exchange like Coinbase SegWit ready & deployed when much smaller exchanges already are? Why do they default to high fees? Where is the leadership there?
Draw your own conclusions based on their own words:
What are the two SegWit address formats and why do they exist?
It’s been a challenge for wallet developers to implement SegWit in a way that users can easily and without too much disruption migrate from legacy to SegWit addresses. The first wallets to enable SegWit addresses – Ledger, Trezor, Core, GreenAddress – use so-called “nested P2SH addresses.” This means they take the existing Pay 2 Script Hash address – starting with a “3” – and put a SegWit address into it. This enables a high grade of compatibility to existing wallets as every wallet is familiar with these addresses, but it is a workaround which results in SegWit transactions needing around 10 percent more space than they otherwise would.
Electrum 3.0 was the first wallet to use bech32 addresses instead of nested p2sh addresses.
What is the difference in address format between SegWit address formats P2SH and bech32?
P2SH starts with “3…”
bech32 starts with “bc1…”
Which addresses can I send from/to?
P2SH Segwit addresses can be sent to using older Bitcoin software with no Segwit support. This supports backwards compatibility
bech32 can only be sent to from newer Bitcoin software that support bech32. Ex: Electrum
Why did ThePirateBay put up two Bitcoin donation addresses on their frontpage, one bech32 and one not?
- The address starting with a “3…” is a P2SH SegWit address that can be sent BTC from any bitcoin address including a legacy address. The address starting with a “bc1…” is a bech32 SegWit address that can only be sent to from newer wallets that support bech32.
SEGWIT BLOG GUIDES
- HowToToken.com – How To Send Bitcoin Faster And Cheaper Over SegWit Transactions
- BTCManager.com – Electrum 3.0 is first Wallet to enable Bech32 SegWit Addresses
PREVIOUS DAY’S THREADS
There’s lots of excellent info in the comments of the previous threads:
- Day 1: If every Bitcoin tx was a SegWit tx today, we’d have 8,000 tx blocks & the tx backlog would disappear. Tx fees would be almost non-existent once again. THE NEXT BITCOIN TX YOU MAKE, MAKE IT A SegWit TX. DOWNLOAD A SegWit COMPATIBLE WALLET AND OPEN A SegWit COMPATIBLE EXCHANGE ACCOUNT RIGHT NOW
- Day 2: I will repost this guide daily until available solutions like Segwit & order batching are adopted, the mempool is empty once again, and transaction fees are low. You can help. Take action today
- Day 3: ARE YOU PART OF THE SOLUTION? News: Unconfirmed TX’s @ 274K, more exchanges adding SegWit, Core prioritizes SegWit GUI
- Day 4: Unconfirmed TX’s @ 174K
- Day 5: I will post this guide regularly until available solutions like SegWit & order batching are mass adopted, the mempool is empty once again, and transaction fees are low. User demand from this community can help lead to some big changes. Have you joined the /r/Bitcoin SegWit effort?
- Day 6: I will post this guide regularly until available solutions like SegWit & order batching are mass adopted, the mempool is empty once again, and tx fees are low. Refer a friend to SegWit today. There’s no $10 referral offer, but you’ll both get lower fees and help strengthen the BTC protocol
This post is a collaboration with the Bitcoin community to create a one-stop source for Lightning Network information.
There are still questions in the FAQ that are unanswered, if you know the answer and can provide a source please do so!
⚡What is the Lightning Network? ⚡
- Lightning Network
- Lightning Labs
- Lightning FAQ – Audun Gulbrandsen
- Lightning FAQ – Rusty Russell
- Rusty Russell’s Coding Blog
- Andreas M. Antonopoulos – Mastering Bitcoin
Specifications / White Papers
- Lightning Network White Paper
- Lightning Network Summary
- Lightning Network Technical Summary
- Lightning Network Specification
- LND API Reference
- Deployable Lightning White Paper
- Scalable Funding of Bitcoin Micropayment Channel Networks
- Bitcoin’s Lightning Network, Simply Explained! [5:33]
- The Lightning Network Explained (Litecoin/Bitcoin) [8:13]
- Zap: Lightning Network Wallet (Jack Mallers – Demo Walkthrough) [3:38]
- Cross-Implementation Lightning Payment on Bitcoin’s Mainnet (Laolu (a.k.a roasbeef) – Demo) [2:51]
- Bitcoin Q&A: The Lightning Network (Andreas Antonopoulos) [7:55]
- Lightning Network Deep Dive with Laolu “Roasbeef” Osuntokun [48:10]
- SF Bitcoin Devs Seminar: Scaling Bitcoin to Billions of Transactions Per Day [54:40]
- Bitcoin, Lightning, and Streaming Money (Andreas Antonopoulos) [27:38]
- Lightning Network Tech Talk at Coinbase (Thaddeus Dryja and Joseph Poon) [58:11]
Lightning Network Experts on Reddit
- https://www.reddit.com/user/starkbot – (Elizabeth Stark – Lightning Labs)
- https://www.reddit.com/user/cdecker – (Christian Decker – Blockstream)
- https://www.reddit.com/user/roasbeef – (Olaoluwa Osuntokun – Lightning Labs)
- https://www.reddit.com/user/pmpadiou – (Pierre-Marie Padiou – Eclair Developer)
- https://www.reddit.com/user/RustyReddit – (Rusty Russell – Blockstream)
- https://www.reddit.com/user/Dryja – (Tadge Dryja – Digital Currency Initiative)
- https://www.reddit.com/user/josephpoon – (Joseph Poon – Lightning Labs)
- https://www.reddit.com/user/fdrn – (Eclair Developer)
- https://www.reddit.com/user/stile65 – (Alex Akselrod – Lightning Labs)
- https://www.reddit.com/user/cfromknecht – (Conner Fromknecht – Lightning Labs)
Lightning Network Experts on Twitter
- @rusty_twit – (Rusty Russell – Blockstream)
- @starkness – (Elizabeth Stark – Lightning Labs)
- @roasbeef – (Olaoluwa Osuntokun – Lightning Labs)
- @snyke – (Christian Decker – Blockstream)
- @JackMallers – (Jack Mallers – Zap)
- @tdryja – (Tadge Dryja – Digital Currency Initiative)
- @jcp – (Joseph Poon – Lightning Labs)
- @stile65 – (Alex Akselrod – Lightning Labs)
- @bitconner – (Conner Fromknecht – Lightning Labs)
- Lightning FAQ
- Lightning Network Bitcoin Wiki
- Hashed Timelock Contracts
- LN as a Directed Graph; Single-Funded Channel Topology (Slides)
- How to Do “2-of-3 Multisig Contract” Equivalent on Lightning (From LN Mailing List)
- lightning-app – Cross-platform Lightning Desktop Application
- lnd-gui – Lightning MacOS GUI Wallet
- eclair-node-gui – Cross-platform desktop GUI for Lightning
- zap-desktop – Lightning Network desktop application
- lncli-web – Light-weight web client for the lnd daemon written in NodeJS / Angular
- kugelblitz – A simple UI for the c-lightning daemon lightningd and bitcoind
Tutorials and resources
- Install bitcoind + lnd
- Develop an application of bitcoind and lnd
- Setting up and Testing LND with the Testnet Lightning Faucet
- Setting up a local Lightning cluster
- Using the LND Web Client
- Using the LND gRPC Client
- Integrating Lightning into a server-side web application
- How to use a Python gRPC Client with LND
Lightning on Testnet
- HTLC Web Lightning Wallet
- Eclair wallet (for android)
- Eclair wallet (Linux, macOS, Windows)
- Zap wallet (Linux, macOS, Windows)
Place a transaction
Instant Swaps for Altcoins using Lightning
Lightning on Mainnet
- Instant Cross-Chain Transactions On Lightning
Developer Documentation and Resources
- LND – Lightning Network Daemon (Golang)
- eclair – A Scala implementation of the Lightning Network (Scala)
- lit – Lightning Network node software (Golang)
- c-lightning – A Lightning Network implementation in C
- lightning-onion – Onion Routed Micropayments for the Lightning Network (Golang)
- lightning-integration – Lightning Integration Testing Framework
- ptarmigan – C++ BOLT-Compliant Lightning Network Implementation [Incomplete]
- lightning-integration – Lightning Integration Testing Framework
- lightning-charge-client-php – PHP client for lightning-charge
- lightning-payencode – Minimal QR-code-ready encoding for requesting lightning payments
- lseed – A DNS seed for the Lightning Network
- woocommerce-gateway-lightning – A WooCommerce gateway for lightning payments
- ln-service – Lightning REST Service
Lightning Network Visualizer (Testnet)
- Lightning Network Community Blog
- Lightning Network Twitter Feed
- Lightning Labs Blog
- Lightning Network Mailing List
- LND Community Slack – Invite Needed
- #lightning-dev (on Freenode) – Lightning protocol development
- #lnd – Lightning only version of #bitcoin-commits
- #lightning-dev on freenode
- Lightning Emoji ⚡
- lightning-faucet – A faucet for the Lightning Network
- ln-dice – Dice gambling service using the Lightning Network for deposits and withdrawals
- ln-tip-slack – Lightning Slack Tipbot
- lightning-cat – Cat pictures via Lightning
⚡ Lightning Questions and Concerns⚡
Questions might be unanswered, if you can answer please PM me and include source if possible. Also feel free to help keep these answers up to date and as brief but correct as possible
Is Lightning Bitcoin?
Yes. You pick a peer and after some setup, create a bitcoin transaction to fund the lightning channel; it’ll then take another transaction to close it and release your funds. You and your peer always hold a bitcoin transaction to get your funds whenever you want: just broadcast to the blockchain like normal. In other words, you and your peer create a shared account, and then use Lightning to securely negotiate who gets how much from that shared account, without waiting for the bitcoin blockchain.
Is the Lightning Network open source?
Yes, Lightning is open source. Anyone can review the code (in the same way as the bitcoin code)
Who owns and controls the Lightning Network?
Similar to the bitcoin network, no one will ever own or control the Lightning Network. The code is open source and free for anyone to download and review. Anyone can run a node and be part of the network.
I’ve heard that Lightning transactions are happening “off-chain”…Does that mean that my bitcoin will be removed from the blockchain?
No, your bitcoin will never leave the blockchain. Instead your bitcoin will be held in a multi-signature address as long as your channel stays open. When the channel is closed; the final transaction will be added to the blockchain. “Off-chain” is not a perfect term, but it is used due to the fact that the transfer of ownership is no longer reflected on the blockchain.
Do I need a constant connection to run a lightning node?
Example: A and B have a channel. 1 BTC each. A sends B 0.5 BTC. B sends back 0.25 BTC. Balance should be A = 0.75, B = 1.25. If A gets disconnected, B can publish the first Tx where the balance was A = 0.5 and B = 1.5. If the node B does in fact attempt to cheat by publishing an old state (such as the A=0.5 and B=1.5 state), this cheat can then be detected on-chain and used to steal the cheaters funds, i.e., A can see the closing transaction, notice it’s an old one and grab all funds in the channel (A=2, B=0). The time that A has in order to react to the cheating counterparty is given by the CheckLockTimeVerify (CLTV) in the cheating transaction, which is adjustable. So if A foresees that it’ll be able to check in about once every 24 hours it’ll require that the CLTV is at least that large, if it’s once a week then that’s fine too. You definitely do not need to be online and watching the chain 24/7, just make sure to check in once in a while before the CLTV expires. Alternatively you can outsource the watch duties, in order to keep the CLTV timeouts low. This can be achieved both with trusted third parties or untrusted ones (watchtowers). In the case of a unilateral close, e.g., you just go offline and never come back, the other endpoint will have to wait for that timeout to expire to get its funds back. So peers might not accept channels with extremely high CLTV timeouts. — Source
How does lightning handle cross chain (Atomic) swaps?
What Are Lightning’s Advantages?
Tiny payments are possible: since fees are proportional to the payment amount, you can pay a fraction of a cent; accounting is even done in thousandths of a satoshi. Payments are settled instantly: the money is sent in the time it takes to cross the network to your destination and back, typically a fraction of a second.
Does Lightning require Segregated Witness?
Yes, but not in theory. You could make a poorer lightning network without it, which has higher risks when establishing channels (you might have to wait a month if things go wrong!), has limited channel lifetime, longer minimum payment expiry times on each hop, is less efficient and has less robust outsourcing. The entire spec as written today assumes segregated witness, as it solves all these problems.
Can I Send Funds From Lightning to a Normal Bitcoin Address?
No, for now. For the first version of the protocol, if you wanted to send a normal bitcoin transaction using your channel, you have to close it, send the funds, then reopen the channel (3 transactions). In future versions, you and your peer would agree to spend out of your lightning channel funds just like a normal bitcoin payment, allowing you to use your lightning wallet like a normal bitcoin wallet.
Can I Make Money Running a Lightning Node?
Not really. Anyone can set up a node, and so it’s a race to the bottom on fees. In practice, we may see the network use a nominal fee and not change very much, which only provides an incremental incentive to route on a node you’re going to use yourself, and not enough to run one merely for fees. Having clients use criteria other than fees (e.g. randomness, diversity) in route selection will also help this.
What is the release date for Lightning on Mainnet?
What is a lightning “hub”?
Would there be any KYC/AML issues with certain nodes?
Nope, because there is no custody ever involved. It’s just like forwarding packets. — Source
What is the delay time for the recipient of a transaction receiving confirmation?
Furthermore, the Lightning Network scales not with the transaction throughput of the underlying blockchain, but with modern data processing and latency limits – payments can be made nearly as quickly as packets can be sent. — Source
How does the lightning network prevent centralization?
What are Channel Factories and how do they work?
How does the Lightning network work in simple terms?
How are paths found in Lightning Network?
How would the lightning network work between exchanges?
Each exchange will get to decide and need to implement the software into their system, but some ideas have been outlined here: https://docs.google.com/document/d/1r38-_IgtfOkhJh4QbN7l6bl7Rol05qS-i7BjM3AjKOQ/edit
Note that by virtue of the usual benefits of cost-less, instantaneous transactions, lightning will make arbitrage between exchanges much more efficient and thus lead to consistent pricing across exchange that adopt it. — Source
How does the Lightning Network work for mobile users?
What are the best practices for securing a lightning node?
How do lightning nodes find other lightning nodes?
Will the lightning network reduce BTC Liquidity due to “locking-up” funds in channels?
Does every user need to store the state of the complete Lightning Network?
According to Rusty’s calculations we should be able to store 1 million nodes in about 100 MB, so that should work even for mobile phones. Beyond that we have some proposals ready to lighten the load on endpoints, but we’ll cross that bridge when we get there. — Source
Would I need to download the complete state every time I open the App and make a payment?
No you’d remember the information from the last time you started the app and only sync the differences. This is not yet implemented, but it shouldn’t be too hard to get a preliminary protocol working if that turns out to be a problem. — Source
How does the Lightning Network stop flooding nodes (DDoS) with micro transactions? Is this even an issue?
How do on-chain fees work when opening and closing channels? Who pays the fee?
Can the Lightning Network work on any other cryptocurrency? How?
What needs to happen for the Lightning Network to be deployed and what can I do as a user to help?
Lightning is based on participants in the network running lightning node software that enables them to interact with other nodes. This does not require being a full bitcoin node, but you will have to run “lnd”, “eclair”, or one of the other node softwares listed above.
All lightning wallets have node software integrated into them, because that is necessary to create payment channels and conduct payments on the network, but you can also intentionally run lnd or similar for public benefit – e.g. you can hold open payment channels or channels with higher volume, than you need for your own transactions. You would be compensated in modest fees by those who transact across your node with multi-hop payments. — Source
Is there anyway for someone who isn’t a developer to meaningfully contribute?
Sure, you can help write up educational material. You can learn and read more about the tech at http://dev.lightning.community/resources. You can test the various desktop and mobile apps out there (Lightning Desktop, Zap, Eclair apps). — Source
Do I need to be a miner to be a Lightning Network node?
No — Source
Do I need to run a full Bitcoin node to run a lightning node?
How does the lightning network stop “Cheating” (Someone broadcasting an old transaction)?
Upon opening a channel, the two endpoints first agree on a reserve value, below which the channel balance may not drop. This is to make sure that both endpoints always have some skin in the game as /u/rustyreddit puts it 🙂
For a cheat to become worth it, the opponent has to be absolutely sure that you cannot retaliate against him during the timeout. So he has to make sure you never ever get network connectivity during that time. Having someone else also watching for channel closures and notifying you, or releasing a canned retaliation, makes this even harder for the attacker. This is because if he misjudged you being truly offline you can retaliate by grabbing all of its funds. Spotty connections, DDoS, and similar will not provide the attacker the necessary guarantees to make cheating worthwhile. Any form of uncertainty about your online status acts as a deterrent to the other endpoint. — Source
How many times would someone need to open and close their lightning channels?
You typically want to have more than one channel open at any given time for redundancy’s sake. And we imagine open and close will probably be automated for the most part. In fact we already have a feature in LND called autopilot that can automatically open channels for a user.
Frequency will depend whether the funds are needed on-chain or more useful on LN. — Source
- Many links found from awesome-lightning-network github
- Everyone who submitted a question or concern!