- First you have to download the certificate file manually. To do this open your Firefox browser and type the URL which enables SSL. Then you can see a Padlock bottom of the browser.
- Double click the pad clock. then you can see the certificate window. Click View Certificate button. In the certificate viewer window select Details Tab and select Export button.
- Then Save your Certificate as X.509 (PEM) format. You will get this kind of file.
- Open eclipse and Create new Blackberry Project. Copy Certificate file in to the same package that class created. (In here I'm writing my code in Main.java class thus i copied the certificate file in to Main package.)
- Following shows code sample
public Certificate ReadFile(){ try {Class classs = Class.forName("com.ironone.main.Main");InputStream is = classs.getResourceAsStream("/DigiCertEVRootCA.crt");// Certificate File Name :DigiCertEVRootCA.crtbyte[] data = new byte[is.available()];
is.read(data, 0, is.available());
Certificate c =CertificateUtilities.readCertificateFile(null, data);
// Import net.rim.device.api.crypto.certificate.CertificateUtilitiesreturn c; }
catch (Exception ioe) {return null; }
}
public void addCertToDeviceKeyStore (Certificate certificate)
{KeyStore keyStore = DeviceKeyStore.getInstance();
//check if certificate is not already in the DeviceKeyStoreif (!keyStore.isMember(certificate)){try{String SFN = certificate.getSubjectFriendlyName();
CertificateStatus CS=certificate.getStatus();
keyStore.set(null,SFN ,certificate,CS , keyStore.getTicket());
}
catch (Exception e){ } }
}
public static void main(String args[])
{ Main TheMain = new Main();TheMain.enterEventDispatcher();
}
public Main(){addCertToDeviceKeyStore(ReadFile());
}
Comments
i was searching for the same thing from the past one week.Thanks for the post.Can you please tell me about the resources from where you get all these info.
actually i didn't found any specific source, doing many researches and referring blackberry forum i wrote this code.
I would like to add a certificate to use in a TLS connection, but even if I add it to the DeviceKeyStore, the device pops up a dialog that the certificate is not trusted. Is it possible to add it somewhere else to avoid this problem?
Thanks dude, I was exactly looking for this. You saved my many precious hours.
@ Thanks All ...
Let me know if you need anything over at the bb supportforums :)