We are thrilled to announce a significant enhancement to our distributed key generation (DKG) tooling – the introduction of a new feature, the Signing Manager. The Signing Manager is a robust system designed to manage and expedite the threshold-signing protocols over cross-chain messages. The Signing Manager is part of a bigger system, the DKG, that we discussed in a prior article.
To understand the benefits, imagine the Signing Manager as a diligent worker in an office who's responsible for ensuring that important documents, in our case digital messages, are properly signed and delivered.
The system consists of two primary components: The Signing Manager and the Job Manager.
The Signing Manager plays the role of a 'postman.' It receives important notifications and signed DKG messages, checks for any unsigned 'documents,' and passes them on to the Job Manager. An integral part of this process is the generation of a unique 'stamp' or seed for each message. This seed is produced using a cryptographic function (
keccak256) and is critical for the secure and unique identification of each message.
On the other hand, the Job Manager could be likened to a diligent 'clerk.' It routinely checks and sorts 'documents' (jobs) into different buckets (active and enqueued sets) every 500ms, transitions jobs between these sets, and initiates the asynchronous protocols for signing these documents.
One of the key enhancements is the Job Manager's ability to handle messages for both active and enqueued protocols. Just like a clerk ensuring that documents are sent to the right departments, the Job Manager makes sure these 'documents' (messages) are delivered to the appropriate protocols. If immediate delivery isn't possible, the messages are enqueued for future delivery, maintaining a smooth workflow.
This paints a picture of our new Signing Manager module - a highly efficient, reliable worker in the 'office' of our DKG tooling. This worker ensures every 'document' (message) is properly signed and delivered, thereby maintaining the overall security and smooth operation of the blockchain.
To see the technical details, and our fully open-source implementation, visit our Github. Your insights are useful for improving these tools and the overall welfare of the blockchain ecosystem.