In section 7.2, we'll talk about the Bitcoin Core Software. This is a piece of open source software which is a focal point for discussion of, and debate about Bitcoins rules. Bitcoin Core Software is a body of open source software. It's licensed under the MIT license which is a very permissive open source license. It allows the software to be used for almost any purpose. As long as the source is attributed in the license, the MIT license does not script out. The Bitcoin Core software comprises the most widely used Bitcoin software. And even those who don't use it, tend to look to it to define what the rules are. That is people who are building alternate Bitcoin software, typically try to mimic the rule defining parts of the Bitcoin Core software. That is they look at the parts that check which transactions are valid. They look at the parts which check which blocks are valid, and they try to behave in the same way as the core software. So this is the focal point for talking about what the rules are. In fact, the Bitcoin Core defines the de facto rule book of Bitcoin. If you wanna know what's valid in Bitcoin, if you wanna know what the rules are, this is the place to look. This or explanations of it. Another related piece of machinery is Bitcoin Improvement Protocols or BIPs. These are formal proposals for a change to Bitcoin. And typically, an improvement proposal will include a technical specification for a proposed changed as well as a rationale for it. So if you have an idea about how to improve Bitcoin by making some technical change, you're encouraged to write up one of these documents. You're encouraged to publish it as part of the Bitcoin improvement proposal series. And that will then kick off a discussion within the community about what to do. They're published in a numbered series. Each on has a champion, that is sort of an author whose job it is to evangelize in favor of it, to coordinate discussion and to try to build a consensus within the community in favor of going forward with or implementing a particular proposal. Now what I've talked about so far are proposals to change the technology. There are also some BIPs that are purely informational, just to tell people about things that they might not otherwise know, or that are process oriented, that talk about how things should be decided within the bit coin community. But nevertheless, if you have an idea of how to improve Bitcoin, typically you would make a Bitcoin improvement proposal and that would be the process for discussion going forward of proposed rule changes. And so we have a rule book and we have a process for proposing, specifying and talking about rule changes. Now the other group we need to talk about with respect to the Bitcoin Core software are the Core developers. We have these six people, maybe arguably five, Satoshi Nakamoto who we'll talk about a little bit later, is not currently active. But the other five are currently involved as core developers of the Bitcoin Core Software. So these are the people who are leading the effort to continue development on the Bitcoin Core and who are in charge of which code gets pushed into new versions of the Bitcoin Core. So how powerful are these people? Well, on the one hand they're very powerful in one sense. In another sense, they're not all that powerful at all. On the one hand, you could argue that they're powerful because the rule changes. That is, the changes to the code that get shipped in the Bitcoin Core will be followed by default. These are the people who actually hold the pen that can write things into the defacto rule book of Bitcoin. On the other hand, because it's open source software, and anybody can copy it and modify it, anybody can fork the software at anytime. And so if the lead developers start behaving in a way that the community doesn't like strongly rejects, the community can go a different direction. So one way of thinking about this is to say that the lead developers are leading the parade. So they're out front in the parade marching and the parade will generally follow them when they turn a corner. But if they tried to lead the parade and the direction is disastrous, well then the parade members, the marching behind them like the side and go in any different direction. They can urge people on, and as long as they seem to be behaving reasonable, the group will probably follow them. But they don't have formal power to force people to follow them if they take the system in a technical direction that the community doesn't like. So it's worth, in this respect, thinking about what you as a user of a system can do if you don't like the way the rules are going or the way it's being run. And to compare a centralized currency, like either a fiat currency or a currency that's issued by a central entity against something like Bitcoin. So in a centralized currency, if you don't like what's going on, you have the right to exit. You can leave the currency which means that you can stop using it. You can sell any currency you hold or try to sell it and then you can just stop using it. Just like any business that you do business with, almost any business you have the ability to just stop dealing with them if you don't like what they're doing. On the other hand if it's a currency you've got a lot of business, you've got a lot of assets tied up in it, it might be expensive or difficult to actually exit. But with the centralized currency that's really you're only option. With Bitcoin, because it operates in an open source way, you have the right to fork the rules. That means you and perhaps some of your friends or colleagues can decide that you'd rather live under a different rule set and you can fork the rules and go a different direction from where the lead developers have gone. The right to fork like this is more empowering for users than the right to exit. You can exit if you want, but you have the right to fork and that actually gives you more power. And therefore the community has more power in a system like Bitcoin which is open source than it would have with the purely centralized system. So although the lead developers might look like a centralized entity controlling everything, in fact, they don't have the power that a purely centralized manager or software owner would have. Let's look a little bit more at what happens if there's a fork in the rules. And I'm talking here, in a previous lecture, we talked about the distinction between a hard fork and a soft fork. I'm talking about a hard fork here. So what happens is the following. So here we have the block chain which is coming along, building up the history. And at some point there will be a fork in the block chain if there's a disagreement about the rules. And you get two branches. You get one branch, let's say this one up here, which is valid under rule set A, but invalid under rule set B. And conversely you have another branch down here which is valid under rule set B and invalid under rule set A. If there's a hard fork as to what the rules should be, then there will be some transactions that are valid on each side and not the other. And this will eventually happen. And once these branches go apart, they can't come back together because this branch is illegal under the B rules, this branch is illegal under the A rules, they're permanently separate. So if the currency that we had over here on the left, we can think of as being Bitcoin, the big happy Bitcoin that everyone agreed on. After the fork, it's as if there are two new currencies which you can think of as A-coin corresponding to rule set A, and we'll call this one down here B-coin corresponding to rule set B. And it's as if at this moment where there was a fork, everyone who owned one Bitcoin at the moment of the fork will receive one A-coin and one B-coin at that time. And from that time on, A coins and B coins will operate separately as if they were separate currencies. And they might operate independently. The A group and the B group might evolve their rules in different ways, and certainly their block chains will continue to grow in ways that are probably inconsistent across the two coins. So when this happens we might say that the currency forked. That it's not just the rules that forked or the software implementing the rules that forked. It's the currency itself that forked. And that's an interesting thing that can happen in a system like Bitcoin that couldn't happen in a traditional currency, where the option of forking is not available to users. Okay, so what happens if a fork like this goes on? What do people actually do? How do they respond? Well after a hard fork like this, there are really two cases. The first case is where the fork was really not intended as a disagreement about the rules, but the fork was designed as a way of starting an Altcoin. And that is starting a new kind of Cryptocurrency with different rules. And if somebody just wanted to start their own currency and they found it convenient to start with a rule set that was very close to Bitcoin's. They found it convenient, maybe, even to start with Bitcoin's block chain and to fork off, as I illustrated on the previous slide, then that's not really a problem. The Altcoin goes its separate way. The branches coexist peacefully and some people prefer Bitcoin, some prefer to use the Altcoin. The interesting case is what happens if the fork actually reflect the fight between two groups about what the future a Bitcoin should be. If that's the case, then the two branches are rivals. And the branches will fight for market share. After the fork, there's an A coin and there's a B coin and each branch will try to get more merchants to accept it, each branch will try to get more people to buy it. The branches will fight for market share, the branches will fight to be seen, to be perceived as being the real Bitcoin. Probably each branch says, claims to be the real Bitcoin and there's a public relations fight between them. Which goes along with the fight for market share. Each one wants to be seen as the real thing and the other one to be seen as the weird splinter group. Probably, eventually, one branch will win and the other one will melt away. These sorts of competitions tend to tip in one direction. Once one of the two gets seen as more legitimate, gets seen as having a bigger market share, gets perceived more broadly as being the real one, the other one becomes kind of a niche currency and eventually will fall away. So, this is the likely future if you had a fork that reflected a fight over the future of Bitcoin. And what this amounts do is a kind of rebellion within the Bitcoin community where a sub group decides to break off and say, we think we have a better idea about how this should be run. And you have a competition between the new and the old, which eventually one of them probably wins and become seen as the de facto new rule set and the de facto new governing structure.