Skip to content

/iap sample fails approximately 70% #687

@DazWilkin

Description

@DazWilkin

In which file did you encounter the issue?

"Cloud Identity-Aware Proxy Java Samples"
/iap

Did you change the file? If so, how?

no changes

Describe the issue

Test fails significantly (~70%) but I see no evident pattern.

The error is always:

testGenerateAndVerifyIapRequestIsSuccessful(com.example.iap.BuildAndVerifyIapRequestIT): The Token's Signature resulted invalid when verified using the Algorithm: SHA256withECDSA

I will add some logging to the sample tomorrow to see whether I can find any correlation.

I ran a simple repetition of the documented test:

for t in {1..100}; do
  mvn -Dtest=com.example.iap.BuildAndVerifyIapRequestIT verify \
  | egrep "Tests run: [0-9], Failures: [0-9], Errors: [0-9], Skipped: [0-9], Time elapsed: [0-9]*.[0-9]* sec"; \
  sleep 60s; \
done
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.419 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.276 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.231 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.325 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.451 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.363 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.176 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.21 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.262 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.295 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.275 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.431 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.212 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.284 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.248 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.215 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.221 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.249 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.179 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.212 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.27 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.262 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.24 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.21 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.196 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.193 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.104 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.346 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.316 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.248 sec
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.265 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.233 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.28 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.269 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.161 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.274 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.271 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.2 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.226 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.313 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.254 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.336 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.093 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.171 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.229 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.3 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.161 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.254 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.253 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.909 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.347 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.294 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.466 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.228 sec
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.34 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.215 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.144 sec
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.244 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.223 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.3 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.282 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.21 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.163 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.225 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.199 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.259 sec
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.305 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.213 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.27 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.373 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.981 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.972 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.046 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.006 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.03 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.304 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.308 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.267 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.227 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.172 sec
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.291 sec
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.144 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.332 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.234 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.202 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.352 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.347 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.192 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.235 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.34 sec
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.287 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.297 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.224 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.157 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.245 sec
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.388 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.373 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.446 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.443 sec <<< FAILURE!
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.265 sec <<< FAILURE!
-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running com.example.iap.BuildAndVerifyIapRequestIT
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.185 sec <<< FAILURE!
testGenerateAndVerifyIapRequestIsSuccessful(com.example.iap.BuildAndVerifyIapRequestIT)  Time elapsed: 0.974 sec  <<< ERROR!
com.auth0.jwt.exceptions.SignatureVerificationException: The Token's Signature resulted invalid when verified using the Algorithm: SHA256withECDSA
	at com.auth0.jwt.algorithms.ECDSAAlgorithm.verify(ECDSAAlgorithm.java:56)
	at com.auth0.jwt.JWTVerifier.verify(JWTVerifier.java:354)
	at com.example.iap.VerifyIapRequestHeader.verifyJWTToken(VerifyIapRequestHeader.java:131)
	at com.example.iap.BuildAndVerifyIapRequestIT.testGenerateAndVerifyIapRequestIsSuccessful(BuildAndVerifyIapRequestIT.java:73)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: java.security.SignatureException: Could not verify signature
	at sun.security.ec.ECDSASignature.engineVerify(ECDSASignature.java:320)
	at java.security.Signature$Delegate.engineVerify(Signature.java:1219)
	at java.security.Signature.verify(Signature.java:652)
	at com.auth0.jwt.algorithms.CryptoHelper.verifySignatureFor(CryptoHelper.java:23)
	at com.auth0.jwt.algorithms.ECDSAAlgorithm.verify(ECDSAAlgorithm.java:50)
	... 33 more
Caused by: java.security.SignatureException: Could not decode signature
	at sun.security.ec.ECDSASignature.decodeSignature(ECDSASignature.java:389)
	at sun.security.ec.ECDSASignature.engineVerify(ECDSASignature.java:317)
	... 37 more
Caused by: java.security.SignatureException: Invalid signature encoding
	at sun.security.ec.ECDSASignature.decodeSignature(ECDSASignature.java:384)
	... 38 more


Results :

Tests in error: 
  testGenerateAndVerifyIapRequestIsSuccessful(com.example.iap.BuildAndVerifyIapRequestIT): The Token's Signature resulted invalid when verified using the Algorithm: SHA256withECDSA

Tests run: 2, Failures: 0, Errors: 1, Skipped: 0

Metadata

Metadata

Assignees

Labels

type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions