-
Notifications
You must be signed in to change notification settings - Fork 40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Incentives and Trade-offs in Transaction Selection in DAG-based Protocols #8
Comments
I have recorded the transcript by watching the video as pasted below. If you find anything missing in what noted in ScalingBitcoin, you may reference it. However, there may be some mistakes within, so feel free to ask me or check in the video once entering something hard to understand. okay scaling up layer 1 using Dags but we haven't reached yet in developing unblock |
Scaling up layer 1 using DAGs 使用 The first step would be to speed up block rate. Instead of 1 block every 10 minutes or 1 block every 21 seconds, imagine 50 blocks per second or maybe more. That's step one. So we need spontaneous forks of the chain. The second step is to modifying the mining protocol where instead of extending a chain, you want to reference previous blocks and all the tips that it sees, and integrating the forks into one graph so that you have this massive cool graph which 第一步将提高出块率。相比每10分钟或每21秒生成一个块,设想每秒生成50个块或者更多。这就是第一步。因此我们需要链的自发的分叉。第二步是在你想要引用之前的块以及它看到的所有 The third step is the most crucial, though. Which is extracting a consistent set of transactions from this graph. The graph might contain conflicts and you want to extract from it and order it and make it work. This is the main challenge of a blockDAG effort. We developed the SPECTRE method to deal with this as discussed 2 years ago in Hong Kong. The consistency rule is the main challenge. 不过,第三步是最重要的。从该图中提取一组一致的交易。图可能包含 I want to clarify that blockDAG is not a solution, it's merely a framework on top of which someone can develop on top of. Consequently, not all blockDAGs are that are created equal I mentioned etheruem ues some notion of a DAG partially. You can design other variants. I like to think of DAG vs chain as chain is slow single one lane road in a small town and a DAG is a highway and the first implicaiton of this is that if you don't know what you're doing, you'll have a 我想说明一下blockDAG不是解决方案,它只是一个框架,人们可以基于它 To scale up blockchains using DAGs opens up various challenges. The first challenge is the consistency rule. You also have to address confirmations time, how much storage you want miners or full nodes to store and for how long, so think of 1000 tx/second, at least 86 gigabytes per day, do you want to store this forever or not? These are challenges that need to be addressed. Fee structure, fairness, how to maintain decentralization, etc. 使用DAG扩展区块链会带来各种挑战。第一个挑战是一致性规则。你还必须 How do you utilize the DAG fully so that the entire throughput or at least we're close to the entire throughput that the DAG can supply? I will show you why this is not a trivial challenge. We have two scenarios for a DAG. Imagine many blocks per second But for simplicity just say two miners. You're mining 1 and you are mining 2. 如何充分利用DAG的全部吞吐量或至少接近DAG可以提供的全部吞吐量?我会告诉你为什么这不是一个 We are mining 4 transactions. We both create blocks because it's real time and there's no time to coordinate and there are two scenarios. The less optimistic scenario is where you select tx 1, tx 2, and I select tx 1, tx 2 from the 我们正在挖掘4笔交易。我们都创建了块,因为它是实时的,没有时间进行协调,并且有两种情况。不太乐观的情况是你选择 The main question of our research here is how do we make sure that we are closer to the green area than the red area? Assume we have a good consistency rule and a good blockDAG protocol. How can we make sure that transactions are not duplicated across chains? If you don't do anything and let miners mine 如果你不做任何事情而让矿工贪婪地挖掘他们 So here's the good news and perhaps the main thing I want to message to convey to you. The miners are incentivized to some extent to avoid collisions and avoid tx duplication and contribute unique transactions and increase throughput. *So this is a natural incentive of miners to contribute to the healthiness of the system.*The reason is simple. If we collide in th same system, if we choose the same tx for our blocks, then we need to split the fee, you will get half of the fee or some other portion I will get the other portion but we can't pay the fee twice. And we both embedded the tx in our block. only one of us will get the fee or maybe we will split it but we won't be able to extract the entire fee twice. So there's incentive to coordinate and avoid collisions. 所以这是好消息,也许是我想传达给你的主要内容。矿工们在某种程度上受到激励,以避免冲突和重复,并提供独特的交易和提高吞吐量。***因此, |
The sentences (in paragraph 3 and 8 with ...) may be not accurate... |
Chicken game 胆小鬼博弈 And now we're headed to a more formal treatment of this problem. I hope the chicken game is known to most of you. It's a famous game to model conflicts. You have two parties driving towards each other and heading to collision. And the first one to swerve and chicken out is the chicken and the one to stay the course is the winner and daredevil.And of course, if either you chicken out then the other party wins. And if we both dare then there's a collision. The transaction selection game in blockDAG is quite similar. We have tx1, tx2 in the mem pool and one of the transactions is more expensive (tx1) let's say it pays 2 millibitcoins and tx2 pays 50% as much. So now we have to decide how to let numbers should be different I'd say tx1, 3 millibitcoin and tx2 would be 2 millibitcoin.If we both select tx1, the most high paying transaction, we will collide and need to divide the fee between us. But if we both select tx2, we need to divide a lower fee between us. So we need to coordinate and select the transactions. This would be the optimal setup. 而现在我们正在对这个问题进行更 How do we solve this chicken game? In game theory, there are several approaches. The top left, scenario is that there's adversarial setup. You are a mining pool, you are paranoid, you think everyone is going to sabotage your profits and they want your revenue to drop. In that scenario, your safe solution is that you just want to guarantee yourself the best response against everyone else that wants to sabotage me and lower my profits. This is quite adversarial and does not fit loving bitcoin community so we might consider more cooperative setups. The selfish setup is a more common one, which is more similar to the Nash equilibrium model where every party pursues their own interest but somehow the invisible hand brings us to equilibrium under which nobody gains from deviating. This is a common concept. There's also an interesting equilibrium concept invented by Robert Oman he's a novelist from the Hebrew University and this is coordinated equilibrium where everyone is selfish but we have signal for some coordination and in mining the signal could be the randomness from previous blocks. 我们如何解决胆小鬼博弈?在博弈论中,有几个方法。左上角的方法是对抗性的方法。你是一个 |
Max social welfare 最大化社区福利 We can visit several of these ideas but let's begin with max social welfare. This is the simplest and most optimistic. What would be the solution here? All the miners are cooperating, they just ask us, we don't know how they coordinate, there's a design mechanism undre which the DAG is utilized and we won't collide and the throughput is at maximum. The solution in this case is rather simple. The construction to the miners would be just select a transaction in uniform distribution from your mempool, so let's say you have 6 transactions or thousands, you do this by tossing a fair coin between them until some threshold, and you accept all transactions uniformy. The threshold is what's the capacity of the DAG, you can't overcome this capacity, and it's very famous and simple result from queueing theory that says that you won't have any collisions in the system. The buckets of transactions would be sparse enough that collisions will be negligible. This setup of course is a bit naive. There's two catches. 我们可以研究其中的几个想法,但让我们从最大的社区福利开始。这是最简单和最乐观的情况,这里有什么解决方案?所有的矿工都在合作,他们只是问我们,我们不知道他们如何协调,有一个基于DAG设计的机制,使我们不会碰撞,吞吐量达到最大。在这种情况下,解决方案相当简单。对矿工的建设只是从你的内存池中选择统一分配的交易。所以假设你有6笔交易或是数千笔,你都可以通过在它们之间抛出一个公平的硬币直到达到某个阈值来实现这一点,并且你接受所有交易统一。阈值是DAG的容量,你不能超过这个容量。这是一个非常着名且非常简单的排队理论结果,它说这实际上意味着你不会在系统中发生任何冲突。交易桶将足够稀疏时冲突可以忽略不计。这个方法当然有点幼稚。有两次捕获。 This is strategically unstable. We're assuming that everyone is maximizing social welfare and this is not always the case. There's a more inherent problem with this approach which is that it does not allow for differential service to urgent transactions. You can't prioritize transactions by fees. So I am not able to signal to miners that I need this tx faster, I am willing to pay more. So if they are not picking transactions by fees, then everyone waits about the same time. And some transactions will never be approved. You can think of this as the highway where everyone is stuck in the same traffic. As a system designer, is that really what you want to achieve? You want a system that has express lanes, where people are willing to pay more. Assume there's a payment for the express lane, of course. They are willing to pay more to get to their destination faster. And then you will have this curve that says the larger you pay, the faster you get inside. So this is one thing you want to design the system according to. 这在战略上是不稳定的。我们假设每个人都在最大化社区福利,但事实并非如此。这种方法存在一个更固有的问题,即它不允许对紧急事务进行差别服务。你无法按手续费确定交易的优先顺序。因此,我无法向矿工发出信号,表示我需要更快地完成交易并且我愿意支付更多手续费。因此,如果他们不按手续费选择交易,那么每个人都会在在同一时间等待。有些交易永远不会被确认。你可以将此视为每个人都陷入同一交通环境的高速公路。作为系统设计师,你真正想要实现的目标是什么?你想要一个人们愿意支付更多手续费拥有快车道的系统。假设有快车道付款,当然,他们愿意支付更多手续费以更快地到达目的地。然后你会得到这条曲线,说明你支付的越多,你就越快开始完成交易。所以这是你设计一个系统所要参考的一件事。 Other strategies 其他策略 If you have high utilization of the DAG with collision avoidance, then you can't serve the express lane and can't have prioritized transactions. You need them to back off from expensive transactions so that they don't collide. And on the other extreme, if you allow for fast confirmation times, then you will inevitably suffer from collisions. So what you see here is simply the 如果你对具有避免冲突的DAG有高利用率,那么你无法提供快车道服务,也无法确定交易优先级。你需要通知矿工们退出支付费昂贵的交易,这样他们才不会发生冲突。另一个极端,如果你允许快速确认时间,那么你将不可避免地遇到冲突。所以你在这里看到的只是交易冲突的数量与其等待时间的函数有多长的函数。只有在缓冲区中等待很长时间的交易才会发生冲突。想要快速确认的交易将遇到冲突,并且需要更高的手续费。 In the chicken dare situation, what happens in the real world? The problem here is intractable. Usually in these games, nash equilibrium is hard to find. But the spirit of Nash equilibrium is something in the form of if I see you cooperating, then I will cooperat. But if you are greedy and you are always picking the highest transactions for your block, then I will also be greedy and pick the highest paying transactions. I apologize for the militaristic tone, but this is tit-for-tat strategy. And it helps understand how mining pools will behave. 在胆小鬼博弈的情况下,在现实世界中会发生什么?(指的是胆小鬼博弈的理论还是其中不转向退缩的方法)这个问题是棘手的。通常在这些游戏中,很难找到纳什均衡。但是纳什均衡的精髓就是我看到你打算合作,那么我就会合作。但是如果你贪婪而且你总是为你的区块选择最高手续费的交易,那么我也会是贪婪的并选择手续费最高的交易。我为军国主义的语气道歉,但这是针锋相对的策略。它有助于了解矿池的行为方式。 In a world where mining pools don't hide their identity, then other mining pools will start sabotaging that pool by colliding with their transactions. It's an interesting scenario and problem. Chicken dare is not unique to mining DAGs. 在矿池不隐藏其身份的世界中,其他矿池将开始通过与其交易冲突来破坏该池。这是一个有趣的方法和问题。胆小鬼博弈不是采矿DAG独有的。 We did a more modest goal-- namely, we computed the nash equilibrium for the single shot game. We only played once, what would be the nash equilibrium with this nice formula? The good news-- the qualitative message of the nash you can see here that we picked high paying fees with high probability. So if a use wants to embed his transaction fast, he will put a large fee, but then we will all sort of collide but not necessarily. The curve does not reach probability 1. Even if I am paying a high fee nobody will be greedy enough to pick it with certain probability. More good news for you is that nash performs quite well. The utilization of the DAG under nash equilibrium even if everyone is selfish, it wouldn't be so bad. It's around 72% on this graph. So 70% of the graph ocntains unique content and unique transactions. It's a surprising result. If everyone was selfish then we would revert back to the greedy scenario, you wouldn't be greedy even if you're selifhs because you want to randomize over your mempool to avoid collisions. 我们做了一个更适中的目标——即,我们计算了单发射击的纳什均衡。我们只玩了一次,这个漂亮的公式会有什么样的纳什均衡?好消息——你可以在这里看到纳什的定性信息,我们很有可能选择高额手续费的交易。因此,如果一个用户希望快速嵌入他的交易,他将支付大笔手续费,但随后我们有可能会发生冲突但不一定。曲线未达到概率1。即使我支付高额手续费,也没有人会贪婪地以一定的概率选择它。对你来说更好的消息是,纳什均衡的表现相当不错。在纳什均衡下使用DAG即使每个人都是自私的,也不会那么糟糕。在这张图上,它大概是72%。因此,70%的图表只能获得独特的内容和独特的交易。(没理解这句话)这是一个令人惊讶的结果。如果每个人都是自私的,那么我们会回到贪婪的方法,即使你是自私的也不会贪婪,因为你想随机化你的内存池以避免冲突。 |
Quality of service 服务质量 Can we improve utilization a bit more? Another interesting graph we must talk about is the quality of service level. As I said, the problem with the maximum social welfare solution is that you can't prioritize transactions. Here the tall grey bars represent max social welfare strategy. Everyone waits the same time. And then the blue bars represent the nash equilibrium where you approve less transactions- only those that have 3 millibitcoin and those exact numbers do not matter of course, it's a dummy model. As you increase the fee, you wait less. We want this feature. We want high-paying transactions to wait less. And we have other strategies like exponential strategy. If everyone is greedy, then you would only approve a small set of transactions. This is a good illustration of the challenge. 我们可以提高一点利用率吗?我们必须讨论的另一个有趣的图表是服务质量水平。正如我所说,最大的社区福利解决方案的问题是你不能划分交易的优先级。这里高的灰色条形代表了最大的社区福利策略。每个人都在等待同一时间。然后蓝色条代表纳什均衡,你批准的交易较少 ——只有那些有3毫比特币的交易,那些确切的数字当然无关紧要,它是一个虚拟模型。随着你增加手续费,你等待的时间更少。我们想要这个功能。我们希望高薪交易而等待时间减少。我们还有其他策略,如指数策略。如果每个人都是贪婪的,那么你只会批准一小部分交易。这是挑战的一个很好的例证。 Correlated equilibrium 相关均衡 Perhaps with coordination between miners we can achive better results than nash. We could use previous block's randomness. Preliminary results show that we are able to utilize the DAG better. Needs further investigation. 也许通过矿工之间的协调,我们可以获得比纳什均衡更好的结果。我们可以使用前一个块的随机值。初步结果表明我们能够更好地利用DAG。需要进一步调查。 Scaling and incentives 扩展和激励 In bitcoin selfish mining is a known attack and deviation on the protocol. It's risky, it only works in the long term. *And so arguably the reason why we didn't see selfish mining until now or at least not in notable amounts was that playing with your mining node just to withhold your blocks and risk losing it all is too risky and miners wont engage in such behaior. *Unforotunately in a DAG, mining from the mining protocol is much more available to you, you just need to select transactions in a certain way or hold your blocks for a few seconds. So if I am withholding my block for 2 bloks, that's not going to hurt me. It's a much more granular decision for how to optimize my mining, and the risks for the miner are less. The harm to the system is relatively marginal. Also lazy selfish mining is another concern- it might not have communication infrastructure either deliberately or by laziness and doesn't propagate blocks to the network. This pool might not lose too much profit and other miners might be harmed, this is an interesting topic for us so we're investigating it. 在比特币中,自私的采矿是一种已知的攻击和对协议的偏差。它有风险,只能长期才有效。*因此可以说,为什么我们直到现在才看到自私的采矿,或者至少没有显着的数量,因为与你的采矿节点一起只是为了扣留你的区块并且冒着失去一切的风险太冒险,矿工们不会参与这样的行为。*幸运的是,在DAG中,从采矿协议中采矿更加适合您你,你只需要以某种方式选择交易或者将块保持几秒钟。因此,如果我扣留了我的块中2个,那不会对我造成损失。对于如何优化我的采矿来说,这是一个更为细化的决策,并且矿工的风险更小。对系统的危害相对较小。懒惰的自私采矿也是另一个问题——它可能没有故意或懒惰的通信基础设施,也不会将块传播到网络。这个池可能不会损失太多的利润而其他矿工可能会受到伤害,这对我们来说是一个有趣的话题,所以我们正在研究它。 When implementing blockDAG protocols, the incentives really matter. Bitcoin has 1 block every 10 minutes. Things are are pretty robust at least in the mining at least as you stay in the same chain but in DAG things are very sensitive. 在实施blockDAG协议时,激励措施确实很重要。比特币每10分钟产生1个块。至少在采矿中至少当你留在同一个链条但在DAG时,事情是非常敏感的。至少在你停留在同一个链中采矿,激励措施是非常强大的,但在DAG中,激励措施是非常敏感的。 |
Max social welfare 最大化社区福利 We can visit several of these ideas but let's begin with max social welfare. This is the simplest and most optimistic. What would be the solution here? All the miners are cooperating, they just ask us, we don't know how they coordinate, there's a design mechanism undre which the DAG is utilized and we won't collide and the throughput is at maximum. The solution in this case is rather simple. The construction to the miners would be just select a transaction in random uniform distribution from your mempool, so let's say you have 6 transactions or thousands, you do this by tossing a fair coin between them until some threshold, and you accept all transactions uniformy. The threshold is what's the capacity of the DAG, you can't overcome this capacity, and it's very famous and simple result from queueing theory that says that you won't have any collisions in the system. The buckets of transactions would be sparse enough that collisions will be negligible. This setup of course is a bit naive. There's two catches. 我们可以研究其中的几个想法,但让我们从最大的社区福利开始。这是最简单和最乐观的情况,这种情况有什么解决方案?所有的矿工都是合作的,他们只是问我们,我们不知道他们如何协调,有一个基于DAG设计的机制,使我们不会碰撞,吞吐量达到最大。在这种情况下,解决方案相当简单。对矿工的建设只是从你的内存池中选择统一随机分配的交易,所以假设你有六笔交易,当然,可以有成千上万的交易,你都可以通过在它们之间抛出一个公平的硬币直到达到某个阈值来实现这一点,并且你接受所有交易统一。阈值是DAG的容量,你不能超过这个容量。这是一个非常着名且非常简单的排队理论结果,它说这实际上意味着你不会在系统中发生任何冲突。交易分组足够稀疏时碰撞可以忽略不计。当然,这个方法有点幼稚。这个方法有两个缺点。 This is strategically unstable. We're assuming that everyone is maximizing social welfare and this is not always the case. There's a more inherent problem with this approach which is that it does not allow for differential service to urgent transactions. You can't prioritize transactions by fees. So I am not able to signal to miners that I need this tx faster, I am willing to pay more. So if they are not picking transactions by fees, then everyone waits about the same time. And some transactions will never be approved. You can think of this as the highway where everyone is stuck in the same traffic. As a system designer, is that really what you want to achieve? You want a system that has express lanes, where people are willing to pay more. Assume there's a payment for the express lane, of course. They are willing to pay more to get to their destination faster. And then you will have this curve that says the larger you pay, the faster you get inside. So this is one thing you want to design the system according to. 这在战略上是不稳定的。我们假设每个人都在最大化社区福利,但事实并非如此。这种方法本身存在一个问题,即它不允许对紧急事务进行差别服务。你无法按手续费确定交易的优先顺序。因此,我不能告诉矿工,我需要更快地完成交易并且我愿意支付更多手续费。因此,如果他们不按手续费选择交易,那么每个人都会在同一时间等待。有些交易永远不会被确认。你可以将此视为每个人都处于同一交通环境的高速公路。作为系统设计师,你真正想要实现的目标是什么?你想要的系统是人们愿意支付更多手续费拥有快车道。假设快车道需要付款,他们愿意支付更多费用以更快地到达目的地。然后你会得到这条曲线,说明你支付的越多,你就越快开始完成交易。所以这是你设计的系统所要参考的一个方面。 Other strategies 其他策略 If you have high utilization of the DAG with collision avoidance, then you can't serve the express lane and can't have prioritized transactions. Because you need signal to miners to back off from expensive transactions so that they don't collide. And on the other extreme, if you allow for fast confirmation times, then you will inevitably suffer from collisions. So what you see here is simply the function of how long have the numbers of collisions of a transaction as a function of the of the of its waiting time.挖矿 Only transactions that allow themselves to wait a long time the buffer suffer no collisions. Transactions that want to be confirmed fast will suffer collisions and would need a higher fee. 如果你有很高的DAG利用率,并且可以避免碰撞,那么你无法提供快车道服务,也无法确定交易优先级。因为你需要通知矿工们退出高手续费的交易,这样他们才不会发生碰撞。另一个极端,如果你允许快速确认时间,那么你将不可避免地遇到冲突。*所以你在这里看到的只是与交易冲突数和其等待时间的函数有关的函数。只有允许等待很长时间的交易,在缓冲区中不发生碰撞。想要快速确认的交易将遇到碰撞,并且需要更高的手续费。 In the chicken dare situation, what happens in the real world? The problem here is intractable. Usually in these games, nash equilibrium is hard to find. But the spirit of Nash equilibrium is something in the form of if I see you cooperating, then I will cooperat. But if you are greedy and you are always picking the highest transactions for your block, then I will also be greedy and pick the highest paying transactions. I apologize for the militaristic tone, but this is tit-for-tat strategy. And it helps understand how mining pools will behave. 在胆小鬼博弈的场景下,在现实世界中会发生什么?这个问题是棘手的。通常在这些游戏中,很难找到纳什均衡。但是纳什均衡的精髓就是如果我看到你打算合作,那么我就会合作。但是如果你贪婪而且你总是为你的区块选择最高手续费的交易,那么我也会是贪婪的并选择手续费最高的交易。我为自己军国主义的语气道歉,但这是针锋相对的策略。它有助于了解矿池的行为方式。 In a world where mining pools don't hide their identity, if a mining pool really will be greedy, then other mining pools will start sabotaging that pool by colliding with their transactions. It's an interesting game theoretic framework. Chicken dare is not unique to two mining a blockDAG transactions. 在矿池不隐藏其身份的世界中,如果一个挖矿池是贪婪的,其他矿池将开始通过与贪婪挖矿池的交易碰撞来破坏该池。这是一个有趣的博弈论框架。胆小鬼博弈并不是只满足两个矿工挖掘一个blockDAG交易的情况。 We did a more modest goal-- namely, we computed the nash equilibrium for the single shot game. We only played once, what would be the nash equilibrium? The qualitative message of the nash you can see here that we picked high paying fees with high probability. So if a use wants to embed his transaction fast, he will put a large fee, but then we will all sort of collide. The curve does not reach probability 1. Even if I am paying a high fee nobody will be greedy enough to pick it with certain probability. More good news for you is that nash performs quite well. The utilization of the DAG under nash equilibrium even if everyone is selfish, it wouldn't be so bad. It's around 72% on this graph. So 70% of the graph obtains unique content and unique transactions. It's a surprising result. If everyone was selfish then we would revert back to the greedy scenario, you wouldn't be greedy even if you're selifhs because you want to randomize over your mempool to avoid collisions. 我们做了一个更适中的目标——即,我们计算了单发射击的纳什均衡。我们只玩了一次。什么是纳什均衡?你可以看到纳什均衡的定性信息,我们很有可能选择高额手续费的交易。因此,如果一个用户希望快速嵌入他的交易,他将支付大笔手续费,但随后我们有可能会发生冲突。曲线未达到概率1。即使我支付高额手续费,也没有人会贪婪地以一定的概率选择它。对你来说更好的消息是,纳什均衡的表现相当不错。在纳什均衡下使用DAG,即使每个人都是自私的,也不会那么糟糕。在这张图上,它大概是72%。因此,图表中显示70%能获得唯一的内容和唯一的交易。这是一个令人惊讶的结果。如果每个人都是自私的,那么我们会回到贪婪的方法,即使你是自私的也不会贪婪,因为你想随机化你的内存池以避免碰撞。 Quality of service 服务质量 Can we improve utilization a bit more? Another interesting graph we must talk about is the quality of service level. As I said, the problem with the maximum social welfare solution is that you can't prioritize transactions. Here the tall grey bars represent max social welfare strategy. Everyone waits the same time. And then the blue bars represent the nash equilibrium where you approve less transactions- only those that have 3 millibitcoin and those exact numbers do not matter of course, it's a dummy model. As you increase the fee, you wait less. We want this feature. We want high-paying transactions to wait less. And we have other strategies like exponential strategy. If everyone is greedy, then you would only approve a small set of transactions. This is a good illustration of the challenge. 我们可以提高一点利用率吗?我们必须讨论的另一个有趣的图表是服务质量水平。正如我所说,最大的社区福利解决方案的问题是,你不能划分交易的优先级。这里高的灰色条形代表了最大的社区福利策略。每个人都在等待同一时间。然后蓝色条代表纳什均衡,你批准的交易较少——只有那些有3毫比特币的交易,那些确切的数字当然无关紧要,它是一个虚拟模型。随着你增加手续费,你等待的时间更少。我们想要这个特征。我们希望交易手续费增加而等待时间减少。我们还有其他策略,如指数策略。如果每个人都是贪婪的,那么你只会批准一小部分交易。这是挑战的一个很好的例证。 Correlated equilibrium 相关均衡 Perhaps with coordination between miners we can achive better results than nash. We could use previous block's randomness. Preliminary results show that we are able to utilize the DAG better. Needs further investigation. 也许通过矿工之间的协调,我们可以获得比纳什均衡更好的结果。我们可以使用前一个块的随机值。初步结果表明我们能够更好地利用DAG。需要进一步调查。 Scaling and incentives 扩展和激励 In bitcoin selfish mining is a known attack and deviation on the protocol. It's risky, it only works in a long term after two 在比特币中,自私的挖矿是一种已知的攻击和对协议的偏离。它有风险,它至少在两周后才能长期使用。因此可以说,为什么我们直到现在才看到自私的挖矿,或者至少没有显着的数量,因为挖矿节点只是为了扣留你的区块而冒着失去一切的风险太大,矿工们不会参与这样的行为。不幸运是,在DAG中,从挖矿协议中挖矿更加适合你,你只需要以某种方式选择交易或者将块扣留几秒钟。因此,如果我扣留了我的块中2个,那不会对我造成损失。对于如何优化我的挖矿协议来说,这是一个更为细化的决策,并且矿工的风险更小。对系统的危害相对较小。懒惰的自私挖矿也是另一个问题——它可能是故意或因低速的通信设备,没有及时将块传播到网络。这个池可能不会损失太多的利润而其他矿工可能会受到伤害,这对我们来说是一个有趣的话题,所以我们正在研究它。 When implementing blockDAG protocols, the incentives really matter. Bitcoin has 1 block every 10 minutes. Things are are pretty robust at least in the mining at least as you stay in the same chain but in DAG things are very sensitive. 在实施blockDAG协议时,激励措施确实很重要。比特币每10分钟产生1个块。至少在挖矿中至少当你留在同一个链条但在DAG时,事情是非常敏感的。至少在你停留在同一个链中挖矿,激励措施是非常强大的,但在DAG中,激励措施是非常敏感的。 |
A translation project collaborating with NPC. I finished the first two paragraphs, you may try the rest.
npc-network/translator-website#9
Any questions just follow this thread
The text was updated successfully, but these errors were encountered: