Bitcoin Forum
May 14, 2024, 01:31:50 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: [1]
1  Bitcoin / Development & Technical Discussion / A Chain-Based Consensus Algorithm Using Cyclical Voting Processes on: May 26, 2021, 06:42:23 PM
(It is NOT an Altcoin introduction, please don’t move it to the other sections.)

This is a major algorithm of a chain-based proof-of-stake consensus protocol using the process of cyclical voting. It applies a finalization period in about one round of voting with a relatively simple mechanism. I think it might be considered in optional schemes as a supplementary in the future. The following is a brief introduction of it and there is the link of the full paper at the bottom of this post, if someone is interested.

Consensus processes
Consensus processes are divided into the following steps:
(1) Vote generation: Stakeholders generate votes using the probability based on the stakes held, gain the qualification for voting, and become miners to build blocks.

(2) Competition for building blocks: Miners generate blocks and gain awards using the probability based on the generated number of votes.

(3) Confirmation of canonical chain: Miners vote on blocks in cycles, and the branch winning the most votes is recognized as the canonical chain.

(4) Block finalization: When the count result meets certain conditions, this result cannot be changed under a given assumption (2/3 of the nodes are honest). Then, the situation is called block finalization, the branch finalized is the final canonical chain, and the data in finalized blocks are the final data.

Votes Generation
Stakeholders perform operations on random numbers from the current constants (block hash, timestamp, etc.) and compare them with the number of their stakes to meet a condition, in which the demander qualifies for voting. This condition is denoted as

VRF_VoteProof < Account_stakes,

where Account_stakes refer to the stakes of the account. The higher the number of stakes, the higher the possibility to meet this condition, generating votes according to stakes. The stakeholder who qualifies for voting generates a vote and publishes it on the network to be registered as a miner (or voter). The registration record is packed into the block as the transaction record.

Introducing qualification for voting decreases and flexibly controls the number of validators so that different projects strike a balance between safety and response speed.

Competition and generation of blocks
Stakeholders participate in the building and maintenance of the blockchain after becoming miners. To gain awards, miners would have to compete with each other for the right to build blocks:

(1) A random number operation is conducted based on constants (such as timestamp and block hash) by miners. When the expected results reach a certain target and meet the requirements to generate blocks, it is denoted as

Block_Proof < target * votes * efficiency,

where target refers to difficulty, which controls the speed of block generation; votes refers to the votes owned by miners and is directly proportional to the possibility of block generation; and efficiency refers to the efficiency of block generation, which is affected by various factors and introduced in the paper.

(2) When the requirements for block generation are met, the miner will pack the voting records along with the transactions that he received into a block and will publish them on the network.

Confirmation of canonical chain
Starting with the Genesis block, miners in cycles (e.g., “10 blocks” or “120 s”) select a branch from the previous canonical chain, sign the address of the top block, and publish the result on the network, which is called the voting. Voting records are packed into the block like transactions. The process of confirming the current canonical chain compares the priority of branches from the voting records and determines the branch (also a chain) with the highest priority.

Priority of branches
The weight of a branch is the number of total votes gained by the root and all its descendants. From this calculation method, the comparison of two chains in priority begins from their common ancestors and the weight of the respective branches they belong to be calculated. The heavier one takes priority. To find the canonical chain, we should compare the existing competitive branches one by one and find the chain with the highest priority (as shown in Fig. 1 ).



Block finalization
The finalization process of chain-based protocols, different from BFT protocols, does not need multiple rounds of voting to keep the strictly synchronized state among nodes. When the first round of voting reaches a consensus, we only need to determine that this consensus is a supermajority decision rather than identifying whether all nodes have received the results. Therefore, finalization can be completed in one round of voting in an ideal condition. However, to guarantee that the finalized chains do not conflict (i.e., safety) and voters have opportunities to amend their votes to avoid situations where the chain cannot be finalized forever (i.e., liveness), the situation becomes complex, requiring new voting rules and resulting in delayed finalization.

New voting rules
From the mechanism of cycle voting, when dishonest users do not exceed 1/3, we determine that provided one branch wins more than 2/3 of total votes during one cycle, this branch should not have competitors and could be finalized. However, to guarantee that all finalized branches do not conflict with each other, we need a continuous finalization link starting from the Genesis block. This also requires that the votes are consistent. Thus, we modify the voting rule by adding the following rules on the first voting rule:

(1) The interval between the target blocks of two votes taken by a miner is larger than or equal to one voting cycle; otherwise, the miner will be punished.

The additional rules are:
(2) Each vote requires a backward connection to the voter’s previous vote called the “source.” The votes without connection to the source are called “sourceless votes” that do not weigh anything as the amendment to wrong votes. However, it can serve as the source of later votes.

(3) The Genesis block is the first finalized block and can be used as the source of later votes without violating other rules.

(4) Votes whose source is located at the finalized block are called “rooted votes.” Only rooted votes have weight, thus progressively producing subsequent finalized blocks. Meanwhile, the ancestor blocks of the finalized block are also regarded as finalized. The “rooted votes” can be transmitted forward. The details mentioned here are presented in Fig. 3 and Fig. 4.
*(Transmission means that if c is a rooted vote, the vote connecting c as a source is also rooted.)



Safety and liveness
The principle to guarantee safety is simple: the voter only connects each vote to the next one, and thus, votes are unkept as an end-to-end link (as shown in Fig. 3) if there exist conflicting votes, so his voting link will not have conflict. Now that the voting links of single voters do not have conflicts, the finalization points generated based on the continuous voting links will not conflict either, thus guaranteeing safety (as shown in Fig. 5 ).



However, this cannot meet the requirements for liveness because it is very likely that more than 1/3 of votes will be taken on wrong branches after a fork appears. Once such a case appears, the finalization link breaks without recovery. Therefore, to keep liveness, first, become aware of such case—we call it “key fork”; then, we allow the sources of the next votes to move back to the fork position from the current targets. This provides a hesitation space to the voters and allows them to correct their previous decisions and return to the canonical chain (as shown in Fig. 6 ). Lastly, we delay the finalization point to the fork position.



Awareness and positioning of the key fork
To become aware of the key fork, we adjust some finalization conditions. The previous condition in which “more than 2/3 of the total votes be gained during one voting cycle” is replaced with “more than 2/3 of the total votes be gained during one voting cycle and the distance between the targets and the sources of those votes is less than two cycles.” Therefore, only the branch selected by continuous votes (their intervals are not more than two cycles) can be finalized. This condition concentrates the sources of all votes that can reach finalization in the range of two cycles before the finalization point (as shown in Fig. 7 ). This way, we need only to inspect whether there are sufficient votes in this range.



When a key fork is detected, we find the fork point and the corresponding hesitation period using a backtracking algorithm.
When block a at height h is generated, we use a natural number n to represent the temporary “hesitation period” at the position of a, and the block at a height of h − n is called the temporary “retracement point,” which is generally equal to the fork point. The value of n is based on the following calculation results:
(i) If the votes gained by the chain within two voting cycles before a (including) exceed 2/3 of the total votes, n = 0.
   *(For the same voter, only the final vote is calculated.)

(ii) If the abovementioned votes are less than or equal to 2/3 of the total votes, all votes with the target at a height of h are traced back to a height of h − 1 and traced back to h − 2 with those votes whose target are at a height of h − 1. By parity of reasoning, when traced back to h − i, if the condition in Clause (i) is satisfied, n = i.

(iii) The height of the temporary retracement points at Position a cannot be lower than that of the actual retracement point at the position two cycles before a.

(iv) The actual retracement point at Position a is taken from the earliest temporary retracement point during two cycles after Position a (including), and the actual hesitation period N also results from this.
*(Therefore, in the worst case, a block has to wait for two cycles after it is generated until it can be finalized. However, provided that one chain after this block gains 2/3 of the votes during those two cycles, there will be no retracement point earlier than this block, and we can get the actual retracement point right then so that it can be finalized immediately.)

Voting retracement and delayed finalization
After the hesitation period is gained, the voting retracement and block finalization processes are shown as follows:

(1) Each vote of a miner only uses the block of his previous vote target or the block that traces back within N steps (including) from it as the source. N value is taken from the actual hesitation period at the height of the miner’s previous voting target in the related chain, and miners who violate this rule will be punished (as shown in Fig. 8 ).

(2) Count from the root, when a branch obtains more than 2/3 of the total votes in one voting cycle and the distances between the sources and targets of those votes are less than two voting cycles, the finalization condition is satisfied. However, the finalized block is not the branch’s root b but the actual retracement point B at Position b (as shown in Fig. 9 ).



By this method, generally (in an ideal case), all N values are zero. We can complete the finalization around the 2/3 voting cycle after the block is generated. Some forks with serious divergences can extend the length of several cycles; however, the average finalization time should be far less than two cycles. With poor network situation or votes being scattered because of attacks, we can become aware of the fork in advance and delay the finalization, relax the requirements for voting, and improve the fault tolerance of the system to prevent hostile attacks of swinging to extend the depths of a fork from causing the loss of liveness.

Conclusions
The above sections describe the primary algorithm of this protocol. Because it was designed using the chain consensus and PoS, the algorithm inherited some of their advantages, such as the low energy consumption of PoS, high fault tolerance of chain consensus for the network environment, more validators, and more loose requirements for them. While guaranteeing safety and activity, the algorithm provides the finalization ability with a delay of less than one voting cycle.

Here is the full paper and you could see it for more detail: https://github.com/yj1190590/Consensus/


2  Local / 中文 (Chinese) / 一种共识协议以及设计的主要思想 on: July 04, 2019, 10:15:43 AM
我去年在中文区发过一个共识协议的设计文档,之后忙了一段别的事情,但是一直都在做相关的改进。
现在这个版本我感觉已经比较完善了,但是发在英文区技术板块之后被移到了山寨币板块,很快被淹没了,所以我又回中文区来试试,看看有没有人感兴趣。
我先谈一下主要设计思路,以免设计文档过于枯燥没人看下去:

我们先看看一个争议很大的问题,“PoS 还是 PoW?”
我先明确我的看法,我认为将来PoS必然要代替PoW。PoW的支持者现在最主要的依据就是它消耗了成本,所以就比较安全。但实际上消耗成本与安全性之间并没有因果关系,我们只要解决好PoS存在的一系列技术上的问题(主要是多重投票和历史攻击的问题),安全性不应该比PoW更低。即使不谈能源消耗的问题,我们从技术本身来看,PoW中的"工作量"用了一种不可控制的外部资源,用不可控制的外部资源来竞争很可能形成大规模的合作行为,影响到系统安全(参考https://vitalik.ca/general/2019/04/03/collusion.html的讨论),“矿池”就是一个例子;而PoS使用的是区块链内部资源进行竞争,首先总量上不变,这会有巨大的好处,我们后面会谈,其次“权益”是账户的基本属性,人们不会大量的共享他们的账户信息,也就很难进行大规模的合作。

既然不局限于PoW,那我们再来看看一个共识机制的选择问题,到底是忠实于中本聪的链式共识还是用BFT(拜占庭容错)系列、DPoS(授信PoS)或者是DAG(有向无环图)结构呢?
所有共识体系的核心都离不开验证人(比如比特币中的矿工)角色,选择验证人都要通过竞争的过程(算力更高或者权益更高或者获得投票最多),这个过程决定了系统的安全性。但是竞争过程又有潜在的风险:
1)使用不可控制资源(工作量、获得选票的能力、硬盘容量等)引起大规模合作的风险;
2)对获胜者的激励如果不足,会导致缺乏足够的竞争者,给攻击者带来可乘之机,降低系统安全;
3)如果激励充足,又会导致财富集中化,参考https://github.com/yj1190590/PoAS第一条的叙述(英文的,暂未翻译成中文,请将就看),进而造成参与者减少。

对于一个以货币功能作为主导的账本来说,安全性的降低是难以接受的;而对于一个面向所有人的公共链来说,参与者的减少也是难以接受的。通过大规模地减少验证节点,以提高性能的方式(BFT和DPOS)会极大的加剧上述问题,所以我认为不可取。所以,为了避免1),选择只有PoS;为了避免严重的2)或3),我们只能放弃BFT和DPoS。但是即使不加剧,2)3)的问题仍然存在,有没有什么方法能避免呢?答案是有,关键点就在于,让低权益的用户通过先合作(类似于投票)来降低工作强度,再与高权益的用户进行竞争(还是参考https://github.com/yj1190590/PoAS第一条)。也就是在3)的问题上把用户参与的问题解决了。我原先觉得DAG结构也有可能做到同样的事情,但是在异步方式下我没有找到能够让权益保持同步的方法,所以设计中还是使用了链式共识。

确定了链式PoS共识的方向之后,现在第一个问题是解决此结构下的缺陷,然后如何保留PoW的优点(比如简单高效的验证、客观性等)。现在的设计解决了现存的NaS问题(多重投票和历史攻击)客观性也基本得到保证(参考:https://bitcointalk.org/index.php?topic=5094909.0 的讨论),验证上虽然没法做到等同于PoW的高效,但不影响重要功能(跨链验证等)。

接下来的目标是考虑的是还有哪些特性能够保留下来。

首先是性能,虽然无法在单条链上做到BFT和DPOS的高性能和DAG的扩展性,但是链式共识也有其扩展规模的方法,即多链结构,比如侧链或者分片。多链方案的分层结构实际上在安全方面更加合理,但是我认为没有简单明确的盈利方式(锁定汇率使得币价不能升值)导致了多链项目到很难得到大规模的应用。一个偶然的情况是,聚集权益的机制下,钱包程序会直接参与到挖矿活动中去,使开发者获得收入。这样刚好解决了跨链项目的盈利模式问题,这会改变很多事情,我希望这能更好地解决扩展性问题。

显式最终性(explicit finality)也是一个很重要的特性,会带来许多的好处,比如提高确认速度和避免历史攻击,而在链式共识上通常不具备这种属性。利用前面提到的权益总量不变的特点,和两类投票的方式,这个能力也被成功地实现了。

总的来说,PoAS是一种优化的链式PoS协议。以我个人的理解,应该在虚拟货币的应用上具有一定的价值,欢迎发表自己的看法,谢谢你们花时间阅读。

这里是简介,英文的,不想看可以略过https://github.com/yj1190590/PoAS/
中文版的设计文档PDF在这里: https://docdro.id/oKEhuNR
3  Alternate cryptocurrencies / Altcoin Discussion / An explaiation of my recent work——for the PoAS design paper on: July 01, 2019, 04:48:45 AM
I posted a design paper of a consensus protocol a few days ago(https://bitcointalk.org/index.php?topic=5157592.0), but didn't receive any response. I am not sure whether it was because the protocol is not valuable or because I didn't explain it well. I hope it was the second reason. So inspite that there was already a breif introduction, I'm going to explain it in a simpler way: from the begining of my research. I hope there will be more people to be interested.

I decided to design a new protocol begining with some personal understanding with the debates of the existing protocols.

The first debate: PoW or PoS?
To my understanding, I prefer PoS, because the "work" of PoW is an uncontrolable external resource. Despite the energy consumption issue, using an uncontrolable external resource as a competitive material will probably cause large-scale collusions, which could impact the security. "mining pools" is an example of that. From this aspect, PoS uses an internal resource of the system. First of all, the total amount of stakes is fixed, which leads to a big advantage and I will introduce that later. Secondly, as a fundermental property of an account, stakes will not be shared among users in quantities. Therefore, large-scale collusions will be very difficult to occur.

The second debate: Chain, BFT,DPoS or DAG?
As far as I know, there are two ways to choose validators in all consensus systems: through competition (e.g. more hashpower or more stakes) or through cooperation (e.g. delegated by stakeholders). Each of them has the following potentinal risk:

The former way results in wealth concentration (plenty of incentive) which causes user reductions (referring to the first point of:https://github.com/yj1190590/PoAS), or lack of competitors (not much incentive) which causes security reductions; the latter results in the probability of large-scale collusions as PoW does (referring to https://vitalik.ca/general/2019/04/03/collusion.html), which causes security problems too.

Security reductions are unacceptable for currency-functional chains and user reductions are hardly acceptable for public chains. Sharply reducing the validator nodes (BFT and DPOS) for perfomance will greatly aggravate those problems, so I think they should not be used in currency-functional public chains.

Is it possible to prevent all of those problems? It was the first question for me to find out. The answer is yes. The key is to let lower-ability users compete with higher-ability ones through a cooparative process (stake accumulating) using a chain-based mechanism, which ensures security and participation rate at the same time. From then on, I decided to design a new consensus protocol. I have thought DAG can do the same, but didn't find how to synchronize the state of stakes in an asynchronous system. So I chose the chain-based system in my design.

After determining the structure of chain-based PoS consensus, the second goal was to compensate its defect (mostly NaS problems) and keep the advantage of PoW (e.g. efficient verification and objective boot straping) as far as possible. As a result, present NaS problems are solved; objectivity basically remains (referring to https://bitcointalk.org/index.php?topic=5094909.0);verifications are still not as effecient as in PoW but it doesn't affect important functions such as cross-chain verifications.

My next goal was to consider what other features can be applied in my design.
First of all, scalability. Although not being able to achieve the performance of BFT or DPoS and the scaling ability of DAG, chain-based consensus has its ways to expand the scale, which are multichain solutions such as side-chains or sharding. Multi-layer structures are actually better for safty factors, but to my understanding, a lack of clear and simple profit model keeps the expanding projects from being widely used (because the currency value is locked). Unpurposely, under the mechanism of accumulating stakes, the wallet applications will be involved in the mining process sothat their provider could directly profit from the system. It just solves the problem of profit model and will change many things. I hope it is helpful for scaling solutions.

Explicit finality is an other important feature that brings many advantages such as fast confirmation and avoiding historical attacks. It's a feature that most (I'm not sure is it all) of the chain-based protocols don't have. Using the property of fixed amount of stakes that is mentioned above and a double voting method, the feature of explicit finalities is successfully applied.

That's all I have to explain. In short, PoAS is an optimized chain-based PoS protocol. To my understanding, it should be valuable for the use of cryptocurrencies.

All suggestions and opinions are welcome! thank you for your time!



breif introduction and the full paper are here:
https://github.com/yj1190590/PoAS/
4  Alternate cryptocurrencies / Altcoin Discussion / Proof of Accumulative Stakes version 3.1 on: June 23, 2019, 02:16:46 PM
Sorry for following up so slowly. I was delayed by something unexpected.
Any suggestions and comments are welcome. Thank you for your time!
https://github.com/yj1190590/PoAS/

Major changes:
Some redundant chapters are removed.
Sections about the security and fairness are added.
Modified the rule of network dispersity competition to ensure fairness.

Related post:
Discussion about the probobility of historical attack:https://bitcointalk.org/index.php?topic=5094909.0
5  Bitcoin / Development & Technical Discussion / A Stake-Based Double-Voting Consensus Protocol on: January 09, 2019, 06:53:30 AM
The article primarily deals with the major problems of the PoS system trying to make it more suitable for the use of cryptocurrency and become the mainstream protocol in the future.

It can be summarized to the following points:
1. Wealth distribution
The distribution of social wealth usually obeys the Pareto’s law as the following curve shows:
    If everyone’s wealth grows at the same rate, the distribution will not change. As the green line shows:

    In the field of cryptocurrencies, an overall growth of coins means inflation. Inflation is an incentive for the stakeholders to work. They have to earn more coins by working in order to compensate the wealth reduction caused by the inflation. To approach the ideal curve (the green line) in a PoS system, the ability of earning should depend on the number of coins they already have, or called stakes. It means that for some of the users who don’t have much coins, they also don’t have the ability to compensate the wealth reductions because their work costs are more than the earning. Those users have to choose not to work and then lose their wealth gradually (assume that the total value of the coin is not changed). It is the basic wealth redistribution rule of PoS currencies. As the red line shows:

    As shown above, the users owning less coins than w tend not to participate in the wealth redistribution, and they will be constantly “robbed” by the richer ones. As time goes on, the poorer users will eventually disappear. The lower value w has, the more users will remain.

    Considering the factors influencing the value of w, there will be the following approximate equation

w*R(Inflation Rate)/(R+1) (The wealth reduction) = C(Work cost) - F(Transaction fees acquired by working)  ,
that is : w=(C-F)*(1+1/R)

   So we have three ways to lower the value of w: increase F (Transaction fees), increase R (Inflation rate) or decrease C (Work cost)

   Traditional PoS protocol works as the first way or the second way, which causes serious inflation or high transaction fees.

   Our design works as the third way. We reduce the work cost of stakeholders from working fulltime to logging in once in between 100 hours. That reduces the work time to about one ten-thousandth of before, and the value of w will decrease substantially. In addition, since we have sharply reduced the value of C, we don’t have to increase the inflation rate or the transaction fees to a fairly high level. It makes the wealth distribution model of PoS systems much more acceptable.


2. Double voting and history attack
Stakeholders participate in the wealth redistribution by handing over their stakes to the miners through an accumulating process, which will be introduced later.

   The miner plays the role of working fulltime maintaining the network. The maintenance work includes two parts: generating blocks and voting for branches. I am going to explain the branch voting process here because it is related to the solution of the most serious problems caused by “Nothing at Stake”, starting with the “double voting” problem.

   Briefly speaking, the double voting problem is a strategy for miners to vote on each fork of the chain. But in PoAS systems, the miners cyclically vote for the current main branch and publish to the network as transactions which will be recorded in the next block. We ensure that the total voting information of every branch are recorded in each chain (introduced in section 3.2.2). Thus, each vote will go public before it takes effect. Then through a specific method of counting (introduced in section 3.2.1), we guarantee that each stake will be counted no more than once no matter which part of the branch are counted. Therefore, there will be no space to make multiple votes.

   Another major problem caused by NaS is the “history attacks”: the attacker rebuilds a new branch from a historical block trying to replace the original one. This is caused by the PoS consensus mechanism itself but we considered another aspect of it: the property of “Stake”. Unlike the other competition resources such as electricity, hashpower or storage space, stake is an inner state of the blockchains and therefore the total amount of stake is fixed. As it is introduced above, no multiple voting, we can easily conclude that a branch shouldn’t have any competitor if the stakes voted to it are more than half of the total stakes.

   As it is shown above, the stakes voted to the branch are more than the rest, then the root of this branch (with the red frame) will have no chance to be replaced, or to say, it’s finalized (introduced in section 3.2.1). The finalized block that we call save point limits the history attacks to its descendants, making the attacks much more difficult. There is another factor that helps out with the history attack problem but it will not be explained here (introduced in section 3.3).
   Before now, the NaS problems were solved through some complex and subjective methods, which also needs the users to perform additional operations. As it was discussed before, additional operations usually mean higher work cost, which is not healthy in the long term.

3. Wallet applications
Wallet applications usually don’t participate in the wealth redistribution because they are not involved in the process of mining. But in PoAS, wallet applications play an important role in the process of accumulating stakes which is the first stage of mining. They could profit from the system in different ways. (introduced in section 4.1), besides the wallets accumulate most of the transaction fees (introduced in section 5.1) which is not negligible because of the lower inflation rate. It will encourage the developers to be more active in making better wallet applications and that is a progress of decentralized development. In addition, it could encourage them to create sidechains with the clear profit model, which will be a progress of resolving the scalability problem.

4 Accumulating process
There are two ways of accumulating stakes: active voting and competition with network dispersity. The former one works like the delegated proof of stake: users have to choose the miners they already know about and vote their stakes to them. The latter method works more objectively and needs less operations by user: miners compete with each other using the ability called “Network dispersity”.

   Network dispersity is a concept that reflects how many dispersed units of a group are distributed to the network, which is also the ability to grab random signals on the network. As a honeycomb works: the more workers working out there, the better chance they find a usable flower, a Miner with more online Gatherers has better chance to find and win the vote from a random stakeholder. Because it is based on the network latencies which is inevitable and non-simulatable, network dispersity could be an objective resource for the miners to compete with.

   It doesn’t affect the security or fairness no matter which way we choose to accumulate stakes because most of the stakes are owned by the richest users who will tend to be balanced. (introduced in section 5.2)


full paper:
https://docdro.id/uanMOWk
or
https://www.keepandshare.com/doc15/19928/researchpaper-3-0-pdf-928k
6  Bitcoin / Development & Technical Discussion / Consensus based on the network latency and fully distributed voting mechanism. on: August 22, 2018, 01:00:00 AM
Hi:
I have been working on this consense mechanism since I posted it last time.
This is a new version of research paper after struggling with the language expression skills.
Let me introduce the protocol in brief.
1)This study aims to determine a pow-like protocol with less energy consumption.

2)The ability "Nertwork dispersity" is defined as
Quote
As a greater number of dispersed online terminals work together, the faster they can acquire
randomly distributed information in the network due to network latency. This type of “ability”
is referred to as “network dispersity,”
And it is involved into the system along with the "Stake" property to avoid the common problems of PoS like "Nothing at stake" and wealth concentration issue. So the protocol can be seemed as a kind of PoS mechanism.

3)Block can be finalized.

4)It's a fully discentralized system and doesn't need any special nodes like "Validators". The process of deposit and authentication are not needed either. We can think it in this way: it achieves the main purpose of "Casper", but it's much simpler and more effective.

The full paper is shown here(disabled).

If there are any questions, please let me know. Thank you.

7  Local / 中文 (Chinese) / 共识协议Network Dispersity-based Consensus Protocol 2.0 on: August 21, 2018, 11:19:22 AM
大家好,上次发帖已经很久了,这几个月我又重新修改了一下协议的内容,基本上可以称为2.0版了,这里是在英文区发的贴:
[disabled]
当然在咱们中文区我这里还有中文版:
[disabled]
欢迎指正,谢谢!
8  Alternate cryptocurrencies / Altcoin Discussion / Network Dispersity-based Consensus Protocol 2.0 on: August 21, 2018, 11:05:43 AM
Hi:
I have been working on this consense mechanism since I posted it last time.
This is a new version of research paper after struggling with the language expression skills.
Let me introduce the protocol in brief.
1)This study aims to determine a pow-like protocol with less energy consumption.
2)The ability "Nertwork dispersity" is defined as
Quote
As a greater number of dispersed online terminals work together, the faster they can acquire
randomly distributed information in the network due to network latency. This type of “ability”
is referred to as “network dispersity,”
3)The protocol can be seemed as a kind of PoS mechanism because of using the "stake" ability, but without its most common problems like NaS and wealth concentration issue.
4)Data can be finalized.
5)It's a fully discentralized system without any special node like "Validators" and doesn't need any outside resources or third-party processes.

The full paper is shown here(disabled).

If there are any questions, please let me know. Thanks.
9  Bitcoin / Development & Technical Discussion / A Consensus Protocol Based on the Ability of Network Dispersity. on: May 07, 2018, 02:18:53 AM
hi:
This is the research paper about the project I posted before.
Thank you for your time.
[disabled]
If there are any questions, please let me know. Thanks.

previous post:[disabled]
10  Bitcoin / Development & Technical Discussion / A type of consensus protocol that based on network latency and terminal users on: April 06, 2018, 07:03:10 AM
Inspired by the app development process , I found a way to measure the user scale of Apps.
Because of the network lantency, the more online users work together, the faster they pick up distributed information in the network. And I called that the ability of “network dispersity”.What if we use that ability to compete generating blocks?
First, I think this ability can't be improved by enhancing the performance of a single machine or using more electric power, and the second, there are a huge number of Apps and their developers could join the mining competition.
If we do it right, it may be another consensus method of the fully distributed systems other than POW and POS.

In this protocol, I use the transaction broadcast as the "distributed information" and the miners(App developers) make their users pick these signals as fast as possible. As the first miner who answers a transaction, his account will be stored in that transaction. Those stored accounts will become the basis of the mining competition for the later blocks.

That process can be considered as the process of voting as well. To quote the article, it is
Quote
Every time they publish a transaction, the stakeholders vote with their stake on the miners to generate a block and on the branches to be accepted as part of the main chain. The more stake a block or a miner get, the higher chance they win the competition.
11  Local / 中文 (Chinese) / 谈一谈我对加密货币未来的看法 on: April 05, 2018, 05:28:21 PM
上一个帖子在中文区发布超过一周了,受到不少朋友的关注和支持,先谢谢大家。
https://bitcointalk.org/index.php?topic=3185546.0

      那篇技术性太强的先放一边,我想闲聊式的谈一下我为什么想要做这个项目,还有我对加密货币未来的一些想法。

      我接触区块链接触得比较晚,可能到前年才开始接触,当时比特币像一把火一样一下烧过来,我感到很震惊。后来越是深入了解越觉得有意思,虽然这时候已经有很多区块链项目已经涉及到很多行业了,但是我还是对它的货币功能最感兴趣。我的感觉是:有这样一种东西,它没有任何形态,不需要随身携带,但是它能代表财富,能够交易,而且没有任何机构能够控制它、剥夺它,那这样的东西甚至比货币、黄金和土地更能带给我安全感,这肯定是人类历史上从没有过的一种体验。所以我坚信加密货币的前途一定是光明的。

      我原来也买过一些各种各样的币,不多,跟朋友挖过一阵矿,只是玩玩。后来发现已经不知道买什么了,几百种币,也不知道那些是骗人的。因为前面研究挖矿算法的时候了解过侧链什么的,我还想能不能用侧链把这些乱七八糟的币都整合到一起去,后来想了一下不可能,人家做这些币,不管是不是想骗钱,但是总是要挣钱的,而加密币要挣钱几乎只有一种方法,就是依靠发行之后增值,你用侧链一下把汇率都给锁死了,人家还增什么值?所以就放弃了。

      我的主业是一家技术外包公司,替人开发app的,有一次突然产生了一个阴暗的想法,我们给客户做过的app那么多,用户也不少,要是我在里面嵌入个挖矿程序,是不是能悄悄的挣一笔?后来算了一下需要的算力,好像差太远,而且毕竟是个不光彩的事情,也没继续深究下去。实际上后来一个新闻证实了我这种想法,还真有人这么干了,而且被抓了,还好,暗爽。但是这个想法一直在我脑子里,我想,即使不干坏事,要是有一种方法能利用用户来挖矿的话,那我们这些开发app的和网页的日子肯定会好过很多,那些免费的程序里也可以不用非要时不时跳一个广告出来影响用户的心情了啊。

    于是我们继续做app混饭吃,有一次跟人聊到一个项目,是做一个手机软件评测的,虽然后来没接,但是我忍不住对它的一些设计思考了很长时间。那个软件有个功能是统计真实用户数的,客户又不想依赖评测对象自己的数据,所以就想找一个方法自己来判断。我由此想到了网络分散度的这个概念,大概的意思就是,我在网络里面随机播撒一些信号,然后由各个终端去捕捉,一个信号只能捕捉一次,那谁的终端更多,谁捕捉到的信号就更多。因为不管网络牛逼到啥程度,它的响应总有个先后,一般来说远的一定响应不过近的,所以你在网络里散步越多的终端,你捕捉到信号的几率就越大,对app来说也就说明谁的用户更多。再后来联想到刚刚说过的用app挖矿的事,持续发酵之后,就产生了我论文里提到的那个协议的雏形。
12  Alternate cryptocurrencies / Altcoin Discussion / A new type of consensus protocol on: April 03, 2018, 05:19:04 PM
Hi every one:

Here is a new type of consensus protocol that might help resolve some

common problems of POW and POS:

disabled

And there are some draft project plans based on the protocol.

I want to share them with you and hope to find someone interested.

Anyone who has any question, please let me know. Thanks!


Previous post(Chinese)
disabled
13  Alternate cryptocurrencies / Altcoin Discussion / A new type of consensus protocol on: April 03, 2018, 03:04:47 PM
Hi every one:

Here is a new type of consensus protocol and some draft plans based on it.  

[disabled]

The translation is being worked on, I will update it as soon as possible.

Or you can read the Original Version

[disabled]

if it is possible.

I want to share them with you and hope to find someone interested.

Anyone who has any question, please let me know. Thanks!


Previous post(Chinese)
https://bitcointalk.org/index.php?topic=3185546.0


14  Bitcoin / Development & Technical Discussion / Why is the contest period of Side-chain so long? on: April 01, 2018, 07:30:34 AM
Hi:
It's about the  side-chains white papper.
Because the biggest reorganisation length is less than 6, which is about an hour.
Why do we need 24 hours to prevent reorganisation?
15  Economy / Services / Need Chinese to English transaltion support on: March 28, 2018, 03:06:31 AM
hi:
Here is the whitepapper in Chinese version : https://github.com/yj1190590/POnD
Anyone who is interested please contact me.
thanks!
wechat: yj1190590
or send me a message directly
16  Local / 中文 (Chinese) / 项目筹备中,先在中文区贴一下,请各种大神乱入 on: March 23, 2018, 03:43:01 PM
大家好:
      首先这算是一个偏技术向的贴,其次是一个大体的项目计划。

      想和大家分享的有两样东西,第一是一个不太一样的区块链共识协议,第二是一些架构上的思考,主要是针对

加密货币方向的想法,和开发这个项目的基本计划。

      为了方便阅读,就不在帖子里面发太多具体的内容了,我在github写了有排好版的内容,链接在这里:

https://github.com/yj1190590/POnD

     如果有感兴趣的朋友可以加入讨论组一起探讨,或者介绍给感兴趣的其他朋友,欢迎任何人加入进来。

现在八字一撇刚刚开始写,欢迎投资,欢迎开发者或者开发团队的支持,欢迎有众筹项目经验的朋友,当然最主要

还是欢迎投资,有钱的话项目我可以自己组织,我在国内。

     另外,论坛里有没有翻译大神帮我翻译成英文(可以有偿),回头我再发英文板块。我自己翻译了一部分,鉴

于本人英文水平比较一般,翻译起来挺吃力,还怕发到英文板块给人造成理解上的误会,所以最好请英文好的朋友

帮我翻译一下,万分感谢,可以直接加我微信。

discord群服务器:https://discord.gg/A35NMzZ

我的微信ID:yj1190590,和我论坛id一样。

================================================
2018/3/25 修改:加了附图,为了方便理解
                 新建了discord讨论组
2018/3/27 少量更新,排版和文字方面
2018/3/30 少量更新,更详细的解释了钱包应用的收益分成方案
2018/3/31 少量更新,更详细的解释了投票频率限制的作用和方法
2018/4/1   翻译的朋友已经找到,争取在明后天翻译好
2018/4/3   翻译了一半(nuszjj翻译),基本能看懂大概意思了,剩下的翻译正在做
                 在英文区发布了帖子https://bitcointalk.org/index.php?topic=3251016.0
2018/4/4   reddit上面分享了 https://www.reddit.com/r/BlockChain/comments/8hk5ju/a_consensus_protocol_based_on_the_ability_of/?ref=share&ref_source=link
2018/4/5   增加了一些段落的跳转,方便刚刚进入的人进行阅读和快速理解
                 增加了FAQ,在最后 https://github.com/yj1190590/POnD/blob/master/README.md#常见问题
2018/4/7   增加了一个图,解释通过分散的终端争取投票以及竞争的过程
2018/4/8   英文版有比较大量的删改,主要是文字描述方面。
                 修改了节点名称,现在的名称更加“专业”了。
2018/4/9   中文版也修改了节点名称。
2018/4/10 重做图片,保持统一风格
2018/4/20 英文版和中文版文字部分有大量删改,使表达更加准确
2018/5/1   协议的技术论文基本完成,同时参考论文的内容修改了英文版的很多语法和句式,中文版也顺便做了一些优化
2018/5/7   论文写好了https://github.com/yj1190590/PoND/blob/master/research_paper.pdf,已投到lederjournal,等回复
2018/5/11 英文:https://www.keepandshare.com/doc15/18773/research-paper-pdf-647k?da=y
                 中文: https://www.keepandshare.com/doc15/18774/research-paper-pdf-714k?da=y
Pages: [1]
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!