Crate nube[][src]

Expand description

nube is a Rust implementation of a proxy re-encryption algorithm with distributed key generation. See notes/dkg.lyx for the scheme descriptioin.

Structs

An encapsulated symmetric key used to encrypt the message. Can be distributed publicly.

A re-encrypted fragment of Encryptor’s symmetric key.

A key that can be used for message encryption. Can be added together producing a multi-party key. (Note that the policy Author will have to use the same parties to generate KeySliver objects).

One of the key fragments distributed to Proxies for re-encryption.

A structure encapsulating a KeyMaker’s state.

A part of a KeyFrag containing the information generated by one of the parties (KeyMakers).

Message recipient’s public key.

Message recipient’s secret key.

The symmetric key that Encryptor can used to encrypt the message. Needs to be kept secret by Encryptor.

Functions

Decrypt the re-encrypted message using threshold out of shares capsule frags.

Generate a symmetric key for message encryption and encapsulate it for distribution to Proxies.

Generates key frags out of key slivers produced by KeyMaker instances.

Generates a capsule fragment based on the encapsulated Encryptor’s key (created in encrypt) and key frags (created in generate_kfrags).