Por que keyStore.aliases () está vazio para pkcs12

Eu estou tentando carregar o arquivo PrivateKey de .p12 usando este código:

    Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
    java.security.KeyStore keyStore = KeyStore.getInstance("PKCS12", "BC");
    keyStore.load(new FileInputStream(new File("my_domain_com.p12")), password);
    keyStore.aliases().hasMoreElements(); //this is false
    java.security.PrivateKey privateKey = (PrivateKey) keyStore.getKey("SomeAlias", password);  

Estou tentando encontrar o motivo pelo qual não há aliases. Mas eu não sou capaz de encontrar. O que pode ser motivo para o alias vazio? Eu quero obter chave privada e descriptografar algum texto usando essa chave. Existe outro apporach?

Eu também tenho arquivo .cer, mas não tenho certeza se devo usar juntos.

questionAnswers(1)

yourAnswerToTheQuestion