# US 10,313,308 B2 · Communicating with a device

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,313,308 B2
- Document ID: US10313308B2
- Status: Granted
- Kind: B2
- Application number: 15/021,913
- Filed: 2014-09-12
- Published: 2016-08-11
- Granted: 2019-06-04
- Earliest claimed: 2013-09-13
- Assignees: Vodafone IP Licensing Limited
- Applicants: Vodafone IP Licensing Limited
- Inventors: Nick Bone
- Web page: https://patentgrep.com/patent/US10313308B2

## CPC

- G06F 13/1689: {Synchronisation and timing concerns (synchronisation on a memory bus G06F13/4234)}
- G06F 9/4401: Bootstrapping (security arrangements therefor G06F21/57)
- G06F 13/28: using burst mode transfer, e.g. direct memory access {DMA}, cycle steal (G06F13/32 takes precedence)
- G06F 13/4027: {using bus bridges (G06F13/4022 takes precedence)}
- G06F 21/606: {by securing the transmission between two devices or processes}
- G06F 21/71: to assure secure computing or processing of information
- H04B 1/3816: Mechanical arrangements for accommodating identification devices, e.g. cards or chips; with connectors for programming identification devices
- H04L 9/0861: {Generation of secret information including derivation or calculation of cryptographic keys or passwords}
- H04L 63/029: {Firewall traversal, e.g. tunnelling or, creating pinholes}
- H04L 63/04: {for providing a confidential data exchange among entities communicating through data packet networks}
- H04L 63/0428: {wherein the data content is protected, e.g. by encrypting or encapsulating the payload}
- H04L 63/0442: {wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption (cryptographic mechanisms or cryptographic arrangements for public-key encryption H04L9/30)}
- H04L 63/061: {for key exchange, e.g. in peer-to-peer networks (cryptographic mechanisms or cryptographic arrangements for key agreement H04L9/0838)}
- H04L 63/062: {for key distribution, e.g. centrally by trusted party (cryptographic mechanisms or cryptographic arrangements for key distribution involving a central third party H04L9/0819)}
- H04L 63/08: {for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32)}
- H04L 63/0823: {using certificates (cryptographic mechanisms or cryptographic arrangements for entity authentication involving certificates H04L9/3263)}
- H04L 63/0869: {for achieving mutual authentication (cryptographic mechanisms or cryptographic arrangements for mutual authentication H04L9/3273)}
- H04L 63/0876: {based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint}
- H04L 63/10: {for controlling access to devices or network resources}
- H04L 63/166: {at the transport layer}
- H04L 63/20: {for managing network security; network security policies in general (filtering policies H04L63/0227)}
- H04L 67/1095: Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
- H04L 67/125: involving control of end-device applications over a network
- H04W 4/12: Messaging; Mailboxes; Announcements
- H04W 4/14: Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
- H04W 4/50: Service provisioning or reconfiguring
- H04W 4/70: Services for machine-to-machine communication [M2M] or machine type communication [MTC]
- H04W 8/04: Registration at HLR or HSS [Home Subscriber Server]
- H04W 12/02: Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
- H04W 12/04: Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W 12/0431: Key distribution or pre-distribution; Key agreement
- H04W 12/06: Authentication
- H04W 12/37: Managing security policies for mobile devices or for controlling mobile applications
- H04W 52/0229: {where the received signal is a wanted signal}
- H04W 80/06: Transport layer protocols, e.g. TCP [Transport Control Protocol] over wireless {(transmission control protocol/Internet protocol [TCP/IP] or user datagram protocol [UDP] H04L69/16)}
- H04W 88/02: Terminal devices
- H04W 88/06: adapted for operation in multiple networks {or having at least two operational modes}, e.g. multi-mode terminals
- H04L 63/0838: {using one-time-passwords}
- H04L 2463/061: applying further key derivation, e.g. deriving traffic keys from a pair-wise master key
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- Y02D 30/70: in wireless communication networks
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04B: TRANSMISSION
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

The present disclosure provides a method and apparatuses configured for identifying a server instance in communications between an entity and a bootstrapping server. In particular, the method comprises the step of sending a data communication between the entity and the bootstrapping server, wherein the data comprises a pointer to the server instance.

## Claims

### Claim 1

A method for communicating with a bootstrapping server that implements functionality for a bootstrapping process for establishing secure communications within in a distributed system, the method comprising:
setting a pointer to a server instance among two or more instances in the distributed system that is used in the bootstrapping process;
sending a data communication that includes data comprising the pointer to the server instance between an entity configured to communicate with the bootstrapping server via an interface and the bootstrapping server; and
using the pointer to identify the server instance.

### Claim 2 (depends on 1)

The method of claim 1, wherein the entity is a machine-to-machine, M2M, device or a user equipment, UE, device.

### Claim 3 (depends on 2)

The method of claim 2, wherein the bootstrapping process is performed to establish a shared secret shared between the entity and the bootstrapping server, and/or the pointer is used to select the server instance from a plurality of server instances.

### Claim 4 (depends on 3)

The method of claim 3, wherein the data communication comprises a request to initiate the bootstrapping process.

### Claim 5 (depends on 2)

The method of claim 2, wherein the data comprises an identifier of the entity and wherein the pointer to the server instance is at least part of an identifier of the entity, and/or the server instance comprises an instance of the bootstrapping server.

### Claim 6 (depends on 5)

The method of claim 5, further comprising:
routing the interface for communication between the entity and the instance of the bootstrapping server using at least the pointer.

### Claim 7 (depends on 2)

The method of claim 2, wherein the server instance comprises a home location register, HLR, or a home subscriber server, HSS.

### Claim 8 (depends on 7)

The method of claim 7, further comprising a step of:
retrieving bootstrapping data from the HLR or HSS that is indicated by the pointer.

### Claim 9 (depends on 3)

The method of claim 3, wherein the pointer is used to advise of which server instance has been selected from a plurality of server instances, and/or the data communication comprises security data, at least part of which relates to the shared secret, and/or the security data comprises an identifier of the shared secret, and wherein the pointer to the server instance is at least part of the identifier of the shared secret.

### Claim 10 (depends on 9)

The method of claim 9, wherein the server instance comprises an instance of the bootstrapping server, and/or the server instance comprises a home location register, HLR, or a home subscriber server, HSS.

### Claim 11 (depends on 1)

The method of claim 1, wherein the entity is a network application function, NAF, and/or the data communication is part of the bootstrapping process to establish a shared secret between a device and the bootstrapping server.

### Claim 12 (depends on 11)

The method of claim 11, wherein the pointer is used to select the server instance from a plurality of server instances, and/or the data communication comprises a request for push information for forwarding to the device as part of the bootstrapping process.

### Claim 13 (depends on 1)

The method of claim 1, wherein the data communication is part of a process of establishing secure communication between a network application function, NAF, and a device, wherein secure communication is establishable using a shared secret that is shared between the device and the bootstrapping server.

### Claim 14 (depends on 12)

The method of claim 12, wherein the data communication comprises a request for the shared secret and/or a lifetime of the shared secret.

### Claim 15 (depends on 12)

The method of any of claim 12, wherein the data communication comprises an identifier of the shared secret and/or an identifier of the device, wherein the pointer to the server instance is at least part of the identifier of the shared secret and/or the identifier of the device, and/or the server instance comprises an instance of the bootstrapping server.

### Claim 16 (depends on 15)

The method of claim 15, further comprising a step of:
routing an interface for communication between the NAF and the instance of the bootstrapping server using at least the pointer to the instance of the bootstrapping server.

### Claim 17 (depends on 12)

The method of claim 12, wherein the server instance comprises a home location register, HLR, or a home subscriber server, HSS.

### Claim 18 (depends on 17)

The method of claim 17, further comprising a step of:
retrieving data from the HLR or HSS that is indicated by the pointer, wherein the shared secret is derivable at least in part using at least part of the retrieved data; or
retrieving the shared secret and/or a lifetime of the shared secret from the HLR or HSS that is indicated by the pointer.

### Claim 19 (depends on 11)

The method of claim 11, wherein the pointer is used to advise of which server instance has been selected from a plurality of server instances, and/or the data communication comprises push information for forwarding to the device as part of the bootstrapping process.

### Claim 20 (depends on 19)

The method of claim 19, wherein the push information comprises bootstrapping data for use in the bootstrapping process, wherein the pointer to the security server instance is at least part of a data item in the bootstrapping data, and/or the server instance comprises an instance of the bootstrapping server, and/or the server instance comprises a home location register, HLR, or a home subscriber server, HSS.

### Claim 21 (depends on 17)

The method of claim 17, wherein the device is a machine-to-machine, M2M, device or a user equipment, UE, device.
