Work Prioritization
- Organize contracts/sdk/node repositories
- CI is green for all 3 repos
- Setup Github Actions paid plan for the org @Deleted User
- Deployment scripts for contracts
- Refactor DKG smart contract out of Encryption Oracle
- End-to-end tests with sdk+contracts+node
- PL owned demo site setup with CI
- Automatically update Demo Node network on merges to master
- Speak with Drand ops Mario+Hector
- Get Jonathan access to AWS
- Refactor node code into State Machine pattern
- Determine DKG instance id
- Implement BLS signature round for proving request result
- Needs to match BLS hashing format in EncryptionOracle.submitResult() in order to verify the signed result
- Implement EncryptionOracle.submitResult() verifies the signed re-encryption result
Medusa Encryption Request Consensus Protocol
Note: Treat the encrypted contents as a blob from the smart contract point of view
- 2 rounds
- Design as a state machine
- Message from Request Emitter —> Init
- Determine request type:
- Request is invalid —> Reach consensus on invalid result
- Request is valid —> Reach consensus on re-encrypted result (First BLS round)
- Sign result (Second BLS round)
- Submit to Oracle
DKG + Encryption Request State Machine Diagrams
https://excalidraw.com/#json=H7_5lEixxSVgQYLz2KcR5,cGs1KvV1hy3VwOnPr-fkxw
DKG Smart Contract Diagrams



Threshold Cryptography Notes