User guide
BlackBerry Smart Card Reader Security 24
The connection key establishment protocol is designed to use SPEKE to prevent a man-in-the-middle attack
through the use of the secure pairing key.
Offline attack
An offline attack occurs when the attacker attempts to send X = xP, instead of xS to the BlackBerry Smart Card
Reader. An attacker might attempt this because the attacker does not know the secure pairing key. The initial
key establishment protocol is designed so that the BlackBerry Smart Card Reader replies with Y=xS and
calculates K = yX = yxP. Meanwhile, the attacker must calculates K = xY = yxS = yxzP, for some z such that S =
zP. To calculate yxP from yzxP without knowledge of z corresponds to solving the discrete logarithm problem,
which is computationally infeasible, for S.
Offline dictionary attack
An offline dictionary attack occurs when the attacker attempts all possible passwords and determines the correct
password. The connection key establishment protocol is designed to use SPEKE to prevent a known offline
dictionary attack through the use of a password (the secure pairing key) in case the attacker uses computational
resources (where, in theory, nothing limits the speed at which the attacker can force the password) to determine
the password.
Online dictionary attack
An online dictionary attack is similar to an offline dictionary attack, but the attacker must rely on the BlackBerry
device, the computer, or the BlackBerry Smart Card Reader to determine if a key is the correct secure pairing key.
The BlackBerry Smart Card Reader supports only one attempt to guess the secure pairing key. If the guess is
incorrect, the BlackBerry Smart Card Reader changes the secure pairing key before the next attempt occurs.
Small subgroup attack
A small subgroup attack occurs when the attacker attempts to limit the protocol to generate master encryption
keys from only a small subset of keys.
The BlackBerry Smart Card Reader security protocols are designed to use ECDH operations that use the cofactor
in their calculations and verify that the result is not the point at infinity. For example, if the attacker chooses X as
the point at infinity, then K is the point at infinity regardless of what the BlackBerry Smart Card Reader chose for
Y. By checking that X is not at the point of infinity, 1, or –1, the BlackBerry Smart Card Reader security protocols
avert this threat.
www.blackberry.com