Controlled APIs and Code SigningResearch In Motion (RIM) must track the use of some sensitive application program interfaces (APIs) in the BlackBerry® Java Development Environment (JDE) for security and export control reasons. In the API reference documentation, sensitive classes or methods are indicated by a lock icon or are noted as "signed". If you use these controlled classes or methods in your applications, your application must be signed using a key, or signature, provided by RIM before you can load the application .cod files onto the BlackBerry device.
Note: While the core set of controlled APIs is covered by the RIM API signature, certain cryptography classes related to public/private key cryptography contain technology from Certicom. Use of these classes must be registered and licensed from Certicom directly, and are not covered under RIM's registration process. For more information on the registration and use of these classes please refer to the Certicom Cryptography Classes section.
RIM Controlled APIs
RIM Controlled APIs are split into three categories: Runtime APIs, BlackBerry Application APIs, and BlackBerry Cryptography APIs. For a complete list of RIM controlled APIs please refer to the API reference included with the BlackBerry JDE download.
Certain other functionality, such as the ability to execute on startup also requires developers to sign their applications. Additional details on controlled APIs and the signing process can be found in the BlackBerry Developer Guide, Volume 2 - Advanced Topics.
Note: Registration and signing of applications is only required to run an application on a BlackBerry device. Signing of applications is not required to run applications using the BlackBerry device simulator.
How to register RIM controlled APIs
To register for access to the BlackBerry runtime, application and cryptography APIs, you will need to fill out the web form. Once registered, you will be sent a set of keys via email that will allow you to sign your applications using the signature tool included with the BlackBerry JDE. An administration fee of $20.00 (USD)
will be charged to a valid credit card to complete the registration process.
Note: Typically, keys are sent via email within 48 hours of submitting the necessary forms, but occasionally the process can take up to 10 business days. If you have not received your keys within 10 business days of submitting the registration form, please contact BlackBerry support at 1-877-255-2377.
Code signing registration is solely for purposes of tracking usage of these particular APIs in third party application development, and does not in any way indicate RIM's approval or endorsement of your application or your use of the APIs. You are solely responsible for the implementation and use of the application or your use of the APIs in your application(s), and you acknowledge, by submitting your registration, that RIM shall have no liability to you or any third party for issues arising from your application(s). All APIs are subject to the terms and conditions of the RIM software license agreement that you have agreed to in relation to your use of the BlackBerry JDE, as amended from time to time. All information that you provide on your registration form must be accurate and complete, and by submitting your registration, you agree to promptly notify RIM of any changes to the information that you provide.
Download Code Signing Registration Form (PDF)
For more information on code signing and controlled APIs, please refer to the BlackBerry Developer Guide, Volume 2, Advanced Topics.