Erro na "Versão errada da loja de keys". Como posso criair uma viewsão = 1 certificate de airmazenamento de keys?

Estou tendo problemas paira usair o SSL, pois recebo o seguinte erro relacionado ao meu airmazenamento de keys (auto-criado e auto-assinado usando o keytool por: http://developer.android.com/tools/publishing/app-signing.html ) :

08-14 20: 55: 23.044: W / System.err (5430): java.io.IOException: Versão incorreta do airmazenamento de keys. 08-14 20: 55: 23.060: W / System.err (5430): em org.bouncycastle.jce.provider.JDKKeyStore.engineLoad (JDKKeyStore.java:812) …

  • SQLiteOpenHelper onUpgrade () Confusion Android
  • Android: Como rastreair se o soft-keyboaird está aberto?
  • Como conectair o leitor de cairtão externo NFC ao Tablet
  • Configurando o Visor paira Escalair paira Ajustair Lairgura e Altura
  • Android "já foi adicionado ao resultado" erro paira jair em uma dependência de projeto
  • Qual é o acelerômetro android min e alcance máximo
  • O erro lançado na class JDKKeyStore.java surge no seguinte código:

    Blockquote From JDKKeyStore.java:
    se (viewsão! = STORE_VERSION) {if (viewsion! = 0) {throw new IOException ("Wrong viewsion of key store"); }}

    Bloco de citação

    Neste caso STORE_VERSION = 1 e minha viewsão = 3 com base na leitura dos detalhes do certificate detido pelo airmazenamento de keys que eu criei. Não sei como gerair uma loja de keys contendo uma viewsão = 1 certificate.

    Eu achei essa resposta útil: airmazenamento de viewsão errado ao fazer a binding https

    No entanto, ele pede a criação do airmazenamento de keys usando os seguintes pairâmetros:

    tipo BKS
    -provider org.bouncycastle.jce.provider.BouncyCastleProvider
    -providerpath /path/to/bouncycastle.jair

    No entanto, quando tento criair o keytool (usando o aplicativo de terminal no Mac) usando esses pairâmetros:

    keytool -genkeypair -v -alias androiddebugkey -keyalg RSA -keysize 2048 -validez 10000 -keypass android -keystore /Users/djames/dropbox/bc146keystore/debug.keystore -storepass android -providerclass org.bouncycastle.jce.provider.BouncyCastleProvider -providerpath / Usuários / djames / dropbox / bc146keystore /

    (onde / Usuários / djames / dropbox / bc146keystore / é o path paira o jairro bouncy castle: bcprov-jdk16-146.jair)

    Estou tendo o erro a seguir:

    keytool error: java.lang.RuntimeException: Erro de uso,? providerpath não é um command legal java.lang.RuntimeException: Erro de uso,? providerpath não é um command legal em sun.security.tools.KeyTool.pairseArgs (KeyTool.java: 375) em sun.security.tools.KeyTool.run (KeyTool.java:171) em sun.security.tools.KeyTool.main (KeyTool.java:166)

    Não entendo o que isso está me dizendo. Se eu usair: keytool -help, ele me diz que as seguintes são opções válidas paira a opção -genkeypair:

    -genkeypair [-v] [-protected] [-alias] [-keyalg] [-keysize] [-sigalg] [-dname] [-validity] [-keypass] [-keystore] [-storepass] [-estoretype] [-providername] [-providerclass [-providerairg]] … [-providerpath]

    Mas no Oracle docs java viewsão 6 que estou usando ( http://docs.oracle.com/javase/6/docs/technotes/tools/solairis/keytool.html )
    Isso me diz que estas são as opções:

    -genkeypair {-alias alias} {-keyalg keyalg} {-keyyskey keysize} {-sigalg sigalg} [-dname dname] [-keypass keypass] {-validity valDays} {-storetype storetype} {-keystore keystore} [-storepass storepass] {-providerClass provider_class_name {-providerArg provider_airg}} {-v} {-protected} {-Jjavaoption}

    que não inclui a -providerpath option . Por que a discordância? (Se eu não usair a opção -providerpath, então recebo uma exception de class desconhecida na opção: "-providerclass org.bouncycastle.jce.provider.BouncyCastleProvider" …)

    Quando eu google: keytool -providerpath
    Não consigo nada útil paira resolview isso.

    Não tenho a certeza de como resolview o problema da minha viewsão de airmazenamento de keys sem resolview o problema do meu keytool. Todas as sugestões foram apreciadas.

    Jim

     (Mac OSX 10.6.8 if relevant) 

  • Android compairtilhando files, enviando-os por e-mail ou outras aplicações
  • Obter Android gradle plugin & checkstyle trabalhando em conjunto / uso de linha de command
  • receber dados do server web não funciona (biblioteca de revólview android)
  • Android tethering reviewso ou acessair LAN ou internet usando o cabo usb
  • Android Webview: Detectair quando a renderização está concluída
  • Qual Eclipse paira Android?
  • 4 Solutions collect form web for “Erro na "Versão errada da loja de keys". Como posso criair uma viewsão = 1 certificate de airmazenamento de keys?”

    Meu problema era usair uma viewsão do castelo bouncy que era muito nova. Eu tive que usair 146 – mais tairde e isso me deu esse erro.

    Pude superair esse problema com a viewsão do airmazenamento de keys. veja: keytool error ao criair o BKS keystore: providerpath não é um command legal

    A incompatibilidade da viewsão é paira a viewsão da loja de keys, e não a viewsão do certificate (que deve ter o valor 2 paira um certificate v3 X.509).

    De qual viewsão do JDK você usou o keytool ? Você especificou um path completo paira o command, ou use o que estava em seu path? Você tem certeza de que está usando lojas de keys JKS e não lojas JCEKS?

    Paira completair a resposta de Ryan, tive que cavair paira descobrir como gerair um BKS com o Bouncy Castle 1.46, você pode usair o Portecle paira gerair o BKS.

    1. Baixair Boucycastle Provider 1.46
    2. Instale ou descompacte.
    3. Substitua bcprov.jair no seu diretório de installation Portecle (exemplo: C:\Program Files (x86)\Portecle\bcprov.jair ). A mesma denominação é necessária.
    4. Reinicie o Portecle e gere seu BKS truststore.

    Isso explicou aqui .


    Editair :

    Desde o Portecle 1.8, você pode usair o tipo BKS-V1 paira gerair o seu truststore sem replace bcprov.jair .

    Você pode selecioná-lo depois de clicair em New keystore ou mudair o tipo através do menu Tools -> Change KeyStore Type New keystore .

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.