mirror of
https://github.com/seigler/dips
synced 2025-07-27 01:36:14 +00:00
Update DIPs regarding use of BLS12-381-reversed (#25)
* Update bls_signature_scheme.md with BLS12-381-reversed * Update DIP3/DIP4 to use BLS operator keys * Update DIP5 to use BLS keys for user keys Also add the "Size" column to all serialization specs to align with other DIPs. * Update BLS primitives serialization size in DIP6/7 * DIP3 - Correct PubKeyOperator type * DIP4 - Correct PubKeyOperator type * Remove trailing e from integere
This commit is contained in:
parent
b1b56aaefd
commit
52aee60048
6 changed files with 60 additions and 63 deletions
22
dip-0006.md
22
dip-0006.md
|
@ -187,11 +187,11 @@ The internal Dash message name is `qcontrib` and the format of the message is:
|
|||
| quorumHash | uint256 | 32 | The quorum identifier
|
||||
| proTxHash | uint256 | 32 | The proTxHash of the contributing member
|
||||
| vvecSize | compactSize uint | 1-9 | The size of the verification vector
|
||||
| vvec | BLSPubKey[] | 64 * vvecSize | The verification vector
|
||||
| ephemeralPubKey | BLSPubKey | 64 | Ephemeral BLS public key used to encrypt secret key contributions
|
||||
| vvec | BLSPubKey[] | 48 * vvecSize | The verification vector
|
||||
| ephemeralPubKey | BLSPubKey | 48 | Ephemeral BLS public key used to encrypt secret key contributions
|
||||
| skCount | compactSize uint | 1-9 | Number of encrypted secret key contributions
|
||||
| skContributions | byte[] | 32 * skCount | Secret key contributions encrypted to recipient masternodes’ BLS public operator key
|
||||
| sig | BLSSig | 32 | BLS signature, signed with the operator key of the contributing masternode
|
||||
| sig | BLSSig | 96 | BLS signature, signed with the operator key of the contributing masternode
|
||||
|
||||
### 3. Complaining phase
|
||||
|
||||
|
@ -231,7 +231,7 @@ The internal Dash message name is `qcomplaint` and the format of the message is:
|
|||
| badMembers | byte[] | (bitSize + 7) / 8 | The bad members bitvector
|
||||
| complaintsBitSize | compactSize uint | 1-9 | Number of bits in the complaints bitvector
|
||||
| complaints | byte[] | (bitSize + 7) / 8 | The complaints bitvector
|
||||
| sig | BLSSig | 32 | BLS signature, signed with the operator key of the contributing masternode
|
||||
| sig | BLSSig | 96 | BLS signature, signed with the operator key of the contributing masternode
|
||||
|
||||
### 4. Justification phase
|
||||
|
||||
|
@ -265,7 +265,7 @@ The internal Dash message name is `qjustify` and the format of the message is:
|
|||
| skContributionsCount | compactSize uint | 1-9 | Number of unencrypted secret key contributions
|
||||
| skContributionMembers | uint32[] | 4 * count | Indexes of the members for which justifications are provided
|
||||
| skContributions | BLSSecKey[] | 32 * count | Unencrypted secret key contributions for the members contained in skContributionMembers
|
||||
| sig | BLSSig | 32 | BLS signature, signed with the operator key of the contributing masternode
|
||||
| sig | BLSSig | 96 | BLS signature, signed with the operator key of the contributing masternode
|
||||
|
||||
### 5. Commitment phase
|
||||
|
||||
|
@ -309,10 +309,10 @@ The internal Dash message name is `qpcommit` and the format of the message is:
|
|||
| proTxHash | uint256 | 32 | The proTxHash of the committing member
|
||||
| validMembersSize | compactSize uint | 1-9 | Bit size of the validMembers bitvector
|
||||
| validMembers | byte[] | (bitSize + 7) / 8 | Bitset of valid members in this commitment
|
||||
| quorumPublicKey | BLSPubKey | 64 | The quorum public key
|
||||
| quorumPublicKey | BLSPubKey | 48 | The quorum public key
|
||||
| quorumVvecHash | uint256 | 32 | The hash of the quorum verification vector
|
||||
| quorumSig | BLSSig | 32 | Threshold signature, signed with the threshold signature share of the committing member
|
||||
| sig | BLSSig | 32 | BLS signature, signed with the operator key of the contributing masternode
|
||||
| quorumSig | BLSSig | 96 | Threshold signature, signed with the threshold signature share of the committing member
|
||||
| sig | BLSSig | 96 | BLS signature, signed with the operator key of the contributing masternode
|
||||
|
||||
### 6. Finalization phase
|
||||
|
||||
|
@ -356,10 +356,10 @@ The internal Dash message name is `qfcommit` and the format of the message is:
|
|||
| signers | byte[] | (bitSize + 7) / 8 | Bitset representing the aggregated signers of this final commitment
|
||||
| validMembersSize | compactSize uint | 1-9 | Bit size of the validMembers bitvector
|
||||
| validMembers | byte[] | (bitSize + 7) / 8 | Bitset of valid members in this commitment
|
||||
| quorumPublicKey | BLSPubKey | 64 | The quorum public key
|
||||
| quorumPublicKey | BLSPubKey | 48 | The quorum public key
|
||||
| quorumVvecHash | uint256 | 32 | The hash of the quorum verification vector
|
||||
| quorumSig | BLSSig | 32 | Recovered threshold signature
|
||||
| sig | BLSSig | 32 | Aggregated BLS signatures from all included commitments
|
||||
| quorumSig | BLSSig | 96 | Recovered threshold signature
|
||||
| sig | BLSSig | 96 | Aggregated BLS signatures from all included commitments
|
||||
|
||||
### 7. Mining phase
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue