Replies: 2 comments 2 replies
-
Hi X-Ryl669,
tlock is indeed using IBE. The public key however the hash of the distributed randomness round number. The round number can be figured out be calculating the number of rounds that will have passed since the genesis of the network at the time you wish to decrypt, e.g. if the network genesis were midnight at 2022.01.01 UTC and you wished to encrypt something for midnight on 2022.01.02, and the network frequency was every 30 seconds, you’d use the hash of round number 2880.
the private key to decrypt the message is the signature over the randomness that will be released by the network at that round in the future - this is possible due to the properties in IBE.
Following from the last question, the distributed randomness network is used to emit the random numbers and signatures that are used to decrypt timelock encrypted ciphertexts
Nodes on the network emit encrypted shares of the randomness every epoch that other nodes use to construct the randomness beacon. We‘ll be releasing a blog post on timelock encryption in the next few weeks, but hopefully this will give you enough food for thought in the meantime! |
Beta Was this translation helpful? Give feedback.
-
Thanks for your answer! So, if I understand correctly, you encrypt using a public key "H(random generator's round number)" and the private key isn't known yet, since it'll only be known when the network has reached such round number. Yet, I still don't understand the security here. The PKG in IBE system has a master key which can decrypt/encrypt anything (since it can generate any private key so obviously the key for H(round number)) I understand that the drand network should be quite safe if the number of node is high enough with BLS signature scheme with the threshold, but it's not running the IBE, right ? Who's running the IBE and how do you guarantee the master key isn't compromised ? |
Beta Was this translation helpful? Give feedback.
-
I'm probably misunderstanding the protocol, so please correct my assumptions below if I'm wrong:
Beta Was this translation helpful? Give feedback.
All reactions