Commit Graph

70 Commits

Author SHA1 Message Date
Jakub Sztandera
ee5639aad9
Initial implementation of Poisson Sortition
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-23 16:24:01 +02:00
Jakub Sztandera
5605aae269
Fix even more lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-02 16:29:39 +02:00
vyzo
81bc159b3e cache successful block signature validation 2020-05-14 20:48:40 +03:00
Jeromy
da72dfae3d block header changed, updating field indexes to match 2020-05-04 12:09:39 -07:00
Aayush Rajasekaran
c196570dd8 Use blake2b, instead of sha256, for ticket creation and verification 2020-05-01 22:43:36 -04:00
Jeromy
931a862abc remove usage of previous round in beacon entries 2020-04-30 11:39:37 -07:00
Łukasz Magiera
93b2b6d65d Merge branch 'testnet/3' into feat/windowed-post 2020-04-17 18:38:20 +02:00
Jeromy
708988244d WIP: working on winning post integration 2020-04-16 22:39:55 -07:00
Whyrusleeping
0db5fc422a Merge pull request #1534 from filecoin-project/patch/syscalls
VerifyConsensusFault syscall impl
2020-04-16 13:33:58 -07:00
Jeromy
674be39af1 real drand network integration 2020-04-13 20:06:10 -07:00
Henri S
aa5cec39ca first stab 2020-04-13 15:55:53 -04:00
Jakub Sztandera
ce4978d8c3 Reintroduce correct ticket randomness alongside ElectionProof
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 21:06:41 +02:00
Jeromy
8e0ca306d2 more wiring up of drandomness 2020-04-08 08:11:42 -07:00
Jakub Sztandera
9c250f24fa Nex wip
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jakub Sztandera
afdb1db529 drand wip
,
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jeromy
7075eaba26 WIP: random beacon interface
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jeromy
f1dbd35407 change genesis fields to match interop 2020-03-21 15:25:00 -07:00
Łukasz Magiera
2a1253e45a types: Simplify Ticket.Equals 2020-02-28 11:31:28 -08:00
Henri S
96555aa74b update to use VRF digest appropriately and simplify drawing rand past genesis 2020-02-28 11:31:28 -08:00
whyrusleeping
df6e3e83bf make it all build finally 2020-02-27 13:45:31 -08:00
Łukasz Magiera
d787aa5007 Merge branch 'testnet/3' into feat/specs-actors 2020-02-24 18:32:02 +01:00
Łukasz Magiera
0d6cfc879d Use specs-actors ignatures 2020-02-13 00:52:36 +01:00
Jakub Sztandera
5c3ed4d91a
Remove ffi from types package
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-12 18:41:35 +01:00
Łukasz Magiera
fa2c6605c2 Fix compilation after dep updates 2020-02-11 02:11:58 +01:00
Łukasz Magiera
13435aebdc Spec Actors integration 2020-02-08 03:18:32 +01:00
Łukasz Magiera
de5577ca70 chain: bisect cmd 2020-01-30 22:32:59 +01:00
Jakub Sztandera
a404d535ee
Make it buld without cgo
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-22 12:03:12 -08:00
Łukasz Magiera
24e36852af Fix nil signature verification 2020-01-14 16:52:01 +01:00
Jakub Sztandera
8cfb4aafcd
Add fork signaling to blockheader
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-08 20:31:08 +01:00
Jakub Sztandera
a63c34a902
Handle faults in ss and pss correctly
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-07 23:03:18 +01:00
laser
841f9c3627 reorganize imports to pass linter 2020-01-07 08:23:12 -08:00
acruikshank
7873213b11 switch sectorbuilder from lib to external module
point to correct version of sectorbuilder + ensure go-datastore stays at 0.1.1

replace local address type with go-address

consume paramfetch.GetParams instead of local paramfetch.go

remove constants now defined in sectorbuilder
2020-01-07 07:48:43 -08:00
hannahhoward
8418464d91 refactor(address): use extracted address library
Switch to using extracted address library
2020-01-07 14:53:27 +01:00
Łukasz Magiera
2e95a53679 Wire up faults in fPoSt 2019-12-17 23:33:08 +01:00
Jakub Sztandera
887a34135b
Make ElectionPostChallengeCount math overflow safe
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-09 18:34:18 +01:00
Henri S
9e363f9266
fix target for ePoSt IsTicketWinner fn
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-09 18:34:15 +01:00
whyrusleeping
b7a89b56b3 more statticcheck! 2019-12-04 21:14:19 -08:00
Łukasz Magiera
adcda68d62 fix winner math 2019-12-03 00:18:27 +01:00
Łukasz Magiera
fd92b8f19a Type 256 differently 2019-12-02 23:49:41 +01:00
Łukasz Magiera
ab36a5aa04 wip fixing IsTicketWinner 2019-12-02 23:46:49 +01:00
Łukasz Magiera
aefd432422 actors: Fallback post progress 2019-11-28 13:46:56 +01:00
whyrusleeping
96482f456a WIP: election post restructuring 2019-11-21 16:21:45 -06:00
whyrusleeping
c4564c0597 use proper round number, allow block signature to be nil 2019-11-20 10:54:10 -06:00
whyrusleeping
f8eabd3db4 Refactor mining logic to match specs ticket chain 2019-11-20 10:52:36 -06:00
whyrusleeping
b77bb9e4aa Audit pass for blatantly wrong panics 2019-11-16 17:41:14 -06:00
Łukasz Magiera
814e01cc05 gofmt 2019-11-09 01:18:32 +01:00
Steven Li
9a5adfed3a
change with @Kubuxu's comment 2019-11-01 08:56:15 +08:00
Steven Li
85854578d1
Update chain/types/blockheader.go
Co-Authored-By: Łukasz Magiera <magik6k@users.noreply.github.com>
2019-10-31 16:44:26 +08:00
Steven Li
0aa56ba665
Refactor the PowerCmp function
Why we have this: 
This algorithm here directly follow the rule of ratio to win, and easier to understand. 
Just think about a smaller space, e.g. 100, instead of 2^256. 

When one miner has 10% power, it should have 10% ratio to win. that is, when the h is in {0..9}, it wins. Simply speaking, it is: 
     (h + 1) / 100 <= 10% ,  instead of     
     h / 99 < 10%     
The former is easier to understand, though both are equivalent when h is an integer and power_ratio < 1)
2019-10-31 13:36:33 +08:00
Łukasz Magiera
e98feb4a39 fix PowerCmp 2019-10-28 21:28:01 +01:00