Author

Topic: Proof of Stake and Headers First (Read 397 times)

newbie
Activity: 34
Merit: 0
January 08, 2017, 04:57:33 PM
#6
OK, sounds like you won't be doing open source. Would still love to see the details of this approach though in code
full member
Activity: 380
Merit: 103
Developer and Consultant
January 08, 2017, 02:03:22 PM
#5
I'm interested in this issue too. Did you find a working solution? Can you provide details? Thanks

Hello

I am confident my solution is reliable. I am debugging it during my spare time.

Mining - works
Staking - Works
Different difficulty adj - works
Differentiation of blocks between pow and pos - works

Known issues:- occasional failure to sign coinstake transactions , Qt wallet balance updates.

I think i will get those last two tonight.

Was depressed by the continual cloning of old 2012 code so i made a fresh version for my own project. :-  Oracle AI
newbie
Activity: 34
Merit: 0
January 08, 2017, 01:38:55 PM
#4
I'm interested in this issue too. Did you find a working solution? Can you provide details? Thanks
full member
Activity: 380
Merit: 103
Developer and Consultant
January 08, 2017, 01:04:58 PM
#3


Bitcoin 0.12.x with working PoS. Two known remaining bugs.
full member
Activity: 380
Merit: 103
Developer and Consultant
January 07, 2017, 06:46:26 AM
#2
Block versions are now successfully separating PoW from PoS blocks.  Grin

New problem : Verifying of signatures is failing  Angry
full member
Activity: 380
Merit: 103
Developer and Consultant
January 06, 2017, 10:37:35 AM
#1
I have come up with two possible solutions to this problem and i'm hoping some coders can point out why it would or would not work. Maybe i am missing some key points.

1) Why not move the blocksig into the header ?
 We can then use this to identify blocks (i know the signing process)

2) Have a system that accepts two block versions (ie blocks  structures are unchanged but v1 blocks are PoW and v2 Blocks are PoS)

 Again this would take minimal modification of the code and would act as a way of distinguishing between block types and how to handle their headers.

I'd appreciate input from other developers and anyone else who has an understanding of this problem and any others i have overlooked.

-edit-

I have strong hopes for using versions as separation logic as it requires just a few changes. I am recompiling to test.
Jump to: