diff options
Diffstat (limited to 'libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/params/DSAParameters.java')
-rw-r--r-- | libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/params/DSAParameters.java | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/params/DSAParameters.java b/libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/params/DSAParameters.java new file mode 100644 index 000000000..b1baf0673 --- /dev/null +++ b/libraries/spongycastle/core/src/main/java/org/spongycastle/crypto/params/DSAParameters.java @@ -0,0 +1,74 @@ +package org.spongycastle.crypto.params; + +import java.math.BigInteger; + +import org.spongycastle.crypto.CipherParameters; + +public class DSAParameters + implements CipherParameters +{ + private BigInteger g; + private BigInteger q; + private BigInteger p; + private DSAValidationParameters validation; + + public DSAParameters( + BigInteger p, + BigInteger q, + BigInteger g) + { + this.g = g; + this.p = p; + this.q = q; + } + + public DSAParameters( + BigInteger p, + BigInteger q, + BigInteger g, + DSAValidationParameters params) + { + this.g = g; + this.p = p; + this.q = q; + this.validation = params; + } + + public BigInteger getP() + { + return p; + } + + public BigInteger getQ() + { + return q; + } + + public BigInteger getG() + { + return g; + } + + public DSAValidationParameters getValidationParameters() + { + return validation; + } + + public boolean equals( + Object obj) + { + if (!(obj instanceof DSAParameters)) + { + return false; + } + + DSAParameters pm = (DSAParameters)obj; + + return (pm.getP().equals(p) && pm.getQ().equals(q) && pm.getG().equals(g)); + } + + public int hashCode() + { + return getP().hashCode() ^ getQ().hashCode() ^ getG().hashCode(); + } +} |