public boolean verifySignature(byte[] message, byte[] signature) { return gmssSigner.verifySignature(message, signature); }
public void init(boolean forSigning, CipherParameters param) { if (forSigning) { if (param instanceof ParametersWithRandom) { ParametersWithRandom rParam = (ParametersWithRandom)param; // XXX random needed? this.random = rParam.getRandom(); this.key = (GMSSPrivateKeyParameters)rParam.getParameters(); initSign(); } else { this.random = new SecureRandom(); this.key = (GMSSPrivateKeyParameters)param; initSign(); } } else { this.key = (GMSSPublicKeyParameters)param; initVerify(); } }
public byte[] generateSignature(byte[] message) { if (key == null) { throw new IllegalStateException("signing key no longer usable"); } byte[] sig = gmssSigner.generateSignature(message); key = key.nextKey(); return sig; }
public GMSSStateAwareSigner(final Digest digest) { if (!(digest instanceof Memoable)) { throw new IllegalArgumentException("digest must implement Memoable"); } final Memoable dig = ((Memoable)digest).copy(); gmssSigner = new GMSSSigner(new GMSSDigestProvider() { public Digest get() { return (Digest)dig.copy(); } }); }
public void init(boolean forSigning, CipherParameters param) { if (forSigning) { if (param instanceof ParametersWithRandom) { ParametersWithRandom rParam = (ParametersWithRandom)param; this.key = (GMSSPrivateKeyParameters)rParam.getParameters(); } else { this.key = (GMSSPrivateKeyParameters)param; } } gmssSigner.init(forSigning, param); }
public void init(boolean forSigning, CipherParameters param) { if (forSigning) { if (param instanceof ParametersWithRandom) { ParametersWithRandom rParam = (ParametersWithRandom)param; // XXX random needed? this.random = rParam.getRandom(); this.key = (GMSSPrivateKeyParameters)rParam.getParameters(); initSign(); } else { this.random = CryptoServicesRegistrar.getSecureRandom(); this.key = (GMSSPrivateKeyParameters)param; initSign(); } } else { this.key = (GMSSPublicKeyParameters)param; initVerify(); } }