User guide
RIM Cryptographic API
19
The RIM® Cryptographic API that is on a BlackBerry® device and in the BlackBerry® Java® Development Environment consists
of a Java interface that includes an encryption algorithm, a key agreement scheme, a signature scheme algorithm, a key generation
algorithm, a message authentication code, cipher suites, a message digest, and a hash code.
A developer can use the BlackBerry JDE to access the RIM Cryptographic API to create an application that can run on the
BlackBerry device. The developer is not required to change or access the encryption code directly because all calls to the native
C++ encryption code are sent through the Java code.
Research In Motion uses code signing to authorize and authenticate an application and permit it to run on the BlackBerry device.
Code signing is also used to control the ability of the application to access the RIM Cryptographic API.
Related topics
Advanced Security SD cards, 96
Cryptographic algorithms and cryptographic codes that the RIM
Cryptographic API supports
Symmetric block algorithms that the RIM Cryptographic API supports
Symmetric block algorithms use PKCS #5 for padding. The RIM® Cryptographic API supports the CBC, CFB, ECB, OFB, and X
modes for all algorithms. The RIM Cryptographic API implements the modes separately from the symmetric block algorithms.
Algorithm Key length (bits)
AES 128, 192, and 256
CAST5 128
DES 56
RC2 8 to 1024
RC5® 0 to 2040
Skipjack 80
Triple DES 112 and 168
Stream encryption algorithms that the RIM Cryptographic API supports
The RIM® Cryptographic API supports the ARC4 algorithm, with an unlimited key length, as the symmetric stream encryption
algorithm.
Security Technical Overview
RIM Cryptographic API
120