Proof of Signature Basic Introduction
The PoSign Mining is very easy to understand.
Each client (STaTiC Node) sees the same transactions and therefore each block is equally visible by the entire network. The STaTiC Nodes job with regard to the consensus is to simply sign the blocks. If any STaTiC tries to sign a fake block, the other STaTiC's will blacklist it and continue signing the VALID blocks.
For example:
Let's say there are 100 STaTiC Nodes online across the network and 1 tries to create a block that contains fake information (such as; fake transaction or bad blockhash etc...) This fake/bad block hash will be different than the other 99 hashes and therefore the other 99 clients (STaTiC Nodes) will send a warn/repair RPC message to the "bad" client. If the "bad" STaTiC Node repairs the block then the hash will become the same as the other 99. If it doesn't repair it and instead tries to resend over and over, the other nodes will eventually blacklist the STaTiC.
All other nodes (non STaTiC nodes) will see the last block that signed and how many STaTiCs accepted.
In comparison; Bitcoin and all other coins have only one untrusted, randomly selected node that signs and creates the block. With XBY, each block is created and signed by all the currently ONLINE STaTiC Nodes.
With XtraBYtes, there is no POW or POS mining to sign and verify the blocks. As we said, each online STaTiC signs and this is where you start to see the power of PoSign... Because, this means there are more signatures and more signatures = more security. Nobody can know all private keys from the STaTiC Nodes and therefore it is impossible to create fake STaTiC signed blocks.
At this point, we have ONLY 1 STaTiC node controlling XBY and the network is fast and secure...
After more STaTiCs have been registered on the network, XBY will be better than ALL other coins in the crypto world.
At this point, nobody really understands what is really happening here... We are developing THE COIN
This is the LATEST INNOVATION in BLOCKCHAIN technolgy and our man Borzalom is the Genius Mastermind who thought of it.
So, to summarize:
If Bitcoin security is 100% (with untrusted nodes signing the blocks) How much more powerful is XBY when it is also (100% + the use of trusted nodes) * the number of STaTiC Nodes? Like I said... he was blowing my mind when he was explaining all this to me a few nights ago.
Congratulations to all of you who are already with XtraBYtes... You are way ahead of the people who will be coming on board soon.... VERY SOON...
I have a few questions about the specifics of your consensus algorithm.
I generally approach consensus algorithms from a few angles:
-What are the attack vectors (both in stalling consensus and in reversing established consensus)
-How is power distributed (and what effects does that have on censorship)
-How does it impact scalability (both in transaction volume and number of users)
With those main ideas in mind:
1. How does someone actually become a STaTiC node? Do they have to go through the developer, can they set it up themselves?
2. How do you ensure that each STaTiC node sees the same transactions? Further to that point, if I send two transactions that conflict with one another, and some STaTiC nodes see the first and some see the second, how do they come to agreement which transaction is the legitimate one?
3. What constitutes a 'fake' block?
4. How do normal nodes know who the STaTiC nodes actually are, to verify the signatures against? How do thin clients do it?
5. Are blocks deterministic (i.e. everyone on the network at any point would be able to construct an identical block)?
6. It appears every STaTiC node is able to independently create identical blocks, is that true?
7. What is the threshold for normal nodes to accept a block as valid (99% of STaTiC signatures? 51%?)
8. What prevents the creation of an alternative history if someone compromises the original private key of the first STaTiC node? Is the network only weakly-subjective?
This is one of the RARE occasions we will post with Borzaloms English. Anyone can see from his history that this is him...
I do not have time to convert this to easily understandable English at this time because we are busy preparing the announcements.
However, I do not want this to go unanswered because it is troll food and all of you deserve to have the best chance at winning here at XtraBYtes.
Thank you for understanding, Borzalom and I will update this post ASAP.
[3:46:20 PM] -- CCRevolution -- $:
https://bitcointalk.org/index.php?topic=1864397.msg18775624#msg18775624[3:46:46 PM] -- CCRevolution -- $: That is a very heavy question... We will not have time to answer this tonight I dont think... unless you can make it very simple.
[3:46:50 PM] Borzalom: 1 working. maybe just a hour needed
[3:47:35 PM] Borzalom: I like heavy questions
[5:09:07 PM] Borzalom: Here is the answers:
[5:09:13 PM | Edited 5:09:51 PM] Borzalom: This is a first very- very good question. Therefore firstly I thank your contribution. I love the hard constructive technical questions.
1.) need deposit ( own address ) + need registration + long online time need after registration ( until old STaTiC-s accept the new STaTiC-s )
Difference the now and later the first registration ( between 25.000 - 50.000 blocks ) don't need the long online time and old STaTiC-s acception.
After registration code released then don't need developer. Maybe some code fixes but no more. And of course this is experimental therefore
if don't work the original plan then consensus maybe will change.
2.) The "chord" type internal routing between the STaTiC-s ensure the communication. Example If the hash of transaction is begin the 0x1
then the 0x1 STaTiC will the root who first validate and accept this transaction. If you sent the conflicted transactions then the first
will accepted or both will denied. The target STaTiC-s will decide this. I say again, this is expermental therefore i don't know exactly
the best solution. We will see how to work and if need then i will change the protocol. This is a top reason why no whitebook.
3.) Very difficult to answer. Of course lot of checking needed. Better question that what is the good block. If any block not good then that is fake.
Each STaTiC need to make consensus and need exactly 100% same block accepted. If the all accepted transactions broadcasted between the STaTiC-s then
the transactions of block will be equal therefore block has also will equal. ( just signature will the difference )
4.) STaTiC registration will ensure the public keys of STaTiC-s. The key revoke will work simile. All emitted and revoked key stored to blockchain.
nonSTaTiC nodes download the blockcahin and after done the download then will see all STaTiC public key and see also if the public key revoked.
5.) YES. The nonSTaTiC nodes created the blocks too but not broadcast. Each nonSTaTiC node validate the signed block and compare that the self
generated block. Therefore if any STaTiC try generate false blocks then nonSTaTiC nodes will recognise too.
6.) YES. See above. All node is able to independently create identical blocks not just STaTiC. Difference between nodes: the STaTiC is able to signing too.
7.) Some STaTiC online and some offline therefore no exact number how many needed. After offline STaTiC go to online then will signing
the all unsigned blocks. This work like the confirmation of transactions. Each client decide yourself how many signatures needed to accept
the block. Now just one STaTiC working therefore very easy this number is one and 100%. Need expermence founding the best ratio and number.
After all newly registered STaTiC begin the work we will see how many online and offline at a time. I don't know this number exactly before STaTiC.
8.) The first static is just temporary. Required this fast patch because nobody want mining zero rewarded blocks. After STaTiC registration success then
i will burning the checkpoint to source code. The first temporary STaTiC will be removed.
[5:28:07 PM] Borzalom: ----
[5:28:09 PM] Borzalom: remark:
These answers valid at now. This is experimental coin. If required i change the plans. Remember why no white book. Just the goal fixed. We want STaTiC nodes, community owned coin and code, community data storage system, new block signing method. I personaly want very very big community who help me reaching the goals. I know this is big goal but i hope i have enought experience and knowledge to reache these goals. I say every time This is not tipical investment money this is experimental money. I don't richer or poor if you bought or sell. This is not my money i just the developer who experimenting. I think my first goal to save investor money who invested to bitmox successed. This is a next step. I don't guarante to this next experimence will als success or not.
[6:47:41 PM] -- CCRevolution -- $: Hello, I just finished the video...
[6:47:47 PM] Borzalom: ok
[6:50:15 PM] -- CCRevolution -- $: I am going to post your response as is... there is no time. So, here is how I will preceed:
Thanks for the answers.
How does the network know when to produce a new block? A decentralized network like this can't keep a reliable timestamp--for example, Bitcoin has a timestamp that can be about ±2 hours, and that timestamp is embedded by miners into the block they mine.
Also, how do you ensure that all nodes truly do see all the same transactions? While distributed networks like these generally work in a flood-fill-like manner, all kinds of things can cause nodes on the network to have a slightly different mempool. If all nodes on distributed networks truly had identical mempools, we wouldn't be having discussions about block propagation on Bitcoin, or they would be significantly different and less interesting (see
for example).
On the note of compromising the original STaTiC node, it would theoretically allow a separate, perfectly-valid blockchain separately. Since at block, say,
only the single STaTiC node was relied on, then compromising it would allow creating a block
, etc. And since none of these blocks on the attacker chain would include commitments of additional STaTiC nodes, that blockchain would only ever have that single authority, and could be created to arbitrary depth effortlessly.