[DIP6] Add llmqTypes details to qfcommit (#37)

* [DIP6] Add llmqTypes details to qfcommit

Closes #36

* [DIP6] Update LLMQ Types table

* [DIP6] Remove LLMQ_NONE from table
This commit is contained in:
thephez 2018-12-27 10:21:02 -05:00 committed by GitHub
parent 67ddbb06e4
commit 67743489a4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -351,6 +351,7 @@ The internal Dash message name is `qfcommit` and the format of the message is:
| Field | Type | Size | Description | | Field | Type | Size | Description |
|--|--|--|--| |--|--|--|--|
| version | uint16_t | 2 | Version of the final commitment message | version | uint16_t | 2 | Version of the final commitment message
| llmqType | uint8_t | 1 | [Type of LLMQ](#current-llmq-types)
| quorumHash | uint256 | 32 | The quorum identifier | quorumHash | uint256 | 32 | The quorum identifier
| signersSize | compactSize uint | 1-9 | Bit size of the signers bitvector | signersSize | compactSize uint | 1-9 | Bit size of the signers bitvector
| signers | byte[] | (bitSize + 7) / 8 | Bitset representing the aggregated signers of this final commitment | signers | byte[] | (bitSize + 7) / 8 | Bitset representing the aggregated signers of this final commitment
@ -361,6 +362,15 @@ The internal Dash message name is `qfcommit` and the format of the message is:
| quorumSig | BLSSig | 96 | Recovered threshold signature | quorumSig | BLSSig | 96 | Recovered threshold signature
| sig | BLSSig | 96 | Aggregated BLS signatures from all included commitments | sig | BLSSig | 96 | Aggregated BLS signatures from all included commitments
#### Current LLMQ types
| Type | Name | Total Members | Threshold Members | Duration | Notes |
|--|--|--|--|--|--|
| 1 | LLMQ_50_60 | 50 | 30 (60%) | 1 Hour | |
| 2 | LLMQ_400_60 | 400 | 240 (60%) | 12 Hours | |
| 3 | LLMQ_400_85 | 400 | 340 (85%) | 24 Hours | |
| 100 | LLMQ_10_60 | 10 | 6 (60%) | 1 Hour | For testing only |
### 7. Mining phase ### 7. Mining phase
After final commitments have been propagated in the network, miners should take the best final commitment for a DKG session and mine it into the next block. The best final commitment is simply the one with the most signers. After final commitments have been propagated in the network, miners should take the best final commitment for a DKG session and mine it into the next block. The best final commitment is simply the one with the most signers.