IP Library Granted Patent US 9,088,408
Granted Patent B2
US 9,088,408 · App. 13/536,686 · Granted Jul 21, 2015

Key agreement using a key derivation key

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,088,408
App. No.
13/536,686
Granted
Jul 21, 2015
Kind
B2
Abstract

Methods, systems, and computer programs for performing key agreement operations in a communication system are described. In some aspects, a wireless network operator accesses a secret key associated with a mobile device. A key derivation function (KDF) is evaluated based on the secret key to produce a key derivation key, and the KDF is evaluated based on the key derivation key to produce an output value. A session key and a challenge value are obtained based on the output value. In some aspects, the mobile device receives the challenge value and accesses a secret key. A KDF is evaluated based on the secret key to produce a key derivation key, and the KDF is evaluated based on the key derivation key to produce an output value. A response value and a session key are obtained based on the output value. The response value is transmitted to the wireless network operator.

Claims (93)

1. A method performed on a server in a network, the method comprising:

receiving an identifier associated with a mobile device;

accessing, based on the identifier, a secret key associated with the mobile device;

evaluating a key derivation function to produce a key derivation key based on the secret key, wherein the key derivation function is based on a hash function;

evaluating the key derivation function to produce an output value based on the key derivation key; and

obtaining a session key based on the output value.

2. The method of claim 1 , wherein obtaining the session key comprises obtaining a plurality of session keys, and the plurality of session keys include a ciphering key and an integrity key.

3. The method of claim 2 , further comprising:

obtaining a random value before evaluating the key derivation function to produce the key derivation key;

obtaining an expected response value based on the output value;

generating a message that includes the ciphering key, the integrity key, the random value, and the expected response value; and

transmitting the message to a wireless station or a component of a network.

4. The method of claim 1 , further comprising obtaining a random value after receiving the identifier, wherein the key derivation key is produced by evaluating the key derivation function on:

the secret key;

the random value; and

a first output length that specifies a bit-length of the key derivation key.

5. The method of claim 4 , wherein the output value is produced by evaluating the key derivation function on:

the key derivation key;

a pre-defined constant value; and

a second output length that specifies a bit-length of the output value.

6. The method of claim 1 , wherein evaluating the key derivation function includes evaluating a message authentication code function.

7. The method of claim 1 , further comprising:

obtaining a message authentication code based on the key derivation key;

accessing a sequence value associated with the mobile device; and

generating a server authentication token based on the message authentication code and the sequence value.

8. A server, comprising:

a communication interface and a processor, wherein the communication interface is configured to receive an identifier associated with a mobile device, and the processor is configured to:

access, based on the identifier, a secret key associated with the mobile device;

evaluate a key derivation function to produce a key derivation key based on the secret key, wherein the key derivation function is based on a hash function;

evaluate the key derivation function to produce an output value based on the key derivation key; and

obtain a session key based on the output value.

9. The server of claim 8 , wherein obtaining the session key comprises obtaining a plurality of session keys, and the plurality of session keys include a ciphering key and an integrity key.

10. The server of claim 9 , wherein the processor is further configured to:

obtain a random value before evaluating the key derivation function to produce the key derivation key;

obtain an expected response value based on the output value; and

generate a message that includes the ciphering key, the integrity key, the random value, and the expected response value,

wherein the communication interface is further configured to transmit the message to a wireless station or a component of a network.

11. The server of claim 8 , wherein the key derivation key is produced by evaluating the key derivation function on:

the secret key;

a random value; and

a first output length that specifies a bit-length of the key derivation key.

12. The server of claim 11 , wherein the output value is produced by evaluating the key derivation function on:

the key derivation key;

a pre-defined constant value; and

a second output length that specifies a bit-length of the output value.

13. The server of claim 8 , wherein evaluating the key derivation function includes evaluating a message authentication code function.

14. The server of claim 8 , wherein the processor is further configured to:

obtain a message authentication code based on the key derivation key;

access a sequence value associated with the mobile device; and

generate a server authentication token based on the message authentication code and the sequence value.

15. A method performed by a mobile device, the method comprising:

the mobile device accessing a secret key in response to receiving a challenge value;

the mobile device evaluating a key derivation function to produce a key derivation key based on the secret key, wherein the key derivation function is based on a hash function;

the mobile device evaluating the key derivation function to produce an output value based on the key derivation key;

the mobile device obtaining a response value and a session key based on the output value; and

the mobile device transmitting the response value.

16. The method of claim 15 , wherein obtaining the session key comprises obtaining a plurality of session keys, and the plurality of session keys include a ciphering key and an integrity key.

17. The method of claim 15 , wherein the key derivation key is produced by evaluating the key derivation function on:

the secret key;

the challenge value; and

a first output length that specifies a bit-length of the key derivation key.

18. The method of claim 17 , wherein the output value is produced by evaluating the key derivation function on:

the key derivation key;

a pre-defined constant value; and

a second output length that specifies a bit-length of the output value.

19. The method of claim 15 , further comprising:

accessing a sequence value previously stored on the mobile device;

obtaining a message authentication code based on the secret key and the sequence value; and

generating a mobile device authentication token based on the message authentication code and the sequence value.

20. A device, comprising:

a processor configured to:

access a secret key in response to receiving a challenge value;

evaluate a key derivation function to produce a key derivation key based on the secret key, wherein the key derivation function is based on a hash function;

evaluate the key derivation function to produce an output value based on the key derivation key;

obtain a response value and a session key based on the output value;

transmit the response value to a wireless network operator system;

access a sequence value previously stored on the device;

obtain a message authentication code based on the secret key and the sequence value; and

generate a device authentication token based on the message authentication code and the sequence value.

21. The device of claim 20 , wherein obtaining the session key comprises obtaining a plurality of session keys, and the plurality of session keys include a ciphering key and an integrity key.

22. The device of claim 20 , wherein the key derivation key is produced by evaluating the key derivation function on:

the secret key;

the challenge value; and

a first output length that specifies a bit-length of the key derivation key.

23. The device of claim 22 , wherein the output value is produced by evaluating the key derivation function on:

the key derivation key;

a pre-defined constant value; and

a second output length that specifies a bit-length of the output value.

24. The device of claim 20 , wherein the device comprises an embedded integrated circuit card.

25. The method of claim 1 , wherein the identifier associated with the mobile device is an identifier stored in a universal integrated circuit card (UICC) installed in the mobile device.

26. The server of claim 8 , wherein the identifier associated with the mobile device is an identifier stored in a universal integrated circuit card (UICC) installed in the mobile device.

27. The method of claim 3 , wherein the random value is a random challenge value.

28. The sever of claim 10 , wherein the random value is a random challenge value.

Assignments (6)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064271/0199 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2019
From: CERTICOM CORP.
To: BLACKBERRY LIMITED
Reel/Frame 050610/0937 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2012
From: CERTICOM (U.S.) LIMITED
To: CERTICOM CORP.
Reel/Frame 029106/0660 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2012
From: CAMPAGNA, MATTHEW JOHN
To: CERTICOM (U.S.) LIMITED
Reel/Frame 029082/0731 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2012
From: BROWN, DANIEL RICHARD L.; EBEID, NEVINE MAURICE NASSIF
To: CERTICOM CORP.
Reel/Frame 029082/0794 →