California Gathering 2016

Transcription introduction

Some Bitcoin developers and miners gathered together during the end of the July to socialize and become better acquainted with each other. The following discussions were live transcribed by an untrained volunteer with attribution removed as per Chatham House rules. In bitcoin, discussions can move very quickly, which can cause an increase in errors, including semantic errors, when typing in real time. This text was not produced from an audio recording. Any errors are the fault of the transcriber. We hope that by sharing these notes with the broader community that a broader discussion can be cultivated and we can all get to better know our perspectives and each other.

pdf: http://diyhpl.us/~bryan/irc/bitcoin/cali2016.pdf

Some breakfast notes (2016-07-30)

((Some words from breakfast when I ran into some folks.))

Hashrate and price are dependent. Sounds like it. Hashrate is protection. Additional volume, you're decreasing the price. It seems that way.

With today's hashrate, compared to two years ago; because it's so high, ... well, to me, ethereum hashrate is also more elastic than bitcoin because you can mine it with GPU and you can rent GPUs from genisys mining, they have a datacenter for GPU mining, you can rent them by the day; you can rent GPUs from amazon, and so on. If it becomes 10x more profitable to mine, the hashrate can go woosh. But in bitcoin this is not the case because ASIC production takes longer.

Basic economy rules changed in ethereum all the time. You can never be sure what they will be on the next day. Solidity, for example. They should change it. PoW to PoS for ethereum. It's a bad idea. It's taking the roots of the economy and replacing it for different one.

If you buy a financial instrument, like a bond or something, where there is a definition of the financial asset, that's important. But now it's whatever the Ethereum Foundation decides.

The ethereum policy is about the gas, so it can be cheap or expensive for smart contract one day. Gas price will be changed, so a contract could just stop working the next day.

You can be sure that a building could be running for 100 years. But if you are changing the rules in the contracts, you cannot rely on that. The people making the decisions in EF have a conflict of interest regarding TheDAO. I would say, in my opinion, rescuing TheDAO was bad for Ethereum. They were doing it because they were losing money.

Ethereum data blockchain size is growing exponentially. It is a big problem for them. A lot of garbage in there.

How would you convince people that you cannot trust that blockchain? And what about the people who feel disenfranchised about any blockchain at all? It's good for someone other than you to make a mistake, so that people can realize what the difference is. When you have a warning after that, it's no longer hypothetical.

In ethereum, there are not that many nodes. How could there be, you can look at how long it takes to sync as it continues to exponentially grow, it will at some point be impossible to sync. Also, each node won't be able to run the smart contracts anyway, if it's growing too quickly.

.... (breakfast to venue transition) ....

Someone needs to make beanie babies with private keys embedded inside. How much is a bit? It's a millionth? Do we have enough chairs? 25 total chairs. Well there were supposed to be 25 people. Maybe we should start without the moderator. Maybe we should introduce ourselves. Oh there he is. Since we are all introduced, should we get started? Who would like to break the ground first? How about review of other conversations? Lessons from Ethereum. Like an example, it's a good example. Both good and bad examples. Better cooperation and communication in the future. Lots has happened to improve communication, it would be good to look at how that has improved things.

After this, it would be nice to talk about what developers are working on and interested. Miners as well. Maybe voice your concerns or something. It would be good to get to know each other. Maybe smaller groups. We are all facing each other. It makes it feel serious when we are sitting like this. Another good topic would be fungibility.

Lunch will be arriving at noon according to the person from the building. There are some food containers that are labeled behind us

Introductions

What are you guys working on? What have you previously done and what are you working on now?

I was working on a cloud mining platform, the only one that wasn't a ponzi. Before that, I was working on an exchange. I believe it is the only one where nobody went to prison [laughs]. At the moment I have been working on code for the wallet to work better and faster. Improving the wallet software. There is also an issue of initial block sync. It's more expensive to do an initial block sync, than keep up with the network. If you have a growing blockchain, then the time to sync is related to this. This was presented at the Scaling Bitcoin Montreal. It's an inherent property. It's the part where it takes forever the first time you run Bitcoin Core. Maybe in 5 years time, perhaps nobody would be able to download the blockchain. It takes a long time to validate that as well. It's not just the time to download it.

They have also been working on the same problems. They would like to exchange thoughts and experience on that.

Okay sounds good. Next person.

Analyzing bitcoin and how it works internally. I was searching for potential vulnerabilities in Bitcoin Core. At least, serious vulnerabilities. I also have an economics degree and I understand how Bitcoin functions on an economic level. This also applies to ethereum and similar altcoins. I understand the vectors of interest in blockchain and bitcoin from different roles like users and miners and how they impact each other.

Could you talk about what you are working on now?

We have been designing mining chips and thinking about the future. We are also working on and building marine shipping containers for bitcoin mining. Immersion cooling. It's not air cooled. It's approximately from 11 to 12 petahashes in one shipping container. Uses a half megawatt for power. Three's a big cable this thick for powering the container. You just need the power at your location. You could install it inside a data center. If you use immersion cooling, you can continue long life even with partial cracks and break-ups.

How do you get rid of the heat from the whole container? Are you pumping water in?

Also, what would you like out of this discussion?

Practically, I am in a strange position. I am working for a company. And it's also an inertial company. At the same time, I like the idea of bitcoin. I was searching for something similar for many years. I was thinking about electronic money and it's one way for most other things. I like bitcoin itself. Even if the company will die, I will still continue to work somewhere related to bitcoin. I like bitcoin and I would like to keep it up and running and help people understand why it is working.

Any concerns or issues that you would like to talk about? Ethereum and bitcoin economics.

I have been working on Bitcoin Core since summer 2011. I have been responsible for a lot of the code in Core and making it faster. I found several significant bugs. I am also the primary author of libsecp256k1. I have been working on segregated witness proposal. That is the main thing I am working on right now. Getting Bitcoin Core to version 0.13. And later a version with segwit included and activated on the network. In the near future, I would like to work on Schnorr signatures, signature aggregation, better scripting language as a successor to segwit making use of its versioning support, and various other ideas for improving things in the short term.

He is working on ATM machines, bitcoin wallet, and mining. And a hardware wallet. One of his interests is how to make mining in China more decentralized. Because the centralization of mining in China, there's more concentration. Developed at 10 nm. Decentralize the hashrate in the future.

I have been working on Bitcoin Core since 20xx. I have been maintaining a different version of Bitcoin Core called Bitcoin Knots. I have worked on getblocktemplate. I have been working on a hard-fork proposal but I don't know if it's going anywhere.

An open-source mining pool, .. he's working on a blockchain explorer, btc.com, and also an open-source mining pool. It's not part of Bitmain.

I started working on Bitcoin about two or three years ago. I work on NBitcoin. It's like bitcoinj but it's dot NET. I have also made a block explorer on bitcoin.ninja. My goal with my library is to help with some requests coming in from Core. I have been contributing to Bitcoin Core because as I want to stay close to the latest testing, I need to be able to understand this source code. So I started contributing to Core earlier this year. On bitcoin.ninja, it was the first block explorer that implemented segwit. Another user of NBitcoin is smartbit, a block explorer, a user-friendly block explorer which implemented segwit because they are using my library. I am working on fiat money on the blockchain by using colored coins protocol. My goal is to make it scalable, using payment channels and payment hubs. That's why I am interested in segwit and checksequenceverify.

I work for MIT DCI but I am given the freedom to work on whatever I want in Bitcoin. I started on the boring stuff. Like the build system and the release process and the more internal development processes. My goal and reason for getting involved was to get the development process more specialized where experts wouldn't have to know every single detail. At the moment Bitcoin Core is difficult because you have to know about more parts. I want some people to be able to be specialized areas in some areas but not others. One example is libbitcoinconsensus which we got going in 0.10 a while ago. It's a library that uses the same code as Bitcoin Core that lets you verify transactions. My goal and the goal of others -- increase modularization and libbitcoinconsensus functionality. Make it independently. I am working at the moment on the p2p functionality, getting it pushed on its own, to live separate, so that it's walled off from the rest of the code.

I do many different things in the Bitcoin space. I have many different jobs, you could say. A lot of it has common threads through it. I am usually thinking about 5 and 10 year time frames with this idea that Bitcoin exists with a careful balance of incentives and balance. Much of the work I do is trying to expand the space of opportunities that Bitcoin can be successful in. Make it work under more conditions, make it work under weaker assumptions, make it work in the presence of malicious actors, and work to expand the technology to expand to more applications. This overlaps with the work I do at Blockstream where we take Bitcoin tech to finance companies and convert them to Bitcoin tech and use the income from that to make more Bitcoin infrastructure tech investments. When I see an incentive problem, a political problem or something, I search for tech that improves that and take it to others to get the solution built.

Okay, thanks.

When I got into bitcoin, there weren't tools for securing bitcoin. I started to work on my own libraries to build my own applications. I built a wallet app which I could use to store my own coins securely. I began to contribute to Core and make the wallet. I realized it was hard to make contributions. It was because of the nature of the technology. I found the team to be amazing and really cool people. There was a lot of great collaboration. It was just hard to change things. After a while I figured out how to get into the process and start making contributions. Most recently I have worked on the segregated witness stuff. I began to get concerned about social attack vectors. There's cryptography but then there's social attack vectors. People began to be very hostile and negative. I noticed that this could be a very major weakness of the system where people could come and create polarizations. We have now seen this in a capitalized network. This is where I have been focusing now, trying to figure out how to prevent the social attack vectors, how to improve communication with the community and become stronger. Everything from the last few years has helped our immune system. We will be facing larger adversaries in the future. There will be adversaries with much larger resources to throw at us and I want to be prepared for that.

Okay, thanks.

I think that people don't see each other face-to-face might encourage some of the social media attack vectors.

Okay, my story is a little bit different. Most of my time is taken up on non Bitcoin software. I am a lead developer for a communications software and radio signal. That's my professional life. I have been in the security space for a few decades. I have been in Bitcoin since 2012. I come at this with a different perspective. Our non Bitcoin project has a much larger code base, much smaller user base and also it's not insanely politicized. It's interesting to compare how that open-source project compares to this one. I did one of the python reference implementations for bip32. My contributions have been fairly small in terms of direct code for the project. I do considerable work in the machine learning space, mostly related to radio signal processing. I am interested in applying these machine learning techniques to blockchain and network analysis for anomaly detection or analysis on fungibility or forensic type stuff. I am interested in applying the same machine learning techniques from radio signal processing to blockchain analysis.

It's a platform. It's not a wallet. It's a wallet platform. Also building a mining factory. Building both a mining factory and also a mining pool with about 70 petahash.

Okay, thank you.

I am probably most well known for CHECKSEQUENCEVERIFY which recently activated. I worked on that because I was interested in lightning network. We needed checksequenceverify and a malleability fix, which is segwit. Now that one is deployed and one is close, I have a research-interest in making lightning network happen. There is enough people working on lightning for payments. My interest in doing distributed exchanges, credit currencies, like IOUs instead of hard currency. Debt-based currencies on lightning network. I am doing research on new scripting language and tools. Either this would be an opcode extension, or perhaps entirely new languages, and the tooling infrastructure around so that you could write a smart contract and compile it into a script. Distributed exchanges, asset issuance, and the tooling to provide the smart contracts related to that. You could use the same software to setup other networks for tech such as credit-based money.

Lightning works across multiple networks. You could swap a US dollar for a yen. If you have lightning on litecoin and lightning on bitcoin, I could send a lightning payment on bitcoin that releases a lightning payment on litecoin. That's how you exchange. You can do automatic trade across the payments.

Oh that's interesting. Okay.

Also very interested in fixing fungibility. Finding ways to make payments more private and hide information that is currently being leaked on the blockchain. Maybe using crypto tools or better coinjoin or things like that.

Okay. ... coinjoin ...

Most of my work has been in doing fintech clients, like smart contracts. Figuring out how to build the systems they want to build, like on top of bitcoin, more modular and scalable. Like replacing ethereum with better bitcoin tech. On tech I do security review and peer review. Strong interest in how to scale this system. Block propagation incentives and better blockchain designs that scale better, like treechains. UTXO commitments.

Hi. I have read a lot of content. To start with, I have reviewed most if not all of the public bitcoin scaling proposals. I have also read all the emails to the bitcoin-dev mailing list. And I have read all of the forum posts in the R&D subforum on bitcointalk.org ((group laughter)). Wait, there's more, I'm not done yet ((more laughter)). And I have also read and memorized a good chunk of all the IRC chat logs, although this is an incomplete effort so far. I also organize lots of information in the form of bookmarks and links. I am somewhat of a "librarian", in that aspect. I would like to ask before we move on, who here contributed to segwit by show of hands? And who here contributed to peer review of segwit by show of hands? Thank you.

Anything else? Okay. Great.

Involvement in electronic cash protocols from 93-95. In ecash systems, it was completely fungible. However, those ecash systems were completely centralized and they were shut down. When I saw bitcoin I saw that it wouldn't be shutdown because of its decentralization, but its fungibility is terrible. For fungibility, bitcoin uses decentralization. Confidential transactions, which mixes with coinjoin well. Encrypted transactions. Sidechains as a way to make more complicated changes to bitcoin, so you can have different chains with different features. The previous electronic cash systems had something called blinding. I would pay them money, they would give me an electronic coin, but even you inside the bank would not be able to tell who I was. It has properties similar to zerocash in that it is very anonymous. The point for fungibility is, you know, say TheDAO hacker was using zerocash. You can't freeze the coins or take the coins, because you can't identify them. You can't see the coins move. It's completely unobservable.

Completely transparent?

Opaque, so you can't see it.

I think fungibility is the big problem for bitcoin. We have to improve the technical fungibility. Schnorr signatures can help. We also have to improve decentralization. Otherwise we will have a fungibility problem. At the moment I think we have a risk, that hasn't been attacked yet, but we're exposed. There was something in the news about somebody in Europe, someone bought something with bitcoin, it was in the news and I don't know if it was correct or not. Well the news agency retracted this. Well, anyway... it doesn't have to be true to be a problem anyway. Biggest black market is supported by US dollars. Nobody seems to remember that many guns are purchased with US dollars. So anyway I think that, most of the utility and value of bitcoin is because it's fungible, permissionless, decentralized, and if we let that fail then people will lose confidence and interest in bitcoin.

If we knew how to solve this technically, if we had a space-efficient secure protocol to do fungibility, we would do that right now. There are things that we know how to do, but some things we haven't figured out yet. We can't always immediately solve these problems through technical means.

To add to that, it appears that any approach that makes bitcoin scale better, makes it more private and fungibility. So if we don't broadcast as much information, it helps improve fungibility. Long-term changes can improve this. It basically means that you broadcast less data.

This is why we support and develop lightning network. There should be many additional layers to expand and provide more functionality. Lightning network might help fungibility. We probably can't use lightning for everything. It helps. Lightning can provide the capacity for payment channels, like hundreds of thousands of transactions per second in multiple directions. It's not just for bitcoin, it can be connected to all the altcoin chains and any coins that exist can be connected together into lightning network. We don't have a complete solution. But we have many things that help somewhat. We're trying to do things, but there's non-protocol things we could do -- like making sure the hashrate is in different countries, with more companies, with different control, anything we can do and maybe even positive news stories about bitcoin to balance the false negative stories. There are multiple dimensions and vectors through which we can work through issues.

I learned bitcoin in 2012. My training was computer science. I found an interesting project regarding how mining can make a decentralized system for currency. Since I learned bitcoin, I contribute a lot of ideas, especially in the consensus protocol. Since I did not have enough skills, I contributed ideas. In the Hong Kong conference at Scaling Bitcoin last year, I wanted to do more and learned segwit. I learned coding and began to contribute. Recently I am trying to propose new scripting systems like MAST and new opcodes that might be useful. I think the consensus protocol in Bitcoin is very unique. It's not like Linux. If you don't like a distribution of Linux, you make a fork yourself. We have hundreds of distributions of Linux and that's fine. But in Bitcoin, the bitcoin consensus protocol needs only one chain and one consensus otherwise we have problems like Ethereum is presently experiencing. That's why I am particularly interested in these topics.

Okay, thank you.

We are manufacturing Antminer S9. Most of our S9 customer are from Western countries especially the United States. In the next one or two weeks, we will announce another miner. We recently acquired a company. We will open-source most of btc.com to help bitcoin ecosystem. Bitcoin mining pool is functional on btc.com and that will also be open-source. In the future, many miners in many countries can deploy their mining pool easy based on this mining pool. The most important today on bitcoin fungibility is block size.

Do you guys have any questions?

I came into contact with Bitcoin in 2011. At that time my goal was simple. It would potentially be a good asset to keep. At that time, there was a lot of negative press about bitcoin in Chinese social media. So he was going out there to .. bitcoins.. like repetition, and he developed it in the public space vigorously along with some other people during that difficult era. He's the one who translate Satoshi's whitepaper into Chinese. He's also the one who presented Bitcoin to the Chinese media until the situation turned around in 2013.

In the late part of 2012, I started to get into the bitcoin mining aspect of bitcoin. I was trying to develop the technology and also trying to fathom the economy around that industry. At that time, I was trying to invest in the mining only and I bought shares in a mining company. I also invested my own money plus investor money to purchase mining machines. Unfortunately at that time, the vendor couldn't deliver. We suffered a great loss from that investment. That experience compares us to getting into the mining industry myself. I found my partners and we started to invest and start to develop mining machines by ourselves because of that bad experience we had.

Back in that time, the mining community has come to the viewpoint that if I can control all the mining hardware in my own hand, then I can benefit most from this control. But this is running against the principle of Bitcoin network. I actually vehemently against that philosophy. We also observe that over the years those mining companies that practiced that, have inevitably failed and floundered because of their bad choices and poor judgement.

In the future, we will continue to manufacture the mining machines. We will only keep a small percentage of the machines for ourselves. In later sessions, I would like to share that data with you to verify that.

For myself, I would really would like to see the .. of the bitcoin protocol because I have now invested so much financially and personally into developing this protocol since 2011. I stay up until 1am or 2am in the morning to debate or to talk with people on social media. I work late nights to make sure everything goes smoothly. Just to realize Satoshi's vision that Bitcoin is a decentralized system that cannot be controlled by a single organization or a single entity or anyone who wants to take control of that system. It should be a global reserve currency for the whole community to take advantage of.

Okay, thank you. For the latecomers, could you introduce yourselves and also talk about what your current interests are and what you're working on lately.

I think everyone knows me. I have been around in Bitcoin for years. Since mid 2011. So at least five years. He was in high school back then. Relay network. Educational efforts.

Oh, hi. I do work on lightning network. My intent is to help make bitcoin great again.

Fedora. It is my hope that we can build a similarly strong community for bitcoin. Also community efforts on sidechains. He's very much one of our community building people at Blockstream.

I was working on Bitcoin in 2014. I had no understanding of the whitepaper when I first read it. I took some computer science classes and then realized it was pretty cool. I graduated from school in June. I am working on lightning network. I also do some work on btcd. I am also working on oblivious RAM.

Okay food is here let's get food then we can talk more.

Lunch

food

What do you each want? Not in terms of technology, but in terms of roadmap for what you want to see in 5 to 10 years. What do people want to see? What's on their wishlist? Gold ran for 6,000 years or something, and maybe for bitcoin it will make sense in a few centuries. Let's worry about things that are within our reach in our own lifetimes at least, more achievable goals should be picked. Do they want to aim for market volatility? Lite clients?

Whether to bring up legal risk. Has a risk of this being considered a primary concern. If it was the only concern we had, we would find ways to route around it. There are technical reasons that we could discuss as well, of course.

Oblivious RAM

Like a XOR linked list? I also have projects in encryption like ssh stuff. We have a paper we are submitting in like a few weeks. Computational private information work.

About mining

Back from lunch.

So we would like to talk about the mining situation in China. Okay. So it's coming up, is it too dark? Can you guys see in the back? Oh we should turn off the lights. Okay who has control over the vapor machine?

Hi everyone. I would like to introduce about the miners. Before I came to this meeting, we discussed some concerns from the miners. I should like to share some data. First about Antpool. You can see that we have a full node that can generate a block, they are distributed across the land, in different locations around the world. Antpool is a single pool, but the nodes are distributed around the world. So we have some control over the propagation. We do not necessarily have the advantage over a small pool. We cannot synchronize to work together because the lightning still travels still spends time, we switch the job we send the jobs to the different miners around the world and that still takes time.

We operate globally and do not necessarily have the advantage over a small pool. Antpool's hashrate is about 14%. The other 86% is by other guys from our customers or other mining machines. Bitmain 2015 customers, by person. We can see that from the perspective of individuals we can see that 76% of customers come from outside of China. United States takes half of it. And Canada takes another part of it. Germany had the second largest area of sales. Right now it's Canada after US. 24% of the customers are from China. This is accounted by individual person. Another statistic is by units of machine. We can see that China takes the majority of it, that's about 74.8% of the mining machines goes to China, and about 25% goes to foreign customers. If we combine these two statistic together, the China customers are more likely to build larger farms.

Question, is this by nationality, or is it by shipping destination? It's by nationality by person buying. Are there Americans buying hardware and shipping it to China? No, it's by shipping address.

Chinese miners are more likely to buy on average more large customers. From our experience, it shows that it is typical that American customers buy only one or two units of machine that they put into their own home or basement. Lots of our Chinese customers are large farms like 1 or 2 megawatts. These are kind of small scale. The large customers are 10 or 20 megawatt.

Cost structure for mining farms in US and China. Why is this the way it is? We can see that the capital expenditure per megawatt in China is 50,000 and in America it is 300,000. Power cost lowest available, $/kwh in China is 0.04 and in America it is 0.02. Time to build, in months, in China is 1, and in America it is 3 to 6 months.

America has much lower power cost available near hydropower stations. America will require more time and more CPEX to have a mining farm. These are mostly infrastructure things. $50k/megawatt in China. It's like $300k/megawatt in America. The labor cost is much higher in America. All of the wiring needs to be by licensed individuals. They need to have licenses. If you decide to build a mining farm, in China you could do that in one month. In America, a bunch of that time is spent talking with firefighters, electric company, regulators, you need to show them the places, the designs, make sure they are okay with the designs, they need to check everything, and they need to change this change that and that's another safety law. It's a very slow process. In China, it's very fast. You can build things very quickly. Regulation is very loose. You have very little to deal with.

From a capital perspective and time perspective, mining farms in America are very expensive to build. The amount of time in America influences the decision of course. And the power cost in China is not as good as America because you have more hydropower stations. You have 2 cents or 1.5 cent or something. In Canada too, it's cheaper power. The low price is not available in China. It's about $0.04/megawatt according to our experience. In China, there's a oligopoly of .. from a legal perspective, if you are any of the power company need to sell electricity through the Greek company and they charge a lot of it. If you want to make deal with a power company directly, it's against the rules. You need to spend resources and energy and relationships and these things on trying to get the - to travel with them - so basically in China the lowest cost of power is not as good as in America. To summarize, in America, if you do a short-term business where you want to get your investment back very fast, it's not as good as China.

Difficulty is rising fast. We know the reason why China miners are more likely to launch many farms. I can summarize this as because in the past few years, the risk involved in a mining investment are high. Miners do not like the difficulty going very high very fast. We can see in the past few years, this is a good time in January 2015 where the mining difficulty was not moving. There was a big shot around January 2016. Miners also do not like the price of bitcoin going down. We can see since the ASICs came,... January 2013 ASICs were delivered around them. Friedcat started doing their own mining farm. So we can start that graph around that. January 2014 was a bad time as well for the market price for mining. Inside the miners community, .. losing a lot of money .. because of the crash of the bitcoin prices... and lowest corner, .. and highest is $1000 U.S. dollar.

What's the reason behind this? The market is not controlled by miners. The technology is improving very fast. 130/110nm was ready in 2002. 65/55nm was ready since 2006. 16/14nm only ready in 2015. Bitcoin experienced technology improvement journey of 13 year semiconductor technology in about 3 years.

name, process (nm), sign off date, hashrate in GH/sec, efficiency in J/GH

BM1380, 55nm, Sep 2013, 2.8 @ 1.25V, 1.643 @ 1.25V

BM1382, 28nm, April 2014, 14@0.70V, 0.494 @ 0.70V

BM1384, 28nm, Oct 2014, 18 @ 0.75V, 0.386@0.75V

BM1385, 28nm, June 2015, 30@0.66V, 0.216@0.66V

BM1387, 16nm, Dec 2015, 80@0.4V, 0.08@0.4V

So about 20x technology improvement. You need a war. The smaller the process node, the harder it is to improve. We improved the power efficiency of the semiconductor. You have a lower capex and OPEX when jumping to the lower resolution. Yes we're hitting a wall. You can have a lower power cost, but the cost to fabricate the wafer increased. Maybe you have to increase the cost to make a single transistor to improve your power efficiency. The mining technology improvement have somehow just uh well slow that pace. It's kind of good news actually to mining rig investors because older generation miners hate the new generation. So the new generation will now come at a slow pace compared to before.

In 2011, ... miner will have less risk than before. The improvement of mining technology will have to wait the improvement of semiconductor technology. Moore's law is hitting the wall. bitcoin price is expected to be more stable. As stable as the U.S. dollar against the Euro. It will have some up and down, but generally it is stable. People are more likely to accept it as a reserve currency or to put it inside their savings inside the bitcoin network. So this will be good news for bitcoin.

I think there's a potential that the mining will shift to Western because regulation, the legal system and the power cost, this kind of long-term if we consider things from another perspective, in America there's lots of advantage over China. Even in Europe, we can find lots of cheaper; and lots of stable ecosystem. From another perspective, mining will have an edge in the Western world. People are waiting to invest in mining. Bitcoin hashrate tends to be more decentralized or more widespread when there's a more even state. It depends on how the economic and how the market for Bitcoin mining evolves in the next few years.

We need more people to put their savings in the Bitcoin network. Thank you.

Q: You mentioned how much of Antpool's hashrate is bitmain? How much is the hashnest service? Do you know?

Hashnest does not have a physical hashrate. They are in the 14%. It's actually separated, the hashrate.

Q: You said something like 80% of the hardware is sold, and only 12% is kept by Bitmain? Is it that shipped hardware, or does Bitmain own it and operated by someone else?

Our own hosting, our own mining operation with our customers and so on. We discourage them from putting their mining rigs inside our mining farms.

Q: You had a picture of where your hashrate is on which of your nodes. I wanted to ask if you could speak to the infrastructure around that. Is that all owned and operated by you in China? Is it operated by other individuals who aren't necessarily able to censor transactions?

Most of the hashrate is from other individuals.

Q: No I mean the pool operation. Are you operating the pool in the US? The antpool servers?

They are under Bitmain's control. We rented servers from Amazon. Antpool servers will connect to the US antpool server. European customers connect to the European Antpool server.

Q: What about having other people run the Antpool servers?

Maybe.

Q: You would collect the revenue, but you would have separate people in separate regions have the keys to the servers so that one agency wouldn't be able to target.

Frankly I have never thought about this. From the beginning of the business, .. next generation of the mining pool and open-sourcing it and it will be easy for our customers to setup their own mining pools. They don't have to us a third-party pool like Antpool. They will be able to build their own mining pool.

From the development side, we want to make tools to make that much more easy. We have had some difficulty because consumer adoption of mining hardware has gone down. There does not seem to be as much interest in people deploying their own mining equipment. It's hard to develop software without interaction with users. We need the users so that we can build the software to make it easier to have users in the first place. Yeah, it sounds great, if there's anything that we can do to help, we would be happy to help with that effort.

I want to add a point here that we need Bitcoin community I think we need to have a welcome that is kind of mining farm thing. For example, in China actually, 3k half-megawatt each. About 10-20% are that scale. There will be thousands of these. We need some conferences to invite the power companies, miners, local governance, and try to promote the mining farm building services. Just building the mining houses, it's a real actual company. If we can do this in America, then if we were to have a long-term business plan, you could have an advantage to China. Mining pools are a centralizing factor, but as long as we start to open-source our infrastructure, I think it will become easier for others to build a mining pool.

The existing mining software, I get lots of complaints from some other open-source mining pool, it sucks. Yeah, agreed. It does. It's very difficult right now to setup the existing mining pool software. Only a small number of experts can figure it out. It needs to improve. Yeah. There's also some tech that we know how to build but haven't built yet, which would allow you to pool your income without pooling your transaction selection. P2pool is an example of this but not a good example. It's not a good pool. Never was. There is tech that could be developed here where users can pool their income but keep transaction selection decentralized. Multi-PPS? The mining pools have to join together to share their income. It also increases the performance of the network because, right now all the pools are buckling against the other ones, it's creating a lot of orphans. Because they have like Bitcoin protocol is not so efficient from the block propagation ... in the middle of 2014, to the middle of 2015, we are losing approximately over 10% of mining power for nothing because of the creation of orphan. They were not propagating because of internal software performance issues. We could also create a how-to for installing pools. Why do users not do it? There is no reason to install a pool if you only have a couple gigahashes. You should have at least like 20-30 petahashes to be really efficient. If you combine a lot of users, and if it doesn't hit the, then it negatively impacts bitcoin because many users are just following this simple "How to install a pool" and they might do that for a few terahashes, there will be less profit and very high risk and they cannot provide the sources. At the moment there are only a couple of people that can configure the mining pool. It's a bare quality for end user.

It creates a liability though for the system. Exactly. Yeah. I think we can fix this going forward. Combining the pools, I think it's the next logical step. Instead of battling one against the other one, it should be some next step in the software development. Then the old pools will work together without any point of failure and without weakness from attacks, and the pay-per-share and so on, will provide you just payout. It will be logical. I think it will maybe not .. maybe not this year, but it should definitely be created ideally before the next reward split, and then the fee will be more reasonably high.

Am I understanding you correctly that it's possible for pools to not be concerned about orphan loss in the future? It's a question about the efficiency. ASIC development growth, it's a question about improving the bitcoin network. Imagine you have a Visa datacenter with 100k transactions/sec. If you can optimize your data center and reduce the electricity consumption, it means the transactions are cheaper for end customer. Replacement of CPU power for GPU power, it's a next logical step. It's decreasing power consumption and it's also increasing the price of your transaction, and ASIC increasing the price more, and increasing ASIC efficiency decreases the price per transaction. Making it as much cheaper as possible. But the miner power also creates protection barrier for asset, for bitcoin or for any coin what you are using inside the blockchain. If hashrate is higher, it's very hard to attack the coin or asset inside the blockchain. Additionally, you can just note take in line the cost of the bitcoin, you can also lower the bitcoin with an additional cost, like with a smart contract, the share inside the bitcoin, so it's the price of a bitcoin plus the shares of the company. It's more high cost the asset. Hashrate should go up. We're definitely reaching technological limits for now.

Selling the containers, selling the warmers for homes, like warming for water or something. In Ukraine, our partners, we have already designed a miner that works like a heater for a house. It's just warming the water. It's consuming the same amount of electricity and creates warm water. The question is only, if you are using a very small cheap and you're distributing them, they become inefficient. There's no possibility to install right now just one gigahash in a diesel router. The efficiency of the one million chips, not in one single miner, but distributed across the world, will be less efficient because of the delay in communication.

Q: After the halving, the difficulty went down since then by a little bit. Do you have any insight into whether a disproportionate amount are shutting it off geographically?

75% of the mining rigs will be shutting down. Or 80% of the mining rig of last generation at 28 nm. It's still profitable to run it even in some high power cost areas. Recently I think the shutdown is related to specific issues and power companies. Mining rigs were having trouble with their power companies. This drop is unrelated to the halving.

I was surprised by the decline in hashrate. So it sounds like it's unrelated, a local supply issue. In China, hydropower is very cheap right now because it's summer. In october, when winter is coming, some mining farms have to be closed. The mining farms will be moved during those periods. Some people are stealing electricity. Bribery cost.

Q: You were talking about installations in homes. High nm were cheap to install and more efficient as a heating element. Perhaps you won't get high hashrate from that because they are less efficient as miners?

It's a different economical reason to install them. Instead of buying just a heater, which will cost you almost the same money, but doesn't provide any return, the mining agreement will provide you economic return. But it's not logical and not efficient. If you install miners into TV sets or something. .... yeah everyone in this room is still scratching their heads about that. Right. But for warming, warm air, warm water, then the miner is almost the same efficiency in terms of condition. Why is it not exactly? The .. of the device will be higher. If regular warmer for water, cost like $1, then the miner will be $2.50 and higher price. But right now the growup of the difficulty is so fast that if you buy it, you will not be able to get a return to cover the price, because of the growth in difficulty. When it reaches a maximum point like 10 nm or 9 nm chips, then it will be more linear and then the home users can buy it and they can be sure that in 2 or 3 months they will get their investment paid back, plus some benefits and some investment from bitcoin. The bitcoin price is lower than it should be right now, it will grow up, it should approximately happen when mixing the maximal point of the technology, so then price should go up and then over a k, and this create an interest in all the public to invest more in the bitcoin.

As soon as the development of bitcoin mining chip catches up with mainstream general purpose CPU, we will see a slowdown in growth and thus the chip lifetime will grow and this will make it viable for consumers to have them. I agree with this. It makes the investment less risky. Yes I agree. However, on the other side, I think that if the growth of technology itself slows down, I expect the profit margin of mining to go down as well so that you can plan ahead and do better analysis and probably the competition would be higher so the profit margins might go down. This will also depend on bitcoin exchange rate. For competitive mining sure, but for compliance mining perhaps it would be different. Cost of supply would get close to the cost of production, more efficient. The adoption of the bitcoin is growing over time. The price of the bitcoin will be also growing up. As result, this is increasing the profit and making the compensation. I think it's a dangerous assumption that the market price will go up or do anything in particular.

You sort of assume that mining hardware ends up at the same state of the art as general purpose CPU. I don't know whether that is the case. In particular, if you could build a mining chip that gives a completely wrong result of the time but is 2x as efficient, that would be awesome to have for mining but it's unacceptable for general purpose for CPU. I think that once the tech catches up, they might find that for mining ASICs, they will find that a different design is interesting for other purpose. Can we stop here so that we don't lose the audience.

When we think in terms of PoW security, if you want to attack the network, you can do many types of attacks. There are less expensive attacks to worry about. Some of them will be faster than ASIC fabrication. In the future if we have a lot of latent hashrate turned off, and if it's vulnerable, then we have a situation where someone can turn on the hashrate as a hashrate attack. This is particularly concerning when you have a lot of latent hashrate.

One other thing that we can talk about later is block withholding. It can be fixed with a soft-fork, actually.

Future outlook of Bitcoin

One of the things that I hope to do here is to hear this from other people as well. I think we share common vision about what the future is for the bitcoin system and currency. Like all of us, I want to see the usage grow and see it penetrate every corner and aspect of the world. It will take time for this to happen. If everyone was to awake tomorrow and know that bitcoin will be the world reserve currency, there will probably be war. There will be fights over mining farms, even. It is good for all of us in the room that Bitcoin grows at a steady pace and that the world has a chance to adapt to this system and for ownership of bitcoin to be well-dispersed and very wide-spread so that everyone can participate in a system that is seen and received and is fair to everyone in the world. The technology that is possible in the protocols on the network, we're looking at things today that are much more powerful than we have already deployed. We know that many things are possible in the future that end users, if you think about the further out technology, like zero-knowledge proofs for synchronizing the blockchain. We know there are tech improvements that are possible, but it will take time to get to them. During that time, we need to advance the system, get more adoption, dive into more use cases, and keep track of the long-term advantages of bitcoin that make it valuable to everyone, that is permissionless, that it is open, worldwide, and to keep this at the forefront of the system. To get here, we might have to cooperate and work together harmoniously rather than in dire competition. There are many people outside in the wider world that don't use cryptocurrency-- that's the competition. We should be focusing our energies. We should be collaborating to make bitcoin successful there.

It's possible for interesting systems to become popular, but less important over time. There was an example. Everyone heard about paypal. It started as a bearer electronic cash system on palm pilot, a PDA before smartphones. People who were doing it thought that electronic bearer cash was very interesting. Paypal became centralized and had the same problems as banks. It became big and controlled by corporate interests. It became the thing it was trying to displace. One potential outcome for bitcoin is for bitcoin exchanges to become banks or bought by banks or incorporated into banks. I am not accusing of anyone. It's just how human evolution happens in previous systems. They could become stock market listed, bought by banks, and the permissionless properties might be eroded. For some people, that would be uninteresting. But perhaps someone would try to work on an alternative because Bitcoin would have degraded in quality, just like paypal is being replaced in a few ways.

So we just have to avoid that failure, and maybe bitcoin in 5 years could have, I don't know, a nice positive outcome would be the same amount of distribution and value as gold or something.

Let's say 10 years. Ok, maybe. You need aspirations.

I would also point out that in that kind of evolution to something more centralized, it would be easy for Bitcoin to change into something where mining is not needed. In ethereum, they intend to switch to something where PoW is no longer going to be required. In a centralized system, PoS is going to work. If you have a central authority that can decide between different systems, it will probably look like it works. If Ethereum switched to then, then why would you need all the environmentally wasteful work? Why not use the system that ethereum is using? It would be much less interesting even if you did switch. In that outcome, the miners wouldn't exist. It probably isn't going to happen in the next few years. I would much rather have a system that is interesting and secure.

It's easy to make centralized systems. The trend is probably going to go towards that if people don't care. The more centralized the system, the better it will seem to work. There's also the risk of boiling the frog. I think we have been boiled already.

Centralized systems are always going to exist. Paypal already exists. We should recognize that if we build a system that is getting closer to those alternatives, without providing major differentiation, then we could lose the competition because we wouldn't be providing something unique. Whereas if we make sure that we can maintain our core values, then we can continue precisely because we continue to provide something unique.

A wild Bobmon has appeared in the room. It's very important to capture this pokemon. We can't mention the name, of course. ((It was a pikachu, if we can relax the CHF rules.))

There is a transcript projected on the screen. Thank you. You're amazing. Really just the greatest person ever.

We have a list of topics on this side. Who would like to kick off this topic?

We don't have to discuss this but we all go to different meetings, and perhaps from Scaling Bitcoin or elsewhere there might be some information that would be good to share.

Lessons from the Ethereum hard-fork

There are talks from Scaling Bitcoin that we will add as links to the transcripts or email that around. If there is nothing to talk about regarding prior events and conferences, then we can talk about lessons we could gather from the Ethereum hard-fork. Who would like to start on that? Where to start? It's a broad topic. Who was surprised by this situation? Surprised by TheDAO situation? Surprised by the hard-fork? The fact that it had a bug? That people suggested a hard-fork for it? That the hard-fork went through? I was surprised that they did not have an improvement proposal for it. They just did a hard fork without writing it up. I would suggest that the DAO might not be that topical.

There are lessons there because we are also talking about different types of forks. There are forks, replays, things like that, The DAO might not be as relevant. There is the possibility or the fact that they are exploring new possible scripting languages for bitcoin. There have been arguments that if the DAO code had been more auditable or more provable, the specific recursive construction in the ethereum VM was reviewed and a warning was given regarding sandbox escapes and code that is hard to reason about. If I criticize everything, then I will be right about everything that fails... [Specific conversation about the tech failure in the ethereum script system] Cycling is risky, it was just ignored. People warned specifically about this.

I will provide a short summary about this. They are creating the technology in the way that they would like it to exist into the future.

If each morning you wake up and the rules are changed, then you are changing the game. They start to use the technology and there are a couple of points in the timelines.

First, it's a smart contract by itself. With Solidity, it is definitely not the choice. It should be improved. If it's changing anything in Solidity, it's changing all the rules in ethereum and changing all the rules inside the smart contracts in ethereum. If you're designing this smart contract today, it doesn't mean that tomorrow it will be able to work. If you change something in Solidity it might stop working and there is not continuous support of the same system.

A second point that should be marked is that it's changing proof-of-work to proof-of-stake. So first of all the issue about PoW is that it's created like a temporary and it's by design created by working on limited amount of time. The issue which PoW the more transaction you get, the more complex the hashes you construct, more memory for GPU cards, at the same moment there will not be enough memory for the GPU card to generate PoW. Once, we have already reached that limit. So the hashrate generation requiring for 2-3 GB of memory, then at one moment all of those GPU cards stop working and stop generating PoW. It was a software limitation. You can update and continue proof of work.

Changing from proof of work to proof of stake changes the economics of the system, all the rules change and it will impact everything. The next point, the construction of ethereum, it's built for rolling out to getting the current point of a blockchain should possess all the smart contracts. And smart contracts using solidity, it's consuming a lot of CPU power. If you get a lot of smart contracts, if the blockchain would be bigger, you would not be able to download the blockchain and synchronize new nodes. It requires a lot of CPU power. And during the time, if smart contracts would be bigger, than a regular node would not be able to process all the smart contracts. At this point you should somehow also perform hard-fork, and split the network. Each point is practically creating the pandora's box. If it doesn't solve it, it's basically the death of ethereum. If you solve them, meaning the hard-fork, it's meaning change of rules of the whole system, and the user will be ....

All the users already decide to use ethereum, they will be impacted and lose trust at this point. As you go forward in time the more users you will lose. Ethereum is too young to brave this, .. They are not thinking about the users because they are testing the network as they go and modifying the rules.

And also rolling back the transactions if it's money is quite risky. Someone should decide. Is it fraud transaction or not? It's also changing a lot of rules and also impacting the users and creating a dissatisfaction for the users. Some users will not be satisfied.

I was surprised about the Ethereum process that there wasn't a document. They have their own BIPs, and they didn't use it.

They were trying to fix the problem as fast as possible.

Yes, but they still had time to go. It wasn't last minute. They had some time.

A separate issue with this is that their response time to the issue seemed slow to me. I don't quite understand why. When there were network incidents in the Bitcoin network in the past, I think that the response time of the Bitcoin community was much faster. I saw basically no response from the Ethereum technical community other than telling exchanges to stop trading. For days after, funds were being drained out of The DAO and they had not given patches to the miners to block the transactions. Why didn't they reorg in the first hour? There were some simple things that they could have done. There were some things that they could have done well. I think they took wrong action. But they did take action. Credit where credit is due. Their hard-fork was bilateral, meaning that the new hard-fork chain would reject blocks created by Ethereum Classic, and Ethereum Classic would of course reject blocks from the new chain. The prior hard-fork proposals for bitcoin like 109, 101, 102, none of those were bilateral hard-forks. What this means is that if Ethereum Classic gets more total work than Ethereum, which to the market looks like it could possibly happen, it will not reorg. You will not have Ethereum Classic get more work and then the ethereum other chain gets erased. This is because of the bilateral fork. If they did a fork like the BIP 101 fork, and you had a situation where the classic chain got more work than the other chain, then it would have erased the chain history from the other one. Presumably they would have made a fork to erase the history and bring it back. It was probably easier for them to do it this way, but they did it well. The replay situation I think is quite interesting and has a parallel in Bitcoin. A year and a half ago, there was a discussion in the #bitcoin-dev chat channel when Gavin and Hearn were talking about their fork proposals. Some people began to discuss how to do replay prevention between forks of bitcoin. This made Gavin mad because he rejected the idea that another chain would exist at all after the fork. We had an extensive discussion about replay. I think we did that better than Ethereum because bitcoin has less replay risk, inherently. In bitcoin, we would not have as many replay problems if we had a fork like this. In addition to this, this was something we were thinking about when we started to think about hard-forks in Bitcoin.

Why is that?

The UTXO model would be why we would be better off. Ethereum has accounts, instead. So the anti-replay counter is more inherent. If you make a transaction you can spend them equally if they were in the same accounts. If bitcoin forked like ethereum did, there would be some replay. You could change things in the transaction format in the hard-fork, and other tricks to reduce the chance of replay. Ethereum developers knew about replay. They in fact apparently had a conversation with coinbase about replay before the hard-fork and their position was that there would not be two surviving chains so don't worry about replay. So I think the failure mode was a lack of sufficient paranoia, being overly confident, many things I think we do in Bitcoin we over-engineer a little bit but this over-engineering is for a good thing because we can't predict all the failure modes.

We cannot fix things in two seconds. It takes us some time.

But for example, replay is still not fixed in Ethereum world even though it is causing many problems. I am sure it will get fixed in some numbers of weeks or months. Replay could even be an attack against another chain, so some users might consider it a good thing. It's only a good thing if the other chain actually dies.

One point I would like to make, as an interesting thought experiment, is that it's important to make replay protection to allow prior transactions before the fork. There was discussion to change the transaction type to allow for prior transaction types. Particularly in bitcoin you need to do that. One challenge is that in bitcoin you might have locktime transactions that are pre-signed and we don't want to invalidate. Some Bitcoin ATM vendors have some timelocked coins and they can recover those in the event of the ATM being stolen, but they can't do this in another way.

So the interesting wrinkle in this is that if you have nlocktime transactions, if there is a hard-fork construction that allows for a new transaction type, and it allows priors, then the hard-fork transaction format would not be replayable. Well, there was a suggestion in that earlier discussion, to prevent replay without any need to change any transaction formats but it was somewhat complicated. Did it require nested or something like that? You would require miners to start producing 0-value TXouts that anyone could spend. And then transactions would pick those up and spend them. This is a lot of code. You don't have to require them, they could do this voluntarily. Well, it's complicated, it would work, and doesn't have those downsides. When we had those discussions and realized it was complicated, we realized how much work it would be. It's easy to do this as a soft-fork with for instance a signature hashing flag that says that there should be on the stack a previous block hash that is earlier than today minus 144 blocks which would be equivalent to that other proposal, with zero-value outputs. The challenge we had with that is that the only people who were interesting in solving that problem at the time were the people who were not interested in hard-fork arguments at the time. We talked through some of this, but Gavin was really angry that we were talking about that, he saw that as an effort to undermine a hard-fork, but it wasn't.

Seems like we have not translated in a while. They are reading this transcript, live. I would be curious to hear their perspectives on any of that discussion.

Whether the minority chain should be allowed to exist or not. We see that in Etherium Vitalk said that it is good with two-chains coexisting. But some of it might think that the minority chain should not exist at all.

I think a big problem you have with that attitude is that the moment you have any disagreement it does look like a 51% attack against a minority chain. At least with the obvious way to do it with a soft-fork. At worst, you could end up with legal problems.

Me personally, I would be dubious about participating in a forced fork like that. We should distinguish between should exist and should be prevented. It is bad in etherium that the other chain exists, but that doesn't mean..... any particular action to prevent it, such action might not be valid.

Because our difficulty adjustment is relatively slow, if we were to say that a hard-fork would only happen after 99% miner support, assuming it was achieved by 99% miners supporting it rather than a forced soft-fork to get there, you would be in a situation where it would take a long time to adjust on the minority chain that it would not be usable over there.

The challenge with this point is that, in the case of ethereum, it's not just that they moved which was a problem too, the go-ethereum client would not synchronize a shorter chain even if it's the only one with valid blocks. Ethereum Classic had to blacklist the hard-fork block immediately. Ethereum Classic also forked at that point. It was a soft-fork, though. If you start a pre-fork Ethereum client, when only happened to connect to Classic nodes, it wouldn't know at all. It's a complex set of variables for that scenario. You can't count on retarget to [ ... ] -- a minority side, under bitcoin rules, it's very difficult to do make trades because you're waiting such a long time. You're in a position where it's less likely than ethereum, for people to start making trades and creating a viable currency. One thing that we learned is that there's a large economic incentive for traders to encourage the splitting of assets. Poloniex alone in the first several hours after opening up ETC made $200k in trading fees. Traders have made money on the volatility, as well. If nothing else occurs, an incident like this is an opportunity for exchanges and traders to potentially make a lot of money. If they need to take some actions to make that outcome occur, thy might do so, even if the market cap of the currency goes down. Ethereum currency holders lost out on this, but the exchanges and traders made some money, although not universally. BTC-E and Coinbase are probably not doing so great, although others might have better outcomes so far. It might be easy to get into a situation where you can do an anti-replay mechanism. One exchange might be in a situation where they lose a ton of money if the fork has value. Who is responsible for the lack of care that led to this situation? Is it the exchange's faults who didn't protect from replay? Is it the developer's fault for not foreseeing this as a problem? In the U.S. legal system, the way to answer that is by court cases. I think that in this case, because it is designed mostly by ethereum team, it's not like open-source, they might have liability because I think legally ethereum more look like a commercial project because they are selling a piece like a commercial company. So technically for a lawyer, it's a commercial project (all open source is commercial). The specific economics around ethereum, like the pre-mine, maybe makes a stronger argument there.

I think we are learning as we go, but I have noticed that only the native English speakers are talking. I would encourage everyone if you want to say something, please jump in and make yourself heard. Or if you feel like people are going too quickly, ask them to pause and stop.

In such a fork, in bitcoin, if that happens, lots of bitcoin miners will start to protect the viability of the majority chain. They will volunteer to attack the minority chain.

So one of the interesting things in Ethereum is that immediately after the hard fork occurred they declared the other side the loser, but both sides did that.

I wouldn't go and assume that it would be easy to get away with 51% attacks against minority chains. And they might start taking legal action against anyone here. I would never do that with my name attached. Pretty good chance that I would end up in jail for that. We would all be liable to some extent.

Maybe if you mine an empty block, on that chain, then basically it has no value. Otherwise they will compete against each other long-term for value. If we just work together, to technically somehow make sure the minority chain cannot not exist. There were some proposals made that the minority chain could not exist, or that the minority has to have a hard-fork themselves, and that is fine.

Technically this is easy to do. This is called a forced fork. The problem is that there's a good chance, no matter how you did that, if there was someone in the minority who said "no, you're attacking us, you're preventing us from transacting" that could then result in legal action. It's such a grey action. We have no idea how courts would rule on this. Anyone with their names on this publicly, especially in western countries, . The other thing is that we do know how to increase capacity through soft-fork methods, so we should prefer that. But we are getting off-topic. Ok.

The bigger point that we need to be careful about is that in the Ethereum community, they argued that this is a safety mechanism in Ethereum, that if there's a disagreement about the rules, then life can go on and yes the economic effects of two competing chains are bad -- I agree about that although they don't all agree — that's a balancing protection in the system perhaps. If the majority of Ethereum miners want to do something bad, as some argued that they did, that the network can continue on without them. And it's a way for people to feel more comfortable with their Ethereum investments, and that if the worst happens, then they could at least stay on in a diluted split system. I don't know if it's possible, in bitcoin, to really make it so that the minority fork cannot happen in Bitcoin. Even if we could make it impossible, we would lose an argument for Bitcoin's long-term safety. We should be conservative in how we talk about and think about that. The fact that the miners are counterbalanced by the users enforcing the rules is an important part of Bitcoin's security model.

In addition to that, not just the long-term effects of how that affects the pseudo-political view of how the system works, any effort to try to create a situation where the minority or one particular chain cannot continue to exist, there will be many people that strongly hold that view and they will fight to make sure that chain can continue. I know there have been proposals to make it less likely that a minority chain can continue, I have not seen anything that makes it absolutely impossible to continue. If you attack a minority chain, then basically bitcoin is no longer permissionless. This also plays poorly with concerns about mining centralization. If the system is balanced, it's okay to say the other forces are balancing, but if you need permission from other miners to run another chain, then the centralization of mining is much more of a concern.

In the next few months, maybe a fork would be likely to happen, I just have 1% of hashrate maybe, I decide to fork away. I have only 1% of the hashrate, and I fork away. What would happen to that chain? It's hard to say. And do exchanges need to care about that? They can profit from that, independent of whether that 1% chain is technically secure. If some random person with 1% makes a fork, and an exchange doesn't know about it, and they didn't protect themselves against replay, do they have liability for any random person that makes their own fork? Should there be a standard mechanism for preventing replay in bitcoin hard-forks? Even if we don't want to do a hard-fork, we should recommend an anti-replay mechanism. The transactions should commit to a blockhash, which is dangerous to do with the most recent blockhash because then reorgs cause problems. But if it's a blockhash from 1 day ago, like 144 blocks, then it does close the time window for when a replay attack could happen, and the chances are that this wouldn't happen for situations that might show up in court. We should properly fix replay in bitcoin, so that if someone wanted to create a fork, then there wouldn't be a replay issue.

But couldn't the purpose who is forking could chose not to use that mechanism? Well that's on them. But it's not on them. [cross-talk]

We can't force people to be sensible. We could do some work to encourage them to be sensible. I think at a bare minimum on a cultural level, it's good to establish the precedence that exchanges in the event of a fork, have an obligation to give coins on the old fork back. This is more of a cultural norm, of course. One of the things we have to be mindful about, in the infrastructure of bitcoin, when we do things that change things on how bitcoin works, it imposes cost on all the users of bitcoin. And they have their own business concerns. If we impose too much cost on them too quickly, then they will respond in dumb ways like not listening to us, adopting strange altcoins, ignoring us, etc.

Can we let the miners talk a little bit?

I think the part of the blockchain created by multiple years, creating another one, split in a chain continuously leaving independently, create a lot of potential issues. We may be should take the point of view that if someone likes to alternative chain, they should just waste their fearless one blockchain, like new start for a blockchain. Like a new point. And then continue. It's more like splitting the result of the previous year, and in October's its lights and you could never prevent exchanges from playing on this split. You could never prevent the users, because you mostly rely on user belief of money, and on one side of the blockchain and they have the private keys. There are a lot of users. This should never happen. Most likely the current blockchain doesn't fit into your requirements, and you would like to, just to create something.

Okay. Miners, could you talk a little bit about your perspective?

I don't think it's reasonable to assume that exchanges can give back the other coin. The thing with Ethereum Classic, it's an interesting scenario is that the thing they didn't give back was the original coin. It wasn't like someone created something; someone created something new, they jumped to the new thing, and didn't give back the original asset. Some of the exchanges have given it back already, like on Poloniex. The ones that aren't giving it back, that's the situation they are in.

It's like two copies of the lottery ticket, but the first to show the lottery ticket gets the prize.It's possible right now for coinbase to give it back. Even though they lost, they can buy it back. Let's say the price went back up, well then there's no way. They lost it because of replay in this case. If we're looking at what are the ultimate lessons from this to learn? What should be the standard of care from developers? Some exchanges profited from the volatility from this. Think about victims, though. Users, other exchanges, other businesses, TheDAO hacker, it's a tremendous amount of systems that you have to change very quickly if you're an exchange in a very fast moving and confusing situation, when you have a situation like this. I'm not even talking about legal responsibility. What about an ethical responsibility of the developers? What should be the future standard of care that we expect for cryptocurrency?

I would widen that from developers to infrastructure. Together, developers and miners are part of the infrastructure that make Bitcoin go, and to a lesser extent the exchanges and infrastructure providers. They are the ones that make the bitcoin currency usable, we have a duty of care to make the system stable and make sure it upholds its value. We have to make sure that nobody loses money.

For example, the client should avoid the cases where you're entering the wrong address and you're able to send the money for nothing, like destroying it. The point here is that Ethereum doesn't do that either.

Standard or duty of care, the community should learn from history like incidents like this. They should ask the question: are the developers moving too fast? Are there reasons for this change, and are those reasons good?

Many people would see TheDAO hack reversal as a social good. And that good could outweigh the potential harm. However, I would much rather see duty of care as much more important for Bitcoin. I would see this as an immutable ledger. It's a social good that outweighs these harms.

This reminds me of one of the announcements on the p2pfoundation site from Satoshi which was that the advantage of cryptography is that it gives you security that cannot be taken back no matter what no matter the reason. (See link for quote)

http://p2pfoundation.ning.com/forum/topics/bitcoin-open-source

It has clearly poisoned the other chain. A lot of the community has found it less interesting because it no longer lives up to what other people joined the community to do. That was not analyzed when people said "just return TheDAO coins". You cannot control the markets. A lot of users lost money in the Ethereum hard-fork. Some of them lost trust in blockchain technology, maybe forever.

Other aspects of duty of care could include the vigorousness of technical review, having a specification, promises made to users when a system is not ready. Clear communication to users.

Has ethereum scared users away from cryptocurrency in general? I think it has some, at least. Did we, the bitcoin community, do enough to warn people in advance of these events with ethereum? If we had done more, would it have scared away fewer people because "we told you so"? I don't know. I have kept my criticisms of ethereum relatively quiet, because I do not benefit from criticizing their efforts. If I say that ethereum has a bad design, then some people would say hooray, and the ethereum people would throw more rocks. There are enough people that are throwing rocks at me already anyway.

There has been a lot of schadenfreude in this community. Damages in ethereum hurt us all to a very significant level. But at the same time I could have warned people more. I think we are all guilty of this. When it pertains to legal risks, if they do things that could complicate things for us..... Also keep in mind that this situation is not over yet. It's a competitive solution it's like blaming one side and another one side. Only independent experts, independent technical experts who understand how blockchain works, might mark the potential risk for the technology. But from our side, it doesn't look like a ... even if we provide any indication, this could be interpreted by many sides, but neither person would be just blaming.

The hard thing is that experts don't exist. Asking someone to create like certification or qualification, ... it will also be harmful for there to be certification. This is a great risk in many industries. If cryptocurrency as a whole doesn't mature and behave responsibly, the result will be that either we fail entirely, or there will be regulatory pressure that creates enormous cost for all of us. We don't want that. In the past, I have reached out to competing cryptocurrencies and told them advice about how they might be screwing things up. Some have listened, others have not. There are places where as a whole cryptocurrency needs to get its act together so that we don't end up getting regulated in bad ways.

This kind of risk is a particularly bad one. We can't function in an environment where developers as a whole can't operate in the public. If we were in a position where we had to all be pseudonymous, anonymous like Satoshi and so on, and if developers would be politically and legally blamed for their actions, nothing would get done. Notice how outside the room it does not say "bitcoin meeting". FBI knows. I bet your plane ticket says.

We need to let the miners talk. Anyone else who hasn't been speaking?

I would actually say that regarding the eth hard fork that yes the situation is still ongoing, but even if completed the analysis should be going on for some time. We haven't heard all the stories about how various companies were affected by the hard fork, but that doesn't mean that they don't exist. There should be a post-mortem.

If we wait long enough they will probably do another hard-fork anyway.

It's important to understand that all the confusion and losses and broken promises were entirely foreseeable. And many people had foreseen these problems. The whole Ethereum debacle is really bad for Bitcoin because it shows that some cryptocurrencies are not trustable. For the general public, it's hard for them to make the distinction at all. The public doesn't know the difference.

There's a question of product differentiation that arises here. I think the Ethereum split is an opportunity for bitcoin to be product-differentiated from ethereum. But I don't know what that product message is exactly. I don't want to say something like "bitcoin never has any hard-forks ever" because I can't make that happen anyway. How about "Bitcoin has a vigorous duty of care"?

Once we have AI and machines manufacturing mining rigs and setting up automated facilities, and AI writing code and we take out the human element, then bitcoin is really immutable. The ethereum mission statement was basically exactly that. Removing the human element. We could say that we're doing the same thing, and we are, script validation is law. If you redefine law, then that's meaningless. This is profound for me, because the ethereum website had the strongest language and it's still there. The ethereum website and ethereum README said ... it had the strongest statement that code is alw, and it's much stronger than anything on bitcoin.org, and it had a contract like code is law, and a lesson we should take from this is that saying these things doesn't make it true. And it doesn't even persuade public opinion, at least not enough to prevent a mess.

I don't know what it is that causes this expectation. Ultimately it is expectation of the community, if a community assumes that a hard-fork for whatever purposes are hard, then they are hard. If people assume they are not hard, then they are not difficult. In the case of ethereum, or TheDAO, there was an explicit language and an explicit contract that said the opposite. Compare it to the Bitcoin event where MtGox happened, where sort of the relative economic impact was the same. I cannot remember anyone even suggesting a similar approach. So clearly at the time in Bitcoin there was an expectation difference. Was there just one address to do to undo the MtGox problem? Well yes that was a difference. Would a hard-fork have been considered if there was a single address in the MtGox problem? Well there was a concern about MtGox destroying 3000 BTC because they sent it to a zero-length script. There was discussion much later on where some random person on IRC discussed a hard-fork to recover those 3000 BTC. It never got any traction.

It's a conflict of interest when there's some insiders that have a vested interest in the outcome of an event ... if you have a strong separation of concerns, where the different players are not crossing over, well we all have kind of a vested interest. It's different because of TheDAO. Ethereum Foundation has something like 20% of all ether. It gives them a lot of weight. With MtGox, if we reversed the MtGox stuff, I would have made a profit from the MtGox insolvency coins, but I never suggested that because it would be wrong to do.

A lot of the fintech stuff I have worked on, the data to do reversal simply does not exist in the public. Fungibility actually boosts immutability because if you can't target the coins to take back, then you can't even make a proposal to undo it. At minimum, it requires a lot of upfront effort to do that change. If I wanted to reverse a MtGox scenario, I would spend a couple months petition users to collect data about the MtGox scenario, and perhaps this would be stretched out even longer, which would be helpful for preventing a hard-fork.

Talking about what we can learn: The expectation regarding the ethereum hard-fork, we are talking about making it hard to do reversals in Bitcoin in such a case as if it was always the right thing. And it might not always be the case. But I think what could happen is that if you build a system where it is nearly impossible to reverse in case of a mistake being made, people are more diligent about what people do with their money. This is the outcome that you want. You want people to use the system in a way where the people are sufficiently diligent such that there is no demand for reversal in the first place. This could be done by education, for example.

If you want a reversible system, you could always build it on a second layer on top of the immutable layer. This is not technically hard. I don't think that people in the community realize this. There's a special element in TheDao where it was described as "perfectly safe" whereas nobody in the Bitcoin world described MtGox as "perfectly safe". TheDao was described as perfectly safe and if you didn't like it you could take out the coins. This is something we should be mindful about for future smart contract work.

Both TheDao and MtGox were both perceived as "too big to fail" to some extent. But yes MtGox failed.

I had an idea for a underhanded smart contract contest -- compete to come up with the best safe-looking script that actually steals money. This would help increase awareness regarding how difficult it is to create safe smart contracts. I stopped working on this because of TheDao hack because it would be in poor taste.

In Financial Crypto conference, there was a short talk about a particular script in Ethereum that was a provable pyramid scheme. It was not only a pyramid scheme, it was advertised as one, and it was also a provable pyramid scheme, and yet people still sent money to it. Yes, it's gambling. It's the ethereum investment thesis. Some people want to play that game. People like the redistribution of wealth game. It's a game. But there are probably many things that the bitcoin community could do to increase awareness of various risk, which might reduce the risk of thinking things like "the network needs to reverse to save theDao". "Of course it was full of bugs". It would have played out differently in the Ethereum world because of that. Well, with the exception of the Ethereum Foundation conflict of interest.

We saw the poll before the Ethereum Foundation hard-fork. There was 10-20% against it, but we see right now the market cap of ETC is about 20% of the market cap of the ETHF currency now. We can see this disagreement between two parties because one party say we should have "code is law" and the other party says "since this DAO hack is not acceptable and lots of people lose money, then we should save it because they are saying save it". It's a different opinion between two parties. That's why ETC can gain momentum. Right now, for Bitcoin, we're in a different situation. Increase the block size or not. Do people in Core still agree, 10-20%, is that still a significant?

There are a few points to make here. 20% of ethereum people voted for it and 80% voted against... it was only 5% that voted at all. It was 5% voted. And then 20% of the 5% was... so it's very unclear what the actual numbers would have been.

.....

With bitcoin, again, we can try to know. But keep in mind that people saw a hard-fork go horribly wrong. It went wrong in a way where a lot of people invested in Bitcoin would consider it going really wrong. Perhaps to Ethereum investors they might have other expectations. I don't think I could convince a lot of Bitcoiners to do a hard-fork, anymore, after this.

The outcome for Ethereum is no where near as bad as it would be for Bitcoin, which is actually used by people. Whereas Ethereum is not really used in any retail or p2p money transfer cross-border stuff right now. People are buying it on an exchange and then they put it into TheDAO or make test contracts that don't have real value. Whereas in Bitcoin there is real money to be lost by mistakes.

But arguing the other way, in Bitcoin there is more incentive to get the details right. Ethereum failed even the most basic due diligence in terms of even specifying what they were doing. In Bitcoin land, we wouldn't fail at that part. In Bitcoin, what we do matters a lot more than what they do in Ethereum today. But you have a point at least.

It's still difficult to get accurate views on any of these. I'm not sure we have any clever way to poll the community that Ethereum didn't try before the hard-fork. They spent a few days of polling, whereas in Bitcoin we would take many months or years to gather the election data. I don't think we have a clever way to poll the community.

Part of the problem is that opinions change, and they are often conditional, and it's hard to collect all the conditions of those opinions. If you start with one idea, then change it, other people might no longer find those opinions to be representative of their beliefs.

It's difficult to reason about dynamic systems that involve these non-linear incentive relationships and we just need to target stability. In the bitcoin community, we favor soft-forks because we can build safety mechanisms where it is less likely to result in two chains. We can do this with consensus building as well. I think that in a world where everyone wants a hard-fork to happen, and they all agree, then it's not a big deal. But it's a grey area between everyone and not everyone, and how do you determine this?

The act of the Ethereum Foundation releasing the hard-fork was partly the cause of the trouble. It seemed official that there was a vote and everything was decided. And then miners/pools piled on. And in some cases, miners voted against it, but their pool didn't want to be the one mining the minority chain, and ignored the user vote. That happened and it's not representative. That's the Buterin Effect.

The official air of it gave it more traction than it would have had organically. If you said here's another client at another area to download, if that was how it was done, then it may have taken months and months if ever for the fork to activate because not enough people would have cared. Pools were just looking at this out of control effect that just happens.

If that one pool didn't switch to the other fork, they would have made a lot of Ethereum Classic coins. This is not unique to this kind of situation. It's the same in almost every vote on anything, like elections in any major country. People are often heavily influenced by who they are told who will win. Exit polling, even, can have major effect on this. If someone is on an exit poll showing the other way, it could swing the other way.

The value of money is in consensus. So the Buterin Effect here is way stronger here than in other political systems. It makes sense to go with the majority because otherwise my money might not be worth very much. This could cause a big amplification effect. It looked for a while that the Ethereum Classic market price would go up, it would be more profitable to mine, some hashrate would join, the price would go up, then more hashrate would join, and at some point it reached some equilibrium where it would stop going up. The hashrate got to the point where ... there were these run-away effects. It's psychological. It's a psychological cause for price increase. It caused people to explore the supply-demand curve in a way that moved the price up. Some people were saying "oh it has 12% the hashrate, so why is it only 10% of the market cap therefore it is underpriced".

I thought it was interesting that there were probably a lot of miners that had no opinion either way, but they mined it because they could make profit. Yep, that's what happened. That's how it works. For a future possible split, it's something to consider.

There is a lot of profit to be made by stirring the pot and inciting people to go off and go on a different fork, or maybe incite people to do things that might not be in the best interest of the system. As infrastructure providers of bitcoin, we should be careful to avoid stirring the pot, and we should be clear to not put ourselves in a position where it is incredibly profitable to cause things to happen.

Pretty graph of hash rate and price of ETC / ETH: http://slacknation.github.io/medium/13/13.html

...Social aspects are incredibly important to understand the possibility of having the social motivation for having a contentious hard fork in the first place. It's interesting because it is Hobbesian. You can have different social constructs.

... and by avoiding that, you can create new social systems that are more fair, etc. And ethereum is trying to build a society where their justifications are related to social norms. How you go about, you have the political justification like a "majority" or "majority belief" that the coins should be taken back. And we need to be cognizant that throughout the history and future history of cryptocurrency, this is going to be a defining factor in terms of justification for doing this.

This idea of like, what's going to come next after that, we're already increasing the block size with segwit. That's the reality of it. With segwit, the block size increase that we're doing is a one-time thing. The underlying technical details of this is that we cannot repeat segwit again, although we get a boost from Schnorr signatures in the near future. The specific technique only works once. With hard-forks, you could attempt to do that indefinitely and create a new coin every single day. There could be a trade-off between decentralization and size from each day, and doing a hard-fork from that standpoint could be quite controversial depending on the social precedence. It's hard to avoid that level of social controversy if you're trying to do a block size increase hard-fork. Equally, just the notion that anyone could do a hard-fork at all, it would be controversial and it's tricky to make it less controversial.

To bring it back to ethereum, since ethereum classic has such a lower gas rate, could we get the gas rate raised up to infinity and test out a fully scaled up chain? That could be really interesting, because then we don't have to test bitcoin with transaction fees only. They didn't fork their testnet, in ethereum, they had a testnet but they didn't fork it first. Has ethereum forked their testnet?

They set up a continuous integration network called Hive to do testing. You have to do live network testing. You learn different things in different environments. None of them teach you things that you learn in the production network.

It's more of an opportunity for security researchers to say "aha! I broke your test network", you know instead of saying "aha! I broke your coin" which would be decidedly worse.

You can answer some economic questions with a test network. One of the things I wanted Gavin to do with his block size increase proposal, was to backdate the date of the fork sufficiently far back so that we could see whether anyone bothers to run test nodes. You would need a couple hundred gigs of hard drive space to even test this. He said, in private, "of course nobody would run it". But he didn't think that was important. He had a point: the fact that nobody would run testnet, with lots of 8 MB blocks, doesn't mean that nobody would run bitcoin with 8 MB blocks.

During the Ethereum hard-fork, exchanges make play more important role for the success of Ethereum Classic. After fork, we did mine a number of blocks on the old chain. Until we gave up and nobody gave us any ...... but ethereum classic gets succeed once major exchange supported the chain. If we fork bitcoin, I think it's a situation maybe similar.

By the way very interesting that the exchange price, it was based on bitcoin. The exchange rate is based on bitcoin price. So what currency to setup the price? Kraken pairs are all bitcoin based now.

I have talked with Ethereum developers about this. They are all getting paid in bitcoin. Their prices are denominated in bitcoin? The way that they get paid is by transferring bitcoin. They have USD denominated salaries, but it's paid in BTC.

Some of this ethereum activity has impacted bitcoin price. On the exchanges, everyone who made an investment in ethereum, ... the volume of fiat for ethereum is very small. People making the exchange for bitcoin and then from bitcoin for fiat for use then for euro. This is the reason why the bitcoin price is pressured all this time volume selling is higher. So the people just leaving ethereum, at least some of them [are driving down the price].

The suggestion that they gave up on mining ethereum classic, because it wasn't necessarily as tradeable, to me that begs the question is it the obligation of exchanges to always by default continue listing the pre-forked coin? Even with 99% of, .... Well, remember there's a lot of money to be made with listing all the things. But let's say you have a preference for one. At minimum, because you bought in, you should deliver.

Say you are a gold depository. And there's a new thing called lead. And you're switching to lead. Yeah you should switch to lead. But at minimum you should deliver the gold bars.

A better example are stock splits. It's more clear that you should give both parts back, after a stock split. It's property. As long as there are some blocks on the other chain, it's hard to argue in court of law that you could get away without delivering both coin properties.

They could have waited a month with some best effort to hold coins to see how things play out.

Have we beat this topic to death yet?

So one thing to say about ethereum, is that you can say that what ethereum did well is that they made lots of positive media and PR while things were failing in the background. They continued to taunt success, while everything was failing in the background. In bitcoin, we tend to say things like "I don't like the way that's going" and have our arguments in public. It might be good for bitcoin confidence if we were more positive, like let's say companies were working together to say joint positive marketing. That kind of PR and marketing, in the bitcoin world, has the ability to be self-fulfilling. With a little bit more, the ethereum side could have maybe avoided some of this, if they were better at this. At a technical level, we could be very upfront with each other.

You have to be careful about how far you go with this. You have to build trust with external communities. They have to know that when they are talking with you, they are getting the real deal. Previously at a geophysics startup, they like to bring the investors to the engineers who talk frankly about what's working and not working, because we're talking about a 12 year project with $150 billion poured into it. The investors want to hear that something real for the next year is happening, not that something that is being filtered. I think there is a balance.

You have to look at other industries where nobody would dream of letting engineers speak in public, which could backfire for those industries. It's not necessarily the way to go for some industries.

There will be a reception in 20 minutes. We can keep talking. We can eat and talk.

Maybe this kind of hard-fork is very difficult to be prevented from, this kind of cryptocurrency system. The idea of a currency is given by the consent of the people who have participated in the system. In a hard-fork there might be 3 groups of people. Two kinds might be, I will persist in A, and the other party will persist in B, and there will be some people who say both parties have won and now there's two coins. In that situation, the split of the community will be very hard to be prevented. Before the ethereum hard-fork, lots of people still have an illusion that okay maybe one is the genuine ethereum... actually that's a lie, it will not survive. But after the hard-fork we just see that there's actually no genuine chain. And the miners, to kill the minority chain, is it the right thing to do? Any other hard-fork is now more difficult as a result of the ethereum hard-fork.

Ethereum's hard-fork, for example, is very controversial. It's against their own advertisement that code is law. In bitcoin, increasing the block size is much less important rule, it's just a technical rule that was written by Satoshi in 2010. It's technical, but it's not related to the philosophy or the value of the system. I think this thing, makes maybe in the future any hard-fork will be contentious no matter what.

Can you explain why you don't think it's tied to value? Well, I think he meant moral value. Why do you think the block size change is not tied to moral value? If we did a hard-fork to unlimited bock size, I would quit and I would be done. The block size at a technical level determines the decentralization and whether people can participate running the nodes.

But perhaps we should look at this in terms of fungibility. If there was a hypothetical break in fungibility, then people would find bitcoin uninteresting and move on. Block size can break fungibility, and that's why it's controversial.

The fact that you're hard-forking for a block size change, obviously presupposes that you're hard-forking. But we have a soft-fork 