O jarsigner -verify funciona no Java 6, mas não no Java 7

Eu tenho batido minha cabeça contra isso por alguns dias e estou completamente perplexo. Aqui está o resumo:

Eu tenho um projeto de plugin Eclipse usando Tycho para construir via Maven 3Dentro do Maven eu tenho o plugin maven-jarsigner configurado para assinar jars usando meu keystore (veja abaixo os detalhes do keystore)Eu tenho um certificado de assinatura de código assinado por Thawte no meu keystore

Eu posso pegar qualquer arquivo jar assinado do target / * e executar 'jarsigner -verify' nele. Isto é o que acontece:

#java 6 on a VM
vagrant@test2:/vagrant/com.example.plugins.eclipse/target$ jarsigner -verify com.example.eclipse-0.1.3-SNAPSHOT.jar
jar verified.

Próximo:

#java 7 on a completely different vm
vagrant@test1:/vagrant$ jarsigner -verify com.example.eclipse-0.1.3-SNAPSHOT.jar
jar verified.

Warning:
This jar contains entries whose certificate chain is not validated.

Re-run with the -verbose and -certs options for more details.

Eu tomei cuidado para não usar uma máquina com ambos Java6 e Java7 instalado, então não éesse problema

Eu também não acredito que seja baseado em algoritmo, como descrito emesse problema, já que posso assinar o projeto usando o Java 6 ou o Java 7 esempre verifica em Java6 eNunca verifica no Java7, independentemente de qual ambiente eu assinei os jars com.

Aqui está a saída dekeytool -list

Keystore type: JKS
Keystore provider: SUN

Your keystore contains 3 entries

root, Aug 11, 2013, trustedCertEntry,
Certificate fingerprint (SHA1): 91:C6:D6:EE:3E:8A:C8:63:84:E5:48:C2:99:29:5C:75:6C:81:7B:81
intermediate, Aug 11, 2013, trustedCertEntry,

Eu tenho que acreditar que este é um problema na cadeia de certificados porque eu posso verificar o jar usando o seguinte comando no Java 7:

jarsigner -verify -keystore keystore com.example.eclipse-0.1.3-SNAPSHOT.jar

Obviamente, não posso ter todos os usuários do meu plugin usando meu arquivo de armazenamento de chaves, então isso não é uma solução. Isso, no entanto, reforça que eu tenho um problema de cadeia de certificação no Java 7. Pensamentos?

questionAnswers(3)

yourAnswerToTheQuestion