diff options
Diffstat (limited to 'src/cz/crcs/ectester/common/ec/CustomECFieldFp.java')
| -rw-r--r-- | src/cz/crcs/ectester/common/ec/CustomECFieldFp.java | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/cz/crcs/ectester/common/ec/CustomECFieldFp.java b/src/cz/crcs/ectester/common/ec/CustomECFieldFp.java new file mode 100644 index 0000000..eafcb72 --- /dev/null +++ b/src/cz/crcs/ectester/common/ec/CustomECFieldFp.java @@ -0,0 +1,43 @@ +package cz.crcs.ectester.common.ec; + +import java.math.BigInteger; +import java.security.spec.ECFieldFp; + +/** + * @author David Hofman + */ +public class CustomECFieldFp extends ECFieldFp { + private BigInteger p; + + public CustomECFieldFp(BigInteger p) { + //feed the constructor of the superclass some default, valid parameter p + //getters will return custom (and possibly invalid) data + super(BigInteger.ONE); + this.p = p; + } + + + @Override + public int getFieldSize() { + return p.bitCount(); + } + + @Override + public BigInteger getP() { + return p; + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } else { + return o instanceof CustomECFieldFp && p.equals(((CustomECFieldFp) o).p); + } + } + + @Override + public int hashCode() { + return p.hashCode(); + } +} |
