Bitcoin Vision – The Original vision of Satoshi Nakamoto
What are Bitcoins: Scam or real London Business News
Bitcoin - The Internet of Money
/btc was created to foster and support free and open Bitcoin discussion, Bitcoin news, and exclusive AMA (Ask Me Anything) interviews from top Bitcoin industry leaders! Bitcoin is the currency of the Internet. A distributed, worldwide, decentralized digital money. Unlike traditional currencies such as dollars, bitcoins are issued and managed without the need for any central authority whatsoever.
Had been planning to try the one at Workshop Cafe in d/t, but found out today that they've removed it. Nakamoto's Bitcoin Store isn't answering their phone, so I can't find out if they have theirs yet (website says coming soon). I figure this town's got to have at least one bitcoin ATM available; anyone know where it is?
09-02 23:53 - 'In November I visited Europe for the Ethereum Devcon conference. This is one of the stores I visited. “House of Nakamoto” 🙌' (v.redd.it) by /u/ilcreations removed from /r/Bitcoin within 135-145min
Maybe it's time to discuss bitcoin's history again. Credit to u/singularity87 for the original post over 3 years ago. People should get the full story of bitcoin because it is probably one of the strangest of all reddit subs. bitcoin, the main sub for the bitcoin community is held and run by a person who goes by the pseudonym u/theymos. Theymos not only controls bitcoin, but also bitcoin.org and bitcointalk.com. These are top three communication channels for the bitcoin community, all controlled by just one person. For most of bitcoin's history this did not create a problem (at least not an obvious one anyway) until around mid 2015. This happened to be around the time a new player appeared on the scene, a for-profit company called Blockstream. Blockstream was made up of/hired many (but not all) of the main bitcoin developers. (To be clear, Blockstream was founded before mid 2015 but did not become publicly active until then). A lot of people, including myself, tried to point out there we're some very serious potential conflicts of interest that could arise when one single company controls most of the main developers for the biggest decentralised and distributed cryptocurrency. There were a lot of unknowns but people seemed to give them the benefit of the doubt because they were apparently about to release some new software called "sidechains" that could offer some benefits to the network. Not long after Blockstream came on the scene the issue of bitcoin's scalability once again came to forefront of the community. This issue came within the community a number of times since bitcoins inception. Bitcoin, as dictated in the code, cannot handle any more than around 3 transactions per second at the moment. To put that in perspective Paypal handles around 15 transactions per second on average and VISA handles something like 2000 transactions per second. The discussion in the community has been around how best to allow bitcoin to scale to allow a higher number of transactions in a given amount of time. I suggest that if anyone is interested in learning more about this problem from a technical angle, they go to btc and do a search. It's a complex issue but for many who have followed bitcoin for many years, the possible solutions seem relatively obvious. Essentially, currently the limit is put in place in just a few lines of code. This was not originally present when bitcoin was first released. It was in fact put in place afterwards as a measure to stop a bloating attack on the network. Because all bitcoin transactions have to be stored forever on the bitcoin network, someone could theoretically simply transmit a large number of transactions which would have to be stored by the entire network forever. When bitcoin was released, transactions were actually for free as the only people running the network were enthusiasts. In fact a single bitcoin did not even have any specific value so it would be impossible set a fee value. This meant that a malicious person could make the size of the bitcoin ledger grow very rapidly without much/any cost which would stop people from wanting to join the network due to the resource requirements needed to store it, which at the time would have been for very little gain. Towards the end of the summer last year, this bitcoin scaling debate surfaced again as it was becoming clear that the transaction limit for bitcoin was semi regularly being reached and that it would not be long until it would be regularly hit and the network would become congested. This was a very serious issue for a currency. Bitcoin had made progress over the years to the point of retailers starting to offer it as a payment option. Bitcoin companies like, Microsoft, Paypal, Steam and many more had began to adopt it. If the transaction limit would be constantly maxed out, the network would become unreliable and slow for users. Users and businesses would not be able to make a reliable estimate when their transaction would be confirmed by the network. Users, developers and businesses (which at the time was pretty much the only real bitcoin subreddit) started to discuss how we should solve the problem bitcoin. There was significant support from the users and businesses behind a simple solution put forward by the developer Gavin Andreesen. Gavin was the lead developer after Satoshi Nakamoto left bitcoin and he left it in his hands. Gavin initially proposed a very simple solution of increasing the limit which was to change the few lines of code to increase the maximum number of transactions that are allowed. For most of bitcoin's history the transaction limit had been set far far higher than the number of transactions that could potentially happen on the network. The concept of increasing the limit one time was based on the fact that history had proven that no issue had been cause by this in the past. A certain group of bitcoin developers decided that increasing the limit by this amount was too much and that it was dangerous. They said that the increased use of resources that the network would use would create centralisation pressures which could destroy the network. The theory was that a miner of the network with more resources could publish many more transactions than a competing small miner could handle and therefore the network would tend towards few large miners rather than many small miners. The group of developers who supported this theory were all developers who worked for the company Blockstream. The argument from people in support of increasing the transaction capacity by this amount was that there are always inherent centralisation pressure with bitcoin mining. For example miners who can access the cheapest electricity will tend to succeed and that bigger miners will be able to find this cheaper electricity easier. Miners who have access to the most efficient computer chips will tend to succeed and that larger miners are more likely to be able to afford the development of them. The argument from Gavin and other who supported increasing the transaction capacity by this method are essentially there are economies of scale in mining and that these economies have far bigger centralisation pressures than increased resource cost for a larger number of transactions (up to the new limit proposed). For example, at the time the total size of the blockchain was around 50GB. Even for the cost of a 500GB SSD is only $150 and would last a number of years. This is in-comparison to the $100,000's in revenue per day a miner would be making. Various developers put forth various other proposals, including Gavin Andresen who put forth a more conservative increase that would then continue to increase over time inline with technological improvements. Some of the employees of blockstream also put forth some proposals, but all were so conservative, it would take bitcoin many decades before it could reach a scale of VISA. Even though there was significant support from the community behind Gavin's simple proposal of increasing the limit it was becoming clear certain members of the bitcoin community who were part of Blockstream were starting to become increasingly vitriolic and divisive. Gavin then teamed up with one of the other main bitcoin developers Mike Hearn and released a coded (i.e. working) version of the bitcoin software that would only activate if it was supported by a significant majority of the network. What happened next was where things really started to get weird. After this free and open source software was released, Theymos, the person who controls all the main communication channels for the bitcoin community implemented a new moderation policy that disallowed any discussion of this new software. Specifically, if people were to discuss this software, their comments would be deleted and ultimately they would be banned temporarily or permanently. This caused chaos within the community as there was very clear support for this software at the time and it seemed our best hope for finally solving the problem and moving on. Instead a censorship campaign was started. At first it 'all' they were doing was banning and removing discussions but after a while it turned into actively manipulating the discussion. For example, if a thread was created where there was positive sentiment for increasing the transaction capacity or being negative about the moderation policies or negative about the actions of certain bitcoin developers, the mods of bitcoin would selectively change the sorting order of threads to 'controversial' so that the most support opinions would be sorted to the bottom of the thread and the most vitriolic would be sorted to the top of the thread. This was initially very transparent as it was possible to see that the most downvoted comments were at the top and some of the most upvoted were at the bottom. So they then implemented hiding the voting scores next to the users name. This made impossible to work out the sentiment of the community and when combined with selectively setting the sorting order to controversial it was possible control what information users were seeing. Also, due to the very very large number of removed comments and users it was becoming obvious the scale of censorship going on. To hide this they implemented code in their CSS for the sub that completely hid comments that they had removed so that the censorship itself was hidden. Anyone in support of scaling bitcoin were removed from the main communication channels. Theymos even proudly announced that he didn't care if he had to remove 90% of the users. He also later acknowledged that he knew he had the ability to block support of this software using the control he had over the communication channels. While this was all going on, Blockstream and it's employees started lobbying the community by paying for conferences about scaling bitcoin, but with the very very strange rule that no decisions could be made and no complete solutions could be proposed. These conferences were likely strategically (and successfully) created to stunt support for the scaling software Gavin and Mike had released by forcing the community to take a "lets wait and see what comes from the conferences" kind of approach. Since no final solutions were allowed at these conferences, they only served to hinder and splinter the communities efforts to find a solution. As the software Gavin and Mike released called BitcoinXT gained support it started to be attacked. Users of the software were attack by DDOS. Employees of Blockstream were recommending attacks against the software, such as faking support for it, to only then drop support at the last moment to put the network in disarray. Blockstream employees were also publicly talking about suing Gavin and Mike from various different angles simply for releasing this open source software that no one was forced to run. In the end Mike Hearn decided to leave due to the way many members of the bitcoin community had treated him. This was due to the massive disinformation campaign against him on bitcoin. One of the many tactics that are used against anyone who does not support Blockstream and the bitcoin developers who work for them is that you will be targeted in a smear campaign. This has happened to a number of individuals and companies who showed support for scaling bitcoin. Theymos has threatened companies that he will ban any discussion of them on the communication channels he controls (i.e. all the main ones) for simply running software that he disagrees with (i.e. any software that scales bitcoin). As time passed, more and more proposals were offered, all against the backdrop of ever increasing censorship in the main bitcoin communication channels. It finally come down the smallest and most conservative solution. This solution was much smaller than even the employees of Blockstream had proposed months earlier. As usual there was enormous attacks from all sides and the most vocal opponents were the employees of Blockstream. These attacks still are ongoing today. As this software started to gain support, Blockstream organised more meetings, especially with the biggest bitcoin miners and made a pact with them. They promised that they would release code that would offer an on-chain scaling solution hardfork within about 4 months, but if the miners wanted this they would have to commit to running their software and only their software. The miners agreed and the ended up not running the most conservative proposal possible. This was in February last year. There is no hardfork proposal in sight from the people who agreed to this pact and bitcoin is still stuck with the exact same transaction limit it has had since the limit was put in place about 6 years ago. Gavin has also been publicly smeared by the developers at Blockstream and a plot was made against him to have him removed from the development team. Gavin has now been, for all intents an purposes, expelled from bitcoin development. This has meant that all control of bitcoin development is in the hands of the developers working at Blockstream. There is a new proposal that offers a market based approach to scaling bitcoin. This essentially lets the market decide. Of course, as usual there has been attacks against it, and verbal attacks from the employees of Blockstream. This has the biggest chance of gaining wide support and solving the problem for good. To give you an idea of Blockstream; It has hired most of the main and active bitcoin developers and is now synonymous with the "Core" bitcoin development team. They AFAIK no products at all. They have received around $75m in funding. Every single thing they do is supported by theymos. They have started implementing an entirely new economic system for bitcoin against the will of it's users and have blocked any and all attempts to scaling the network in line with the original vision. Although this comment is ridiculously long, it really only covers the tip of the iceberg. You could write a book on the last two years of bitcoin. The things that have been going on have been mind blowing. One last thing that I think is worth talking about is the u/bashco's claim of vote manipulation. The users that the video talks about have very very large numbers of downvotes mostly due to them having a very very high chance of being astroturfers. Around about the same time last year when Blockstream came active on the scene every single bitcoin troll disappeared, and I mean literally every single one. In the years before that there were a large number of active anti-bitcoin trolls. They even have an active sub buttcoin. Up until last year you could go down to the bottom of pretty much any thread in bitcoin and see many of the usual trolls who were heavily downvoted for saying something along the lines of "bitcoin is shit", "You guys and your tulips" etc. But suddenly last year they all disappeared. Instead a new type of bitcoin user appeared. Someone who said they were fully in support of bitcoin but they just so happened to support every single thing Blockstream and its employees said and did. They had the exact same tone as the trolls who had disappeared. Their way to talking to people was aggressive, they'd call people names, they had a relatively poor understanding of how bitcoin fundamentally worked. They were extremely argumentative. These users are the majority of the list of that video. When the 10's of thousands of users were censored and expelled from bitcoin they ended up congregating in btc. The strange thing was that the users listed in that video also moved over to btc and spend all day everyday posting troll-like comments and misinformation. Naturally they get heavily downvoted by the real users in btc. They spend their time constantly causing as much drama as possible. At every opportunity they scream about "censorship" in btc while they are happy about the censorship in bitcoin. These people are astroturfers. What someone somewhere worked out, is that all you have to do to take down a community is say that you are on their side. It is an astoundingly effective form of psychological attack.
A better name for 'Decred' to broaden the reach of our superior vision
This is a detailed proposal I planned to have put up for vote on Politeia. But was told it would need a more detailed plan of execution (budget, marketing, devs etc) which is beyond my expertise. I invite everyone in the DCR community to read it and contribute to make it a reality. Intro: Warm greetings to everyone! I am a DCR supporter with a background in law and media. For years I was a news reporter in one of China's largest television networks, during that time I have accumulated a solid understanding of mass communication and presentation. I fell down the Bitcoin rabbit hole in 2017 and has not look back since. But I believe DCR is a superior store-of-value and a decentralised organism capable of long-term adaptability thus securing the long term financial sovereignty and organisation of people around the world. Problem: However, there is a growing sense in the community that Decred has a name recognition barrier to overcome. That was expressed by the DEX developers saying the concern they have is 'getting the word out there'(Decred in Depth May 15th), a concern echoed by many others. The community also appears to be debating and experimenting with various outreach strategies. I have confidence in our vision, developers and contributors. However, they are not the only factors determining the success of a project. When it comes to the expansion of name recognition, adoption and network effects, the competition is fierce and likely winner takes most or even all (see Matthew effect, "Whoever has will be given more, and they will have an abundance. Whoever does not have, even what they have will be taken from them." Bible Matt 13:12 ). If we do not present our project in the most approachable way possible, I do believe we are at risk of missing out on the golden window of adoption, and the project might never really catch on. That would be a big shame because the world would never be able to adopt our superior vision of Bitcoin sound money, and if the governance issues of bitcoin does flare up further down the road, there is a risk of it being corrupted, neutralised or captured by some predatory governments and the international fiat financiers, and they will never allow something like Bitcoin to develop among the masses again, if that happens, Decred would not be large enough to deter them either. Reasons for Proposal: I would like to lay out reasons why the name 'Decred' is not a good name for our project and is holding us back at the moment. I obviously have great respect all the design and planning that has gone before and my fellow Decredees already working on design projects will be incentivised to vote against my proposal. But I am offering constructive criticism and we all want the project to succeed and do not want proposals to just validate whatever we have been doing before. So I hope you would consider this carefully and objectively. I suggest that the name of our project 'Decred' should be reviewed and rebranded. Firstly, the name 'Decred (decentralized credits)' is manifestly tech and developer centred, it reflects the perspective and values of the brilliant minds that conceived our project. I understand the monumental importance of decentralization, but for the newcomer the word is hard to grasp. When introducing the name of a project, we want to communicate what would register as substance that can be easily grasped by people. 'Bitcoin' emphasizes that it is digital and has value. The word 'Coin' is easily understood as substance, 'Coin' is a classic word communicating value that appeals to the most primordial circuits of our brains as something you want( to hold in your hand), something of value, something that jingles in your pocket, something shiny that you want to accumulate and collect. In contrast, the "De" in Decred gives a notion of negation and negativity, not of substance and affirmation, as is common in the English language (for example: devalue, dethrone, debunk, devolve, dejected). I fully appreciated that to us insiders 'de' signifies 'decentralized' and is of enormous substance and value, but that is not apparent to the newcomer and even implies the opposite. Secondly, 'Cred (as in credit)' is also very intangible compared to 'Coin', credit only developed later in human economy and do not register with the same force as 'Coin' in our neural circuitry that identifies value. In our day and age, the word 'credit' also has a negative connotations (for example: credit bubble, credit card fraud, credit crunch, credit crisis). In short, credit is associated with volatility and fragility, which is very contrary to the nature of our robust project that values reliability and long-term adaptability. So with all due respect, "Decred" is not a good name to communicate what we stand for. Compared to 'Bitcoin', it does not meet people where they are (we want people to come for the profit and stay for the vision and tech, most people are like that, for better or for worse), 'Decred' is a bit too self-obsessed with putting what's under-the-hood of the project right upfront in the name, it is not at all obvious what 'Decred' means to a curious person who wanders into cryptoland. In addition, "Decred" bears an unwelcome resemblance to the word "Discredit" which is also another minus. We should focus more on how the name of our project makes people feel, rather than emphasising function and features that newcomers are unlikely to grasp easily. The majority of people make decisions based on how it makes them feel, not on utility and reason alone. Bitcoin understands this, it struck a more visceral part of the human psyche, people want 'Coins' that can go up in value, but in fact that hopeful speculation and hopium was the Trojan's horse for the masses to adopt a more decentralized, censorship-resistance and secure form of monetary system. Our project should do the same, starting with the name. Thirdly, I would like to put forward my idea about what should replace the name "Decred'. There can be little doubt that Decred is building on the brilliance and vision of Bitcoin (PoW, 21 million supply cap, transparency and decentralization). In a way, our project aims to be more 'Bitcoin' than Bitcoin, PoW+PoS improves security, the governance mechanism + treasury ventures to where Bitcoin has not gone before, which is building decentralization and transparency in the governance and evolutionary process of the project itself. Our project lead Jacob Yocom-Piat, whom I really respect, shared how he discovered a 'central planning committee' running things in Bitcoin and believed it was contrary to the spirit of Bitcoin, that helped give birth to the name 'Decred'. Therefore I believe the 'De' in Decred is a further doubling down of the principle of decentralization ('like it or not, we are taking this all the way, Bitcoin!') , it is a protest. 'Cred' could also be a reaction against the more tangible name 'Coin' signifying that we are moving further beyond it in the digital economy with 'decentralised credits'. However, as I have already laid out above, it is not an approachable name from the perspective of the new adopter. Decred is in essence a reactionary name, and is not optimal for presenting a project that is already digital, intangible and hard to grasp. History shaped the name 'Decred' and that is a beautiful thing, we would not be here without it. But I suggest it is time to move beyond by taking a step back. We do not want to be going against the grain of two things: 1) human nature and the learning curve towards the tangible and affirmative as opposed the the negational and negative. 2) the already established network effect of the name recognition of 'Bitcoin'. Going against these two grains will make it unnecessarily harder for our outreach, thus hamstringing adoption, instead we should go with the grain and ride the wave of already established network effects by tapping into people's familiarity with the word 'Bitcoin' . Therefore I propose the new name of our project should at least include the word 'Bitcoin" followed by a word to describe the unique way our project has taken Bitcoin forward. Bitcoiner Dan Held mention in his blog how: "Bitcoin is the Apex predator of money" https://www.danheld.com/blog/2019/1/6/planting-bitcoinspecies-14 I truly believe that title actually belongs to our project. With our treasury, potential consensus rule changes through politeia and extra security compared to Bitcoin, we will evolve our way up the monetary food-chain because we are robust and superiorly adaptable. As Chris Buriske says: "In #crypto, so long as you have good governance, you can have any feature you want." Thus, I further suggest our rebranded name be: Bitcoin Evolution (Bitcoin E/BTE). I believe this faithfully reflects our ethos of being true to the spirit of Bitcoin while also being future-proof and adaptable (Although the vote in this proposal itself is not a referendum on Bitcoin Evolution, I will explain at the end). For people looking into our project, trying to figure out what we are about, 'Bitcoin Evolution' really speaks for itself. The famous Bitcoin educator Andreas Antonopoulos once said that "the next Bitcoin is Bitcoin". I take it to mean that the idea of Bitcoin is larger than the specific chain Satoshi Nakamoto started himself. If that's true, it is justified for a later project that takes the spirit of Bitcoin even further to adopt the name Bitcoin E. E means Evolution. Also on the off chance that we turn out to be more wrong about Bitcoin's governance than we think and Bitcoin's rough consensus works out just fine (no more hard forks, successfully implements privacy, no VC corruption etc). Then Bitcoin will become the indisputable 'gold standard' and likely take most of the pie, in that case if our name highlights our similarity to Bitcoin and our governance model also hold its own, we will likely end up doing better than sticking to our protest name 'Decred'. This is from a risk management perspective that we might want to consider. Also on the off chance that we turn out to be more wrong about Bitcoin's governance than we think and Bitcoin's rough consensus works out just fine (no more hard forks, successfully implements privacy, no VC corruption etc). Then Bitcoin will become the indisputable 'gold standard' and likely take most of the pie, in that case if our name highlights our similarity to Bitcoin and our governance model also hold its own, we will likely end up doing better than sticking to our protest name 'Decred'. This is from a risk management perspective that we might want to consider. Possible Objections: I am happy to engage with any question or objections in the comments sections. But allow me to first anticipate some objections I foresee here. Q1) "Rebranding now will undo too much of the work we have done before. It is too late." A1: By all the indicators that matter, we are still very early. With the upcoming bull market in this money printer go brrr macro economics setting, a new wave of new investors will be flooding into the crypto sphere in the next 2-3 years, and they will be coming for Bitcoin. By not going against the grain of the established Bitcoin name, the attention Bitcoin Evolution will receive down the years would far outweigh what loss we incur from rebranding. Short term pain, long term gain. Q2) "Won't we be making an opportunistic gambit and look like scammy or weak projects like Bitcoin Cash, Bitcoin Diamond and Bitcoin Gold ? What if we attract all the wrong people and destroy our community culture?" A2: I believe regardless of others think, our rebranding is not an opportunistic gambit. Bitcoin Diamond, Gold and etc are forks of Bitcoin that misses the point of what BTC was about. We are not a fork of Bitcoin (and we aim precisely to avoid contentious hard forks). Nevertheless, the spirit of Bitcoin is faithfully implemented in our chain. We preserve the immutability and robustness of BTC and take the decentralization principle to its full logical conclusion, which is for it to permeant development and community decision -making. One can say we are the true heirs of Bitcoin and we should carry the mantle proudly if we really believe in our vision. I also do not believe "Bitcoin Evolution" will attract all the wrong people. We will have a huge influx for sure, and that will put us under pressure. But unlike Bitcoin 'Cash' Gold or Diamond', people will coming to us will understand we have the long term and adaptability in mind, 'evolution' suggests it is a long game. The quick buck at all costs bunch will not find ours to be the most enticing name. I also have faith in our incredible community of communicators and educators to bring new people onboard to our long term mindset. In addition, when we rebrand, the people who know Decred well and support it will not abandon ship just because they don't like the new name. The people who are already critical of Decred will no doubt seize the opportunity to attack and insinuate. Haters gonna hate. We did not care before and should not start fretting. I invite all to focus on all the new and curious adopters and explorers who will be flocking to us because of the Bitcoin name, and rightly so. Q3) "If the fundamentals are sound, won't the project catch on even if the name 'Decred' is unrelatable? Just a matter of time right?" A3: No. The history of other network effects has shown, the success of a project depends on many factors, it is not just a simple framework of a sifting mechanism eventually singling out the best tech and best ideas.** Sometimes it is not the best idea that wins, but the idea that is good enough at the right time and the right place wins.*\* Think of the internet protocol TCP/IP. We have to have the right ideas at the right time and meet growth goals at an appropriate speed to break out of bottlenecks and achieve network adoption. With Bitcoin there is the added risk of entrenched centralised establishments exploiting the weaknesses in its governance to neutralised it, if they succeed, we will likely not get a second chance. We should not leave that to chance and refine our project in as many ways as possible. I believe precisely because we have sound fundamentals of decentralized governance, that when time is ripe to consider a rebrand, we will meet the need together and start this conversation to get the job done. But the project won't automatically catch on by itself, we need to explore and make decisions together to improve it. In conclusion: In our name, let us not present to the world what we are against (centralisation), but what we are for(Adaptive future-proof Bitcoin with all its classic strengths). Let us go with the grain of human nature and the network effects of name recognition and not unnecessarily strive against it. I believe just like a teenager transitioning into adulthood, we are coming of age in a new era of growth and self-awareness. And sometimes, growth means taking a step back to recalibrate and orient ourselves. What you are voting on: I hope to ignite a constructive discussion about a serious plan to rebrand for the better. I do not ask for any funding as it is not up to me to implement anything, I just hope my insights can help us on the journey of changing the world for the better with our superior vision of an unstoppable decentralised organism. The How, Who and When questions concerning rebranding should be explored by the community together. If you Vote 'Yes' you are not necessarily saying we are just going to rebrand to "Bitcoin Evolution" or even a new name with "Bitcoin" in it. Voting 'Yes' means you see the merits of my arguments and want to seriously consider rebranding and turning the page from the current name 'Decred'. I have been engaging with the Chinese Decred community but I am not known to the community at large, so I understand there will be a lot of questions and scepticism and I welcome all constructive feedback. I also want to pay my deep respects to all the developers, contributors and everyone who has dedicated their time and passion to our project. Let's keep building together! If you appreciate the work I put into this, feel free to make a voluntary donation: DCR: DsWgLiEBw5YAHqrfZpYQjgPYhAT2DkdD6m9 BTC: 3GtuhwsoY2BYjqbaf2tCdjZbZw2Zn4H48P You can follow me on twitter: https://twitter.com/decredinator Peace, decredinator
How ironic that one day everyone began to hear that they were cryptocurrencies, but everything that referred to them was synonymous with Bitcoin everywhere they talk about it, the strange thing is that more than 10 have passed years since this project started and many continue with blindfolds, we have evolved, revolutionary things have come into our lives, the last decades have come technologies that have changed our paradigms, such as the internet and many more came one of them it's bitcoin. Bitcoin arose from the need for a safe, transparent and reliable money. All this is described by Satoshi Nakamoto in his white paper https://www.bitcoin.org/bitcoin.pdf this is at the hand of all so that we can see and read it and know how its structure is shaped and the purpose it has as a currency. Its operation occurred on January 3, 2009, when the genesis block of the chain was published, which was the first block mined in the network, bitcoin turns out to be for the time a magnificent money for the environment that was growing and its use was not long in Expanding its adoption, Hal Finney was one of the first people to support and contribute with Bitcoin since it was part of one of the first nodes, bitcoin has a maximum number of bitcoins that can be created on the network which is 21 million BTC Being this way it solves the problem of inflation since it is a deflationary currency, this system means that no more can be generated and its value will rise more over time due to the supply and demand that there will be in the market. Every time a transaction is made there will be a number of validators that work to verify that the network is correct, this is through the blockchain is the accounting book where all the transactions made from the genesis block are stored , it is public and we can all see how it works that they do not draw cards up their sleeves, these blocks are mined every 10 minutes with a size of 1 mb approximately 2048 transactions that were made and will be mined by a very important group called miners who solve a mathematical process called proof of work with this will be the final process for your BTC sent will already be in the hands of its recipient. To make a transaction you only need the address to which you want to send BTC or the QR code to be faster and select the amount in your wallet, with this you will only have to pay a commission for the work carried out by the miners that can vary depending on the time with which you want your transaction to be verified or to be mined in the next block of the chain. Today Bitcoin is the most important currency in the entire market with a strong ecosystem and a very large community that grows more for the security it offers, its price when making this post reaches $ 9,342.58 and a market capitalization of 168,004,364,619, $ 45 with which it takes the number 1 spot on the coinmarketCap list. original post. Bitcoin para principiantes
https://preview.redd.it/dju4oz1g16c51.jpg?width=2400&format=pjpg&auto=webp&s=fe57edcd81ffa31bff95fe3026055020f7720dce Cryptocurrencies have now become a buzz word. Despite the resilience that it faced initially, cryptocurrencies have come a long way. There are a total of around 5000 cryptocurrencies circulating in the market. If you plan to make a career in this domain, you need to run through the following questions. 1. What is a cryptocurrency? Cryptocurrency is a digital currency that is transacted on a distributed ledger platform or decentralized platform or Blockchain. Any third party does not govern it, and the transaction takes place between peer-to-peer. 2. When was the first Cryptocurrency introduced? The first Cryptocurrency or Bitcoin was introduced in the year 2009. 3. Who created Cryptocurrency? Satoshi Nakamoto gave the first Cryptocurrency. The white paper for the same was given in 2008 and a computer program in 2009. 4. What are the top three cryptocurrencies? The following are the three cryptocurrencies: • Bitcoin (BTC) $128bn. • Ethereum (ETH) $19.4bn. • XRP (XRP) $8.22bn. 5. Where can you store Cryptocurrency? Cryptocurrencies are stored in a digital wallet, and this is accessible via public and private keys. A public key is the address of your wallet, and the private key is the one that helps you in executing the transaction. 6. Which is the safest wallet for Cryptocurrency? The most secured wallet for Cryptocurrency is a hardware wallet. It is not connected to the internet, and thus it is free from a hacking attack. It is also known as a cold wallet. 7. From where I can purchase cryptocurrencies? The easiest way to buy Cryptocurrency is via crypto exchange. You can several crypto exchanges like Coinbase, Bitbuy, CHANGENow, Kraken etc. 8. What are the ten popular crypto exchanges? The following are the best ten popular crypto exchange:
9. What are the key features of Blockchain? We all know that Bitcoin or any other cryptocurrency runs on the Blockchain platform, which gives it some additional features like decentralization, transparency, faster speed, immutability and anonymity. 10. What is AltCoin? It means Alternative Coin. All the cryptocurrencies other than Bitcoin are alternative coins. Similar to Bitcoin, AltCoins are not regulated by any bank. The market governs them. 11. Are cryptocurrency sites regulated? Most cryptocurrency websites are not regulated. 12. How are Cryptocurrency and Blockchain related? Blockchain platform aids cryptocurrency transactions, which makes use of authentication and encryption techniques. Cryptography enables technology for Cryptocurrency, thus ensuring secure transactions. 13. What is a nonce? The mining process works on the pattern of validating transactions by solving a mathematical puzzle called proof-of-work. The latter determine a number or nonce along with a cryptographic hash algorithm to produce a hash value lower than a predefined target. The nonce is a random value used to vary the value of hash so that the final hash value meets the hash conditions. 14. How is Cryptocurrency different from other forms of payment? Cryptocurrency runs on Blockchain technology, which gives it an advantage of immutability, cryptography, and decentralization. All the payments are recorded on the DLT, which is accessible from any part of the world. Moreover, it keeps the identity of the user anonymous. 15. Which is the best Cryptocurrency? Several cryptocurrencies have surged into the market, and you can choose any of these. The best way to choose the right cryptocurrencies is to look at its market value and assess its performance. Some of the prominent choices are Bitcoin, Ethereum, Litecoin, XRP etc. 16. What is the worst thing that can happen while using Cryptocurrency? One of the worst things could be you losing your private keys. These are the passwords that secure your wallet, and once they are lost, you cannot recover them. 17. What is the private key and public key? Keys secure your cryptocurrency wallet; these are public key and private key. The public key is known to all, like your bank account number, on the hand, the private key is the password which protects your wallet and is only known to you. 18. How much should one invest in Cryptocurrency? Well, investing in Cryptocurrency is a matter of choice. You can study how the market is performing, and based on the best performing cryptocurrency, you can choose to invest. If you are new to this, then it’s advisable that you must start small. 19. From where can one buy Bitcoin using Fiat currency? Two of the popular choices that you have are Coinbase and Binance, where you can purchase Cryptocurrency using fiat currency. 20. Are the coins safe on exchanges? All the exchanges have a high level of security. Besides, these are regularly updated to meet the security requirements, but it’s not advisable to leave your coins on them since they are prone to attack. Instead, you can choose a hard wallet to store your cryptocurrencies, which are considered the safest. 21. What determines the price of cryptocurrencies? The price of cryptocurrencies is determined by the demand and supply in the market. Besides, how the market is performing also determines the price of cryptocurrencies. 22. What are some of the prominent cryptocurrencies terminologies? There are jargons which are continuously used by people using cryptocurrencies are: DYOR: Do Your Own Research Dapps: Decentralized Applications Spike: Shapr increase in the price of the Cryptocurrency Pump: Manipulated increase in the price of a cryptocurrency Dump: Shapr decline in the price of Cryptocurrency 23. How can I check the value of cryptocurrencies? Various platforms will give you an update on the price of cryptocurrencies. You can keep a tab on them and check the pricing of cryptocurrencies. 24. What are the advantages of using digital currencies? There are various advantages like you are saved from double-spending, the transactions are aster and secure. Moreover, digital currencies now have global acceptance. 25. What is the difference between cryptocurrencies and fiat currencies? Cryptocurrencies are digital currencies which run on the Blockchain platform and are not governed by any government agencies, while the fiat currencies are the ones which are governed by authorities and government. Conclusion- This was all the FAQs pertaining to cryptocurrency, for more such information keep coming back to Blockchain Council.
The attempted come back of CoinEx, China's forked-Bitcoin exchange
Written by Shuyao Kong Published bydecrypt.co An interview with Haipo Yang, a crypto OG who’s trying to reposition his Bitcoin Cash-based CoinEx exchange. And more, in this week’s da bing. https://preview.redd.it/h5f3i3lldv051.jpg?width=3200&format=pjpg&auto=webp&s=09b8696303ae5c6170753cc438929ebe520d4605 Haipo Yang, founder of ViaBTC, one of the largest mining pools in the world, and CoinEx, a crypto exchange known for its focus on Bitcoin Cash-based trading, is a well-known but relatively quiet character in China’s crypto circle. Typically, Yang doesn’t talk that much about his journey launching the mining pool, nor about CoinEx, which launched in December 2017. And he almost never speaks about his fervent support for BCH, a hard fork of Bitcoin, and his now even more enthusiastic belief in BSV. Yet that’s changing of late. Yang has been more active in recent months, participating in interviews about CoinEx and tweeting more frequently on Weibo, China’s Twitter. He’s been making controversial statements predicting the death of BTC, while supporting BCH and BSV on social media. Recently, Yang told me that as a developer rather than a business person, he’s never been comfortable speaking in public. However he’s making an effort now to help publicize his renovation of CoinEx. So, for this week’s da bing, I decided to chat with him and get a peek into the mind of a veteran crypto entrepreneur who’s trying to make a personal, as well as a platform, comeback.
CoinEx’s golden opportunity
The first hard fork of Bitcoin occurred in August, 2017 and created a new cryptocurrency called Bitcoin Cash. The fork was prompted by partisans, including Yang, who wanted bigger block sizes on the blockchain — the basic idea was that bigger blocks would enable more transactions per second and make Bitcoin Cash something people would actually use to buy things, rather than Bitcoin’s more commonly perceived use as a store of value. Yang added a tremendous amount of value to the mining scene in China. As a technical founder with has years of experience in big tech firms such as Tencent, Yang is proud of his #buidl skills. He developed most of the code in the early days of VicBTC, which became one of the biggest mining pools to this day. Not satisfied with owning just a mining pool,Yang conceived of CoinEx, which was born in December of that year, specifically to carry on the mission of the newly forked Bitcoin Cash blockchain. As he got swept up in Bitcoin Cash enthusiasm, he even said that “BCH is bitcoin.” CoinEx’s strategy was BCH-focused from day one; BCH was its base currency, meaning you could use it to buy and sell other currencies, such as Ethereum and Litecoin. Interestingly, Jihan Wu, the co-founder of Bitcoin Exchange — himself a famous BCH supporter — was a big investor in the exchange. That made me wonder why he, Yang, and many other OG crypto miners, were so passionate about BCH. Was it just about bigger block sizes? “Bigger block size means more users and use cases,” Yang explained. The move to bigger block sizes was attractive to miners because they would facilitate more transactions. Miners make money on transaction fees, as well as mining blocks. Likewise, the network would arguably be more useful to people, who were looking for digital cash for every day use. That especially resonated with many early hardcore Bitcoiners. Said Yang: “We really believe that Bitcoin should be a P2P cash vehicle rather than a store of value.” This view probably sounds outdated to people who believe that Bitcoin’s value as cash is long gone, with solutions such as Lightning Network fulfilling that role. Instead, the new narrative for Bitcoin resides in its value, rather than utility. Yet Yang believed that the forked network would create far more opportunity “We could invite influential companies to establish nodes and contribute to the network. This cannot be done with the original Bitcoin architecture,” he said.
But from its inception, CoinEx struggled with adoption and was dwarfed by the bigger exchanges. Part of that had to do with the fact that BCH and “Bitcoin Satoshi’s Vision,” another Bitcoin hard fork, were both controversial. Critics pointed out that these networks are centralized in a few big mining pools, and 51% attacks are not out of the question. So over time, though Yang’s exchange still maintains strong support for BCH and BSV, it began to add support for all the major currencies. Finally, in January of this year, it announced a major upgrade, of… well, just about everything. It started to offer futures trading, leveraged trading, options trading, and over 100 token projects available to traders. It even rolled out its own blockchain, “CoinEx Chain” to support a new DEX, “CoinEx DEX.” https://preview.redd.it/3okoy5mudv051.png?width=1432&format=png&auto=webp&s=7099249da4a95db873d268f2dfc95d8db93a368e The seemingly sudden publicity of CoinEx should not come as a surprise, then. As BCH/BSV was being marginalized, Yang shifted his focus. He’s now trying to ride the wave of building a bigger, more dynamic exchange. “Crypto exchanges are where value is discovered,” Yang told me.
Building an exchange isn’t done overnight, nor is re-building one. CoinEx is still competing with the giants such as Binance. However Yang thinks his exchange will thrive by zigging when his competitors zag. As usual, CoinEx is taking a slightly different route, he told me. Like what? “We will be listing 小币种,” he said, using the expression for “small token projects.” I cannot help but wonder if these “small token projects” are simply shitcoins, the trading of which is certainly not new. Indeed, Yang said that he’s banking on the success of his new, public blockchain. “We are building a CoinEx Chain, a layer one protocol for DEX alone. Using our public blockchain, anyone can issue any token, at any time,” he said. He described the blockchain as “a real decentralized, token-issuance and transaction platform.” This is the core of Yang’s plan and vision. He believes that centralized exchanges will be a bottleneck for crypto adoption because it contradicts crypto’s nature as a completely free and open infrastructure. Essentially anyone should be able to launch a token and trade it with anyone. Only by building DEXes can we achieve full decentralization, he says.
The Religious nature of Bitcoin, and forked Bitcoin
It’s his belief that Bitcoin should adhere to Satoshi’s original vision that led Yang to send yet another controversial tweet last week, which I will translate: “The early days of Bitcoin expansion are similar to religion. The religious fervor brings prosperity to the industry.” By extension, Yang believes that the next generation of Bitcoin should provoke a similar “religious” fervor. That’s why he has slowly become more of a BSV advocate than a fan of Bitcoin Cash. Yang believes that “BSV has more religious connotations, despite its negative image.” (As most crypto people know, the controversial Craig Wright, who claims to be Satoshi Nakamoto, led the hard fork which created BSV. Consequently it is often met with skepticism and derision.) “The early days of Bitcoin expansion are similar to religion,” said Yang. “The religious fervor brings prosperity to the industry.” Crypto is famous for its tribalism. Many people choose one camp over another not for practical reasons but because of simple faith. Talking to Yang and reading his tweet brings a historic texture to the Bitcoin narrative. But crypto cannot survive on religion alone. One has to build. Hash might have been worshipped in the old days but now the crypto religion is all about the size of the congregation. Original article Click here to register on CoinEx!
The year 2020 exposed many of the negative aspects of the current financial construct which the world relies on. On 4/9/2020, the Federal Reserve announced that they would inject another $2,300,000,000,000 (2.3 Trillion, you read that right) into the U.S. economy. With the threat of Covid-19 essentially shutting down the daily operations of the economy overnight, something HAD to be done, right? Were there any other options? Many people are expecting a $1,200 stimulus check to cushion the pockets of people affected by the mass layoffs and market collapses. I myself asked a simple question, "What are the long term consequences of diluting the market with the USD?" This question is one that should be asked over, and over, and over by every single person who receives a paycheck from their employer or government regardless of where you reside in the world. The U.S. dollar is the dominant monetary force in the global economy, and it dictates much of the value of all things being bought, sold, and utilized in said economy. It is common and public knowledge that the dollar has been subject to inflation: in 1913, the same $100 you had then would only have the purchasing power of a about $26 today. One could expect, in theory, that this number will diminish even more because of the drastic amount of USD injection occuring because of this pandemic. Most people cant afford basic necessities because of this ridiculous level of inflation caused at the hands of the Fed. As many of you know, Satoshi Nakamoto had a response to this type of stimulus and bailout system the Federal Reserve has created and enlisted at any opportunity to respond to a crisis. It was called Bitcoin, and today it has become a financial power to be reckoned with. It has brought governments to terms with the fact that their systems are not efficient, along with putting power back into the peoples hands when it comes to controlling and utilizing their own money. There are no restrictions on how much Bitcoin you can send. There are no restrictions on whom you can send it to, and there are no ways to hide whom you've sent it to using blockchain technology and cryptography to secure its network and create a database of all transactions. The creation of Bitcoin was an answer to many of the problems with the financial system. On June 17th, 2019, a person under the pseudonym "Mundo" also tried to provide an answer to some of these problems with a laser focus on inflation. The solution he proposed (we have not seen the long term benefits, so the solution is not quite yet an answer) is BSoV, or BitcoinSoV (Bitcoin Store of Value). BSoV is an ERC20 token which utilizes the EIP918 protocol first utilized by a similar token called 0xBTC. EIP918 allows both BSoV and 0xBTC to be minable on the Ethereum blockhain via a smart contract. Following the same distribution model, consensus mechanism, and total supply of Bitcoin (Fair Start, meaning no ICO, Premine, or developers fees; Mined using PoW, specifically Solidity SHA3; 21,000,000 total supply, 3.6 million mined thus far, divisible to 8 decimal points, with the same amount of halving eras as BTC) BSoV differs in one very different way: a 1% transaction burn built into its code. With BSoV, every transaction is subject to a mandatory 1% transaction burn when a transaction is sent and confirmed on the Ethereum blockchain. The deflationary mechanism is the solution that Mundo proposed as an answer to the inflation the peoples money is exposed to because of the negligent actions of the Fed. This inflation is created out of the control of the people, and their purchasing power is diminished. With BSoV, the deflationary aspect is out of there control, but the end result is the opposite; an increase in its value due to scarcity and exchange of resources from its consensus mechanism. (This is a great scholarly article which details how mining provides a bottom value to PoW coins/tokens due to resource exchange, ie. Computing power, electricity, etc. https://www.sciencedirect.com/science/article/abs/pii/S0736585315301118) It's important to note that the project has not been around long enough to see its end goal or vision come to fruition. This is precisely why I am writing this article. More is needed to help study and analyze if this is the answer to this problem. What I can say is that this is one of the few real potential answers that have been proposed, created and implemented to try and combat the Fed. With mass adoption, can we have a true store of value solution that protects itself from the self burdening negligence of the powers that be? Do we have to keep loaning our money to banks to invest for free, only for them to need a bailout every 10-20 years due to poor monetary management and investing sprees? An immutable smart contract that cannot be 51% attacked or controlled by those in power might be worth pursuing. I'd like to end this article on a more transparent note about myself and my involvement with the project to help shed light on any apparent bias or misconceptions that some may have about my intentions here. I am one of 950 current holders and community members. I mined BSoV after I joined the telegram group and got involved on July 4th, 2019. I have never been paid for my work here, and it is strictly something that I believe in and want to help shed light on to those who might be interested in what the project has to offer. Just like many of the cryptocurrency enthusiast on the on P2P mailing list in 2009, many of us are working together tirelessly to bring one of the few tokens with integrity, transparency and ethics to those who want to experiment and see what may happen. Something that I have also asked my self is "Whats the worst that can happen?" when it comes to my involvement here. If the worst is a little time wasted on something I believed in, I will sleep fine at night. But if I am so fortunate to be apart of something that could truly change lives and alter the never-ending downtrend of inflation which has made life so difficult for the average human being, I will have a better nights sleep than I could have ever imagined. Thank you for your time. I wish all of you health, wealth, and safety during this difficult time. Sincerely, BSoV_Chris (You can find out more @ BSoV.io)
This article is written by the CoinEx Chain lab. CoinEx Chain is the world’s first public chain exclusively designed for DEX, and will also include a Smart Chain supporting smart contracts and a Privacy Chain protecting users’ privacy. longcpp @ 20200618 This is Part 1 of the serialized articles aimed to explain the Tendermint consensus protocol in detail. Part 1. Preliminary of the consensus protocol: security model and PBFT protocol Part 2. Tendermint consensus protocol illustrated: two-phase voting protocol and the locking and unlocking mechanism Part 3. Weighted round-robin proposer selection algorithm used in Tendermint project Any consensus agreement that is ultimately reached is the General Agreement, that is, the majority opinion. The consensus protocol on which the blockchain system operates is no exception. As a distributed system, the blockchain system aims to maintain the validity of the system. Intuitively, the validity of the blockchain system has two meanings: firstly, there is no ambiguity, and secondly, it can process requests to update its status. The former corresponds to the safety requirements of distributed systems, while the latter to the requirements of liveness. The validity of distributed systems is mainly maintained by consensus protocols, considering the multiple nodes and network communication involved in such systems may be unstable, which has brought huge challenges to the design of consensus protocols.
The semi-synchronous network model and Byzantine fault tolerance
Researchers of distributed systems characterize these problems that may occur in nodes and network communications using node failure models and network models. The fail-stop failure in node failure models refers to the situation where the node itself stops running due to configuration errors or other reasons, thus unable to go on with the consensus protocol. This type of failure will not cause side effects on other parts of the distributed system except that the node itself stops running. However, for such distributed systems as the public blockchain, when designing a consensus protocol, we still need to consider the evildoing intended by nodes besides their failure. These incidents are all included in the Byzantine Failure model, which covers all unexpected situations that may occur on the node, for example, passive downtime failures and any deviation intended by the nodes from the consensus protocol. For a better explanation, downtime failures refer to nodes’ passive running halt, and the Byzantine failure to any arbitrary deviation of nodes from the consensus protocol. Compared with the node failure model which can be roughly divided into the passive and active models, the modeling of network communication is more difficult. The network itself suffers problems of instability and communication delay. Moreover, since all network communication is ultimately completed by the node which may have a downtime failure or a Byzantine failure in itself, it is usually difficult to define whether such failure arises from the node or the network itself when a node does not receive another node's network message. Although the network communication may be affected by many factors, the researchers found that the network model can be classified by the communication delay. For example, the node may fail to send data packages due to the fail-stop failure, and as a result, the corresponding communication delay is unknown and can be any value. According to the concept of communication delay, the network communication model can be divided into the following three categories:
The synchronous network model: There is a fixed, known upper bound of delay $\Delta$ in network communication. Under this model, the maximum delay of network communication between two nodes in the network is $\Delta$. Even if there is a malicious node, the communication delay arising therefrom does not exceed $\Delta$.
The asynchronous network model: There is an unknown delay in network communication, with the upper bound of the delay known, but the message can still be successfully delivered in the end. Under this model, the network communication delay between two nodes in the network can be any possible value, that is, a malicious node, if any, can arbitrarily extend the communication delay.
The semi-synchronous network model: Assume that there is a Global Stabilization Time (GST), before which it is an asynchronous network model and after which, a synchronous network model. In other words, there is a fixed, known upper bound of delay in network communication $\Delta$. A malicious node can delay the GST arbitrarily, and there will be no notification when no GST occurs. Under this model, the delay in the delivery of the message at the time $T$ is $\Delta + max(T, GST)$.
The synchronous network model is the most ideal network environment. Every message sent through the network can be received within a predictable time, but this model cannot reflect the real network communication situation. As in a real network, network failures are inevitable from time to time, causing the failure in the assumption of the synchronous network model. Yet the asynchronous network model goes to the other extreme and cannot reflect the real network situation either. Moreover, according to the FLP (Fischer-Lynch-Paterson) theorem, under this model if there is one node fails, no consensus protocol will reach consensus in a limited time. In contrast, the semi-synchronous network model can better describe the real-world network communication situation: network communication is usually synchronous or may return to normal after a short time. Such an experience must be no stranger to everyone: the web page, which usually gets loaded quite fast, opens slowly every now and then, and you need to try before you know the network is back to normal since there is usually no notification. The peer-to-peer (P2P) network communication, which is widely used in blockchain projects, also makes it possible for a node to send and receive information from multiple network channels. It is unrealistic to keep blocking the network information transmission of a node for a long time. Therefore, all the discussion below is under the semi-synchronous network model. The design and selection of consensus protocols for public chain networks that allow nodes to dynamically join and leave need to consider possible Byzantine failures. Therefore, the consensus protocol of a public chain network is designed to guarantee the security and liveness of the network under the semi-synchronous network model on the premise of possible Byzantine failure. Researchers of distributed systems point out that to ensure the security and liveness of the system, the consensus protocol itself needs to meet three requirements:
Validity: The value reached by honest nodes must be the value proposed by one of them
Agreement: All honest nodes must reach consensus on the same value
Termination: The honest nodes must eventually reach consensus on a certain value
Validity and agreement can guarantee the security of the distributed system, that is, the honest nodes will never reach a consensus on a random value, and once the consensus is reached, all honest nodes agree on this value. Termination guarantees the liveness of distributed systems. A distributed system unable to reach consensus is useless.
The CAP theorem and Byzantine Generals Problem
In a semi-synchronous network, is it possible to design a Byzantine fault-tolerant consensus protocol that satisfies validity, agreement, and termination? How many Byzantine nodes can a system tolerance? The CAP theorem and Byzantine Generals Problem provide an answer for these two questions and have thus become the basic guidelines for the design of Byzantine fault-tolerant consensus protocols. Lamport, Shostak, and Pease abstracted the design of the consensus mechanism in the distributed system in 1982 as the Byzantine Generals Problem, which refers to such a situation as described below: several generals each lead the army to fight in the war, and their troops are stationed in different places. The generals must formulate a unified action plan for the victory. However, since the camps are far away from each other, they can only communicate with each other through the communication soldiers, or, in other words, they cannot appear on the same occasion at the same time to reach a consensus. Unfortunately, among the generals, there is a traitor or two who intend to undermine the unified actions of the loyal generals by sending the wrong information, and the communication soldiers cannot send the message to the destination by themselves. It is assumed that each communication soldier can prove the information he has brought comes from a certain general, just as in the case of a real BFT consensus protocol, each node has its public and private keys to establish an encrypted communication channel for each other to ensure that its messages will not be tampered with in the network communication, and the message receiver can also verify the sender of the message based thereon. As already mentioned, any consensus agreement ultimately reached represents the consensus of the majority. In the process of generals communicating with each other for an offensive or retreat, a general also makes decisions based on the majority opinion from the information collected by himself. According to the research of Lamport et al, if there are 1/3 or more traitors in the node, the generals cannot reach a unified decision. For example, in the following figure, assume there are 3 generals and only 1 traitor. In the figure on the left, suppose that General C is the traitor, and A and B are loyal. If A wants to launch an attack and informs B and C of such intention, yet the traitor C sends a message to B, suggesting what he has received from A is a retreat. In this case, B can't decide as he doesn't know who the traitor is, and the information received is insufficient for him to decide. If A is a traitor, he can send different messages to B and C. Then C faithfully reports to B the information he received. At this moment as B receives conflicting information, he cannot make any decisions. In both cases, even if B had received consistent information, it would be impossible for him to spot the traitor between A and C. Therefore, it is obvious that in both situations shown in the figure below, the honest General B cannot make a choice. According to this conclusion, when there are $n$ generals with at most $f$ traitors (n≤3f), the generals cannot reach a consensus if $n \leq 3f$; and with $n > 3f$, a consensus can be reached. This conclusion also suggests that when the number of Byzantine failures $f$ exceeds 1/3 of the total number of nodes $n$ in the system $f \ge n/3$ , no consensus will be reached on any consensus protocol among all honest nodes. Only when $f < n/3$, such condition is likely to happen, without loss of generality, and for the subsequent discussion on the consensus protocol, $ n \ge 3f + 1$ by default. The conclusion reached by Lamport et al. on the Byzantine Generals Problem draws a line between the possible and the impossible in the design of the Byzantine fault tolerance consensus protocol. Within the possible range, how will the consensus protocol be designed? Can both the security and liveness of distributed systems be fully guaranteed? Brewer provided the answer in his CAP theorem in 2000. It indicated that a distributed system requires the following three basic attributes, but any distributed system can only meet two of the three at the same time.
Consistency: When any node responds to the request, it must either provide the latest status information or provide no status information
Availability: Any node in the system must be able to continue reading and writing
Partition Tolerance: The system can tolerate the loss of any number of messages between two nodes and still function normally
https://preview.redd.it/1ozfwk7u7m851.png?width=1400&format=png&auto=webp&s=fdee6318de2cf1c021e636654766a7a0fe7b38b4 A distributed system aims to provide consistent services. Therefore, the consistency attribute requires that the two nodes in the system cannot provide conflicting status information or expired information, which can ensure the security of the distributed system. The availability attribute is to ensure that the system can continuously update its status and guarantee the availability of distributed systems. The partition tolerance attribute is related to the network communication delay, and, under the semi-synchronous network model, it can be the status before GST when the network is in an asynchronous status with an unknown delay in the network communication. In this condition, communicating nodes may not receive information from each other, and the network is thus considered to be in a partitioned status. Partition tolerance requires the distributed system to function normally even in network partitions. The proof of the CAP theorem can be demonstrated with the following diagram. The curve represents the network partition, and each network has four nodes, distinguished by the numbers 1, 2, 3, and 4. The distributed system stores color information, and all the status information stored by all nodes is blue at first.
Partition tolerance and availability mean the loss of consistency: When node 1 receives a new request in the leftmost image, the status changes to red, the status transition information of node 1 is passed to node 3, and node 3 also updates the status information to red. However, since node 3 and node 4 did not receive the corresponding information due to the network partition, the status information is still blue. At this moment, if the status information is queried through node 2, the blue returned by node 2 is not the latest status of the system, thus losing consistency.
Partition tolerance and consistency mean the loss of availability: In the middle figure, the initial status information of all nodes is blue. When node 1 and node 3 update the status information to red, node 2 and node 4 maintain the outdated information as blue due to network partition. Also when querying status information through node 2, you need to first ask other nodes to make sure you’re in the latest status before returning status information as node 2 needs to follow consistency, but because of the network partition, node 2 cannot receive any information from node 1 or node 3. Then node 2 cannot determine whether it is in the latest status, so it chooses not to return any information, thus depriving the system of availability.
Consistency and availability mean the loss of the partition tolerance: In the right-most figure, the system does not have a network partition at first, and both status updates and queries can go smoothly. However, once a network partition occurs, it degenerates into one of the previous two conditions. It is thus proved that any distributed system cannot have consistency, availability, and partition tolerance all at the same time.
https://preview.redd.it/456x2blv7m851.png?width=1400&format=png&auto=webp&s=550797373145b8fc1471bdde68ed5f8d45adb52b The discovery of the CAP theorem seems to declare that the aforementioned goals of the consensus protocol is impossible. However, if you’re careful enough, you may find from the above that those are all extreme cases, such as network partitions that cause the failure of information transmission, which could be rare, especially in P2P network. In the second case, the system rarely returns the same information with node 2, and the general practice is to query other nodes and return the latest status as believed after a while, regardless of whether it has received the request information of other nodes. Therefore, although the CAP theorem points out that any distributed system cannot satisfy the three attributes at the same time, it is not a binary choice, as the designer of the consensus protocol can weigh up all the three attributes according to the needs of the distributed system. However, as the communication delay is always involved in the distributed system, one always needs to choose between availability and consistency while ensuring a certain degree of partition tolerance. Specifically, in the second case, it is about the value that node 2 returns: a probably outdated value or no value. Returning the possibly outdated value may violate consistency but guarantees availability; yet returning no value deprives the system of availability but guarantees its consistency. Tendermint consensus protocol to be introduced is consistent in this trade-off. In other words, it will lose availability in some cases. The genius of Satoshi Nakamoto is that with constraints of the CAP theorem, he managed to reach a reliable Byzantine consensus in a distributed network by combining PoW mechanism, Satoshi Nakamoto consensus, and economic incentives with appropriate parameter configuration. Whether Bitcoin's mechanism design solves the Byzantine Generals Problem has remained a dispute among academicians. Garay, Kiayias, and Leonardos analyzed the link between Bitcoin mechanism design and the Byzantine consensus in detail in their paper The Bitcoin Backbone Protocol: Analysis and Applications. In simple terms, the Satoshi Consensus is a probabilistic Byzantine fault-tolerant consensus protocol that depends on such conditions as the network communication environment and the proportion of malicious nodes' hashrate. When the proportion of malicious nodes’ hashrate does not exceed 1/2 in a good network communication environment, the Satoshi Consensus can reliably solve the Byzantine consensus problem in a distributed environment. However, when the environment turns bad, even with the proportion within 1/2, the Satoshi Consensus may still fail to reach a reliable conclusion on the Byzantine consensus problem. It is worth noting that the quality of the network environment is relative to Bitcoin's block interval. The 10-minute block generation interval of the Bitcoin can ensure that the system is in a good network communication environment in most cases, given the fact that the broadcast time of a block in the distributed network is usually just several seconds. In addition, economic incentives can motivate most nodes to actively comply with the agreement. It is thus considered that with the current Bitcoin network parameter configuration and mechanism design, the Bitcoin mechanism design has reliably solved the Byzantine Consensus problem in the current network environment.
Practical Byzantine Fault Tolerance, PBFT
It is not an easy task to design the Byzantine fault-tolerant consensus protocol in a semi-synchronous network. The first practically usable Byzantine fault-tolerant consensus protocol is the Practical Byzantine Fault Tolerance (PBFT) designed by Castro and Liskov in 1999, the first of its kind with polynomial complexity. For a distributed system with $n$ nodes, the communication complexity is $O(n2$.) Castro and Liskov showed in the paper that by transforming centralized file system into a distributed one using the PBFT protocol, the overwall performance was only slowed down by 3%. In this section we will briefly introduce the PBFT protocol, paving the way for further detailed explanations of the Tendermint protocol and the improvements of the Tendermint protocol. The PBFT protocol that includes $n=3f+1$ nodes can tolerate up to $f$ Byzantine nodes. In the original paper of PBFT, full connection is required among all the $n$ nodes, that is, any two of the n nodes must be connected. All the nodes of the network jointly maintain the system status through network communication. In the Bitcoin network, a node can participate in or exit the consensus process through hashrate mining at any time, which is managed by the administrator, and the PFBT protocol needs to determine all the participating nodes before the protocol starts. All nodes in the PBFT protocol are divided into two categories, master nodes, and slave nodes. There is only one master node at any time, and all nodes take turns to be the master node. All nodes run in a rotation process called View, in each of which the master node will be reelected. The master node selection algorithm in PBFT is very simple: all nodes become the master node in turn by the index number. In each view, all nodes try to reach a consensus on the system status. It is worth mentioning that in the PBFT protocol, each node has its own digital signature key pair. All sent messages (including request messages from the client) need to be signed to ensure the integrity of the message in the network and the traceability of the message itself. (You can determine who sent a message based on the digital signature). The following figure shows the basic flow of the PBFT consensus protocol. Assume that the current view’s master node is node 0. Client C initiates a request to the master node 0. After the master node receives the request, it broadcasts the request to all slave nodes that process the request of client C and return the result to the client. After the client receives f+1 identical results from different nodes (based on the signature value), the result can be taken as the final result of the entire operation. Since the system can have at most f Byzantine nodes, at least one of the f+1 results received by the client comes from an honest node, and the security of the consensus protocol guarantees that all honest nodes will reach consensus on the same status. So, the feedback from 1 honest node is enough to confirm that the corresponding request has been processed by the system. https://preview.redd.it/sz8so5ly7m851.png?width=1400&format=png&auto=webp&s=d472810e76bbc202e91a25ef29a51e109a576554 For the status synchronization of all honest nodes, the PBFT protocol has two constraints on each node: on one hand, all nodes must start from the same status, and on the other, the status transition of all nodes must be definite, that is, given the same status and request, the results after the operation must be the same. Under these two constraints, as long as the entire system agrees on the processing order of all transactions, the status of all honest nodes will be consistent. This is also the main purpose of the PBFT protocol: to reach a consensus on the order of transactions between all nodes, thereby ensuring the security of the entire distributed system. In terms of availability, the PBFT consensus protocol relies on a timeout mechanism to find anomalies in the consensus process and start the View Change protocol in time to try to reach a consensus again. The figure above shows a simplified workflow of the PBFT protocol. Where C is the client, 0, 1, 2, and 3 represent 4 nodes respectively. Specifically, 0 is the master node of the current view, 1, 2, 3 are slave nodes, and node 3 is faulty. Under normal circumstances, the PBFT consensus protocol reaches consensus on the order of transactions between nodes through a three-phase protocol. These three phases are respectively: Pre-Prepare, Prepare, and Commit:
The master node of the pre-preparation node is responsible for assigning the sequence number to the received client request, and broadcasting the message to the slave node. The message contains the hash value of the client request d, the sequence number of the current viewv, the sequence number n assigned by the master node to the request, and the signature information of the master nodesig. The scheme design of the PBFT protocol separates the request transmission from the request sequencing process, and the request transmission is not to be discussed here. The slave node that receives the message accepts the message after confirming the message is legitimate and enter preparation phase. The message in this step checks the basic signature, hash value, current view, and, most importantly, whether the master node has given the same sequence number to other request from the client in the current view.
In preparation, the slave node broadcasts the message to all nodes (including itself), indicating that it assigns the sequence number n to the client request with the hash value d under the current view v, with its signaturesig as proof. The node receiving the message will check the correctness of the signature, the matching of the view sequence number, etc., and accept the legitimate message. When the PRE-PREPARE message about a client request (from the main node) received by a node matches with the PREPARE from 2f slave nodes, the system has agreed on the sequence number requested by the client in the current view. This means that 2f+1 nodes in the current view agree with the request sequence number. Since it contains information from at most fmalicious nodes, there are a total of f+1 honest nodes that have agreed with the allocation of the request sequence number. With f malicious nodes, there are a total of 2f+1 honest nodes, so f+1represents the majority of the honest nodes, which is the consensus of the majority mentioned before.
After the node (including the master node and the slave node) receives a PRE-PREPARE message requested by the client and 2f PREPARE messages, the message is broadcast across the network and enters the submission phase. Th