Patent Description:
As internet of things technologies are widely used and vibrantly developed, ever-increasing terminals access the internet of things. Therefore, provisioning for and management of the terminals are increasingly important. A bootstrap server (bootstrap server, BS Server) helps simplify the process. The provisioning for the terminals includes information such as identifier information, service subscription information, and a target platform address.

Existing over the air (over the air, OTA) modes may include a client initial bootstrap (client initial bootstrap) mode and a server initial bootstrap (server initial bootstrap) mode. The client initial bootstrap mode is used as an example for description. The BS server is usually deployed on a public network, and an internet of things (internet of things, IoT) platform is a destination platform to which a terminal is to be connected. The public network is a common circuit switched network, namely, a backbone network and a branch network built by China Netcom, China Telecom, China Tie Tong Telecom, or the like.

A unique identifier for checking the terminal by the BS server is a node identifier (an end point name). The end point name is usually physical hardware identifier information of the terminal, such as a media access control (media access control, MAC) address, an international mobile equipment identifier (international mobile equipment identifier, IMEI), or a personal identification number (personal identification number, PIN) code, has low strength, and may be maliciously inferred by a user massive times. In addition, information such as a key transmitted by the B S server to the terminal belongs to sensitive information, and there is a leakage risk during plaintext transmission on the public network.

<CIT> addresses the efficient configuration of a mobile communication terminal and operator switching. The method involves the terminal sending an information provision request to an information provision entity, which responds with information for the terminal's network connection. The disclosure emphasizes the use of NAS protocol and protocols between network entities for configuring subscriber information and security parameters. The invention can be applied to various mobile communication systems and involves provisioning initial information for access to an operator's system or storing information when the terminal switches operators. The embodiments illustrate procedures involving the USIM Central Center. USIM Authentication Center, and Over The Air (OTA) technology. Overall, the invention streamlines the process of configuring a terminal for communication in different operator networks.

To describe the technical solutions in the embodiments of this application more clearly, the following briefly describes the accompanying drawings required for describing the prior art or the embodiments. Apparently, the accompanying drawings described in the following show merely some embodiments of this application, and another drawing may still be derived from these accompanying drawings.

Embodiments of this application provide a device bootstrap method, to improve security of transmitting and bootstrapping related data between a terminal and a server.

To make persons skilled in the art understand the solutions in this application better, the following describes the technical solutions in the embodiments of this application with reference to the accompanying drawings in the embodiments of this application. Apparently, the described embodiments are merely some rather than all of the embodiments of this application. All the embodiments based on this application shall fall within the protection scope of this application.

In an existing terminal management (device management, DM) protocol, a bootstrap (Bootstrap) procedure usually includes the following several modes.

In this mode, a terminal vendor directly presets related DM information of a terminal before delivery of the terminal. The DM information may include parameters such as a terminal identifier (identifier, ID), a key, an address of a connected destination service platform, subscribed service information, and configuration information, where the terminal key and the subscribed service information belong to sensitive data.

However, this bootstrap mode is not flexible enough, increases production workload of the terminal vendor, and raises a high capability requirement for production and delivery according to an order. The terminal vendor and an application vendor have a trust relationship. The application vendor may need to re-modify sensitive information such as an initial key after the terminal gets online.

In this mode, a smartcard (smartcard) stores DM information, and the DM information is read and used by a terminal through a secure channel between the smartcard and the terminal, where the DM information may be preset by a card vendor. The terminal reads the DM information from the smartcard, and then connects to a destination service platform to carry out a service. In this mode, the card vendor needs to provision the DM information to the smartcard according to an order in advance, and therefore this mode has a relatively high security degree. The smartcard may further include a subscriber identity module (subscriber identity module, SIM) card, and the like.

This bootstrap mode raises a requirement for the card vendor, that is, requires strong cooperation between an application vendor and the card vendor. However, the application vendor usually does not directly cooperate with the card vendor. In other words, this bootstrap mode raises requirements for the card and the terminal.

A terminal proactively initiates a bootstrap request to a BS server, and the BS server returns DM information of the terminal based on hardware information of the terminal. The hardware information of the terminal may include a MAC address, an IMEI, a PIN code, and the like. The DM information of the terminal may include parameters such as a terminal ID, a key, an address of a connected destination service platform, subscribed service information, and configuration information.

A BS Server automatically delivers DM information to a terminal, and the terminal initiates a connection and service request to a destination service platform based on the delivered DM information. The DM information may include parameters such as a terminal ID, a key, an address of a connected destination service platform, subscribed service information, and configuration information.

Both the client initial bootstrap mode and the server initial bootstrap mode are over the air (over the air, OTA) modes. However, the over the air mode is not secure enough. If sensitive information is transmitted in plaintext on a network, there is a leakage risk. When the terminal initially requests BS information, there is only an end point name parameter of the terminal. Consequently, there is a risk of maliciously forging the terminal.

<FIG> is a schematic diagram of a procedure of a bootstrap mode on an existing IoT network. As shown in <FIG>, specific steps of the procedure are as follows:.

Note: The foregoing procedures and messages are based on a lightweight machine-to-machine (lightweight M2M, LWM2M) protocol of version <NUM>.

The following roles are included in the foregoing procedure:
Smartcard vendor: A smartcard vendor produces a card, writes DM information into the card, and sells the smartcard to a device manufacturer.

Device manufacturer: A device manufacturer produces a device. To be specific, the device manufacturer purchases production data such as a smartcard in advance, writes DM information into the device, and sells the smartcard to an application service provider.

Application service provider: An application service provider is a real owner of a device, and may change DM information.

In conclusion, from a perspective of an end to end (end to end, E2E) procedure, an OTA mode is a flexible bootstrap mode. However, security of the OTA mode needs to be improved. This application provides a secure OTA bootstrap solution, to meet flexible service provisioning and device management requirements.

<FIG> is an architectural diagram of a system that is applied to an embodiment of this application. A terminal requests BS information from a BS server through an access network and a core network. The BS server also returns the BS information to the terminal through the core network and the access network. The BS server may invoke a capability of a machine type communication interworking function (machine type communications inter-working function, MTC-IWF) network element, a short message service center (short message service center, SMSC) network element, or a service creation environment function (service creation environment function, SCEF) network element in the core network to send a temporary identifier indication message to the terminal, where the temporary identifier indication message is used by the terminal to perform temporary access. Then, the terminal initiates a registration procedure to an LWM2M through the access network and the core network based on the temporary identifier indication message.

<FIG> is a schematic diagram of an embodiment of a device bootstrap method according to an embodiment of this application.

A terminal sends a second bootstrap request to a server, where the second bootstrap request includes a node identifier and a transmission channel parameter of the terminal.

The server receives the second bootstrap request sent by the terminal. The second bootstrap request carries the node identifier (Node ID) and the transmission channel parameter. The transmission channel parameter may include information such as a terminal mobile terminated (user equipment mobile terminated, UE MT) channel capability (channel capability) parameter, and the transmission channel parameter is used to indicate a transmission channel supported by the terminal.

It may be understood that the UE MT channel capability parameter represents a capability supported by the terminal on a 3rd generation partnership project (third generation partnership project, 3GPP) network, for example, a device trigger (device trigger) capability, a mobile terminated short message service (mobile terminated short message service, MT SMS) capability, and a mobile terminated non-internet protocol (internet protocol, IP) packet header data delivery (mobile terminated Non-IP data delivery, MT NIDD) capability, so that the BS server selects a specific channel for addressing the terminal.

It should be noted that a node identifier (Node ID, which may also be referred to as an end point name) of a terminal and a mapping relationship between the node ID of the terminal and an identifier of the terminal on the 3rd generation partnership project (third generation partnership project, 3GPP) network are preset on the BS server. For example, the identifier on the 3GPP network may include a parameter such as a mobile station integrated services digital network number (mobile station integrated services digital network number, MSISDN) and an external identifier (External ID) beyond the 3GPP network, and is used for addressing the terminal.

The node identifier of the terminal may specifically include a media access control (media access control, MAC) address, an international mobile equipment identifier (international mobile equipment identifier, IMEI), a personal identification number (personal identification number, PIN) code, a serial number (serial number, SN), and the like.

The server determines a forwarding apparatus based on the node identifier and the transmission channel parameter.

The server determines the forwarding apparatus based on the node identifier and the transmission channel parameter. If the transmission channel parameter is a device trigger capability parameter, the forwarding apparatus determined by the server is a machine type communication interworking function (machine type communications-inter working function, MTC-IWF) network element, and the transmission channel parameter is a device trigger channel parameter. If the transmission channel parameter is a mobile terminated short message service capability parameter, the forwarding apparatus determined by the server is a short message service center (short message service center, SMSC) network element, and the transmission channel parameter is a mobile terminated short message service channel parameter. If the transmission channel parameter is a non-internet protocol packet header data delivery capability parameter, the forwarding apparatus determined by the server is a service creation environment function (service creation environment function, SCEF) network element, and the transmission channel parameter is a non-internet protocol packet header data delivery channel parameter.

Optionally, the server may determine, based on the node identifier, the transmission channel parameter, channel information supported by the server, channel service quality, and the like, a transmission channel selected by the server, and notify the terminal of the transmission channel selected by the server, so that the terminal knows to receive, through the transmission channel selected by the server, a message sent by the server. The transmission channel selected by the server may include a device trigger (device trigger) channel, a mobile terminated short message service (MT SMS) channel, a mobile terminated non-internet protocol packet header data delivery (MT NIDD) channel, and the like. In other words, the transmission channel is corresponding to the forwarding apparatus determined by the server.

The server sends a second acknowledgment message to the terminal, where the second acknowledgment message carries the transmission channel selected by the server.

If the BS server checks that the node ID is correct, the BS server returns the second ACK message to the terminal, where the second ACK message carries the transmission channel selected by the server, and the transmission channel selected by the server may include a selected mobile terminated channel (selected mobile terminated channel, selected MT channel) parameter. The terminal receives the second acknowledgment message that is sent by the server according to the second bootstrap request, where the second acknowledgment message carries the transmission channel selected by the server.

Optionally, the second acknowledgment message may further carry a client hold on timer (client hold on timer) parameter. The client hold on timer parameter is used to indicate that the terminal does not enter a hibernated state within a preset time. If the preset time expires, the terminal initiates a registration procedure or the like to the server.

The server sends a temporary identifier indication message to the forwarding apparatus, where the temporary identifier indication message includes a temporary identifier and a temporary key, and the temporary identifier and the temporary key are used by the terminal to initiate a connection request.

The forwarding apparatus receives the temporary identifier indication message sent by the server. For example, the temporary identifier may include a pre-shared key identifier (pre-shared key identifier, PSKID), and the temporary key may include a pre-shared key (pre-shared key, PSK) parameter and the like.

It should be noted that communication between the terminal and the forwarding apparatus is usually internal communication on the 3GPP network. Therefore, reliability is relatively high. The forwarding apparatus usually communicates with the server through a RESTful interface based on hypertext transfer protocol secure (hypertext transfer protocol secure, HTTPS), and encryption and integrity protection are performed during communication transmission. Therefore, reliability is relatively high.

The forwarding apparatus sends the temporary identifier indication message to the terminal, where the temporary identifier indication message includes the temporary identifier and the temporary key.

The terminal receives the temporary identifier indication message sent by the forwarding apparatus. The temporary identifier indication message includes the temporary identifier and the temporary key. The forwarding apparatus is a network element determined by the server based on the node identifier and the transmission channel parameter of the terminal, and a trusted communication channel is established between the forwarding apparatus and the terminal. Optionally, the receiving, by the terminal, the temporary identifier indication message sent by the forwarding apparatus may include: receiving, by the terminal within the preset time based on the hold on timer parameter, the temporary identifier indication message sent by the forwarding apparatus.

The terminal sends the connection request to the server based on the temporary identifier and the temporary key, where the connection request is used to request to establish a secure channel with the server.

For example, the terminal initiates a datagram transport layer security (Datagram Transport Layer Security, DTLS) connection procedure to the BS server by using the temporary PSKID and the PSK parameter.

The server establishes the secure channel with the terminal according to the transport layer connection request.

The server establishes the secure channel with the terminal according to the transport layer connection request. In this case, the server completes authentication on the terminal and establishment of a secure link. Though a terminal maliciously forges the node ID, the device trigger message is finally sent to the real terminal associated with the node ID because the identifier on the 3GPP network cannot be forged, the malicious terminal cannot obtain the temporary PSKID and the PSK parameter, and a DTLS link cannot be established. The secure channel is used to transmit and bootstrap related data between the terminal and the server.

In this embodiment of this application, the terminal may initiate the connection request to the server based on the temporary identifier indication message sent by the forwarding apparatus, where the connection request is used to request to establish the secure channel with the server, and then the terminal and the server can transmit and bootstrap the related data through the secure channel. Therefore, security of transmitting and bootstrapping the related data is improved.

A terminal sends a first bootstrap request to a server, where the first bootstrap request includes a node identifier and a transmission channel parameter of the terminal.

In this embodiment of this application, the server herein may be described by using a BS server as an example. The terminal may initiate the first bootstrap request (bootstrap request) to the BS server on a public network, where the first bootstrap request carries the node identifier (Node ID) and the transmission channel parameter. The transmission channel parameter may include information such as a terminal mobile terminated (user equipment mobile terminated, UE MT) channel capability (channel capability) parameter.

The server sends a first ACK message to the terminal, where the first ACK message carries a security parameter.

The BS server may determine the corresponding identifier of the terminal on the 3GPP network based on the node ID, and further determine, based on the UE MT channel capability parameter, a specific channel to address the UE. To be specific, the BS server may return the first acknowledgment (acknowledgement, ACK) message to the terminal according to the first bootstrap request. The first ACK message carries the security parameter. For example, the security parameter may include a cookie parameter and the like. The security parameter is allocated by the BS server, and is used to prevent a denial-of-service (denial-of-service, DOS) attack.

The terminal sends a second bootstrap request to the server, where the second bootstrap request includes the node identifier, the transmission channel parameter of the terminal, and the security parameter.

The terminal reinitiates the second bootstrap request (bootstrap request) to the BS server. The second bootstrap request may carry the node ID, the UE MT channel capability parameter, and the security parameter that is just received from the BS server. The node ID and the UE MT channel capability parameter in this step are the same as those in step <NUM>. The security parameter is used by the server to verify information, and to determine whether the security parameter is a security parameter previously delivered by the server to the UE. If the security parameter is the security parameter previously delivered by the server to the UE, the server does not reject the second bootstrap request sent by the UE. If the security parameter is not the security parameter previously delivered by the server to the UE, the server rejects the second bootstrap request sent by the UE. For example, the security parameter may include a cookie parameter and the like.

The server sends a second ACK message to the terminal, where the second ACK message carries a client hold on timer parameter and a transmission channel selected by the server.

If the BS server checks that the security parameter and the node ID are correct, the BS server returns the second ACK message to the terminal. The second ACK message carries the client hold on timer (client hold on timer) parameter (indicating that the terminal does not enter a hibernated state within a specified time) and the transmission channel selected by the server. The transmission channel selected by the server may include information such as a selected mobile terminated channel (selected mobile terminated channel, selected MT channel) parameter. A channel indicated by the transmission channel parameter may include a device trigger (device trigger) channel, a mobile terminated short message service (MT SMS) channel, a mobile terminated non-internet protocol packet header data delivery (MT NIDD) channel, and the like. In this embodiment, the channel selected by the server is a device trigger channel. The client hold on timer parameter is an empirical value determined by the server.

The server sends a trigger request to a machine type communication interworking function network element, where the trigger request includes a temporary identifier and a temporary key.

The BS server invokes, based on the identifier of the terminal associated with the 3GPP network, a device trigger (device trigger) capability of the machine type communication interworking function (machine type communications-inter working function, MTC-IWF) network element, to initiate the trigger request to the terminal. The trigger request includes the temporary identifier and the temporary key. For example, the temporary identifier may include a pre-shared key identifier (pre-shared key identifier, PSKID), and the temporary key may include a pre-shared key (pre-shared key, PSK) parameter and the like.

The PSKID and the PSK parameter that are carried in the trigger request are determined by the server based on the node ID reported by the terminal. It should be noted that communication between the terminal and the MTC-IWF network element is usually internal communication on the 3GPP network. Therefore, reliability is relatively high. The MTC-IWF network element usually communicates with the server through a RESTful interface based on hypertext transfer protocol secure (hypertext transfer protocol secure, HTTPS), and encryption and integrity protection are performed during communication transmission.

The MTC-IWF network element sends the trigger request to the terminal.

The machine type communication interworking function (MTC-IWF) network element invokes an internal capability of the 3GPP network to complete a device trigger procedure, and sends the temporary PSKID and the PSK parameter to the terminal.

The MTC-IWF network element sends a device trigger response to the server.

After the MTC-IWF network element sends the trigger request to the terminal, the MTC-IWF network element sends the device trigger response (device trigger response) to the BS server, to indicate, to the BS server, that the terminal is successfully woken up.

The terminal initiates a DTLS connection request to the server.

The terminal sends the connection request to the server based on the temporary identifier and the temporary key. The server receives the connection request sent by the terminal, and the server establishes a secure channel with the terminal according to the connection request.

For example, the terminal initiates a datagram transport layer security (Datagram Transport Layer Security, DTLS) connection procedure to the BS server by using the temporary PSKID and the PSK parameter. In this case, the BS server completes authentication on the terminal and establishment of a secure link. (Though a terminal maliciously forges the node ID, the device trigger message is finally sent to the real terminal associated with the node ID because the identifier on 3GPP cannot be forged, the malicious terminal cannot obtain the temporary PSKID and the PSK parameter, and a DTLS link cannot be established.

The terminal sends a third bootstrap request to the server, where the third bootstrap request includes the node identifier.

The terminal reinitiates the third bootstrap request (bootstrap request) to the BS server. The third bootstrap request carries the node ID. In this case, the third bootstrap request is transmitted through the secure channel.

The server sends DM information to the terminal.

The BS server delivers the DM information to the terminal. The DM information includes parameters such as an identifier ID and a PSK that are corresponding to the terminal on a current platform accessed by the terminal. The step may be performed a plurality of times. If the terminal currently accesses a plurality of platforms, the BS server correspondingly sends a plurality of pieces of DM information to the terminal. Each piece of DM information includes parameters such as an identifier and a PSK that are corresponding to the terminal on each platform accessed by the terminal.

The server sends a finished message to the terminal.

After the server completes delivering all DM information to the terminal, the BS server delivers the finished (finished) message to the terminal, and the current bootstrap procedure ends.

The terminal initiates registration and service reporting procedures to an internet of things platform.

The terminal initiates procedures such as registration and service data reporting to the internet of things (internet of things, IoT) platform based on the DM information.

In this embodiment of this application, though the terminal maliciously forges the node ID, the device trigger message is finally sent to the real terminal associated with the node ID because the identifier on the 3GPP network cannot be forged, the malicious terminal cannot obtain the temporary PSKID and the PSK parameter, and the DTLS link cannot be established. Therefore, a secure bootstrap process is provided. The secure bootstrap process is imperceptible to a chip vendor, a module vendor, and a device vendor. An application vendor holds a real security credential; and the device vendor neither needs to add an additional manufacture operation, nor needs to support a delivery capability according to an order. Therefore, a supply chain design requirement for the device vendor is simplified.

When the terminal requests the server to provision the DM information, the server can verify, based on the associated identifier of the terminal on the 3GPP network when the terminal registers an account in the BS server (the identifier is set by an application server, and may be considered to be secure), whether the terminal is an authorized device, and send the temporary ID and the temporary key to the terminal through a 3GPP network channel. The terminal establishes a secure connection with the server by using the temporary ID and the temporary key. The server returns sensitive data such as a real identifier ID, a key, and subscribed service information based on the secure connection, to complete a data provisioning process. The temporary ID and the temporary key are released after current use.

In this embodiment of this application, the server herein may be described by using a BS server as an example. The terminal may initiate the first bootstrap request (bootstrap request) to the BS server on a public network, where the first bootstrap request carries the node ID and the transmission channel parameter. The transmission channel parameter may include information such as a UE MT channel capability parameter.

It may be understood that the UE MT channel capability parameter represents a capability supported by the terminal on a 3GPP network, for example, a device trigger capability, an MT SMS capability, and an MT NIDD capability, so that the BS server selects a specific channel for addressing the terminal.

It should be noted that a node ID (also referred to as an end point name) of a device and a correspondence between the node ID of the terminal and an identifier of the terminal on the 3GPP network are preset on the BS server. For example, the identifier on the 3GPP network includes parameters such as an MSISDN and an external ID, and is used for addressing the terminal.

The terminal reinitiates the second bootstrap request (bootstrap request) to the BS server. The second bootstrap request may carry the node ID, the UE MT channel capability, and the security parameter that is just received from the BS server. The node ID and the UE MT channel capability parameter in this step are the same as those in step <NUM>. The security parameter is used by the server to verify information, and to determine whether the security parameter is a security parameter previously delivered by the server to the UE. If the security parameter is the security parameter previously delivered by the server to the UE, the server does not reject the second bootstrap request sent by the UE. If the security parameter is not the security parameter previously delivered by the server to the UE, the server rejects the second bootstrap request sent by the UE. For example, the security parameter may include a cookie parameter and the like.

If the BS server checks that the security parameter and the node ID are correct, the BS server returns the second ACK message to the terminal. The second ACK message carries the client hold on timer (client hold on timer) parameter (indicating that the terminal does not enter a hibernated state within a specified time) and the transmission channel selected by the server. The transmission channel selected by the server may include information such as a selected mobile terminated channel (selected mobile terminated channel, selected MT channel) parameter. A channel indicated by the transmission channel parameter may include a device trigger (device trigger) channel, a mobile terminated short message service (MT SMS) channel, a mobile terminated non-internet protocol packet header data delivery (MT NIDD) channel, and the like. In this embodiment, the channel selected by the server is a mobile terminated short message service channel. The client hold on timer parameter is an empirical value determined by the server.

The server sends a mobile terminated short message service message to an SMSC network element, where the mobile terminated short message service message includes a temporary identifier and a temporary key.

The BS server invokes, based on the identifier of the terminal associated with the 3GPP network, a mobile terminated short message service (mobile terminated short message service, MT SMS) capability of the short message service center (short message service center, SMSC) network element, to send the MT SMS message to the terminal. The MT SMS message includes the temporary identifier and the temporary key. For example, the temporary identifier may include a pre-shared key identifier (pre-shared key identifier, PSKID), and the temporary key may include a pre-shared key (pre-shared key, PSK) parameter and the like.

The PSKID and the PSK parameter that are carried in the MT SMS message are determined by the server based on the node ID reported by the terminal. It should be noted that communication between the terminal and the SMSC network element is usually internal communication on the 3GPP network. Therefore, reliability is relatively high. The SMSC network element usually communicates with the server through a RESTful interface based on hypertext transfer protocol secure (hypertext transfer protocol secure, HTTPS), and encryption and integrity protection are performed during communication transmission.

The short message service center network element sends the mobile terminated short message service message to the terminal.

The short message service center (SMSC) network element invokes an internal capability of the 3GPP network to complete an MT SMS procedure, and sends the temporary PSK ID and the PSK parameter to the terminal.

The SMSC network element sends a mobile terminated short message service response message to the server.

After the SMSC network element sends the MT SMS message to the terminal, the SMSC network element sends the mobile terminated short message service response (MT SMS response) message to the BS server, to indicate a sending success.

For example, the terminal initiates a datagram transport layer security (Datagram Transport Layer Security, DTLS) connection procedure to the BS server by using the temporary PSKID and the PSK parameter. In this case, the BS server completes authentication on the terminal and establishment of a secure link. (Though a terminal maliciously forges the node ID, the SMS message is finally sent to the real terminal associated with the node ID because the identifier on 3GPP cannot be forged, the malicious terminal cannot obtain the temporary PSKID and the PSK parameter, and a DTLS link cannot be established.

The terminal sends a third bootstrap request to the server, where the third bootstrap request includes the node ID.

In this embodiment of this application, though the terminal maliciously forges the node ID, the SMS message is finally sent to the real terminal associated with the node ID because the identifier on 3GPP cannot be forged, the malicious terminal cannot obtain the temporary PSKID and the PSK parameter, and the DTLS link cannot be established. Therefore, a secure bootstrap process is provided. The secure bootstrap process is imperceptible to a chip vendor, a module vendor, and a device vendor. An application vendor holds a real security credential; and the device vendor neither needs add an additional manufacture operation, nor needs to support a delivery capability according to an order. Therefore, a supply chain design requirement for the device vendor is simplified.

If the BS server checks that the security parameter and the node ID are correct, the BS server returns the second ACK message to the terminal. The second ACK message carries the client hold on timer (client hold on timer) parameter (indicating that the terminal does not enter a hibernated state within a specified time) and the transmission channel selected by the server. The transmission channel selected by the server may include information such as a selected mobile terminated channel (selected mobile terminated channel, selected MT channel) parameter. A channel indicated by the transmission channel parameter may include a device trigger (device trigger) channel, a mobile terminated short message service (MT SMS) channel, a mobile terminated non-internet protocol packet header data delivery (MT NIDD) channel, and the like. In this embodiment, the channel selected by the server is a non-internet protocol packet header data delivery channel. The client hold on timer parameter is an empirical value determined by the server.

The server sends an MT NIDD message to a service creation environment function network element, where the MT NIDD message includes a temporary identifier and a temporary key.

The BS server invokes, based on the identifier of the terminal associated with the 3GPP network, a mobile terminated non-IP packet header data delivery (mobile terminated Non-IP data delivery, MT NIDD) capability of the service creation environment function (service creation environment function, SCEF) network element, to send the MT NIDD message to the terminal. The MT NIDD message includes a pre-shared key identifier (pre-shared key identifier, PSKID), and the temporary key may include a pre-shared key (pre-shared key, PSK) parameter and the like.

The PSKID and the PSK parameter that are carried in the MT NIDD message are determined by the server based on the node ID reported by the terminal. It should be noted that communication between the terminal and the SCEF network element is usually internal communication on the 3GPP network. Therefore, reliability is relatively high. The SCEF network element usually communicates with the server through a RESTful interface based on hypertext transfer protocol secure (hypertext transfer protocol secure, HTTPS), and encryption and integrity protection are performed during communication transmission.

The SCEF network element sends the MT NIDD message to the terminal.

The service creation environment function (SCEF) network element invokes an internal capability of the 3GPP network to complete an MT NIDD procedure, and sends the temporary PSK ID and the PSK parameter to the terminal.

The SCEF network element sends an MT NIDD response to the server.

After the SCEF network element sends the MT NIDD to the terminal, the SCEF network element sends the MT NIDD response message to the BS server, to indicate a sending success.

For example, the terminal initiates a datagram transport layer security (Datagram Transport Layer Security, DTLS) connection request to the BS server by using the temporary PSKID and the PSK parameter. In this case, the BS server completes authentication on the terminal and establishment of a secure link. (Though a terminal maliciously forges the node ID, the MT NIDD message is finally sent to the real terminal associated with the node ID because the identifier on 3GPP cannot be forged, the malicious terminal cannot obtain the temporary PSKID and the PSK parameter, and a DTLS link cannot be established.

In this embodiment of this application, though the terminal maliciously forges the node ID, the MT NIDD message is finally sent to the real terminal associated with the node ID because the identifier on 3GPP cannot be forged, the malicious terminal cannot obtain the temporary PSKID and the PSK parameter, and the DTLS link cannot be established. Therefore, a secure bootstrap process is provided. The secure bootstrap process is imperceptible to a chip vendor, a module vendor, and a device vendor. An application vendor holds a real security credential; and the device vendor neither needs to add an additional manufacture operation, nor needs to support a delivery capability according to an order. Therefore, a supply chain design requirement for the device vendor is simplified.

It should be noted that expressions such as "first", "second", and "third" in this application are not actual names. For example, the first bootstrap request in the foregoing embodiments does not mean that the bootstrap request is referred to as the first bootstrap request. The expressions such as "first" and "second" are merely used to distinguish between a plurality of bootstrap requests sent by the terminal to the server, and do not constitute a limitation on the actual protection scope of this application.

<FIG> is a schematic diagram of an embodiment of a terminal according to an embodiment of this application, and the terminal includes:.

The receiving module <NUM> is further configured to receive a temporary identifier indication message sent by a forwarding apparatus. The temporary identifier indication message includes a temporary identifier and a temporary key. The forwarding apparatus is a network element that is configured to send a message to the terminal through the transmission channel selected by the server.

The sending module <NUM> is further configured to send a connection request to the server based on the temporary identifier and the temporary key, where the connection request is used to request to establish a secure channel with the server.

Optionally, in some embodiments of this application, the transmission channel selected by the server includes a device trigger transmission channel, the temporary identifier includes a pre-shared key identifier, and the temporary key includes a pre-shared key.

The receiving module <NUM> is specifically configured to receive, through the device trigger transmission channel, a trigger request sent by a machine type communication interworking function network element. The trigger request includes the pre-shared key identifier and the pre-shared key.

Optionally, in some embodiments of this application, the transmission channel selected by the server includes a short message service transmission channel, the temporary identifier includes a pre-shared key identifier, and the temporary key includes a pre-shared key.

The receiving module <NUM> is specifically configured to receive, through the short message service transmission channel, a mobile terminated short message service message sent by a short message service center network element. The mobile terminated short message service message includes the pre-shared key identifier and the pre-shared key.

Optionally, in some embodiments of this application, the transmission channel selected by the server includes a data transmission channel, the temporary identifier includes a pre-shared key identifier, and the temporary key includes a pre-shared key.

The receiving module <NUM> is specifically configured to receive, through the data transmission channel, a non-internet protocol IP packet header data delivery message sent by a service creation environment function network element. The non-IP packet header data delivery message includes the pre-shared key identifier and the pre-shared key.

Optionally, in some embodiments of this application,
the sending module <NUM> is further configured to send a first bootstrap request to a server, where the first bootstrap request includes the node identifier and the transmission channel parameter of the terminal.

The receiving module <NUM> is further configured to receive a first acknowledgment message that is sent by the server according to the first bootstrap request. The first acknowledgment message carries a security parameter.

Optionally, in some embodiments of this application,
the sending module <NUM> is further configured to send a third bootstrap request to the server through the secure channel, where the third bootstrap request includes the node identifier of the terminal.

The receiving module <NUM> is further configured to receive device management information that is sent by the server according to the third bootstrap request.

Optionally, in some embodiments of this application,
the sending module <NUM> is further configured to send a registration request and service data to an internet of things IoT platform based on the device management information.

Optionally, in some embodiments of this application, the second acknowledgment message further carries a hold on timer parameter. That the terminal receives a temporary identifier indication message sent by the forwarding apparatus includes:.

The terminal receives, based on the hold on timer parameter within a preset time, the temporary identifier indication message sent by the forwarding apparatus.

<FIG> is a schematic diagram of an embodiment of a server according to an embodiment of this application. The server includes:.

The sending module <NUM> is specifically configured to send, through the device trigger transmission channel, a trigger request to a machine type communication interworking function network element, where the trigger request includes the pre-shared key identifier and the pre-shared key.

The sending module <NUM> is specifically configured to send, through the short message service transmission channel, a mobile terminated short message service message to a short message service center network element, where the mobile terminated short message service message includes the pre-shared key identifier and the pre-shared key.

The sending module <NUM> is specifically configured to send, through the data transmission channel, a non-internet protocol IP packet header data delivery message to a service creation environment function network element, where the non-IP packet header data delivery message includes the pre-shared key identifier and the pre-shared key.

Optionally, in some embodiments of this application,
the receiving module <NUM> is configured to receive a first bootstrap request sent by the terminal, where the first bootstrap request includes the node identifier and the transmission channel parameter of the terminal.

The sending module <NUM> is configured to send a first acknowledgment message to the terminal based on the node identifier and the transmission channel parameter of the terminal. The first acknowledgment message carries a security parameter, and the security parameter is used by the terminal to prevent a denial-of-service attack.

Optionally, in some embodiments of this application,
the receiving module <NUM> is configured to receive a third bootstrap request sent by the terminal, where the third bootstrap request includes the node identifier of the terminal.

The sending module <NUM> is configured to send device management information to the terminal based on the node identifier of the terminal.

Optionally, in some embodiments of this application, the second acknowledgment message further carries a hold on timer parameter. The hold on timer parameter is used to indicate that the terminal does not enter a hibernated state within a preset time.

<FIG> is a schematic diagram of another embodiment of a terminal according to an embodiment of this application. The terminal is described by using a mobile phone as an example. <FIG> is a block diagram of a partial structure of the mobile phone related to the terminal according to this embodiment of this application. Referring to <FIG>, the mobile phone includes components such as a radio frequency (Radio Frequency, RF) circuit <NUM>, a memory <NUM>, an input unit <NUM>, a display unit <NUM>, a sensor <NUM>, an audio circuit <NUM>, a wireless fidelity (wireless fidelity, Wi-Fi) module <NUM>, a processor <NUM>, and a power supply <NUM>. Persons skilled in the art may understand that the structure of the mobile phone shown in <FIG> constitutes no limitation on the mobile phone. The mobile phone may include more or fewer components than those shown in this figure, may combine some components, or may have different component arrangements.

The following describes each component included in the mobile phone in detail with reference to <FIG>.

The RF circuit <NUM> may be configured to receive or send a signal in an information receiving or sending process or a call process. In particular, after receiving downlink information from a base station, the RF circuit <NUM> sends the downlink information to the processor <NUM> for processing. In addition, the RF circuit <NUM> sends related uplink data to the base station. The RF circuit <NUM> usually includes but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (Low Noise Amplifier, LNA), a duplexer, and the like. In addition, the RF circuit <NUM> may further communicate with a network and another device through radio communication. Any communications standard or protocol may be used in the radio communication, including but not limited to a global system for mobile communications (Global System for Mobile communication, GSM), a general packet radio service (General Packet Radio Service, GPRS), code division multiple access (Code Division Multiple Access, CDMA), wideband code division multiple access (Wideband Code Division Multiple Access, WCDMA), long term evolution (Long Term Evolution, LTE), an email, a short message service (Short Message Service, SMS), and the like.

The memory <NUM> may be configured to store a software program and a module. The processor <NUM> executes various function applications of the mobile phone and performs data processing by running the software program and the module that are stored in the memory <NUM>. The memory <NUM> may mainly include a program storage area and a data storage area. The program storage area may store an operating system, an application program required by at least one function (such as a voice playback function or an image playback function), and the like. The data storage area may store data (such as audio data and a phone book) created based on use of the mobile phone, and the like. In addition, the memory <NUM> may include a high speed random access memory, and may further include a nonvolatile memory, for example, at least one magnetic disk storage device, a flash storage device, or another volatile solid-state storage device.

The input unit <NUM> may be configured to receive input digit or character information, and generate key signal input related to user settings and function control of the mobile phone. Specifically, the input unit <NUM> may include a touch control panel <NUM> and another input device <NUM>. The touch control panel <NUM>, also referred to as a touchscreen, may collect a touch operation (for example, an operation of a user on the touch control panel <NUM> or near the touch panel <NUM> by using any proper object or accessory such as a finger or a tablet pen) of the user on or near the touch control panel <NUM>, and drive a corresponding connection apparatus based on a preset program. Optionally, the touch control panel <NUM> may include two components: a touch detection apparatus and a touch controller. The touch detection apparatus detects a touch direction of a user, detects a signal brought by the touch operation, and transmits the signal to the touch controller. The touch controller receives touch information from the touch detection apparatus, converts the touch information into a coordinate of a touch point. Then the touch controller sends the coordinate of the touch point to the processor <NUM>, and can receive and execute a command sent by the processor <NUM>. In addition, the touch control panel <NUM> may be implemented in a plurality of types, such as a resistive type, a capacitive type, an infrared type, and a surface acoustic wave type. In addition to the touch control panel <NUM>, the input unit <NUM> may further include the another input device <NUM>. Specifically, the another input device <NUM> may include but are not limited to one or more of a physical keyboard, a function key (for example, a volume control press key or a power on/off press key), a trackball, a mouse, a joystick, and the like.

The display unit <NUM> may be configured to display information input by the user or information provided for the user, and various menus of the mobile phone. The display unit <NUM> may include a display panel <NUM>. Optionally, the display panel <NUM> may be configured in a form such as a liquid crystal display (Liquid Crystal Display, LCD) or an organic light-emitting diode (Organic Light-Emitting Diode, OLED). Further, the touch control panel <NUM> may cover the display panel <NUM>. When detecting the touch operation on or near the touch control panel <NUM>, the touch control panel <NUM> transmits the touch operation to the processor <NUM> to determine a type of a touch event. Then the processor <NUM> provides a corresponding visual output on the display panel <NUM> based on the type of the touch event. In <FIG>, the touch control panel <NUM> and the display panel <NUM> are used as two independent components to implement input and output functions of the mobile phone. However, in some embodiments, the touch control panel <NUM> and the display panel <NUM> may be integrated to implement the input and output functions of the mobile phone.

The mobile phone may further include at least one sensor <NUM>, for example, a light sensor, a motion sensor, and another sensor. Specifically, the light sensor may include an ambient light sensor and a proximity sensor. The ambient light sensor may adjust luminance of the display panel <NUM> based on brightness of ambient light. The proximity sensor may power off the display panel <NUM> and/or backlight when the mobile phone moves close to an ear. As a type of the motion sensor, an accelerometer sensor may detect values of acceleration in all directions (usually, three axes), may detect a value and a direction of gravity when the mobile phone is still. The accelerometer sensor may be applied to an application for identifying the mobile phone posture (such as landscape-to-portrait switch, a related game, and magnetometer posture calibration), a function related to vibration identification (such as a pedometer or a knock), or the like. Another sensor such as a gyroscope, a barometer, a hygrometer, a thermometer, and an infrared sensor may be further configured in the mobile phone.

The audio circuit <NUM>, a speaker <NUM>, and a microphone <NUM> may provide an audio interface between the user and the mobile phone. The audio circuit <NUM> may transmit, to the speaker <NUM>, an electrical signal converted from received audio data. The speaker <NUM> converts the electrical signal into a sound signal for output. In addition, the microphone <NUM> converts a collected sound signal into an electrical signal. The audio circuit <NUM> receives the electrical signal, converts the electrical signal into audio data, and then outputs the audio data to the processor <NUM> for processing. Then, the audio data is sent to, for example, another mobile phone, by using the RF circuit <NUM>, or the audio data is output to the memory <NUM> for further processing.

Wi-Fi belongs to a short-distance wireless transmission technology. The mobile phone may help, by using the Wi-Fi module <NUM>, the user send and receive an email, browse a web page, access streaming media, and the like. The Wi-Fi module <NUM> provides wireless broadband internet access for the user. Although <FIG> shows the Wi-Fi module <NUM>, it may be understood that the Wi-Fi module <NUM> is not mandatory included in the mobile phone. The Wi-Fi module <NUM> may be omitted based on a requirement without changing the scope of essence of the present invention.

The processor <NUM> is a control center of the mobile phone. The processor <NUM> connects each part of the entire mobile phone through various interfaces and lines. In addition, the processor <NUM> performs various functions of the mobile phone and data processing by running or executing the software program and/or the module that are/is stored in the memory <NUM> and invoking data stored in the memory <NUM>, so as to perform overall monitoring on the mobile phone. Optionally, the processor <NUM> may include one or more processing units. Preferably, an application processor and a modem processor may be integrated in the processor <NUM>. The application processor mainly processes an operating system, a user interface, an application program, and the like. The modem processor mainly processes radio communication. It may be understood that the modem processor may alternatively not be integrated into the processor <NUM>.

The mobile phone further includes the power supply <NUM> (for example, a battery) supplying power to all components. Preferably, the power supply may be logically connected to the processor <NUM> by using a power management system, to implement functions such as management of charging, discharging, and power consumption by using the power management system.

Although not shown, the mobile phone may further include a camera, a Bluetooth module, and the like.

The steps performed by the terminal in the foregoing embodiments may be based on the structure of the terminal shown in <FIG>.

In this embodiment of this application, the RF circuit <NUM> is configured to: send a second bootstrap request to a server, where the second bootstrap request includes a node identifier and a transmission channel parameter of a terminal, and the transmission channel parameter is used to indicate a transmission channel supported by the terminal; receive a second acknowledgment message that is sent by the server according to the second bootstrap request, where the second acknowledgment message carries a transmission channel selected by the server, and the transmission channel selected by the server is determined by the server based on the transmission channel parameter; receive a temporary identifier indication message sent by a forwarding apparatus, where the temporary identifier indication message includes a temporary identifier and a temporary key, and the forwarding apparatus is a network element that is configured to send a message to the terminal through the transmission channel selected by the server; and send a connection request to the server based on the temporary identifier and the temporary key, where the connection request is used to request to establish a secure channel with the server.

The RF circuit <NUM> is specifically configured to receive, through the device trigger transmission channel, a trigger request sent by a machine type communication interworking function network element, where the trigger request includes the pre-shared key identifier and the pre-shared key.

The RF circuit <NUM> is specifically configured to receive, through the short message service transmission channel, a mobile terminated short message service message sent by a short message service center network element, where the mobile terminated short message service message includes the pre-shared key identifier and the pre-shared key.

The RF circuit <NUM> is specifically configured to receive, through the data transmission channel, a non-internet protocol IP packet header data delivery message sent by a service creation environment function network element, where the non-IP packet header data delivery message includes the pre-shared key identifier and the pre-shared key.

Optionally, in some embodiments of this application,
the RF circuit <NUM> is further configured to: send a first bootstrap request to the server, where the first bootstrap request includes the node identifier and the transmission channel parameter of the terminal; and receive a first acknowledgment message that is sent by the server according to the first bootstrap request, where the first acknowledgment message carries a security parameter.

Optionally, in some embodiments of this application,
the RF circuit <NUM> is further configured to: send a third bootstrap request to the server through the secure channel, where the third bootstrap request includes the node identifier of the terminal; and receive, through the secure channel, device management information that is sent by the server according to the third bootstrap request.

Optionally, in some embodiments of this application,
the RF circuit <NUM> is further configured to send a registration request and service data to an internet of things IoT platform based on the device management information.

Optionally, in some embodiments of this application,
the RF circuit <NUM> is specifically configured to receive, based on the hold on timer parameter within a preset time, the temporary identifier indication message sent by the forwarding apparatus.

<FIG> is a schematic structural diagram of a server according to an embodiment of the present invention. The server may have a relatively large difference because of different configuration or performance. The server may include at least one central processing unit (central processing units, CPU) <NUM> (for example, at least one processor), a memory <NUM>, and at least one storage medium <NUM> (for example, at least one mass storage device) storing an application program <NUM> or data <NUM>. The memory <NUM> and the storage medium <NUM> may be used for temporary storage or permanent storage. A program stored in the storage medium <NUM> may include at least one module (not shown in the figure), and each module may include a series of instruction operations for the server. Further, the central processing unit <NUM> may be configured to: communicate with the storage medium <NUM>, and perform, on the server, the series of instruction operations in the storage medium <NUM>.

The server may further include at least one power supply <NUM>, at least one wired or wireless network interface <NUM>, at least one input/output interface <NUM>, and/or, at least one operating system <NUM>, such as Windows Server™, Mac OS X™, Unix™, Linux™, and FreeBSD™.

The steps performed by the server in the foregoing embodiments may be based on the server structure shown in <FIG>.

In this embodiment of this application, the at least one wired or wireless network interface <NUM> is configured to receive a second bootstrap request sent by a terminal. The second bootstrap request includes a node identifier and a transmission channel parameter of the terminal. The transmission channel parameter is used to indicate a transmission channel supported by the terminal.

The at least one central processing unit <NUM> is configured to determine a forwarding apparatus based on the node identifier and the transmission channel parameter.

The at least one wired or wireless network interface <NUM> is further configured to send a second acknowledgment message to the terminal. The second acknowledgment message carries a transmission channel selected by the server. The transmission channel selected by the server is used to indicate that the terminal receives, through the transmission channel selected by the server, a message sent by the server.

The at least one wired or wireless network interface <NUM> is further configured to: send a temporary identifier indication message to the forwarding apparatus, where the temporary identifier indication message includes a temporary identifier and a temporary key, and the temporary identifier and the temporary key are used by the terminal to initiate a connection request, and receive the connection request sent by the terminal.

The at least one central processing unit <NUM> is further configured to establish a secure channel with the terminal according to the connection request.

The at least one wired or wireless network interface <NUM> is specifically configured to send, through the device trigger transmission channel, a trigger request to a machine type communication interworking function network element. The trigger request includes the pre-shared key identifier and the pre-shared key.

The at least one wired or wireless network interface <NUM> is specifically configured to send, through the short message service transmission channel, a mobile terminated short message service message to a short message service center network element. The mobile terminated short message service message includes the pre-shared key identifier and the pre-shared key.

The at least one wired or wireless network interface <NUM> is specifically configured to send, through the data transmission channel, a non-internet protocol IP packet header data delivery message to a service creation environment function network element. The non-IP packet header data delivery message includes the pre-shared key identifier and the pre-shared key.

Optionally, in some embodiments of this application,
the at least one wired or wireless network interface <NUM> is further configured to send a first acknowledgment message to the terminal based on the node identifier and the transmission channel parameter of the terminal, where the first acknowledgment message carries a security parameter, and the security parameter is used by the terminal to prevent a denial-of-service attack.

The at least one wired or wireless network interface <NUM> is further configured to: receive a third bootstrap request sent by the terminal, where the third bootstrap request includes the node identifier of the terminal, and send device management information to the terminal based on the node identifier of the terminal.

All or some of the foregoing embodiments may be implemented by using software, hardware, firmware, or any combination thereof. When the software is used to implement the embodiments, the embodiments may be implemented completely or partially in a form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, the procedure or functions according to the embodiments of this application are all or partially generated. The computer may be a general-purpose computer, a dedicated computer, a computer network, or other programmable apparatus. The computer instructions may be stored in a computer-readable storage medium or may be transmitted from a computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website, computer, server, or data center to another website, computer, server, or data center in a wired (for example, a coaxial cable, an optical fiber, or a digital subscriber line (DSL)) or wireless (for example, infrared, radio, and microwave, or the like) manner. The computer-readable storage medium may be any usable medium accessible by the computer, or a data storage device, such as a server or a data center, including one or more integrated usable media. The usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, or a magnetic tape), an optical medium (for example, a DVD), a semiconductor medium (for example, a solid-state drive Solid-State Disk (SSD)), or the like.

It may be clearly understood by persons skilled in the art that, for the purpose of convenient and brief description, for a detailed working process of the foregoing system, apparatus, and unit, refer to a corresponding process in the foregoing method embodiments.

In the several embodiments according to this application, it should be understood that the disclosed system, apparatus, and method may be implemented in another manner. In addition, the displayed or discussed mutual couplings or direct couplings or communication connection may be implemented through some interfaces. The indirect couplings or communication connection between the apparatuses or units may be implemented in electronic, mechanical, or other forms.

The units described as separate components may or may not be physically separate, and components displayed as units may or may not be physical units, may be located in one position, or may be distributed on a plurality of network units.

In addition, functional units in the embodiments of this application may be integrated into one processing unit, or each of the units may exist alone physically, or at least two units are integrated into one unit.

When the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, the integrated unit may be stored in a computer-readable storage medium. Based on such an understanding, the technical solutions of this application essentially, or the part contributing to the prior art, or all or some of the technical solutions may be implemented in a form of a software product. The computer software product is stored in a storage medium and includes several instructions for instructing a computer device (which may be a personal computer, a server, or a network device) to perform all or some of the steps of the methods described in the embodiments of this application. The storage medium includes various media that may store program code, such as a USB flash drive, a removable hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a magnetic disk, or an optical disc.

Claim 1:
A method for securely bootstrapping a device, comprising:
sending (<NUM>), by a terminal(<NUM>), a second bootstrap request to a server, wherein the second bootstrap request comprises a node identifier and a transmission channel parameter of the terminal, wherein the node identifier comprises physical hardware identifier information of the terminal, and the transmission channel parameter is used to indicate a transmission channel supported by the terminal;
receiving (<NUM>), by the terminal(<NUM>), a second acknowledgment message from the server, wherein the second acknowledgment message carries a transmission channel selected by the server based on the transmission channel parameter;
receiving (<NUM>), by the terminal(<NUM>) through the transmission channel, a temporary identifier indication message sent by a forwarding apparatus, wherein the temporary identifier indication message comprises a temporary identifier and a temporary key, and the forwarding apparatus is a network element that is configured to send a message to the terminal through the transmission channel selected by the server; and
sending (<NUM>), by the terminal(<NUM>), a connection request to the server based on the temporary identifier and the temporary key, wherein the connection request is used to request to establish a secure channel with the server,
wherein the second bootstrap request further comprises a security parameter, the security parameter is obtained by the terminal(<NUM>) by using a first bootstrap request; and before the sending, by a terminal, a second bootstrap request to a server(<NUM>), the method further comprises:
sending, by the terminal(<NUM>), the first bootstrap request to the server, wherein the first bootstrap request comprises the node identifier and the transmission channel parameter of the terminal; and
receiving, by the terminal(<NUM>), a first acknowledgment message that is sent by the server according to the first bootstrap request, wherein the first acknowledgment message carries the security parameter,
wherein the security parameter is used by the terminal for enabling the server to determine whether the security parameter received from the terminal is a security parameter previously delivered by the server to the terminal, to prevent a denial-of-service attack.