FRODO Version 2.19.1
An open-source framework for Distributed Constraint Optimization (DCOP)
Loading...
Searching...
No Matches
frodo2.solutionSpaces.crypto.CryptoScheme< C extends Serializable, E extends Serializable, K extends CryptoScheme.PublicKeyShare > Interface Template Reference

Defines a way to encrypt and decrypt information. More...

Inheritance diagram for frodo2.solutionSpaces.crypto.CryptoScheme< C extends Serializable, E extends Serializable, K extends CryptoScheme.PublicKeyShare >:

Classes

interface  PublicKeyShare
 One share of the overall public key. More...

Public Member Functions

newPublicKeyShare ()
void addPublicKeyShare (K share)
 Records another share of the public key.
encrypt (C cleartext)
 Encrypts a cleartext.
encrypt (C cleartext, C bound)
 Encrypts a cleartext.
reencrypt (E cyphertext)
 Re-encrypts a cyphertext.
partialDecrypt (E initialCypherText, E partialDecryption)
 Partially decrypts a cyphertext.
decrypt (E initialCypherText, E partialDecryption)
 Decrypts a cyphertext.

Detailed Description

Defines a way to encrypt and decrypt information.

Author
Thomas Leaute
Parameters
<C>the type of cleartext information
<E>the type of encrypted information
<K>the class used for public key shares

Member Function Documentation

◆ addPublicKeyShare()

void frodo2.solutionSpaces.crypto.CryptoScheme< C extends Serializable, E extends Serializable, K extends CryptoScheme.PublicKeyShare >.addPublicKeyShare ( K share)

Records another share of the public key.

Parameters
shareanother share of the public key

◆ decrypt()

C frodo2.solutionSpaces.crypto.CryptoScheme< C extends Serializable, E extends Serializable, K extends CryptoScheme.PublicKeyShare >.decrypt ( E initialCypherText,
E partialDecryption )

Decrypts a cyphertext.

Parameters
initialCypherTextthe initial cyphertext
partialDecryptionthe partially decrypted cyphertext (null if this is the first decryption)
Returns
a decryption of the cyphertext

◆ encrypt() [1/2]

E frodo2.solutionSpaces.crypto.CryptoScheme< C extends Serializable, E extends Serializable, K extends CryptoScheme.PublicKeyShare >.encrypt ( C cleartext)

Encrypts a cleartext.

Parameters
cleartextthe cleartext
Returns
an encryption of the cleartext

Referenced by frodo2.algorithms.dpop.privacy.SecureRerooting< C extends Addable< C >, E extends AddableLimited< C, E >.VariableInfo.createVector().

◆ encrypt() [2/2]

E frodo2.solutionSpaces.crypto.CryptoScheme< C extends Serializable, E extends Serializable, K extends CryptoScheme.PublicKeyShare >.encrypt ( C cleartext,
C bound )

Encrypts a cleartext.

Parameters
cleartextthe cleartext
boundbound used to limit the number of values allowed for a cleartext
Returns
an encryption of the cleartext

◆ newPublicKeyShare()

K frodo2.solutionSpaces.crypto.CryptoScheme< C extends Serializable, E extends Serializable, K extends CryptoScheme.PublicKeyShare >.newPublicKeyShare ( )
Returns
a new share of the public key

Implemented in frodo2.algorithms.dpop.privacy.test.FakeCryptoScheme.

◆ partialDecrypt()

E frodo2.solutionSpaces.crypto.CryptoScheme< C extends Serializable, E extends Serializable, K extends CryptoScheme.PublicKeyShare >.partialDecrypt ( E initialCypherText,
E partialDecryption )

Partially decrypts a cyphertext.

Parameters
initialCypherTextthe initial cyphertext
partialDecryptionthe partially decrypted cyphertext (null if this is the first decryption)
Returns
a partial decryption of the cyphertext

◆ reencrypt()

E frodo2.solutionSpaces.crypto.CryptoScheme< C extends Serializable, E extends Serializable, K extends CryptoScheme.PublicKeyShare >.reencrypt ( E cyphertext)

Re-encrypts a cyphertext.

Parameters
cyphertextthe cyphertext
Returns
a re-encryption of the cyphertext
Warning
Re-encrypting with the same key as before must not mean we then need to decrypt twice!

The documentation for this interface was generated from the following file: