原文来源:播客节目《Hash Out 42 》
This article is based on the latest episode of the podcast “Hash Out 42” produced by HashKey Capital, "Decoding the Gatekeeper Myth: Developers and the Bitcoin “Ecology” (Part I). In this episode, Jeffrey Hu, HashKey Capital Tech Lead, and Bitcoin researcher Jian, Depth unpack some common fallacies in the Bitcoin space. From the power of Bitcoin developers, to activity on the Blockchain, to misconceptions about Bitcoin Core, this episode delves into the complexities of Bitcoin. Mr. Ajian also gave an in-depth discussion on Bitcoin’s decentralization governance structure, highlighting the uniqueness of the Bitcoin network. The text version is organized as follows:
Podcast link

旁白 00: 03
You’re listening to Hash Out 42, a podcast produced by HashKey Capital. In The Hitchhiker’s Guide to the Galaxy, the supercomputer “pondered” after 7.5 million years of calculations and verification, and came up with the final answer of life, the universe, and all things is 42. In this show, we hope to share the ultimate conjectures about the crypto and Blockchain industry with entrepreneurs, investors, developers, community participants, and regulators from the Web3 universe.
Sword 00: 34
"These developers, they don’t actually have that much power to influence what you can and can’t do on this Bitcoin Blockchain. ”
Jeffrey Hu 00: 40
Luke, what he wants to do may not be to make some changes at the level of Consensus Rules, but more at the level of local clients or Full Node. ”
Sword 00: 51
The point of this conservatism is that he always puts security at the top of the list, so it doesn’t try anything. But you can think of it as unconservative, because if you find a good solution, people will actually embrace it very positively.
Jeffrey Hu 01: 08
Hello and welcome to the third episode of Hash out 42, a podcast produced by HashKey Capital. I’m Jimmy Hu, Technical Director at HashKey Capital. Today, it is a great honor to invite Mr. Ajian, a Bitcoin researcher and contributor to BTC Study, to discuss some myths about the Bitcoin ecosystem with us. Then Mr. Ah Jian, why don’t you say hello to our audience friends?
Ajian 01: 28
Hello listeners and friends, I am A Jian, and I am a Bitcoin researcher. It was an honor to receive an invitation from Hash out 42 to record this podcast with Jeffrey.
Jeffrey Hu 01: 39
OK, okay, the name of our podcast is actually called Decoding Gatekeeper Myths, and we want to discuss some common misconceptions about Bitcoin, including the Bitcoin ecosystem. That’s right, so I’d like to invite Mr. Ah Jian to talk about some of the recent myths, because just like the title, then I guess there may be a misunderstanding that we have observed recently, and it is also something that we discussed before doing this podcast. In other words, some developers are gatekeepers, so basically what they can or can’t do is up to them. At this point, on this first myth that everyone may be more concerned about, what might Mr. Ah Jian want to comment on?
Ajian 02: 19
This is a myth or imagination that has long been ingrained in the Chinese world, well, you can say that it is the most rooted, or even the most rooted. It is up to Bitcoin developers, especially developers of so-called Bitcoin Core clients, to think that their gatekeepers are what they can and cannot do. In fact, there is almost no truth to this idea, because a lot of things are still happening on the Bitcoin Blockchain, whether it’s one or the other, or by a lot of Bitcoin Core developers, or other client developers. For example, as you may have heard recently, there is a developer named Luke, and Luke has a particularly clear position, that is, he opposes the random stuffing of data into the Bitcoin Blockchain. Of course, how to define this specifically, what is data related to Bitcoin, what is data that has nothing to do with Bitcoin, and data that should not be written, he himself has not clearly expressed. But then I thought about it, in fact, this core meaning of it, my own summary, no, I can’t represent it, but my own summary, I think is an acceptable belief that only data related to Bitcoin’s cryptography security should be written on the Bitcoin Blockchain.
Ajian 03: 36
What is the data related to the Cryptography security of Bitcoin? For example, every Bitcoin we make is an output, then its script will need to indicate the public key to confirm that the money can only be used by the owner of the public key (on which private key is spent), and when it is actually spent, it will be necessary to record a signature calculated by the private key behind the public key on the chain, and this signature will prove that the cost is valid.
Ajian 04: 02
Then these things can be summarized as data related to Bitcoin’s cryptography security, but corresponding to others, such as arbitrary data, similar to additional information, or what happened today, some people want to write a birthday wish on it, these are information that has nothing to do with Bitcoin’s cryptography security, then they should not be written, this is my own personal summary, but Luke I want to point out the fact that Luke may not like this, including that he may not be the only one who does not like this, but many people will find that these things are still happening to this day, and what you do is to say that these blocks that record this additional information and have nothing to do with the cryptography security of Bitcoin are still valid Blocks. Including many developers who believe that in fact, these things are simply impossible to prevent, that is, you are actually technology, there is no effective technical means that can successfully separate what is meaningful, this data that is meaningful to the security of Bitcoin, what is meaningless this data, so it is fundamentally doomed to these things, that is, you can only play a game of whack-a-mole, or a game of cat and mouse, there is a mouse, you catch a mouse, but there is no kind of once and for all Way.
Sword 05: 19
All in all, what I want to say is, first of all, no matter how you understand it, there are some or some Bitcoin developers who clearly show their personal positions, and these developers, in fact, they don’t have so much power to influence what you can and can’t do on the Bitcoin Blockchain. In particular, there is a very important thing, that is, if everyone can understand this matter, you should be able to understand that in fact, whether it is a developer or a Miner, in fact, their right is actually in a certain structure of checks and balances, that is, what kind of Consensus rule is chosen in the Bitcoin network, that is, what kind of Block is allowed to become a valid Block This consensus rule is chosen by each node itself, that is, as a Node, you can choose the Consensus rule that you think is valid。 Of course, you can’t choose this Consensus rule that is incompatible with others, but as long as it is compatible with this rule, you can choose one set yourself.
Ajian 06: 09
For example, everyone now hears about the Taproot upgrade implemented in 2021, but in fact, if you run a Taproot upgrade of the previous version of Bitcoin Core or other clients, your Node will not leave the network, and your Node will still be in the network as a relay to continue to serve as a full node for this verification function, but it cannot verify the transaction related to the output of the so-called Taproot, and push it a little further. In 2017, Bitcoin network activated the SegWit fork, so if you were using a version of Bitcoin Core or another Bitcoin client that was released before SegWit, you would still be able to run on the Bitcoin network today, which means that you just don’t run these transactions related to these new BitcoinConsensus rules after 2017 and use 2017 This transaction of these Consensus Rules years ago, you can also verify.
Ajian 06: 58
What does this mean? What does it mean that in the so-called Bitcoin network, what rules does it use to limit what we can do on the Bitcoin Blockchain? These things are actually determined by a decentralized Bitcoin full node network, not by a certain person or a group of people, regardless of this group of people, such as a certain group of miners or a certain group of developers, this idea is actually deviated from the facts, what is the closest truth to the truth? This thing is the Bitcoin network, a network of full nodes, now the whole network is public, there are 15,000 nodes, 16,000, and even the Node that is not public has more, and these operators of these Nodes use a completely equal way to decide, which part of a Block, which Block is acceptable in his opinion, basically such a process.
Ajian 07: 52
So there is no such role that says that a certain person, a certain developer or a certain group of developers can become the gatekeeper of the entire network, if such a role exists, in fact, Bitcoin fails, because Bitcoin wants to be a censorship-resistant currency, or it wants a system without a single point of failure, if there is such a person, he has such a big right, he becomes a single point of failure.
Jeffrey Hu 08: 18
A continuous topic, in fact, there may often be a misunderstanding, that is, as if in this certain network, it is decided by a certain group of people, then it may be just mentioned developers, or it may be some Miners, etc., they may decide the direction or fate of the entire network. So in fact, this is a misunderstanding that I think may be common to everyone, so in fact, it may Bitcoin more like what Mr. A Jian said just now, it is a more decentralized network, a more Decentralization network, so everyone’s operation Full Node he still has his own meaning in this area. In addition, I have actually seen some news reports recently, that is, along with the topic of the developer just mentioned, there are often some news reports that mention a word called core developer. Then let me talk about my own feeling first, that is, whenever I see these words, my blood pressure will rise a little bit, because I feel that everyone may not understand some of the concepts behind the developer that Mr. Jian just said, because it may also be a mistake in translation, that is, you may not pay much attention to the case, and you will understand this Bitcoin Core Dev, which is the core Dev of uppercase C, as lowercase core Dev is the core development of Bitcoin, but in fact, if we want to do a word segmentation, we should actually split the first two words Bitcoin Core into one word, as one of the Bitcoin ones, the developers of a kind of implementation of the Full Node we just said, not the core dev of Bitcoin , not the core developers of Bitcoin, not that the entire Bitcoin network is decided by these core developers, then some other networks may be seen, for example, the core developers of Ethereum may often have some of their like, such as ACD call or this kind of meeting, they will decide, for example, there may be some hard fork upgrade in January next year or what? But Bitcoin doesn’t seem to have such a concentrated core group of developers to do this kind of discussion about the upgrade of the network’s hard fork.
Jeffrey Hu 10: 11
Of course, there will be, for example, Bitcoin Core may have some of its own, for example, if you make a PR (Pull Request), there may be some PR Review Club meetings, maybe to discuss some of this upgrade, or some PR Whether a proposal for this pull is reasonable, or whether it has some other impact, but none of these core developers will determine the direction of the entire network, which may be a common one that everyone may encounter, and I think it is a misunderstanding. Of course, I will mention this piece again, that is, it means that this case is also very important, that is, as a person with a little obsessive-compulsive disorder, I will see that this kind of c from Core will have problems if it is uppercase and lowercase. In the same way, it is actually similar to HashKey, that is, the k of our HashKey is often lowercase, so in fact, h and k are both uppercase, I don’t know that Mr. Jian has nothing to add to this core developer.
Ajian 11:00
Yes, in fact, my reaction is a bit similar to Jeffrey’s reaction, that is, the blood pressure will increase slightly, and even I want to make a more exciting proposal, that is, if our listeners and friends hear it, and someone tells you that the core developer of Bitcoin is written in Chinese, you should reasonably doubt the understanding of the Bitcoin world of the person communicating with you. I’m very polite to say this, because in fact, there are two reasons for this, one is that it is a long-standing misunderstanding, and my own personal suspicion is that this misunderstanding must have been formed before 2017, that is, the capital Bitcoin, just the capital B and the capital C start with a Bitcoin Core, itself, this Bitcoin Core, let me first talk about what is the origin of the Bitcoin Core? That’s right, it’s the well-known software written by Satoshi Nakamoto himself, Bitcoin, the successor to this software. That is to say, after Satoshi Nakamoto left, and then some developers were ready to migrate the entire codebase to our current GitHub website, they decided to use a new name, that is, to use this Bitcoin Core, that is, B is also capitalized, this C is also capitalized, do you say that this Core must have a big meaning? Actually, no, I don’t feel it.
Ajian 12: 15
By the way, everyone may think that Bitcoin Core, it thinks that there is only one client in the Bitcoin world, but it is not. Because Bitcoin Core, although it occupies the largest amount of use, is a client like Bitcoin Core, but there are also clients developed in other languages. For example, there is a client called btcd, which is a Lighting Network implementation of this team LND is a Bitcoin client developed by Lightning Labs they developed, it is written in Go, and some people will use Java to write this Bitcoin client, I guess now there should be people who will try to use Python or rust to write a Bitcoin client. Yes, these are all very common things, and you have to consider another point, what is it? As I said earlier, in the Bitcoin network, everyone does not have to use the same version of software, nor does it have to use the same set of consensus rules. This means that if you’re on the Bitcoin network, you may see that while everyone is using the Bitcoin Core client, some are using version 22.0, some are using version 0.21, and some are using version 0.17. Essentially, although they both use a client such as Call, their software is different to a certain extent, and strictly you shouldn’t treat it as the exact same.
Ajian 13: 34
Leave that aside from that, let’s move on and come back. The name Bitcoin Core, maybe at the beginning when people in the Chinese world understood Bitcoin, they directly translated it into Bitcoin Core, and then Bitcoin Core developers, such a kind, you can think of it as a translation misunderstanding, but I want to say that it may also be affected by the second factor, that is, it is a cultural misunderstanding. What is this cultural misunderstanding? I’m not sure if this is influenced by some later cryptocurrency project, such as Ethereum, because Ethereum, although it has some Ethereum developers, or supporters who think they use the same governance structure as Bitcoin, or how the entire network should be upgraded, how this upgrade should be coordinated, How to determine what to upgrade, they think they use similar or even the same structure, but I will say that this is not the truth.
Ajian 14: 24
The development of Ethereum will actually be much more centralized than the development of Bitcoin’s software. The key point is that, as Jeffrey said, there is no client called Ethereum core in the world of Ethereum. There is no client in the Ethereum world called Ethereum Core, right? Actually, you can find a Geth client now, there used to be a Parity client, and now the Parity client I’m not sure it’s still under maintenance, then there may be some other clients now, and then in the Ethereum world, for example, it will have a so-called all core developer meeting, which is held on Friday night every two weeks, and then you say, when you need to discuss something, you invite some people to the meeting, and of course other people can observe, and other people may not be able to express their opinions, that is, or whether they can express their opinions, and it’s not up to you, right? It’s up to you to have an organizer for the meeting itself, and he can, he can set the agenda.
Ajian 15: 19
And then it’s important to note that Ethereum uses the so-called hard fork upgrade model. What does a hard bifurcation mean?Hard Fork is that if your Node doesn’t upgrade, and most people do, then you won’t be able to join the network anymore, and you’ll be kicked out of the network for technical reasons, that is, if you don’t agree to the upgrade, or you don’t want to upgrade your own software, your Node won’t be able to survive in the Ethereum network Relay, this is a key difference, which means who has mastered this definition of what we want to upgrade, If we want to update this right of the Ethereum protocol’s so-called Consensus Rules, it actually has a very large power that can make some people be kicked out of the network for a reason that they themselves are not voluntary. This right actually constitutes what many people understand as the source of the power of the so-called core developers.
Ajian 16: 08
And this imagination is real to some extent on Ethereum, it’s just not on Bitcoin. Because Bitcoin has chosen a completely different way of development, and the entire community culture is completely different from Ethereum’s, I am thinking that on the one hand, there is a long-standing misunderstanding in translation, and on the other hand, there is a cultural imagination, which may be related to your own actual life experience, and may also be related to the development of some other cryptocurrency projects.
Ajian 16: 39
But this cultural imagination on Bitcoin is extremely misplaced, because there is no such mechanism in Bitcoin that can hold such a large power, in fact, there is no kind of personal experience like your own, someone can hold such a large power, on the contrary, I suggest you try to run Bitcoin Core or any other Bitcoin client yourself.
Sword 17: 02
I know I have, and I have some friends around me who just chose not to run Bitcoin Core, and he made it clear that he doesn’t run Bitcoin Core, that he likes to run btcd, right? As long as you run these clients yourself, including you can, you can even pick some very old clients of this version of Bitcoin Core, or other Bitcoin software and try to run them, and then you will know what is going on.
旁白 17: 29
本节目由 HashKey Capital 倾情制作,欢迎大家在 Spotify、 Apple Podcast、 Google Podcast 等播客平台关注收听。
Jeffrey Hu 17: 41
In fact, I think Mr. Jian’s answer just now may also answer another common misunderstanding that everyone has been doing recently, that is, Luke may want to change a new client, which is different from many current Bitcoin Core implementations, so he may be going to fork, or Luke, then he suggests that Bitcoin Core Adding some features to the new version may lead to a fork of the entire network, which is actually a common misconception that the entire Luke is based on the public information we have seen so far What he wants to do may not be to make some changes at the level of the Consensus rules we mentioned, but more to make certain modifications or filters at the level of the local so-called client or Full Node, or make some changes to a forwarding strategy, so at present, it has nothing to do with the fork. And then just now I actually talked about the fork, that is, there is a misunderstanding that everyone will often mention, that is, the Bitcoin development culture may actually be more conservative, because every time it is a soft fork, what does Mr. A Jian think about this piece?
Ajian 18: 41
I’ll give you some numbers that might give you a more concrete understanding of this. Or let me ask Jeffrey a question. The first question is, do you think the Bitcoin network has run a Hard Fork? The second question is, if any, how many times do you think it is?
Ajian 19:10
The number of changes to this consensus rule of the Bitcoin network, including Taproot upgrades, is 21 in total, but there will be some differences in the way it is counted, or how it is defined. For example, one of my favorite Bitcoin workers should be called workers, because he’s not a developer, he’s Jameson Lopp, and he thinks that there are some unexpected reasons that cause the BitcoinBlockchain to split, and it doesn’t necessarily count as a Hard Fork in his opinion, so in his opinion Bitcoin there is only one Hard Fork on the network, if I remember correctly, it should be 2013.
Ajian 19: 49
In order to add a special Operation Code to the script of Bitcoin, that is, NOP, that is, when encountering this Operation Code, your script should not do anything, just encounter this Operation Code, you can think of it as just a placeholder, right, you don’t do anything when you encounter this operation, then this operation that does not do anything is completely redundant. So what is it for? It is to help this Soft Fork upgrade in the future.
Ajian 20: 16
That is to say, the old Node, once this upgrade, is a Node that can understand the syntax of the NOP Operation Code, then when you encounter this Node, you will not do anything. But those nodes that use the new consensus rules, encounter a NOP operation code, it may explicitly determine that it has a certain semantic, and then come and go to enforce its semantics, and then complete the soft fork upgrade of this so-called consensus rule, so interesting, right? You have 21 consensus rule changes, only one is a hard fork, and this hard fork still helps the subsequent soft fork upgrade. Therefore, it can be considered that among so many upgrades of the Bitcoin network, they are all soft fork upgrades.
Ajian 20:58
So let’s return to a question, that is, this culture of soft fork upgrades, we don’t care how it came about, then what is its objective impact on the Bitcoin network? Will it lead Bitcoin developers to be more conservative? I think there are two aspects here, one is that the developers of Bitcoin are not conservative because of the soft fork, or you can think that everyone’s understanding of the Bitcoin network is that there is one thing that cannot be sacrificed for this network, that is, security, all aspects of security include for example, we say that the node can you resist this denial-of-service attack, DOS attack, right? and individual users when you use the public key, or when you use scripts, is it safe? Or is the consensus of the entire network secure when you execute? These security are the most important things in the Bitcoin network.
Sword 21:48
Given this most important priority, in fact, you will naturally find that Bitcoin developers will not try any possible development direction, and their main development direction must be to say that I want to strengthen the security of Bitcoin, which is one thing. So if some people think that not everything can be done on the Bitcoin network, or that adding new features is particularly slow, and think that this is a conservative performance, their first impression is right. But as for the matter itself, whether you should understand it as a conservative one, then I think it is a reservation. Because what I’m talking about next is in Bitcoin, for example, in this Taproot upgrade in 2021, it used this Schnoor signature, is this thing interesting, where is the interesting part? We know that Bitcoin was the first cryptocurrency project to appear, and when it first appeared, it chose to use ECDSA Algorithm for this electronic signature, and the elliptic curve he chose was carefully selected by Satoshi Nakamoto, he avoided the one used by more people, and he chose the one used by fewer people.
Ajian 22: 51
Then we will find that many cryptography currency projects have inherited this, including the later emergence of Ethereum, or other projects that continue to use ECDSA signatures. But there are some later projects that will use some variants of Schnoor’s signature, such as Ed 25519, that is, if this friend who understands cryptography will know this Ed 25519, such as later Polkadot, he will use Ed 25519. There may be some other projects that will also use this algorithm, in fact, this kind of signature, it is also a variant of the Schnorr signature, so it will be interesting that it is this successor of these Bitcoins at that time, they continue to choose ECDSA Signatures, and continue to be used today, and even ready to continue to use, or at least not particularly actively want to use a new signature algorithm, Bitcoin for some chain efficiency, that is, to save on-chain space, or to make this chain transaction more compact, or because of the use of Schnoel signature, because of Taproot , it also uses the Schnoer signature to achieve a very interesting use, that is, a single address can include both the cost method of the secret key and the cost method of the script, which can achieve such a thing.
Sword 24: 01
For a variety of reasons, Bitcoin chose to support Schnoel’s signature. Is it conservative? That is, isn’t it a very bold thing in itself? It’s an innovation, a very bold innovation, in every sense I can imagine. Even before the Taproot upgrade, on the Bitcoin network, you can clearly distinguish what is the output of a single public key, that is, generally speaking, the form in which individuals save their own funds, and the output of scripts, which may usually be personal Wallets, or may be more complex in the form of output used by this contract-style protocol.
Ajian 24:38
Before Taproot, you could distinguish these two outputs on-chain. And after the Taproot upgrade, these two forms of this output are combined into one, which in itself is a very bold thing. According to me, I think it’s a very, very wonderful thing that deserves the word innovation in every sense of the word. So you could say it’s conservative, but it’s also unconservative. The point of this conservatism is that it always puts security first, so it doesn’t try anything. But you can think that he is not conservative, because when he finds a good solution, people will actually embrace it very positively.
Jeffrey Hu 25: 14
That’s right, especially agree that this is this upgrade of Schnoer’s signature, because now we know that many other Blockchain projects just mentioned, in fact, he may at least at the level of his native Address, if you want to add a new way of signature, or change the original elliptic curve, in fact, there will still be a lot of resistance, it may also be because of technical architecture reasons, or it may be because of the whole culture or a reason for community discussion, we will see that it will actually be very slow, that may use some other ways, such as adding to the Smart Contract to do a compatible or how to do it。 But it’s not like Bitcoin, which basically you can think of as a native way to add a signature, which I actually quite agree with.
Jeffrey Hu 25: 56
Then let’s go back to the matter of Luke’s client just now, that is, just because this is a topic to talk about forks, then in fact, I personally don’t particularly like the word fork, I don’t know how Mr. Ajian is, I think the word fork often makes people feel a little misunderstood, such as the one just mentioned, maybe because of some Computing Power or bugs The reason for the partitioning of the network, in fact, may sometimes be considered by some people as a hard fork or whatever, then in fact, my own understanding of the usual soft fork or hard fork, that can be replaced by another technical term. Soft fork is actually a compatible upgrade, hard fork is actually a non-compatible upgrade, that is, you add more new features, that may be your own node, that is, either you think that the original Node running the old software can not appear in the new network, then if it is in the Bitcoin network, in fact, I think you can look at this perspective upside down, if a Node wants to do some hard fork upgrades, it is actually its own fork, then this is also a relative concept, because it is no longer abiding by the rules of a consensus of the entire network。
Jeffrey Hu 27: 01
So a little more, just this time Luke To do this, he may want to modify such a thing as the Node, but in fact, he is more likely to happen not at the level of the Soft Fork or Hard Fork that we are discussing, and it has not yet involved the level of the entire network BlockConsensus, and sometimes he fights on the Internet, but in fact, what he discusses more is that he still thinks that this Node may actually be directly forked out, but in fact, the thing he did Node has not yet reached that level, if we understand it intuitively, that is Luke, in fact, the level of doing is the entire transaction mempool, or at the level of the transaction pool on the mempool, it just does some Node transaction filtering or some modifications on the forwarding strategy.
Jeffrey Hu 27: 41
So how to understand it specifically? I can expand this piece a little more, that is, because you may use Metamask or other Wallet may be a little more, so we can see that if you want to send a transaction, basically just click a few buttons, and the transaction will be sent. That is actually a transaction on Bitcoin, from you try to write a transaction, to the final confirmation, basically my own understanding can be divided into three steps, the first step is for yourself to sign this transaction of a message, this is the first step, has generated a signed information. The second step is to put the signed information into the entire transaction mempool. The third step is to package into the block, which is the information of the signature, in fact, the process is also very important.
Jeffrey Hu 28: 21
The first step, for example, in the Lighting Network, the two parties can actually hold each other’s channels in the Lighting Network, and the two parties can hold each other’s information on a part of the transaction signed by the other party, then if the other party does evil, you can use this information signed by the other party, and I can add my own signature information, and you can broadcast it to punish the other party who does evil. So this is a step to use the signature information in the Lighting Network, in fact, it corresponds to the first step of the transaction, then the second step is actually to say that if I want to send a transaction, I will broadcast my signature information to the network, and then I let the other nodes can process it, then the Node will also receive it and do some legitimacy verification, and then forward.
Jeffrey Hu 28: 59
So what Luke did this time is actually mainly in the second step, that is, after my entire Node receives it, is it going to do some kind of filtering, or a processing? Because he thinks that there may be some transactions like some transactions in BRC 20, which may be too burdensome on the network, so I don’t want to forward it at this level, at the level of the mempool library.
Jeffrey Hu 29: 18
So far, in fact, it has not involved the level of consensus of the entire network, then in the end, if you want the entire transaction, in some mining nodes, according to the information in the entire current mempool, including some information of the previous block, the entire hash value will be packaged, and then the entire current transaction will be packaged into the Block, which is the entire network Consensus level.
Jeffrey Hu 29: 42
So you can actually see that Luke is only making changes at the mempool level this time, and it doesn’t have much to do with forks. Yes, and then I actually thought of an example before, how to explain this matter more vividly, what is the example I think? is that I don’t know if Mr. Ah Jian thinks it is appropriate. I can talk about my idea, there may be more in the past, that is, some people will take a lot of their own change to the bank branch, I want to save money, for example, I took a dime of 1 million, want to go to the bank branch to deposit money, then at this time the bank branch may naturally have two ideas, that is, this may not be possible, then since you are here, then I must deal with it, right? The banknotes you take are also real banknotes, then I will definitely have to deal with it, this is according to the regulations of the entire Central Bank, I have to deal with it, then I may need to spend a long time (time), I may have to send a special person to spend a long time to process, a dime by a dime in the money detector to count, and then after the processing is completed, then deposit your money in the bank. That’s a kind of thing, then my bank branch is very responsible for users. Then there is another kind of bank branch will be annoyed by this kind of malicious messy customer, just say, ah, this kind of customer you don’t come to my bank branch, you have to go to other bank branches, I don’t accept this kind of customer who is too small banknotes, if you don’t go to other bank branches, then at this time the customer may have an idea, just say, eh, why don’t you follow the rules of the Central Bank in this bank branch, why don’t you accept a regulation of my customer’s deposit? In fact, this bank branch may also be a little wronged, right? That is, I don’t mean that I want to work against the Central Bank, but my bank branch, I really don’t have more manpower to serve a customer of this kind of small banknotes, so I may issue some of my own regulations, for example, I will not deal with this kind of banknotes below 100 yuan, maybe I will only deal with the deposit and withdrawal of the whole bill of 100 yuan, and the rest you have to find other branches by yourself, or you simply go to a bank branch and handle it yourself.
Jeffrey Hu 31: 37
So this is actually similar, that is, if we bring back to this example, if you think that Luke may be going to hard fork, in fact, it may be a little wrongful of its original meaning, he is not like a bank branch wants to set up another central bank to handle the entire banknote to check the authenticity, or how to keep accounts, he just thinks that this own Node may not spend more resources to process this kind of transaction like BRC 20 or Inion.
Sword 32:00
Jeffrey’s metaphor is really, really good, very vivid. I will add a little, that is, most people say that they do not often pay attention to this technical information, he may not be able to distinguish what is the Consensus Rule, what is the Node is willing to accept a transaction into their own transaction pool, and forward to other Nodes, on their own this part of the rules of other Nodes connected to themselves, the above one rule, we call it Consensus Rule, the other rule we call Transaction Pool Rules, or Transaction Pool Verification Rules, they are different.
Ajian 32: 34
Why? Because a Consensus rule you can think of it as a, to a certain extent, you can think of it as a looser thing, why? Because it just decides to say a Block, whether this Block is valid or not, and each Node defines itself this so-called transaction pool rule just decides whether I want to accept a transaction or not, and forward the transaction, then it may use stricter rules than the Consensus rule.
Sword 32: 56
Because when the Consensus Rule dictates the validity of a Block, then the Node can naturally divide the part of the work that filters out invalid transactions as if you delegate a part of the work to the Miner. Because absenteeism must ensure that its Block is valid, otherwise when your Block, when your transaction is rejected, then you will not get any income at all.
Ajian 33: 16
So it’s reasonable to assume that all he’s going to collect is a valid transaction, and then because he’s already put in a lot of this PoW, I’m going to spend a little bit more time validating this block of it, which is a completely affordable thing for me and doesn’t hurt much. But if a transaction comes in out of thin air, and it travels to me along an uncertain path in the network, you don’t know if it’s a valid transaction or an invalid transaction.
Ajian 33: 43
If you receive every transaction you have to fully perform the verification, in fact, the thing itself is very time-consuming, to consume resources, so the Node’s approach must be to say that I give priority to confirming some characteristics of this transaction that are simple to verify, and then by these characteristics to decide whether I want to continue to further verify the transaction, or when it no longer meets this feature, I simply do not verify, I simply wait to see if the Miner is still willing to package the transaction, if he is willing to package, I will verify him, rightIt’s such a process, most of our listeners or some other friends can’t do it, or can’t think of it, because there is no such layer in the networks that people often use, which is basically exclusive to UTXO or transaction output, that is, when the form of transaction output is used to express a fund and its spending conditions, there is a need to consider this problem.
Sword 34: 40
Why? To give you an example, you are in Ethereum, its so-called all smart contracts are a kind of account, including your own own control with a private key, but also an account, Ethereum’s design is to say that all its core purpose, that is, all the complexity of this processing must be placed in the contract, by the contract code itself to identify.
Ajian 35:00
What transactions can be processed and what transactions cannot be processed? All the transactions on the Ether list are initiated by an external account, right? An external account uses a certain one of its serial numbers to be called nonce Value, there may be some ambiguity, but you call it the serial number, because every account it has this serial number, and the subsequent serial number has to be post-processed, then each account initiates a transaction with an unused serial number, and then when he is confirmed by this block, he is processed in the latest state of entering the determined Ethereum, and then gives you a result, right? So in this model of Ethereum, all the complexity is put into the smart contract account, and its Node is trying to ignore what the final result of the execution of this instruction carried by your transaction is.
Sword 35: 42
That is to say, each of your transactions, it is actually just a transaction initiated by a certain account, and then some instructions are carried in the transaction, that is, what results will be produced when these instructions are executed, and the Node does not care about it at all, regardless of whether you pay a certain amount of this transaction fee. So for a network like Ethereum, its transaction pool rules for this Node are actually very simple, and it will be relatively simpler, because it only needs to verify, first of all, your account does not have enough money to pay your gas fee, right? In other words, I should choose a transaction by comparing the high and low rates of this gas fee and save it in my transaction pool.
Sword 36: 23
As for the accompanying information in this transaction of his, what is the meaning of these instructions attached? He doesn’t care, he doesn’t care at all, so this rule of this transaction pool of his Node is very simple. But in the case of transaction-based outputs, such as UTXOs like Bitcoin, this verification of your transaction pool has to be more complex.
Sword 36: 43
Because you will worry about whether his spending is a valid spending, that invalid spending cannot enter the block, which is this characteristic of Bitcoin, so you naturally generate a series of resources to save it, which we call a heuristic method that you can think of, or some prior verification measures and verification rules that precede signature verification to protect this Node from DOS attacks as much as possible.
Ajian 37: 11
To give you another interesting example, I don’t know if you have heard of Nervos Network, Nervos Network, their transactions, funds are also based on the output of transactions, but their form is called Cell, right? It’s actually very similar in structure to UTXO, so they’re in Nervos Network There will also be some in it, that is, before the Miner to aggregate some transactions that have been broadcast in the network, to do some aggregation for them first, and then to the Miner to do a complete package, will add an intermediate aggregation layer, the emergence of this aggregation layer is actually because of this UTXO feature, because the UTXO feature it means a lot of your transaction itself, it carries this instruction will be more explicit, and it will be more complex.
Sword 37: 55
So on this basis, it is necessary to generate some so-called verification rules of this transaction pool to help this Node determine whether to allow a transaction into its own transaction pool. Because he’s in your trading pool, you’re going to save the transaction, and you’re going to forward it, right? It’s a resource-intensive thing, so that’s probably what it is.