Serialized Form


Package paillierp

Class paillierp.PartialDecryption extends java.lang.Object implements Serializable

serialVersionUID: -6668831686028175205L

Serialized Fields

decryption

java.math.BigInteger decryption
The partial decryption


id

int id
The ID number of the decryption server who decrypted this.


Package paillierp.key

Class paillierp.key.PaillierKey extends java.lang.Object implements Serializable

serialVersionUID: 6257110251194073448L

Serialized Fields

n

java.math.BigInteger n
The modulus n, an RSA number.


ns

java.math.BigInteger ns
The cached value of ns.


nSPlusOne

java.math.BigInteger nSPlusOne
Cached value of ns+1.


nPlusOne

java.math.BigInteger nPlusOne
Cached (n+1) to help encryption. This is our value g, always set to n+1 for simplicity.


rnd

java.util.Random rnd
Random number generator.


k

int k
Bit size of n.

Class paillierp.key.PaillierPrivateKey extends PaillierKey implements Serializable

serialVersionUID: 5852433647485331139L

Serialized Fields

d

java.math.BigInteger d
Secret key; d mod nZ*n and d = 0 mod λ, where λ is least common multiple of p-1 and q-1.


dInvs

java.math.BigInteger dInvs
The inverse of d mod ns. Used in the final step of decryption.

Class paillierp.key.PaillierPrivateThresholdKey extends PaillierThresholdKey implements Serializable

serialVersionUID: 5024312630277081335L

Serialized Fields

si

java.math.BigInteger si
The secret share. This is unique among the L decryption servers.


id

int id
The server's id in the range of [1, l]. This identifies which verification key vi[id] to use.

Class paillierp.key.PaillierThresholdKey extends PaillierKey implements Serializable

serialVersionUID: -7453847065116591940L

Serialized Fields

v

java.math.BigInteger v
Generates a cyclic group of squares in Z*n2.


vi

java.math.BigInteger[] vi
Verification key for each of the l decryption servers. In essence, vi=vΔsi.


l

int l
Number of decryption servers L.


delta

java.math.BigInteger delta
Δ=L!; this is used often in decryption algorithms.


w

int w
The minimum of decryption servers needed to make a correct decryption.


combineSharesConstant

java.math.BigInteger combineSharesConstant
The cached value of (4Δ2)-1 mod ns


Package paillierp.zkp

Class paillierp.zkp.DecryptionZKP extends ZKP implements Serializable

serialVersionUID: -4912198730705411591L

Serialized Fields

e

java.math.BigInteger e
The hash of the correctness.


z

java.math.BigInteger z
The value necessary to check the correctness of this decryption.


c

java.math.BigInteger c
The original ciphertext.


c4

java.math.BigInteger c4
The ciphtertext to the fourth power.


ci

PartialDecryption ci
This share's decryption of c. That is, ci = csi.


ci2

java.math.BigInteger ci2
The share's decryption of c, but squared, for the protocol.


nSPlusOne

java.math.BigInteger nSPlusOne
The public key value. Needed for verifying values.


v

java.math.BigInteger v
The overall verification number. Needed for verifying values.


vi

java.math.BigInteger vi
The share's verification number. Needed for verifying values.

Class paillierp.zkp.EncryptionZKP extends ZKP implements Serializable

serialVersionUID: 6683900023178557008L

Serialized Fields

nSPlusOne

java.math.BigInteger nSPlusOne

n

java.math.BigInteger n

z

java.math.BigInteger z
usegt mod n2 for hash e and g=n+1.


w

java.math.BigInteger w
The value x+eα for the plaintext α and random x.


b

java.math.BigInteger b
gxun mod n2 for random x, u.


c

java.math.BigInteger c
Ciphertext E(α, r).

Class paillierp.zkp.MultiplicationZKP extends ZKP implements Serializable

serialVersionUID: -4809038851300738821L

Serialized Fields

ca

java.math.BigInteger ca
The original encryption E(a).


c

java.math.BigInteger c
A random encryption of α.


d

java.math.BigInteger d
A random encryption of E(a&alpha).


a

java.math.BigInteger a
A random encryption of E(xa) for chosen x.


b

java.math.BigInteger b
A random encryption of x.


w

java.math.BigInteger w
x+eα mod n


y

java.math.BigInteger y
vCatγe mod n2


z

java.math.BigInteger z
usegt mod n2


n

java.math.BigInteger n
The public key modulo.


nSPlusOne

java.math.BigInteger nSPlusOne
The public key modulo to the s+1 power.

Class paillierp.zkp.ZKP extends java.lang.Object implements Serializable

serialVersionUID: -3342470520881661778L

Serialized Fields

hashFunction

java.security.MessageDigest hashFunction
Instance of a hash function.