Daniel Sanchez Quiros
b322c414d3
Added comments
2024-02-27 14:12:20 +01:00
Daniel Sanchez Quiros
6fe8401f54
Added trusted setup, updated common to use gp generator and added setup verification test
2024-02-27 13:52:55 +01:00
megonen
6d59f41ab3
Update common.py
...
added verify setup mechanism
2024-02-27 13:49:50 +03:00
Daniel Sanchez Quiros
81bf05464f
Update deps
2024-02-26 18:41:39 +01:00
Daniel Sanchez Quiros
18490d1e51
Cleanup imports
2024-02-26 18:06:05 +01:00
Daniel Sanchez Quiros
94f755d00d
Expand verify test
2024-02-26 17:46:02 +01:00
Daniel Sanchez Quiros
af2494f51f
Make verification work
2024-02-26 13:45:27 +01:00
Daniel Sanchez Quiros
2e75915626
Add non working verification
2024-02-26 10:28:50 +01:00
Daniel Sanchez Quiros
f6c5339168
Fix poly operations
2024-02-22 13:36:09 +01:00
Daniel Sanchez Quiros
0ba4f14e65
Use fast division on polynomials
2024-02-22 13:29:38 +01:00
Daniel Sanchez Quiros
9ca4332eb1
use evaluation form for building polynomial
2024-02-22 13:04:04 +01:00
Daniel Sanchez Quiros
761ef0d745
Use custom polynomial
2024-02-22 11:29:23 +01:00
Daniel Sanchez Quiros
18f647c940
Added basic tests
2024-02-20 13:03:02 +01:00
Daniel Sanchez Quiros
37d94d1c87
Implement commitment and proof generation
2024-02-20 13:02:55 +01:00
Daniel Sanchez Quiros
12f33c3388
Added common types and constants
2024-02-20 13:02:40 +01:00
Daniel Sanchez Quiros
bba8760fc5
Added polynomial class
2024-02-20 13:02:26 +01:00
Daniel Sanchez
9a54d90d14
Da specs main structure ( #70 )
...
* Added da encoder pipeline draft
* Remove unnecessary method
* Added verifier module and blob type
* Fill verifier skeleton
* Add comments on implementation, remove unnecessary intermediary method
* Added dispersal skeleton
* Added test modules for dispersal and verifier
* Added test modules for encoder, implemented basic test
* Added missing test cases
* Added missing calls to encode method
* Use single megabyte test in encoder
* Added basic testcases for dispersal
* Added basic testcases for verifier
* Remove duplicated column proofs from encoding schema
* Remove parameters from test functions in encoder
* Extract common types to common module
* Make test pass
* Remove node id dep from mixnet and fix columns access
2024-02-12 15:35:23 +01:00
Daniel Sanchez
bcde60a97f
Arkworks dependency utility script ( #71 )
...
* Added install script for building in arm64 in osx arkworks bls dep
* Added install script for building in arm64 in osx arkworks bls dep
2024-02-11 23:15:15 +01:00
Giacomo Pasini
495e0c119a
Add orphan proofs validation ( #69 )
...
* Add orphan proofs validation
* Update cryptarchia/cryptarchia.py
Co-authored-by: davidrusu <davidrusu.me@gmail.com>
---------
Co-authored-by: davidrusu <davidrusu.me@gmail.com>
2024-02-09 15:12:12 +01:00
Youngjoon Lee
5dd7b2730a
Embed Robustness into `mixnet.py` ( #61 )
2024-02-08 15:39:50 +09:00
davidrusu
cde1e92c9e
Leader VRF uses coin nonce as well as sk ( #68 )
...
* standardize endianness to "big"
* slot.encode()
* include coin nonce in leader election VRF
---------
Co-authored-by: David Rusu <davidrusu@Davids-MacBook-Pro.local>
2024-02-07 18:28:36 +04:00
Giacomo Pasini
6f05392693
Add slot contribution to nonce ( #67 )
2024-02-07 12:31:31 +01:00
davidrusu
0c447881ca
Merge pull request #65 from logos-co/evolve-leader-coin
...
Spec. Leader Coin Evolution
2024-02-07 01:53:26 +04:00
David Rusu
2a9ec4bc86
distinguish thew two commitments in the leader prf abnf
2024-02-06 22:21:16 +04:00
David Rusu
bddaa40d63
test coin minting and stake stabilizing
2024-02-06 22:19:08 +04:00
David Rusu
3f681fc51f
update block id spec; typo
2024-02-06 20:19:30 +04:00
David Rusu
5c3de9ab84
implement support for leader-proofs generated from evolved coins
2024-02-06 20:07:26 +04:00
Giacomo Pasini
8a82517fdd
Add nonce specification ( #64 )
...
* Add nonce specification
* tweak nonce definition
2024-02-06 16:37:49 +01:00
David Rusu
eebf439a30
feat(leader_coin): add nonce and coin.evolve() api
2024-02-06 19:31:34 +04:00
Giacomo Pasini
c1e12d6ce8
Add epoch transition to spec ( #63 )
...
* Add epoch transition to spec
* add tests
* Add block to fork after validation
* Add configs for steps inside an epoch
* rename get_last_valid_state to state_at_slot_beginning
2024-02-06 14:38:20 +01:00
Youngjoon Lee
fe7d47caee
Mixnet: integrate all the pieces together ( #57 )
2024-02-05 09:04:02 +01:00
Youngjoon Lee
b1ffb4d62d
Mixnet: topology update ( #56 )
2024-02-05 07:47:36 +01:00
davidrusu
d7b5e0b529
Merge pull request #62 from logos-co/epoch-state-spec
...
Follower maintains ledger state as it follows the blockchain
2024-02-02 13:29:41 +04:00
David Rusu
9f6b9eb242
Specify mock-leader-proof in message spec
2024-02-02 01:16:14 +04:00
David Rusu
9345af0614
test ledger state is properly updated on re-org
2024-02-01 21:33:37 +04:00
David Rusu
62ea40ba5e
address CR
2024-02-01 20:25:49 +04:00
David Rusu
45bddc0e21
Follower maintains ledger state as it follows the chain
2024-02-01 15:08:50 +04:00
David Rusu
7d8e4d72d9
setup for ledger state update
2024-02-01 15:08:50 +04:00
David Rusu
66239b3913
checkpoint work on ledger-state
2024-02-01 15:08:50 +04:00
Giacomo Pasini
734b038c50
Add header id and message format specification ( #52 )
...
* Create messages.abnf
* add missing block rule
* Add content id to header message
* add header id definition + implementation in python
* address review comments
2024-01-31 23:09:03 +01:00
Daniel Sanchez
0f6bcf11b1
Add eth-specs submodule ( #60 )
...
* Added eth specs submodule
* Rename to eth-specs instead
* Added install script for ethspecs module
* Use python and pip instead of 3
* Load eth-specs in ci
* Add checkout submodules to ci
* Make install script executable
* Added missing install command in script
* Added missing submodule
* Move to eth-specs for building
2024-01-31 09:53:04 +01:00
Daniel Sanchez
7df4f9556f
Specify shuffling algorithm ( #37 )
2024-01-31 09:33:44 +01:00
Daniel Sanchez
ff09cf8bb8
Sort committees before hashing ( #36 )
2024-01-31 09:33:13 +01:00
Youngjoon Lee
1d3bf3c6d8
Clarify Cryptarchia slot calcuation ( #59 )
2024-01-30 11:57:54 +01:00
Giacomo Pasini
45c303ef14
Add fork choice rule ( #58 )
...
* add fork choice rule
* add comments explaining k and s
* add tests
* fix test import
2024-01-29 14:29:56 +01:00
davidrusu
a587e3a164
Merge pull request #54 from logos-co/cryptarchia
...
Cryptarchia specs
2024-01-26 16:31:25 +04:00
davidrusu
0c4bfa4d03
Merge branch 'master' into cryptarchia
2024-01-26 00:14:22 +04:00
davidrusu
8c43b68c35
Merge pull request #55 from logos-co/cryptarchia-leader-lottery
...
feat(lottery): spec out basic leader slot check
2024-01-25 16:30:14 +04:00
David Rusu
94f97caab0
rename EpochState.stake_distribution() to EpochState.total_stake()
2024-01-25 15:26:54 +04:00
David Rusu
1420117e9a
rename LedgerState.head to LedgerState.block
2024-01-25 14:25:37 +04:00