SSL рукопожатие с Apple Push Notification Server через Java

Здравствуйте. Я пытаюсь отправить push-сообщение на устройство с помощью Java. Но у меня уже возникают проблемы при установлении соединения ssl. Вот код на данный момент:

        KeyStore keyStore = KeyStore.getInstance("PKCS12");

        InputStream key = getClass().getResourceAsStream("apns-dev-key.p12");
        char[] c = key.toString().toCharArray();

        keyStore.load(getClass().getResourceAsStream("apns-dev-cert.p12"), c);
        KeyManagerFactory keyMgrFactory = KeyManagerFactory.getInstance("SunX509");
        keyMgrFactory.init(keyStore, c);

        SSLContext sslContext = SSLContext.getInstance("TLS");
        sslContext.init(keyMgrFactory.getKeyManagers(), null, null);
        SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory();

        SSLSocket sslSocket = (SSLSocket) sslSocketFactory.createSocket(host, port);
        String[] cipherSuites = sslSocket.getSupportedCipherSuites();
        sslSocket.setEnabledCipherSuites(cipherSuites);
        sslSocket.startHandshake();

Я получаю ошибку:

java.io.IOException: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: Given final block not properly padded

Я предполагаю, что есть какая-то проблема с файлом apns-dev-key.p12. Есть намеки?

Код выше взят из:http://undermypalapa.wordpress.com/2009/08/23/apple-push-notification-service-java/

Ответы на вопрос(2)

Ваш ответ на вопрос