public void testVerify_wrongAuthority() throws Exception { storeSignerInfo(ImmutableList.of(CertConstantUtil.SERVER_PUB_CERT, CertConstantUtil.INTERMEDIATE_PUB_CERT)); ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(deBase64(SIGNER_ID))) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); try { verifier.verify(MESSAGE, signature, "some_other_authority.com"); fail("expected exception, but didn't get it"); } catch (SignatureException e) { // expected } }
public void testVerify() throws Exception { storeSignerInfo(ImmutableList.of(CertConstantUtil.SERVER_PUB_CERT, CertConstantUtil.INTERMEDIATE_PUB_CERT)); ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(deBase64(SIGNER_ID))) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); verifier.verify(MESSAGE, signature, AUTHORITY); }
public void testVerify_signerNotInStore() throws Exception { ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(deBase64(SIGNER_ID))) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); try { verifier.verify(MESSAGE, signature, AUTHORITY); fail("expected exception, but didn't get it"); } catch (UnknownSignerException e) { // expected } }
public void testVerify() throws Exception { storeSignerInfo(ImmutableList.of(CertConstantUtil.SERVER_PUB_CERT, CertConstantUtil.INTERMEDIATE_PUB_CERT)); ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(deBase64(SIGNER_ID))) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); verifier.verify(MESSAGE, signature, AUTHORITY); }
public void testVerify_signerNotInStore() throws Exception { ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(deBase64(SIGNER_ID))) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); try { verifier.verify(MESSAGE, signature, AUTHORITY); fail("expected exception, but didn't get it"); } catch (UnknownSignerException e) { // expected } }
public void testVerify_tamperedPayload() throws Exception { storeSignerInfo(ImmutableList.of(CertConstantUtil.SERVER_PUB_CERT, CertConstantUtil.INTERMEDIATE_PUB_CERT)); ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(deBase64(SIGNER_ID))) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); try { verifier.verify("hullo".getBytes(), signature, AUTHORITY); fail("expected exception, but didn't get it"); } catch (SignatureException e) { // expected } }
public void testSpeed() throws Exception { storeSignerInfo(ImmutableList.of(CertConstantUtil.SERVER_PUB_CERT, CertConstantUtil.INTERMEDIATE_PUB_CERT)); ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(deBase64(SIGNER_ID))) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); long start = System.currentTimeMillis(); long ops = 0; while (System.currentTimeMillis() < start + 1000L) { verifier.verify(MESSAGE, signature, AUTHORITY); ++ops; } long stop = System.currentTimeMillis(); System.out.println(String.format("%.2f ms per verification", (stop-start)/ (double)ops)); }
public void testVerify_tamperedPayload() throws Exception { storeSignerInfo(ImmutableList.of(CertConstantUtil.SERVER_PUB_CERT, CertConstantUtil.INTERMEDIATE_PUB_CERT)); ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(deBase64(SIGNER_ID))) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); try { verifier.verify("hullo".getBytes(), signature, AUTHORITY); fail("expected exception, but didn't get it"); } catch (SignatureException e) { // expected } }
public void testSpeed() throws Exception { storeSignerInfo(ImmutableList.of(CertConstantUtil.SERVER_PUB_CERT, CertConstantUtil.INTERMEDIATE_PUB_CERT)); ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(deBase64(SIGNER_ID))) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); long start = System.currentTimeMillis(); long ops = 0; while (System.currentTimeMillis() < start + 1000L) { verifier.verify(MESSAGE, signature, AUTHORITY); ++ops; } long stop = System.currentTimeMillis(); System.out.println(String.format("%.2f ms per verification", (stop-start)/ (double)ops)); }
public void testVerify_wrongAuthority() throws Exception { storeSignerInfo(ImmutableList.of(CertConstantUtil.SERVER_PUB_CERT, CertConstantUtil.INTERMEDIATE_PUB_CERT)); ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(deBase64(SIGNER_ID))) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); try { verifier.verify(MESSAGE, signature, "some_other_authority.com"); fail("expected exception, but didn't get it"); } catch (SignatureException e) { // expected } }
public void testVerify_badCertChain() throws Exception { byte[] id = storeSignerInfo(ImmutableList.of( CertConstantUtil.SERVER_PUB_CERT)); // missing the intermediate cert ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(id)) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); try { verifier.verify(MESSAGE, signature, AUTHORITY); fail("expected exception, but didn't get it"); } catch (SignatureException e) { // expected } }
public void testVerify_badCertChain() throws Exception { byte[] id = storeSignerInfo(ImmutableList.of( CertConstantUtil.SERVER_PUB_CERT)); // missing the intermediate cert ProtocolSignature signature = ProtocolSignature.newBuilder() .setSignatureBytes(ByteString.copyFrom(deBase64(SIGNATURE))) .setSignerId(ByteString.copyFrom(id)) .setSignatureAlgorithm(SignatureAlgorithm.SHA1_RSA) .build(); try { verifier.verify(MESSAGE, signature, AUTHORITY); fail("expected exception, but didn't get it"); } catch (SignatureException e) { // expected } }