A communication method and device
By receiving the security algorithm information supported by the second node, the target security algorithm and target MAC length of the signaling surface are determined according to the pre-configured algorithm strategy, which solves the problem that the fixed MAC length cannot meet the needs in the prior art, and realizes the flexibility of the MAC length and the efficiency and security of data transmission.
Patent Information
- Application Number
- CN202210602062.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-07-30
- Publication Date
- 2025-06-06
- Estimated Expiration
- 2040-07-30
AI Technical Summary
In the existing communication technology, fixed-length message authentication code (MAC) cannot meet the needs of different nodes for MAC length, affecting communication efficiency and data security.
By receiving the security algorithm information supported by the second node, the target security algorithm and the target MAC length of the signaling surface are determined according to the pre-configured algorithm strategy, and the MAC length is used as the MAC length of the signaling message.
It improves the flexibility of MAC length and can dynamically adjust the MAC length according to communication needs, thereby improving the efficiency and security of data transmission.
Smart Images

Figure CN115550924B_ABST
Abstract
Description
[0001] This application is a divisional application. The application number of the original application is 202080015203.1, and the original application date is July 30, 2020. The entire contents of the original application are incorporated into this application by reference. Technical Field
[0002] The present invention relates to the field of communication technology, in particular to the field of short-distance communication technology, such as cockpit communication, and specifically to a communication method and device. Background Art
[0003] With the rapid development of information technology, communication technology has penetrated into people's lives. While enjoying the convenience of communication, we are also facing the threat of security vulnerabilities and privacy leaks. In order to ensure the security of data transmission and storage during communication, one aspect is to perform integrity protection (or simply called integrity protection) on the data. The integrity protection of data can be performed by calculating the message authentication code (MAC) according to the integrity protection algorithm. The message authentication code (MAC) is a small piece of information generated by a specific algorithm to check the integrity of the message.
[0004] The message authentication code generated by the integrity protection algorithm has a variety of lengths, but during the communication process, only fixed-length message authentication codes can be used for communication. For example, the MAC length supported by LTE and the fifth generation (5th generation, 5G) communication protocol is 32 bits, and the MAC length of Wi-Fi's WPA2 / WPA3 protocol is 64 bits when using TKIP, CCMP-128, and GCMP-128 algorithms; when using CCMP-256 / GCMP-256 algorithms, the MAC length is 128 bits. The Bluetooth protocol uses the AES-CCM algorithm, and the MAC length is 32 bits.
[0005] With the development of communication technology, more and more messages are communicated between nodes, and different nodes have different requirements for MAC length. For example, if a fixed-length MAC with a longer length (such as a 256-bit or 128-bit MAC) is used, the MAC will occupy a larger proportion in the message, which will have a greater impact on the efficiency of message transmission. For another example, the security of different MAC lengths is different. The longer the MAC length, the higher the security. If a shorter MAC is used, it is not enough to protect data security. Therefore, in the existing communication process, a fixed-length MAC cannot meet the demand.
[0006] It can be seen that how to determine a MAC length that meets the requirements is a technical problem that is being studied by those skilled in the art. Summary of the invention
[0007] The embodiments of the present application disclose a communication method and device, which can determine a MAC length that meets the requirements and improve the flexibility of MAC length selection.
[0008] In a first aspect, an embodiment of the present application provides a communication method, the method comprising:
[0009] receiving an association request message from a second node, the association request message including information of a security algorithm supported by the second node;
[0010] Determine, according to the first algorithm selection strategy, a target security algorithm for the signaling plane and a target MAC length for the signaling plane, where the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node;
[0011] A first MAC is generated by a target security algorithm of the signaling plane, and a length of the first MAC is a target MAC length of the signaling plane.
[0012] In an embodiment of the present application, the first node determines the target security algorithm of the signaling plane and the target MAC length of the signaling plane through an algorithm strategy based on information about the security algorithm supported by the second node, and then uses the target MAC length of the signaling plane as the MAC length of the signaling message between the first node and the second node. In this way, different strategies can be configured according to the first node to determine MAC lengths of different lengths, thereby improving the flexibility of the MAC length. Furthermore, the algorithm selection strategy can be pre-configured or defined according to the communication requirements of the first node. For example, a more secure algorithm and a longer MAC length can be given priority, thereby improving data security.
[0013] In a possible implementation manner of the first aspect, determining a target security algorithm for the signaling plane and a target MAC length for the signaling plane according to the first algorithm selection strategy includes:
[0014] A target security algorithm for the signaling plane and a target MAC length for the signaling plane are determined according to the first length selection strategy and the first algorithm selection strategy.
[0015] In another possible implementation of the first aspect, determining the target security algorithm of the signaling plane and the target MAC length of the signaling plane according to the first length selection strategy and the first algorithm selection strategy includes:
[0016] Determining a target security algorithm for the signaling plane according to the first algorithm selection strategy;
[0017] The target MAC length of the signaling plane is determined according to the first length selection strategy and the target security algorithm of the signaling plane.
[0018] In another possible implementation of the first aspect, determining a target security algorithm for the signaling plane and a target MAC length for the signaling plane according to the first algorithm selection strategy includes:
[0019] A target security algorithm for the signaling plane is determined according to the first algorithm selection strategy, and a MAC length corresponding to the target security algorithm for the signaling plane is a target MAC length for the signaling plane.
[0020] In another possible implementation manner of the first aspect, the method further includes:
[0021] A security context request message is sent to the second node, where the security context request message includes a first MAC, information indicating a target security algorithm of the signaling plane, and a target MAC length of the signaling plane, where the first MAC is used to verify the integrity of the security context request message.
[0022] It can be seen that the first node can carry information indicating the target security algorithm of the signaling plane and the target MAC length of the signaling plane in the security context request message, so that the second node can obtain the target security algorithm of the signaling plane and the target MAC length of the signaling plane through the security context request message. Further, the security context request message can carry a first MAC for the second node to verify the integrity of the security context request message and prevent the security context request message from being tampered with by an attacker.
[0023] In another possible implementation of the first aspect, the method further includes:
[0024] A security context request message is sent to the second node, wherein the security context request message includes the first MAC and information indicating a target security algorithm of the signaling plane; the first MAC is used to verify the integrity of the security context request message, and the first MAC is also used to indicate the target MAC length of the signaling plane.
[0025] In another possible implementation of the first aspect, after determining the target security algorithm of the signaling plane and the target MAC length of the signaling plane according to the first algorithm selection strategy, the method further includes:
[0026] Sending a security context request message to the second node, the security context request message including a first MAC, information indicating a target security algorithm of the signaling plane, a target MAC length of the signaling plane, and first identity authentication information; wherein the first MAC is used to verify the integrity of the security context request message, and the first identity authentication information is generated according to a shared key between the first node and the second node;
[0027] Receive a security context response message from the second node, the security context response message including second identity authentication information and a second MAC; wherein the length of the second MAC is the target MAC length of the signaling plane; the second identity authentication information is used to verify the identity of the second node, and the second MAC is used to verify the integrity of the security context response message.
[0028] Among them, the shared key is a secret value shared between the first node and the second node, which can be used to generate identity authentication information to facilitate node identity verification. It can be seen that the first node can generate the first identity authentication information through the shared key, and the first identity authentication information is used by the second node to verify the identity of the first node. Correspondingly, the first node can also verify the identity of the second node through the second identity authentication information. If an attacker wants to use the identity of the second node to obtain the target security algorithm of the signaling plane or the target MAC length of the signaling plane, since the shared key cannot be forged, the identity authentication of the first node cannot be passed, thereby avoiding the first node from communicating with untrusted nodes and improving the communication security of the first node.
[0029] In another possible implementation manner of the first aspect, the method further includes:
[0030] Verify the integrity of the security context response message according to the target security algorithm of the signaling plane and the second MAC;
[0031] Verify the second identity authentication information according to the shared key;
[0032] If the integrity of the security context response message is verified and the second identity authentication information is verified, an association establishment message is sent to the second node, and the association establishment message indicates that an association is established between the second node and the first node.
[0033] In another possible implementation of the first aspect, the security context request message further includes a target security algorithm of the user plane; and the method further includes:
[0034] A target security algorithm for the user plane is determined according to the second algorithm selection policy, where the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
[0035] In another possible implementation manner of the first aspect, the method further includes:
[0036] Acquire an identifier of a first service and / or a data packet size of the first service;
[0037] Determine a target MAC length of the user plane according to a MAC length supported by a target security algorithm of the user plane, and at least one of an identifier of the first service and a data packet size of the first service; the target MAC length of the user plane is used to indicate a length of a MAC for integrity protection of data of the first service;
[0038] A resource scheduling message is sent to the second node, where the resource scheduling message includes a target MAC length of the user plane.
[0039] It can be seen that the target MAC length of the user plane can be determined according to the MAC length supported by the security algorithm of the user plane, the identifier of the first service and the data packet size of the first service. Different services or services with different data packet sizes can determine different MAC lengths, thereby improving the flexibility of the MAC length. On the one hand, for services with higher confidentiality, a longer MAC length can be used, which is difficult to crack and improves data security.
[0040] In a second aspect, an embodiment of the present application further provides a communication method, including:
[0041] Sending an association request message to the first node, where the association request message includes information about a security algorithm supported by the second node;
[0042] Receive a security context request message from the first node, the security context request message including information for indicating a target security algorithm of the signaling plane and information for indicating a target MAC length of the signaling plane; wherein the target security algorithm of the signaling plane and the target MAC length of the signaling plane correspond to a first algorithm selection strategy, and the target security algorithm of the signaling plane belongs to a set of security algorithms indicated by the information of security algorithms supported by the second node.
[0043] In an embodiment of the present application, the second node sends information about the security algorithm supported by the second node to the first node. The first node determines the target security algorithm of the signaling plane and the target MAC length of the signaling plane through a pre-configured or defined algorithm strategy based on the information about the security algorithm supported by the second node, and then uses the target MAC length of the signaling plane as the MAC length of the signaling message between the first node and the second node. In this way, different MAC lengths can be determined according to different strategies configured by the first node, thereby improving the flexibility of the MAC length. For example, an algorithm with higher security can be selected from the algorithms supported by the second node, and a longer MAC length can also be selected, thereby improving data security.
[0044] In a possible implementation of the second aspect, the security context request message includes a first MAC; the length of the first MAC is a target MAC length of the signaling plane; and the method further includes:
[0045] The integrity of the security context request message is verified according to the first MAC through the target security algorithm of the signaling plane.
[0046] In a possible implementation manner of the second aspect, the first MAC is the information used to indicate a target MAC length of a signaling plane.
[0047] In a possible implementation of the second aspect, the target security algorithm of the signaling plane and the target MAC length of the signaling plane are determined according to a first algorithm selection strategy; and the first MAC is generated according to the target security algorithm of the signaling plane.
[0048] In yet another possible implementation of the second aspect, the security context request message further includes first identity authentication information; and the method further includes:
[0049] Verifying the first identity authentication information according to a shared key between the second node and the first node;
[0050] If the integrity of the security context request message is verified and the first identity authentication information is verified, a second MAC is generated by the target security algorithm of the signaling plane, and the length of the second MAC is the target MAC length of the signaling plane;
[0051] A security context response message is sent to the first node, where the security context response message includes a second MAC and second identity authentication information; the second identity authentication information is generated based on a shared key between the second node and the first node.
[0052] In yet another possible implementation of the second aspect, the method further includes: receiving an association establishment message from the first node, where the association establishment message indicates that an association is established between the second node and the first node.
[0053] In another possible implementation of the second aspect, the security context request message further includes information indicating a target security algorithm of a user plane; wherein the target security algorithm of the user plane corresponds to a second algorithm selection policy, and the target security algorithm of the user plane belongs to a set of security algorithms indicated by the information of security algorithms supported by the second node; and the method further includes:
[0054] Receive a resource scheduling message from the first node, the resource scheduling message including a target MAC length of the user plane; the target MAC length of the user plane corresponds to a target security algorithm of the user plane, and at least one of an identifier of a first service and a data packet size of the first service; the target MAC length of the user plane is used to indicate the length of a MAC for integrity protection of data of the first service.
[0055] It can be seen that the first node can determine the target MAC length of the user plane according to the MAC length supported by the security algorithm of the user plane, the identifier of the first service and the data packet size of the first service, and then use the target MAC length of the user plane as the MAC length of the message when processing the first service. In this way, different services or services with different data packet sizes can determine different MAC lengths, thereby improving the flexibility of the MAC length. On the one hand, for services with higher confidentiality, a longer MAC length can be used, which is difficult to crack and improves data security.
[0056] Furthermore, the first node may carry information indicating a target security algorithm of the user plane and a target MAC length of the user plane in a resource scheduling message, so that the second node may obtain the target security algorithm of the user plane and the target MAC length of the user plane through the resource scheduling message.
[0057] In a third aspect, an embodiment of the present application further provides a communication method, including:
[0058] receiving a service attribute reporting response message from the second node, where the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service;
[0059] The target MAC length of the user plane is determined based on the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service. The target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service.
[0060] In an embodiment of the present application, the first node determines the target MAC length of the user plane according to the MAC length supported by the security algorithm of the user plane, the identifier of the first service and / or the data packet size of the first service, and then uses the target MAC length of the user plane as the MAC length of the message when processing the first service. In this way, different services or services with different data packet sizes can determine MAC lengths of different lengths, thereby improving the flexibility of the MAC length. On the one hand, for services with higher security, a longer MAC length can be used, which is difficult to crack and improves data security. On the other hand, for some messages with low security requirements or small data packets, a shorter MAC length can be used to avoid affecting communication efficiency and reduce resource consumption of network transmission.
[0061] In a possible implementation manner of the third aspect, determining the target MAC length of the user plane according to the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service includes:
[0062] Determine a target MAC length of the user plane according to a MAC length supported by a target security algorithm of the user plane and an identifier of the first service;
[0063] Alternatively, the target MAC length of the user plane is determined according to the MAC length supported by the target security algorithm of the user plane and the data packet size of the first service.
[0064] In another possible implementation of the third aspect, determining the target MAC length of the user plane according to the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service includes:
[0065] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identifier of the first service and the MAC length, the MAC length corresponding to the identifier of the first service is determined as the target MAC length of the user plane;
[0066] Alternatively, based on the MAC length supported by the target security algorithm of the user plane and the correspondence between the data packet size and the MAC length of the first service, the MAC length corresponding to the data packet size of the first service is determined as the target MAC length of the user plane.
[0067] In another possible implementation of the third aspect, determining the target MAC length of the user plane according to the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service includes:
[0068] Determine a second length selection strategy according to an identifier of the first service and / or a data packet size of the first service;
[0069] The target MAC length of the user plane is determined according to the second length selection policy and the MAC length supported by the target security algorithm of the user plane.
[0070] In another possible implementation of the third aspect, the identifier of the first service corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0071] Different types of services have different requirements for integrity protection. The first node can determine whether to enable integrity protection based on the identifier of the first service. For services that require integrity protection, the corresponding user plane target MAC is generated, thereby meeting the security requirements of different services. For example, the video upload service is a service with high security requirements, so the data of the video upload service needs to be fully protected, so it is necessary to determine the length of the MAC used to protect the data of the service.
[0072] In yet another possible implementation manner of the third aspect, the method further includes:
[0073] A resource scheduling message is sent to the second node, where the resource scheduling message includes a target MAC length of the user plane.
[0074] In yet another possible implementation manner of the third aspect, the method further includes:
[0075] A third MAC is generated by a target security algorithm of the user plane. The length of the third MAC is the target MAC length of the user plane. The third MAC is used to perform integrity protection on the data of the first service.
[0076] In yet another possible implementation manner of the third aspect, the method further includes:
[0077] Obtain information about security algorithms supported by the second node;
[0078] Determine a target security algorithm for the signaling plane and a target MAC length for the signaling plane according to the first algorithm selection strategy, wherein the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node;
[0079] Generate a fourth MAC using a target security algorithm of the signaling plane, where the length of the fourth MAC is the target MAC length of the signaling plane;
[0080] A resource scheduling message is sent to the second node, where the resource scheduling message includes a fourth MAC and a target MAC length of the user plane, where the fourth MAC is used to perform integrity protection on the resource scheduling message.
[0081] In yet another possible implementation manner of the third aspect, the method further includes:
[0082] A target security algorithm for the user plane is determined according to a second algorithm selection strategy, where the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
[0083] In a fourth aspect, an embodiment of the present application further provides a communication method, including:
[0084] Sending a service attribute reporting response message to the first node, where the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service;
[0085] Receive a resource scheduling message from the first node, the resource scheduling message including a target MAC length of the user plane; wherein the target MAC length of the user plane is a MAC length supported by a target security algorithm of the user plane, and the target MAC length of the user plane corresponds to at least one of an identifier of the first service and a data packet size of the first service; the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of data of the first service.
[0086] In the above embodiment, services of different service types have different requirements for integrity protection, and the first node can determine whether to enable integrity protection according to the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be completely protected, so the MAC length of the corresponding audio noise reduction service can be determined.
[0087] Furthermore, the first node may carry indication information in the resource scheduling message, so that the second node determines whether integrity protection is enabled for the service according to the indication information.
[0088] In a possible implementation of the fourth aspect, the target MAC length of the user plane is determined according to the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service.
[0089] In another possible implementation of the fourth aspect, the identifier of the first service corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0090] Different types of services have different requirements for integrity protection. The first node can determine whether to enable integrity protection based on the identifier of the first service. For services that require integrity protection, the corresponding user plane target MAC is generated, thereby meeting the security requirements of different services. For example, the video upload service is a service with high security requirements, so the data of the video upload service needs to be fully protected, so it is necessary to determine the length of the MAC used to protect the data of the service.
[0091] In another possible implementation of the fourth aspect, the target security algorithm of the user plane corresponds to the second algorithm selection strategy, and the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node.
[0092] In yet another possible implementation of the fourth aspect, the resource scheduling message further includes a fourth MAC, and the method further includes:
[0093] The message integrity of the resource scheduling message is verified according to the fourth MAC through the target security algorithm of the user plane.
[0094] In a fifth aspect, an embodiment of the present application further provides a communication method, including:
[0095] Sending a service attribute reporting response message to the first node, where the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service;
[0096] The target MAC length of the user plane is determined according to the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service; wherein the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service.
[0097] It can be seen that the second node is configured with the same method for determining the target MAC length of the user plane as that in the first node. Therefore, the second node can determine the target MAC length of the user plane based on the MAC length supported by the security algorithm of the user plane, the identifier of the first service and / or the data packet size of the first service, and then use the target MAC length of the user plane as the MAC length of the message when processing the first service. In this way, different services or services with different data packet sizes can determine MAC lengths of different lengths, thereby improving the flexibility of the MAC length.
[0098] By configuring the same method for determining the target MAC length of the user plane in the second node and the first node, the second node can determine the target MAC length of the user plane in the same way as the first node does. In this way, the nodes do not need to send the target MAC length to each other, saving network resources.
[0099] In a possible implementation manner of the fifth aspect, determining the target MAC length of the user plane according to the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service includes:
[0100] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identification ID of the first service and the MAC length, the MAC length corresponding to the ID of the first service is determined as the target MAC length of the user plane;
[0101] Alternatively, based on the MAC length supported by the target security algorithm of the user plane and the correspondence between the data packet size and the MAC length of the first service, the MAC length corresponding to the data packet size of the first service is determined as the target MAC length of the user plane.
[0102] In a possible implementation manner of the fifth aspect, determining the target MAC length of the user plane according to the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service includes:
[0103] Determine a target MAC length of the user plane according to a MAC length supported by a target security algorithm of the user plane and an identifier of the first service;
[0104] Alternatively, the target MAC length of the user plane is determined according to the MAC length supported by the target security algorithm of the user plane and the data packet size of the first service.
[0105] In yet another possible implementation manner of the fifth aspect, determining the target MAC length of the user plane according to the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service includes:
[0106] Determine a second length selection strategy according to the ID of the first service and / or the data packet size of the first service;
[0107] The target MAC length of the user plane is determined according to the second length selection strategy and the MAC length supported by the target security algorithm of the user plane.
[0108] In another possible implementation of the fifth aspect, the identifier of the first service corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0109] Different types of services have different requirements for integrity protection. The first node can determine whether to enable integrity protection based on the identifier of the first service. For services that require integrity protection, the corresponding user plane target MAC is generated, thereby meeting the security requirements of different services. For example, the video upload service is a service with high security requirements, so the data of the video upload service needs to be fully protected, so it is necessary to determine the length of the MAC used to protect the data of the service.
[0110] In another possible implementation of the fifth aspect, the target security algorithm of the user plane corresponds to the second algorithm selection strategy, and the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node.
[0111] In a sixth aspect, an embodiment of the present application further provides a communication method, including:
[0112] receiving a service attribute reporting response message from the second node, where the service attribute reporting response message includes at least one service identifier, where the at least one service identifier includes an identifier of at least one second service, where the at least one second service identifier corresponds to a second service type, and where data of a service of the second service type does not need to be integrity protected;
[0113] A resource scheduling message is sent to the second node, where the resource scheduling message is used to indicate that integrity protection is not started for a service corresponding to an identifier of at least one second service.
[0114] It can be seen that different types of services have different requirements for integrity protection, and the first node can determine whether to enable integrity protection based on the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be fully protected, so the MAC length of the corresponding audio noise reduction service can be determined.
[0115] Furthermore, the first node may carry indication information in the resource scheduling message, so that the second node determines whether integrity protection is enabled for the service according to the indication information.
[0116] In a possible implementation of the sixth aspect, the at least one service identifier includes at least one first service identifier, the at least one first service identifier corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0117] In another possible implementation of the sixth aspect, the resource scheduling message is also used to indicate a target MAC length of a user plane for at least one first service.
[0118] It can be seen that for a service that needs integrity protection, the first node may carry information indicating a target MAC length of the user plane, which is used to indicate the length of the MAC for integrity protection of data of the service.
[0119] In a seventh aspect, an embodiment of the present application further provides a communication method, including:
[0120] Sending a service attribute reporting response message to the first node, where the service attribute reporting response message includes at least one service identifier, where the at least one service identifier includes an identifier of at least one second service, where the at least one second service identifier corresponds to a second service type, and where data of the service of the second service type does not need to be integrity protected;
[0121] receiving a resource scheduling message from the first node;
[0122] According to the resource scheduling message, it is determined that integrity protection is not started for a service corresponding to an identifier of at least one second service.
[0123] It can be seen that different types of services have different requirements for integrity protection, and the first node can determine whether to enable integrity protection based on the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be fully protected, so the MAC length of the corresponding audio noise reduction service can be determined.
[0124] In another possible implementation of the seventh aspect, the at least one service identifier includes an identifier of at least one first service, the at least one first service identifier corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected; and the method further includes:
[0125] According to the resource scheduling message, the service startup integrity protection corresponding to the identifier of at least one first service is determined.
[0126] In yet another possible implementation of the seventh aspect, the resource scheduling message is further used to indicate the length of a MAC for integrity protection of data of at least one first service.
[0127] In an eighth aspect, an embodiment of the present application provides a communication device, including:
[0128] A receiving unit, configured to receive an association request message from a second node, the association request message including information about a security algorithm supported by the second node;
[0129] a processing unit, configured to determine a target security algorithm of a signaling plane and a target MAC length of a signaling plane according to a first algorithm selection strategy, wherein the target security algorithm of the signaling plane belongs to a set of security algorithms indicated by the information of security algorithms supported by the second node;
[0130] The above-mentioned processing unit is further used to generate a first MAC through a target security algorithm of the signaling plane, and the length of the first MAC is the target MAC length of the signaling plane.
[0131] In an embodiment of the present application, the above-mentioned device determines the target security algorithm of the signaling plane and the target MAC length of the signaling plane through a pre-configured or defined algorithm strategy based on the information of the security algorithm supported by the second node, and then uses the target MAC length of the signaling plane as the MAC length of the signaling message between the first node and the second node. In this way, MAC lengths of different lengths can be determined according to different strategies configured in the above-mentioned device, thereby improving the flexibility of the MAC length. Furthermore, the algorithm selection strategy can be pre-configured or defined according to the communication requirements of the first node. For example, algorithms with higher security and longer MAC lengths can be preferentially selected to improve data security.
[0132] In a possible implementation manner of the eighth aspect, the processing unit is specifically configured to:
[0133] A target security algorithm for the signaling plane and a target MAC length for the signaling plane are determined according to the first length selection strategy and the first algorithm selection strategy.
[0134] In yet another possible implementation manner of the eighth aspect, the processing unit is specifically configured to:
[0135] The target security algorithm of the signaling plane is determined according to the first algorithm selection strategy, and the MAC length corresponding to the target security algorithm of the signaling plane is the target MAC length of the signaling plane.
[0136] In yet another possible implementation manner of the eighth aspect, the device further includes:
[0137] A sending unit is used to send a security context request message to the second node, where the security context request message includes a first MAC, information indicating a target security algorithm of the signaling plane, and a target MAC length of the signaling plane, where the first MAC is used to verify the integrity of the security context request message.
[0138] In yet another possible implementation manner of the eighth aspect, the device further includes:
[0139] A sending unit is used to send a security context request message to the second node, wherein the security context request message includes the first MAC and information indicating a target security algorithm of the signaling plane; the first MAC is used to verify the integrity of the security context request message, and the first MAC is also used to indicate the target MAC length of the signaling plane.
[0140] In another possible implementation of the eighth aspect, the apparatus further includes a sending unit, configured to send a security context request message to the second node, the security context request message including a first MAC, information indicating a target security algorithm of a signaling plane, a target MAC length of the signaling plane, and first identity authentication information; wherein the first MAC is used to verify the integrity of the security context request message, and the first identity authentication information is generated according to a shared key between the first node and the second node;
[0141] The above-mentioned receiving unit is also used to receive a security context response message from the second node, and the security context response message includes second identity authentication information and a second MAC; wherein the length of the second MAC is the target MAC length of the signaling plane; the second identity authentication information is used to verify the identity of the second node, and the second MAC is used to verify the integrity of the security context response message.
[0142] Among them, the shared key is a secret value shared between the first node and the second node, which can be used to generate identity authentication information to facilitate node identity verification. It can be seen that the above-mentioned device can generate first identity authentication information through the shared key, and the first identity authentication information is used by the second node to verify the identity of the first node. Correspondingly, the first node can also verify the identity of the second node through the second identity authentication information. If an attacker wants to impersonate the identity of the second node to obtain the target security algorithm of the signaling plane or the target MAC length of the signaling plane, since the shared key cannot be forged, the identity authentication of the above-mentioned device cannot be passed, thereby avoiding the first node from communicating with untrusted nodes and improving the communication security of the first node.
[0143] In yet another possible implementation of the eighth aspect, the security context request message further includes a target security algorithm of the user plane; and the processing unit is specifically configured to:
[0144] A target security algorithm for the user plane is determined according to the second algorithm selection policy, where the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
[0145] In yet another possible implementation of the eighth aspect, the receiving unit is further configured to obtain an identifier of the first service and / or a data packet size of the first service;
[0146] The processing unit is further configured to determine a target MAC length of the user plane according to a MAC length supported by a target security algorithm of the user plane, and at least one of an identifier of the first service and a data packet size of the first service; wherein the target MAC length of the user plane is used to indicate a length of a MAC for integrity protection of data of the first service;
[0147] The sending unit is further used to send a resource scheduling message to the second node, where the resource scheduling message includes a target MAC length of the user plane.
[0148] In a ninth aspect, an embodiment of the present application provides a communication device, including:
[0149] A sending unit, configured to send an association request message to the first node, where the association request message includes information about a security algorithm supported by the second node;
[0150] A receiving unit is used to receive a security context request message from a first node, the security context request message including information for indicating a target security algorithm for a signaling plane and information for indicating a target MAC length for the signaling plane; wherein the target security algorithm for the signaling plane and the target MAC length for the signaling plane correspond to a first algorithm selection strategy, and the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
[0151] In an embodiment of the present application, the above-mentioned device sends information about the security algorithm supported by the second node to the first node. The first node determines the target security algorithm of the signaling plane and the target MAC length of the signaling plane through a pre-configured or defined algorithm strategy based on the information about the security algorithm supported by the second node, and then uses the target MAC length of the signaling plane as the MAC length of the signaling message between the first node and the second node. In this way, MAC lengths of different lengths can be determined according to different strategies configured in the above-mentioned device, thereby improving the flexibility of the MAC length. For example, an algorithm with higher security can be selected from the algorithms supported by the second node, and a longer MAC length can also be selected, thereby improving data security.
[0152] In a possible implementation manner of the ninth aspect, the security context request message includes a first MAC; the length of the first MAC is a target MAC length of the signaling plane; and the apparatus further includes:
[0153] The processing unit is used to verify the integrity of the security context request message according to the first MAC through a target security algorithm of the signaling plane.
[0154] In a possible implementation manner of the ninth aspect, the first MAC is the information used to indicate a target MAC length of a signaling plane.
[0155] In a possible implementation manner of the ninth aspect, the security context request message further includes first identity authentication information; the processing unit is further configured to verify the first identity authentication information according to a shared key between the second node and the first node;
[0156] The processing unit is further configured to generate a second MAC by using a target security algorithm of the signaling plane if the integrity of the security context request message is verified and the first identity authentication information is verified, and the length of the second MAC is the target MAC length of the signaling plane;
[0157] The above-mentioned sending unit is also used to send a security context response message to the first node, and the security context response message includes a second MAC and second identity authentication information; the second identity authentication information is generated based on a shared key between the second node and the first node.
[0158] In another possible implementation of the ninth aspect, the security context request message further includes information indicating a target security algorithm of a user plane; wherein the target security algorithm of the user plane corresponds to a second algorithm selection policy, and the target security algorithm of the user plane belongs to a set of security algorithms indicated by the information of security algorithms supported by the second node;
[0159] The above-mentioned receiving unit is also used to receive a resource scheduling message from the first node, which includes a target MAC length of the user plane; wherein the target MAC length of the user plane corresponds to the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service; the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service.
[0160] In a tenth aspect, an embodiment of the present application provides a communication device, including:
[0161] A receiving unit, configured to receive a service attribute reporting response message from the second node, where the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service;
[0162] A processing unit is used to determine a target MAC length of the user plane based on a MAC length supported by a target security algorithm of the user plane, an identifier of a first service, and at least one of a data packet size of the first service, wherein the target MAC length of the user plane is used to indicate the length of a MAC for integrity protection of data of the first service.
[0163] In an embodiment of the present application, the above-mentioned device determines the target MAC length of the user plane according to the MAC length supported by the security algorithm of the user plane, the identifier of the first service and the data packet size of the first service, and then uses the target MAC length of the user plane as the MAC length of the message when processing the first service. In this way, different MAC lengths can be determined for different services or services with different data packet sizes, thereby improving the flexibility of the MAC length. On the one hand, for services with higher confidentiality, a longer MAC length can be used, which is difficult to crack and improves data security. On the other hand, for some messages that do not require high privacy or have smaller data packets, a shorter MAC length can be used to avoid affecting communication efficiency and reduce resource consumption of network transmission.
[0164] In a possible implementation manner of the tenth aspect, the processing unit is specifically configured to:
[0165] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identifier of the first service and the MAC length, the MAC length corresponding to the identifier of the first service is determined as the target MAC length of the user plane;
[0166] Alternatively, based on the MAC length supported by the target security algorithm of the user plane and the correspondence between the data packet size and the MAC length of the first service, the MAC length corresponding to the data packet size of the first service is determined as the target MAC length of the user plane.
[0167] In yet another possible implementation manner of the tenth aspect, the processing unit is specifically configured to:
[0168] Determine a second length selection strategy according to an identifier of the first service and / or a data packet size of the first service;
[0169] The target MAC length of the user plane is determined according to the second length selection policy and the MAC length supported by the target security algorithm of the user plane.
[0170] In another possible implementation of the tenth aspect, the identifier of the first service corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0171] In another possible implementation of the tenth aspect, the apparatus further includes a sending unit configured to send a resource scheduling message to the second node, wherein the resource scheduling message includes a target MAC length of the user plane.
[0172] In yet another possible implementation manner of the tenth aspect, the processing unit is further configured to:
[0173] A third MAC is generated by a target security algorithm of the user plane. The length of the third MAC is the target MAC length of the user plane. The third MAC is used to perform integrity protection on data of the first service.
[0174] In yet another possible implementation of the tenth aspect, the receiving unit is further configured to obtain information about a security algorithm supported by the second node;
[0175] The processing unit is further configured to determine a target security algorithm of the signaling plane and a target MAC length of the signaling plane according to the first algorithm selection strategy, wherein the target security algorithm of the signaling plane belongs to a set of security algorithms indicated by the information of the security algorithms supported by the second node;
[0176] The processing unit is further configured to generate a fourth MAC by using a target security algorithm of the signaling plane, wherein the length of the fourth MAC is the target MAC length of the signaling plane;
[0177] The above-mentioned sending unit is also used to send a resource scheduling message to the second node, where the resource scheduling message includes a fourth MAC and a target MAC length of the user plane, and the fourth MAC is used to perform integrity protection on the resource scheduling message.
[0178] In yet another possible implementation manner of the tenth aspect, the processing unit is further configured to:
[0179] A target security algorithm for the user plane is determined according to the second algorithm selection policy, where the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
[0180] In an eleventh aspect, an embodiment of the present application provides a communication device, including:
[0181] A sending unit, configured to send a service attribute reporting response message to the first node, where the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service;
[0182] A receiving unit is used to receive a resource scheduling message from a first node, wherein the resource scheduling message includes a target MAC length of a user plane; wherein the target MAC length of the user plane is a MAC length supported by a target security algorithm of the user plane, and the target MAC length of the user plane corresponds to at least one of an identifier of a first service and a data packet size of the first service; and the target MAC length of the user plane is used to indicate the length of a MAC for integrity protection of data of the first service.
[0183] In the above embodiment, different types of services have different requirements for integrity protection, and the above device 170 can determine whether to enable integrity protection according to the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be completely protected.
[0184] In a possible implementation of the eleventh aspect, the identifier of the first service corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0185] In another possible implementation of the eleventh aspect, the target security algorithm of the user plane corresponds to the second algorithm selection strategy, and the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node.
[0186] In yet another possible implementation of the eleventh aspect, the resource scheduling message further includes a fourth MAC; and the processing unit is further configured to:
[0187] The message integrity of the resource scheduling message is verified according to the fourth MAC through the target security algorithm of the user plane.
[0188] In a twelfth aspect, an embodiment of the present application provides a communication device, including:
[0189] A sending unit, configured to send a service attribute reporting response message to the first node, where the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service;
[0190] A processing unit, used to determine a target MAC length of the user plane based on a MAC length supported by a target security algorithm of the user plane, an identifier of a first service, and at least one of a data packet size of the first service; wherein the target MAC length of the user plane is used to indicate the length of a MAC for integrity protection of data of the first service.
[0191] The above-mentioned device is configured with the same method for determining the target MAC length of the user plane as that in the first node. Therefore, the above-mentioned device can determine the target MAC length of the user plane based on the MAC length supported by the security algorithm of the user plane, the identifier of the first service and / or the data packet size of the first service, and then use the target MAC length of the user plane as the MAC length of the message when processing the first service. In this way, different services or services with different data packet sizes can determine MAC lengths of different lengths, thereby improving the flexibility of the MAC length.
[0192] By configuring the same method for determining the target MAC length of the user plane in the above device and the first node, the above device can determine the target MAC length of the user plane in the same manner as the first node determines the target MAC length of the user plane. In this way, the node does not need to send the target MAC length to the other party, saving network resources.
[0193] In yet another possible implementation manner of the twelfth aspect, the processing unit is specifically configured to:
[0194] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identification ID of the first service and the MAC length, the MAC length corresponding to the ID of the first service is determined as the target MAC length of the user plane;
[0195] Alternatively, based on the MAC length supported by the target security algorithm of the user plane and the correspondence between the data packet size and the MAC length of the first service, the MAC length corresponding to the data packet size of the first service is determined as the target MAC length of the user plane.
[0196] In yet another possible implementation manner of the twelfth aspect, the processing unit is specifically configured to:
[0197] Determine a second length selection strategy according to the ID of the first service and / or the data packet size of the first service;
[0198] The target MAC length of the user plane is determined according to the second length selection policy and the MAC length supported by the target security algorithm of the user plane.
[0199] In another possible implementation of the twelfth aspect, the identifier of the first service corresponds to a first service type, wherein data of services of the first service type needs to be integrity protected.
[0200] In another possible implementation of the twelfth aspect, the target security algorithm of the user plane corresponds to a second algorithm selection strategy, and the target security algorithm of the user plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
[0201] In a thirteenth aspect, an embodiment of the present application provides a communication device, including:
[0202] a receiving unit, configured to receive a service attribute reporting response message from a second node, the service attribute reporting response message including at least one service identifier, the at least one service identifier including at least one second service identifier, the at least one second service identifier corresponding to a second service type, wherein data of a service of the second service type does not need to be integrity protected;
[0203] The sending unit is used to send a resource scheduling message to the second node, where the resource scheduling message is used to indicate that integrity protection is not started for a service corresponding to an identifier of at least one second service.
[0204] It can be seen that different types of services have different requirements for integrity protection, and the above device can determine whether to turn on integrity protection according to the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be fully protected, so the MAC length of the corresponding audio noise reduction service can be determined.
[0205] In a possible implementation of the thirteenth aspect, the at least one service identifier includes at least one first service identifier, the at least one first service identifier corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0206] In another possible implementation of the thirteenth aspect, the resource scheduling message is also used to indicate a target MAC length of a user plane for at least one first service.
[0207] In a fourteenth aspect, an embodiment of the present application provides a communication device, including:
[0208] a sending unit, configured to send a service attribute reporting response message to the first node, where the service attribute reporting response message includes at least one service identifier, where the at least one service identifier includes an identifier of at least one second service, where the at least one second service identifier corresponds to a second service type, and where data of a service of the second service type does not need to be integrity protected;
[0209] A receiving unit, configured to receive a resource scheduling message from the first node;
[0210] The processing unit is used to determine, according to the resource scheduling message, that the service corresponding to the identifier of at least one second service does not start integrity protection.
[0211] It can be seen that different types of services have different requirements for integrity protection, and the first node can determine whether to enable integrity protection based on the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be fully protected, so the MAC length of the corresponding audio noise reduction service can be determined.
[0212] In a possible implementation manner of the fourteenth aspect, the at least one service identifier includes at least one first service identifier, the at least one first service identifier corresponds to a first service type, and data of a service of the first service type needs to be integrity protected;
[0213] The processing unit is further configured to determine, according to the resource scheduling message, service startup integrity protection corresponding to an identifier of at least one first service.
[0214] In another possible implementation of the fourteenth aspect, the resource scheduling message is also used to indicate the length of a MAC for integrity protection of data of at least one first service.
[0215] In a fifteenth aspect, an embodiment of the present application further provides a communication method, including:
[0216] Receiving an association request message from a second node, the association request message including information about a security algorithm supported by the second node and an identity of the second node;
[0217] Determine, according to the first algorithm selection strategy, a target security algorithm for the signaling plane and a target MAC length for the signaling plane, where the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node;
[0218] Determine a target security algorithm for the user plane and a target MAC length for the user plane according to the second algorithm selection strategy and the identity of the second node, where the target security algorithm for the user plane belongs to the set of security algorithms indicated by the information of the security algorithms supported by the second node; the target MAC length for the user plane is used to indicate the length of the MAC for integrity protection of data of the first service;
[0219] A first MAC is generated by a target security algorithm of the signaling plane, and a length of the first MAC is a target MAC length of the signaling plane.
[0220] In an embodiment of the present application, the first node can be configured with different strategies to determine MAC lengths of different lengths to improve the flexibility of the MAC length. Furthermore, the first node can determine the target security algorithm of the user plane and the target MAC of the user plane based on the identity of the second node to meet the requirements of different types of nodes for MAC length. For example, some nodes that handle important business can use a longer MAC length to improve security. For another example, some auxiliary nodes or ordinary nodes can use a shorter MAC length to reduce resource consumption and improve communication efficiency.
[0221] In a possible implementation manner of the fifteenth aspect, determining a target security algorithm for the signaling plane and a target MAC length for the signaling plane according to the first algorithm selection strategy includes:
[0222] A target security algorithm for the signaling plane and a target MAC length for the signaling plane are determined according to the first length selection strategy and the first algorithm selection strategy.
[0223] In yet another possible implementation of the fifteenth aspect, the determining the target security algorithm of the signaling plane and the target MAC length of the signaling plane according to the first algorithm selection strategy includes:
[0224] Determining a target security algorithm for the signaling plane according to the first algorithm selection strategy;
[0225] The target MAC length of the signaling plane is determined according to the first length selection strategy and the target security algorithm of the signaling plane.
[0226] In yet another possible implementation of the fifteenth aspect, the determining the target security algorithm of the signaling plane and the target MAC length of the signaling plane according to the first algorithm selection strategy includes:
[0227] A target security algorithm for the signaling plane is determined according to the first algorithm selection strategy, and a MAC length corresponding to the target security algorithm for the signaling plane is a target MAC length for the signaling plane.
[0228] In yet another possible implementation of the fifteenth aspect, determining the target security algorithm of the user plane and the target MAC length of the user plane according to the second algorithm selection strategy and the identity of the second node includes:
[0229] Determining a target security algorithm for the user plane according to a second algorithm selection strategy;
[0230] Determine a second length selection strategy according to the identity identifier of the second node;
[0231] The target MAC length of the signaling plane is determined according to the second length selection strategy and the target security algorithm of the user plane.
[0232] In yet another possible implementation of the fifteenth aspect, determining the target security algorithm of the user plane and the target MAC length of the user plane according to the second algorithm selection strategy and the identity of the second node includes:
[0233] Determining a target security algorithm for the user plane according to a second algorithm selection strategy;
[0234] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identity identifier of the second node and the MAC length, the MAC length corresponding to the identity identifier of the second node is determined as the target MAC length of the user plane.
[0235] In yet another possible implementation manner of the fifteenth aspect, the method further includes:
[0236] A security context request message is sent to the second node, where the security context request message includes a first MAC, information indicating a target security algorithm for the signaling plane, information indicating a target security algorithm for the user plane, a target MAC length for the signaling plane, and a target MAC length for the user plane. The first MAC is used to verify the integrity of the security context request message.
[0237] In yet another possible implementation manner of the fifteenth aspect, the method further includes:
[0238] Sending a security context request message to the second node, the security context request message including a first MAC, information indicating a target security algorithm for a signaling plane, information indicating a target security algorithm for a user plane, a target MAC length for a signaling plane, a target MAC length for a user plane, and first identity authentication information; wherein the first MAC is used to verify the integrity of the security context request message, and the first identity authentication information is generated according to a shared key between the first node and the second node;
[0239] Receive a security context response message from the second node, the security context response message including second identity authentication information and a second MAC; wherein the length of the second MAC is the target MAC length of the signaling plane; the second identity authentication information is used to verify the identity of the second node, and the second MAC is used to verify the integrity of the security context response message.
[0240] In yet another possible implementation manner of the fifteenth aspect, the method further includes:
[0241] Verify the integrity of the security context response message according to the target security algorithm of the signaling plane and the second MAC;
[0242] Verify the second identity authentication information according to the shared key;
[0243] If the integrity of the security context response message is verified and the second identity authentication information is verified, an association establishment message is sent to the second node, and the association establishment message indicates that an association is established between the second node and the first node.
[0244] In a sixteenth aspect, an embodiment of the present application further provides a communication method, including:
[0245] Sending an association request message to the first node, the association request message including information about a security algorithm supported by the second node and an identity of the second node;
[0246] Receive a security context request message from the first node, the security context request message including information for indicating a target security algorithm for the signaling plane, information for indicating a target security algorithm for the user plane, a target MAC length for the signaling plane, a target MAC length for the user plane, and a first MAC; wherein the target security algorithm for the signaling plane and the target MAC length for the signaling plane correspond to a first algorithm selection policy, and the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by information on security algorithms supported by the second node; the target security algorithm for the user plane and the target MAC length for the user plane correspond to a second algorithm selection policy and an identity of the second node, and the target security algorithm for the user plane belongs to a set of security algorithms indicated by information on security algorithms supported by the second node; the length of the first MAC is the target MAC length for the signaling plane;
[0247] The integrity of the security context request message is verified according to the first MAC through the target security algorithm of the signaling plane.
[0248] In an embodiment of the present application, different strategies can be configured in the first node to determine MAC lengths of different lengths to improve the flexibility of the MAC length. Furthermore, the first node can determine the target security algorithm of the user plane and the target MAC of the user plane based on the identity of the second node to meet the requirements of different types of nodes for MAC length. The second node obtains the target MAC length from the first node and protects the integrity of the message through the target MAC length. For example, some nodes that handle important business can use a longer MAC length to improve security. For another example, some auxiliary nodes or ordinary nodes can use a shorter MAC length to reduce resource consumption and improve communication efficiency.
[0249] In a possible implementation of the sixteenth aspect, the target security algorithm of the signaling plane and the target MAC length of the signaling plane are determined according to a first algorithm selection strategy, and the target security algorithm of the signaling plane belongs to the set of security algorithms indicated by the information of the security algorithms supported by the second node; the first MAC is generated according to the target security algorithm of the signaling plane.
[0250] In another possible implementation of the sixteenth aspect, the target security algorithm of the user plane and the target MAC length of the user plane are determined according to a second algorithm selection strategy, and the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node; the first MAC is generated according to the target security algorithm of the signaling plane.
[0251] In yet another possible implementation of the sixteenth aspect, the security context request message further includes first identity authentication information; and the method further includes:
[0252] Verifying the first identity authentication information according to a shared key between the second node and the first node;
[0253] If the integrity of the security context request message is verified and the first identity authentication information is verified, a second MAC is generated by the target security algorithm of the signaling plane, and the length of the second MAC is the target MAC length of the signaling plane;
[0254] A security context response message is sent to the first node, where the security context response message includes a second MAC and second identity authentication information; the second identity authentication information is generated based on a shared key between the second node and the first node.
[0255] In another possible implementation of the sixteenth aspect, the method further includes: receiving an association establishment message from the first node, wherein the association establishment message indicates that an association is established between the second node and the first node.
[0256] In a seventeenth aspect, an embodiment of the present application further provides a communication device, including:
[0257] A receiving unit, configured to receive an association request message from a second node, wherein the association request message includes information about a security algorithm supported by the second node and an identity of the second node;
[0258] a processing unit, configured to determine a target security algorithm of a signaling plane and a target MAC length of a signaling plane according to a first algorithm selection strategy, wherein the target security algorithm of the signaling plane belongs to a set of security algorithms indicated by the information of security algorithms supported by the second node;
[0259] The processing unit is further configured to determine a target security algorithm for the user plane and a target MAC length for the user plane according to the second algorithm selection strategy and the identity of the second node, wherein the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information of the security algorithms supported by the second node; the target MAC length for the user plane is used to indicate the length of the MAC for performing integrity protection on the data of the first service;
[0260] The above-mentioned processing unit is further used to generate a first MAC through a target security algorithm of the signaling plane, and the length of the first MAC is the target MAC length of the signaling plane.
[0261] In an embodiment of the present application, the above-mentioned device can be configured with different strategies to determine MAC lengths of different lengths to improve the flexibility of the MAC length. Furthermore, the above-mentioned device can determine the target security algorithm of the user plane and the target MAC of the user plane according to the identity of the second node to meet the requirements of different types of nodes for MAC length. For example, some nodes that handle important business can use a longer MAC length to improve security. For another example, some auxiliary nodes or ordinary nodes can use a shorter MAC length to reduce resource consumption and improve communication efficiency.
[0262] In a possible implementation manner of the seventeenth aspect, the processing unit is specifically configured to:
[0263] A target security algorithm for the signaling plane and a target MAC length for the signaling plane are determined according to the first length selection strategy and the first algorithm selection strategy.
[0264] In yet another possible implementation manner of the seventeenth aspect, the processing unit is specifically configured to:
[0265] Determining a target security algorithm for the signaling plane according to the first algorithm selection strategy;
[0266] The target MAC length of the signaling plane is determined according to the first length selection strategy and the target security algorithm of the signaling plane.
[0267] In yet another possible implementation manner of the seventeenth aspect, the processing unit is specifically configured to:
[0268] A target security algorithm for the signaling plane is determined according to the first algorithm selection strategy, and a MAC length corresponding to the target security algorithm for the signaling plane is a target MAC length for the signaling plane.
[0269] In yet another possible implementation manner of the seventeenth aspect, the processing unit is specifically configured to:
[0270] Determining a target security algorithm for the user plane according to a second algorithm selection strategy;
[0271] Determine a second length selection strategy according to the identity identifier of the second node;
[0272] The target MAC length of the signaling plane is determined according to the second length selection strategy and the target security algorithm of the user plane.
[0273] In yet another possible implementation manner of the seventeenth aspect, the processing unit is specifically configured to:
[0274] Determining a target security algorithm for the user plane according to a second algorithm selection strategy;
[0275] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identity identifier of the second node and the MAC length, the MAC length corresponding to the identity identifier of the second node is determined as the target MAC length of the user plane.
[0276] In another possible implementation of the seventeenth aspect, the above-mentioned device also includes a sending unit, which is used to send a security context request message to the second node, and the security context request message includes a first MAC, information indicating a target security algorithm for the signaling plane, information indicating a target security algorithm for the user plane, a target MAC length for the signaling plane, and a target MAC length for the user plane, and the first MAC is used to verify the integrity of the security context request message.
[0277] In another possible implementation of the seventeenth aspect, the apparatus further includes a sending unit, the sending unit being used to send a security context request message to the second node, the security context request message including a first MAC, information indicating a target security algorithm for a signaling plane, information indicating a target security algorithm for a user plane, a target MAC length for a signaling plane, a target MAC length for a user plane, and first identity authentication information; wherein the first MAC is used to verify the integrity of the security context request message, and the first identity authentication information is generated based on a shared key between the first node and the second node;
[0278] The above-mentioned receiving unit is also used to receive a security context response message from the second node, and the security context response message includes second identity authentication information and a second MAC; wherein the length of the second MAC is the target MAC length of the signaling plane; the second identity authentication information is used to verify the identity of the second node, and the second MAC is used to verify the integrity of the security context response message.
[0279] In yet another possible implementation of the seventeenth aspect, the processing unit is further configured to verify the integrity of the security context response message according to a target security algorithm of the signaling plane and the second MAC;
[0280] The processing unit is further used to verify the second identity authentication information according to the shared key;
[0281] The sending unit is further configured to send an association establishment message to the second node if the integrity of the security context response message is verified and the second identity authentication information is verified, wherein the association establishment message indicates that an association is established between the second node and the first node.
[0282] In an eighteenth aspect, an embodiment of the present application further provides a communication device, including:
[0283] A sending unit, configured to send an association request message to the first node, the association request message including information about a security algorithm supported by the second node and an identity of the second node;
[0284] A receiving unit, configured to receive a security context request message from a first node, the security context request message comprising information indicating a target security algorithm for a signaling plane, information indicating a target security algorithm for a user plane, a target MAC length for a signaling plane, a target MAC length for a user plane, and a first MAC; wherein the target security algorithm for the signaling plane and the target MAC length for the signaling plane correspond to a first algorithm selection strategy, and the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by information on security algorithms supported by a second node; the target security algorithm for the user plane and the target MAC length for the user plane correspond to a second algorithm selection strategy and an identity of the second node, and the target security algorithm for the user plane belongs to a set of security algorithms indicated by information on security algorithms supported by the second node; the length of the first MAC is the target MAC length for the signaling plane;
[0285] The processing unit is used to verify the integrity of the security context request message according to the first MAC through a target security algorithm of the signaling plane.
[0286] In an embodiment of the present application, different strategies can be configured in the first node to determine MAC lengths of different lengths to improve the flexibility of the MAC length. Furthermore, the first node can determine the target security algorithm of the user plane and the target MAC of the user plane based on the identity of the second node to meet the requirements of different types of nodes for MAC length. The above-mentioned device obtains the target MAC length from the first node and protects the integrity of the message through the target MAC length. For example, some nodes that handle important business can use a longer MAC length to improve security. For another example, some auxiliary nodes or ordinary nodes can use a shorter MAC length to reduce resource consumption and improve communication efficiency.
[0287] In a possible implementation of the eighteenth aspect, the target security algorithm of the signaling plane and the target MAC length of the signaling plane are determined according to a first algorithm selection strategy, and the target security algorithm of the signaling plane belongs to the set of security algorithms indicated by the information of the security algorithms supported by the second node; the first MAC is generated according to the target security algorithm of the signaling plane.
[0288] In another possible implementation of the eighteenth aspect, the target security algorithm of the user plane and the target MAC length of the user plane are determined according to a second algorithm selection strategy, and the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node; the first MAC is generated according to the target security algorithm of the signaling plane.
[0289] In another possible implementation of the eighteenth aspect, the security context request message further includes first identity authentication information; the processing unit is further configured to verify the first identity authentication information according to a shared key between the second node and the first node;
[0290] If the integrity of the security context request message is verified and the first identity authentication information is verified, a second MAC is generated by the target security algorithm of the signaling plane, and the length of the second MAC is the target MAC length of the signaling plane;
[0291] The above-mentioned receiving unit is also used to send a security context response message to the first node, and the security context response message includes a second MAC and second identity authentication information; the second identity authentication information is generated based on a shared key between the second node and the first node.
[0292] In another possible implementation of the eighteenth aspect, the above-mentioned receiving unit is also used to receive an association establishment message from the first node, and the association establishment message indicates that an association is established between the second node and the first node.
[0293] In the nineteenth aspect, an embodiment of the present application also provides a communication device, comprising at least one processor and a communication interface, the at least one processor being used to call a computer program stored in at least one memory so that the device implements the method described in the first aspect or any possible implementation of the first aspect, or implements the method described in the third aspect or any possible implementation of the third aspect, or implements the method described in the sixth aspect or any possible implementation of the sixth aspect, or implements the method described in the fifteenth aspect or any possible implementation of the fifteenth aspect.
[0294] In the twentieth aspect, an embodiment of the present application also provides a communication device, comprising at least one processor and a communication interface, the at least one processor being used to call a computer program stored in at least one memory so that the device implements the method described in the second aspect or any possible implementation of the second aspect, or implements the method described in the fourth aspect or any possible implementation of the fourth aspect, or implements the method described in the fifth aspect or any possible implementation of the fifth aspect, or implements the method described in the seventh aspect or any possible implementation of the seventh aspect, or implements the method described in the sixteenth aspect or any possible implementation of the sixteenth aspect.
[0295] In the twenty-first aspect, an embodiment of the present application also provides a communication system, which includes a first node and a second node, wherein the first node includes the device described in the eighth aspect or any possible implementation of the eighth aspect, and the second node includes the device described in the ninth aspect or any possible implementation of the ninth aspect.
[0296] In the twenty-second aspect, an embodiment of the present application also provides a communication system, which includes a first node and a second node, wherein the first node includes the device described in the tenth aspect or any possible implementation of the tenth aspect, and the second node includes the device described in the eleventh aspect or any possible implementation of the eleventh aspect.
[0297] In the twenty-third aspect, an embodiment of the present application also provides a communication system, which includes a first node and a second node, wherein the first node includes the device described in the tenth aspect or any possible implementation of the tenth aspect, and the second node includes the device described in the twelfth aspect or any possible implementation of the twelfth aspect.
[0298] In the twenty-fourth aspect, an embodiment of the present application also provides a communication system, which includes a first node and a second node, wherein the first node includes the device described in the thirteenth aspect or any possible implementation of the thirteenth aspect, and the second node includes the device described in the fourteenth aspect or any possible implementation of the fourteenth aspect.
[0299] In aspect twenty-fifth, an embodiment of the present application also provides a communication system, which includes a first node and a second node, wherein the first node includes the device described in aspect seventeen or any possible implementation of aspect seventeen, and the second node includes the device described in aspect eighteen or any possible implementation of aspect eighteen.
[0300] In the twenty-sixth aspect, an embodiment of the present application discloses a computer-readable storage medium, in which a computer program is stored. When the computer program runs on one or more processors, the method described in the first aspect or any possible implementation of the first aspect is executed, or the method described in the third aspect or any possible implementation of the third aspect is executed, or the method described in the sixth aspect or any possible implementation of the sixth aspect is executed, or the method described in the fifteenth aspect or any possible implementation of the fifteenth aspect is executed.
[0301] In aspect twenty-seven, an embodiment of the present application discloses a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program runs on one or more processors, executes the method described in aspect two or any possible implementation of aspect two, or executes the method described in aspect four or any possible implementation of aspect four, or executes the method described in aspect five or any possible implementation of aspect five, or executes the method described in aspect seven or any possible implementation of aspect seven, or executes the method described in aspect sixteen or any possible implementation of aspect sixteen.
[0302] In the twenty-eighth aspect, an embodiment of the present application discloses a chip system, comprising at least one processor and a communication interface, the at least one processor being used to call a computer program stored in at least one memory so that the device where the chip system is located implements the method described in the first aspect or any possible implementation of the first aspect, or implements the method described in the third aspect or any possible implementation of the third aspect, or implements the method described in the sixth aspect or any possible implementation of the sixth aspect, or implements the method described in the fifteenth aspect or any possible implementation of the fifteenth aspect.
[0303] In the twenty-ninth aspect, an embodiment of the present application discloses a chip system, comprising at least one processor and a communication interface, the at least one processor being used to call a computer program stored in at least one memory so that the device where the chip system is located implements the method described in the second aspect or any possible implementation of the second aspect, or implements the method described in the fourth aspect or any possible implementation of the fourth aspect, or implements the method described in the fifth aspect or any possible implementation of the fifth aspect, or implements the method described in the seventh aspect or any possible implementation of the seventh aspect, or implements the method described in the sixteenth aspect or any possible implementation of the sixteenth aspect.
[0304] In the thirtieth aspect, an embodiment of the present application also provides a smart cockpit product, wherein the smart cockpit product includes a first node (for example, a car cockpit domain controller CDC), wherein the first node includes the device described in the first aspect or any possible implementation of the first aspect, or includes the device described in the third aspect or any possible implementation of the third aspect, or includes the device described in the sixth aspect or any possible implementation of the sixth aspect, or executes the method described in the fifteenth aspect or any possible implementation of the fifteenth aspect.
[0305] Furthermore, the above-mentioned smart cockpit product also includes a second node (for example, at least one of modules such as a camera, screen, microphone, audio, radar, electronic key, keyless entry or start system controller), and the second node includes the device described in the second aspect or any possible implementation of the second aspect, or includes the device described in the fourth aspect or any possible implementation of the fourth aspect, or includes the device described in the fifth aspect or any possible implementation of the fifth aspect, or includes the device described in the seventh aspect or any possible implementation of the seventh aspect, or executes the method described in the sixteenth aspect or any possible implementation of the sixteenth aspect.
[0306] In aspect 31, an embodiment of the present application provides a vehicle, comprising a first node (e.g., a vehicle cockpit domain controller CDC), wherein the first node includes the first aspect or any possible implementation of the first aspect, or includes the device described in the third aspect or any possible implementation of the third aspect, or includes the device described in the sixth aspect or any possible implementation of the sixth aspect, or executes the method described in the fifteenth aspect or any possible implementation of the fifteenth aspect.
[0307] Furthermore, the above-mentioned vehicle also includes a second node (for example, at least one of modules such as a camera, a screen, a microphone, an audio system, a radar, an electronic key, a keyless entry or start system controller, etc.), and the second node includes the device described in the second aspect or any possible implementation of the second aspect, or includes the device described in the fourth aspect or any possible implementation of the fourth aspect, or includes the device described in the fifth aspect or any possible implementation of the fifth aspect, or includes the device described in the seventh aspect or any possible implementation of the seventh aspect, or executes the method described in the sixteenth aspect or any possible implementation of the sixteenth aspect. BRIEF DESCRIPTION OF THE DRAWINGS
[0308] The following is an introduction to the drawings used in the embodiments of the present application.
[0309] Figure 1 It is a schematic diagram of the architecture of a communication system provided by an embodiment of the present application;
[0310] Figure 2 This is a schematic diagram of a usage scenario of a communication method provided in an embodiment of the present application;
[0311] Figure 3 It is a flow chart of a communication method provided in an embodiment of the present application;
[0312] Figure 4is a schematic diagram of an algorithm selection strategy provided in an embodiment of the present application;
[0313] Figure 5 It is a schematic diagram of determining a target MAC length of a signaling plane provided in an embodiment of the present application;
[0314] Figure 6 It is a schematic diagram of another method of determining a target MAC length of a signaling plane provided in an embodiment of the present application;
[0315] Figure 7 It is a schematic diagram of another method of determining a target MAC length of a signaling plane provided in an embodiment of the present application;
[0316] Figure 8 It is a flowchart of another communication method provided in an embodiment of the present application;
[0317] Fig. 9 It is a schematic diagram of determining a target MAC length of a user plane provided by an embodiment of the present application;
[0318] Fig.10 It is a schematic diagram of another method of determining a target MAC length of a user plane provided in an embodiment of the present application;
[0319] Fig.11 It is a flowchart of another communication method provided in an embodiment of the present application;
[0320] Fig.12 It is a flowchart of another communication method provided in an embodiment of the present application;
[0321] Fig.13 It is a flowchart of another communication method provided in an embodiment of the present application;
[0322] Fig.14 is a structural diagram of a communication device provided in an embodiment of the present application;
[0323] Fig.15 is a structural diagram of another communication device provided in an embodiment of the present application;
[0324] Fig.16 is a structural diagram of another communication device provided in an embodiment of the present application;
[0325] Fig.17 is a structural diagram of another communication device provided in an embodiment of the present application;
[0326] Fig.18 is a structural diagram of another communication device provided in an embodiment of the present application;
[0327] Fig.19 is a structural diagram of another communication device provided in an embodiment of the present application;
[0328] Fig. 20 is a structural diagram of another communication device provided in an embodiment of the present application;
[0329] Fig.21 is a structural diagram of another communication device provided in an embodiment of the present application;
[0330] Fig. 22 is a structural diagram of another communication device provided in an embodiment of the present application;
[0331] Fig.23 is a structural diagram of another communication device provided in an embodiment of the present application;
[0332] Fig.24 is a structural diagram of another communication device provided in an embodiment of the present application;
[0333] Fig.25 is a structural diagram of another communication device provided in an embodiment of the present application;
[0334] Fig.26 is a structural diagram of another communication device provided in an embodiment of the present application;
[0335] Fig. 27 is a structural diagram of another communication device provided in an embodiment of the present application;
[0336] Fig.28 is a structural diagram of another communication device provided in an embodiment of the present application;
[0337] Fig.29 is a structural diagram of another communication device provided in an embodiment of the present application;
[0338] Fig.30 is a structural diagram of another communication device provided in an embodiment of the present application;
[0339] Fig.31 It is a structural diagram of another communication device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0340] The embodiments of the present application are described below in conjunction with the drawings in the embodiments of the present application. It should be noted that in the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs, and the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.
[0341] The following is a brief introduction to the relevant technologies and professional terms involved in this application to facilitate understanding.
[0342] 1. Node
[0343] A node is an electronic device that has the ability to send and receive data. For example, a node can be a car cockpit domain device, or a module in a car cockpit device (such as a cockpit domain controller (CDC), camera, screen, microphone, audio, electronic key, keyless entry or start system controller, etc.). In the specific implementation process, the node can also be a data transfer device, such as a router, a repeater, a bridge or a switch; it can also be a terminal device, such as various types of user equipment (UE), mobile phones, tablet computers (pad), desktop computers, headphones, speakers, etc.; it can also include machine intelligence devices, such as self-driving equipment, transportation safety equipment, virtual reality (VR) terminal equipment, augmented reality (AR) terminal equipment, machine type communication (MTC) equipment, industrial control equipment, remote medical equipment, smart grid equipment, smart city equipment; it can also include wearable devices (such as smart watches, smart bracelets, pedometers, etc.), etc. In some technical scenarios, the name of a device with similar data transceiver capabilities may not be called a node, but for the convenience of description, electronic devices with data transceiver capabilities are collectively referred to as nodes in the embodiments of the present application.
[0344] 2. Message authentication code (MAC)
[0345] A message authentication code (MAC) is a verification mechanism used by both communicating entities in cryptography. It is a tool used to ensure message integrity. Before sending a message, the sender first calculates the MAC using the integrity protection algorithm (or key) agreed upon by both communicating parties. After that, the MAC is sent together with the data. After receiving the message, the receiver calculates the MAC using the same integrity protection algorithm (or key) as the sender, and compares the MAC calculated by itself with the received MAC to see if they are consistent. If the two are consistent, the message passes the integrity check.
[0346] For example, taking the Long Term Evolution (LTE) system as an example, the integrity protection function of LTE is located in the Packet Data Convergence Protocol (PDCP) layer, and the node at the sending end can perform integrity protection on the header and data part of the PDCP protocol data unit (PDU). Specifically, the node at the sending end uses the integrity protection algorithm configured by the upper protocol layer, takes the key, COUNT value, radio bearer identifier, DIRECTION and at least one parameter of the message as input parameters, calculates a 32-bit message integrity verification code (Message Authentication Code for Integrity, MAC-I), and puts it into the MAC-I field of the PDCP PDU. After receiving the message, the node at the receiving end calculates the verification code XMAC-I expected by the message in the same way, and performs integrity verification by comparing XMAC-I and MAC-I. If MAC-I is equal to XMAC-I, the receiving end determines that the integrity verification is successful, otherwise it determines that the integrity verification fails.
[0347] 3. Integrity Protection Algorithm
[0348] MAC can be generated by an integrity protection algorithm, which can also be called a MAC algorithm, an integrity protection algorithm, etc. Optionally, the integrity protection algorithm can be implemented by other encryption algorithms. For example, the integrity protection algorithm implemented by a hash algorithm is called a hash-based message authentication code (HMAC) algorithm, where the hash algorithm can be one of MD5, SHA-1, SHA-256, etc. These different HMAC implementations are usually marked as: HMAC-MD5, HMAC-SHA1, HMAC-SHA256, etc. For another example, a MAC algorithm implemented based on a block cipher algorithm can be called a cipher-based message authentication code (CMAC) algorithm, where the block cipher algorithm can be the Advanced Encryption Standard (AES). Since there are four working modes of block encryption, ECB, CBC, CFB, and OFB, the integrity protection algorithms implemented by block encryption algorithms based on different working modes can be called: ECB-MAC algorithm, CBC-MAC algorithm, etc. Furthermore, the One-key CBC-MAC (OMAC) algorithm is improved from the CBC-MAC algorithm and was listed as a recommended standard by the National Institute of Standards and Technology (NIST) in 2005.
[0349] In addition, the integrity protection algorithm may also include Galois message authentication code mode (GMAC), Zu Chongzhi cryptographic algorithm (such as ZUC128, ZUC256, etc.), message digest (MD) algorithm (such as MD2, MD4 or MD5, etc.). Furthermore, the cryptographic algorithm may also include the rapid amplification of cDNA ends (RACE) primitive integrity verification message digest (RACE Integrity Primitives Evaluation Message Digest, RIPEMD) algorithm.
[0350] In addition, integrity protection algorithms can combine two or more algorithms so that even if one is later found to be vulnerable, the other can continue to protect message integrity. For example, in Transport Layer Security (TLS), the input data is split into two halves, each half is processed with a different integrity protection algorithm (MD5 and SHA-1), and then the outputs are XORed together to obtain a MAC.
[0351] The integrity protection algorithm can generate a MAC of at least one length, see Table 1, which is information about the MAC length generated by a possible MAC algorithm provided in an embodiment of the present application. It can be seen that the MAC generated by the CMAC algorithm usually supports 128-bit, 64-bit or 32-bit cipher blocks, while the length of the MAC generated by GMAC can range from 32 bits to 128 bits, and HMAC can generate digests of various lengths as MACs.
[0352] Table 1 MAC lengths generated by different integrity protection algorithms
[0353]
[0354] In some specific scenarios, the authenticated encryption algorithm can be used to encrypt data and generate a message authentication code for a given original text. Therefore, the process of authenticating and encrypting a message can also be regarded as protecting the integrity of the message. For example, the AES algorithm based on GMAC and counter encryption mode (AES-Galois / Counter Mode, AES-GCM) and the AES algorithm based on CMAC and counter encryption mode (AES-CMAC / Counter Mode, AES-CCM) can authenticate and encrypt messages, and a MAC can be generated during the authenticated encryption process to protect the integrity of the message. Optionally, the length of the MAC generated by different authenticated encryption algorithms can refer to the length of the integrity algorithm used. For example, the length of the MAC generated based on the AES-GCM algorithm can refer to the length of the MAC generated by GMAC.
[0355] 4. Shared key (SK)
[0356] During the communication process, data is transmitted between communication nodes. If the data needs to be kept confidential, it needs to be encrypted with a key. The shared key is the same secret value stored in the nodes of both communicating parties. The shared key can be pre-defined or pre-configured in the nodes of both parties, or generated by both parties through the same key acquisition method, or sent to the first node and the second node by a trusted device (such as a Key Distribution Center (KDC)).
[0357] For example, the vehicle's cockpit domain controller (CDC) and the on-board radar device are two nodes that can communicate. When deploying the CDC and the on-board radar, the automobile factory staff has pre-configured the shared key between the CDC and the on-board radar. Through this shared key, the security of communication between the vehicle's CDC and the roof radar can be guaranteed.
[0358] For another example, the CDC and the car owner's mobile phone are two nodes that can communicate. When the car owner needs to associate with the vehicle's CDC through the mobile phone, the shared key can be obtained through a key acquisition method, such as exchanging key negotiation algorithm parameters between the mobile phone and the vehicle's CDC to generate a shared key through a key negotiation algorithm. The shared key can be used to verify the identities of both nodes when the mobile phone requests to associate with the vehicle's CDC again.
[0359] 5. Key Derivation
[0360] Key derivation is the process of deriving one or more secret values from a secret value, and the algorithm used to derive a key is called a key derivation function (KDF), also known as a key derivation algorithm. For example, the new secret value DK derived from the secret value Key can be expressed as: DK = KDF (Key).
[0361] Commonly used key derivation algorithms include password-based key derivation function (PBKDF), scrypt algorithm, etc. Among them, the PBKDF algorithm includes the first generation PBKDF1 and the second generation PBKDF2. Optionally, in the specific implementation, a hash algorithm can be used to hash the input secret value during the key derivation process, so KDF can also receive an algorithm identifier as input to indicate which hash algorithm to use.
[0362] 6. Signaling plane and user plane
[0363] In communication systems, there is generally a distinction between user planes (User Plane) and control planes (Control Plane). With the emergence of software defined network (SDN) technology, the separation of control plane and user plane (Control Plane and User Plane, CU) has gradually become the development direction of communication systems. Among them, the control plane is also called the signaling plane or control plane, which is usually used to transmit control signaling. For the convenience of description, the various embodiments of this application are uniformly described as "signaling plane". The user plane, also known as the data plane, is usually used to transmit user data. For the convenience of description, the various embodiments of this application are uniformly described as "user plane".
[0364] For example, during a voice call, the control plane is used to transmit signaling for controlling the establishment, maintenance, and release of a call flow, while the user plane is used to transmit voice data.
[0365] In some specific application scenarios, network transmission is divided into the wireless network layer and the transmission network layer. Among them, the user plane of the wireless network layer is the circuit switching domain (CS) service (such as voice coding, video coding, etc.) or the packet switching domain (PS) service, that is, the real user data; the control plane of the wireless network layer includes: one or more of the radio access network application part (RANAP), the radio network subsystem application part protocol (RNSAP) and the base station application part protocol (NBAP), etc., which are used to control the signaling of the call process. The transmission network layer is the bottom layer bearer, so the user plane of the transmission network layer includes both user data and signaling data, that is, the messages of the wireless network layer (control plane and user plane) are all user plane messages of the transmission network layer, which are carried by the transmission network layer for sending / receiving. The control plane of the transmission network layer is a separate control plane, which is only located in the transmission network layer, and is used to establish a transmission bearer (creation, maintenance and release of the asynchronous transfer mode adaptation layer (AAL2) connection) for the user plane data of the wireless network layer.
[0366] It should also be noted that the "authentication", "verification" and "verification" mentioned in the embodiments of the present application can represent the meaning of checking whether it is correct or reasonable. The "association" mentioned in the embodiments of the present application indicates the process of establishing a connection between the first node and the second node. In some specific technical scenarios, "association" can also be described as "access".
[0367] The system architecture and business scenarios of the embodiments of the present application are described below. It should be noted that the system architecture and business scenarios described in this application are intended to more clearly illustrate the technical solutions of the present application and do not constitute a limitation on the technical solutions provided by the present application. It is known to those skilled in the art that with the evolution of the system architecture and the emergence of new business scenarios, the technical solutions provided by the present application are also applicable to similar technical problems.
[0368] See also Figure 1 , Figure 1 It is a schematic diagram of the architecture of a communication system provided in an embodiment of the present application, including a first node 101 and a second node 102. The first node 101 can be requested to be associated by the second node 202. After the association is successful, the first node 101 can communicate with the second node 102 through a data link. Optionally, the data link for the first node 101 to communicate with the second node 102 may include various types of connection media, such as short-range connection technologies including 802.11b / g, Bluetooth (Blue Tooth), Zigbee (Zigbee), Radio Frequency Identification (RFID) and Ultra Wideband (Ultra Wideband, UWB) technology. For example, long-range connection technologies may include wireless access type technologies such as Global System for Mobile communications (GSM), General Packet Radio Service (GPRS), and Universal Mobile Telecommunications System (UMTS). Of course, it is not ruled out that there are other technologies that can be used to support the first node to communicate with the second node.
[0369] In order to ensure the communication security between the first node and the second node, a message authentication code may be used to perform integrity protection on the message. For example, the first node generates a MAC based on part or all of the data in the message through an integrity protection algorithm (or further includes an integrity protection key), and puts the MAC in the message (for example, in the prefix or suffix of the message) and sends it to the second node. After receiving the message, the second node first generates a check value based on the corresponding integrity protection algorithm (or also includes the corresponding integrity protection key) and the corresponding part or all of the data. If the check value is consistent with the MAC, it means that the corresponding data in the message has not been tampered with.
[0370] Optionally, the first node 101 may be an initiator of communication, which may be referred to as a master node or an access point (AP), and correspondingly, the second node 102 may be a receiver of communication, which may be referred to as a slave node.
[0371] In addition, the first node 101 and the second node 102 may be devices of the same type or devices of different types. Figure 2 , Figure 2 2 is a schematic diagram of a use scenario of a communication method provided in an embodiment of the present application. The cockpit domain controller (CDC) 201 in the vehicle is the control center in the smart cockpit device and can be regarded as the first node 101. The smart phone 202 is a device that can have the ability to send and receive data and can be regarded as the second node 102. Among them, the message sent by CDC201 to the smart phone 202 can carry MAC, and the smart phone 202 receives the message, verifies the integrity of the message through MAC, and then performs the corresponding operation according to the message. However, in the existing message authentication code technology, the length of the message authentication code is usually fixed, which is difficult to meet the needs of users. For example, the smart phone 202 is connected to the CDC201 via Bluetooth. When CDC201 needs to send voice data to the smart phone 202, since the vehicle-mounted voice data has high privacy requirements, and the message authentication code length during the Bluetooth communication process is 32 bits, it is easy to be cracked by attackers and cannot meet the security requirements. Therefore, a longer MAC length is required to protect the data.
[0372] See also Figure 3 , Figure 3 is a flow chart of a communication method provided in an embodiment of the present application. The communication method can be based on Figure 1 The communication system shown in the figure is implemented, and the method at least includes the following steps:
[0373] Step S301: the second node sends an association request message to the first node.
[0374] Specifically, the association request message includes information about security algorithms supported by the second node, and the information about the security algorithms may be a name, an identifier, or a predefined symbol, etc. of the security algorithms supported by the second node. The security algorithms supported by the second node include one or more of information about an integrity protection algorithm or information about an authentication encryption algorithm, etc. Optionally, the information about security algorithms supported by the second node may also be referred to as security capabilities (Sec Capabilities) of the second node.
[0375] Refer to Table 2, which is a possible algorithm information table provided in an embodiment of the present application. The security algorithm information supported by the second node in the association request message may be the name of the algorithm or the identifier of the algorithm. For example, the information of the security algorithm supported by the second node may be "GIA2, GIA3, GAC1", indicating that the second node supports Zu Chongzhi encryption (ZUC) algorithm, AES-CMAC algorithm (specifically AES-CMAC algorithm with 64-bit and 128-bit MAC length) and AES-GCM algorithm (specifically AES-GCM algorithm with 32-bit MAC length). For another example, the security algorithm information supported by the second node may be "0010, 0011, 1000", indicating that the second node supports Zu Chongzhi encryption (ZUC) algorithm, AES-CMAC algorithm and AES-GCM algorithm.
[0376] Table 2 Algorithm information table
[0377]
[0378] Optionally, the association request message may also include a freshness parameter obtained (or generated) by the second node. The freshness parameter may include at least one of a random number (number once, NONCE), a counter, a sequence number, etc. For the convenience of description, in each embodiment of the present application, the freshness parameter obtained (or generated) by the second node in the association request message is referred to as the first freshness parameter.
[0379] Optionally, the first node may send an access message or a broadcast message, and the second node receives the access message or the broadcast message from the first node. Based on the access message or the broadcast message, the second node sends a first association request message to the first node. Specifically, the access message or the broadcast message of the first node may include at least one of the identity of the first node, the description information of the first node, or the information used to indicate the access of other nodes, etc.
[0380] Step S302: The first node determines a target security algorithm for the signaling plane and a target MAC length for the signaling plane according to a first algorithm selection strategy.
[0381] Specifically, the target security algorithm of the signaling plane includes one of the integrity protection algorithm, authentication encryption algorithm, etc. of the signaling plane. The target security algorithm of the signaling plane is used for integrity protection of messages on the signaling plane, and the target security algorithm of the signaling plane belongs to the set of security algorithms indicated by the information of the security algorithms supported by the second node. For example, the information of the security algorithms supported by the second node may be "GIA2, GIA3, GAC1", indicating that the second node supports the Zu Chongzhi encryption (ZUC) algorithm, the AES-CMAC algorithm (specifically the AES-CMAC algorithm with 64-bit and 128-bit MAC lengths) and the AES-GCM algorithm (specifically the AES-GCM algorithm with 32-bit MAC lengths), then the target security algorithm of the signaling plane determined by the first node belongs to the set of the Zu Chongzhi encryption (ZUC) algorithm, the AES-CMAC algorithm (specifically the AES-CMAC algorithm with 64-bit and 128-bit MAC lengths) algorithm and the AES-GCM algorithm (specifically the AES-GCM algorithm with 32-bit MAC lengths).
[0382] The first algorithm selection strategy may be a selection strategy pre-configured or defined in the first node. Optionally, the first algorithm selection strategy may be implemented by priority, or by a pre-configured or defined selection order, or by an algorithm, model, etc. For example, see Figure 4 , Figure 4 It is a schematic diagram of a possible first algorithm selection strategy provided by an embodiment of the present application. As shown in area 401, the algorithm marked as "0001" (the corresponding algorithm is the AES-CMAC algorithm) has a priority of 1, which can indicate that the first node preferentially selects the AES-CMAC algorithm (specifically, see Table 2 for the AES-CMAC algorithm that supports a 32-bit MAC length) as the target security algorithm for the signaling plane. For another example, a first model is pre-configured in the first node. The first model is a neural network obtained through deep reinforcement learning training. The neural network is obtained through training of multiple sample data. Therefore, the first model can decide the optimal target security algorithm based on the information of the security algorithm supported by the second node. Therefore, the first model can be regarded as the first algorithm selection strategy.
[0383] Optionally, the first node determines a target security algorithm of the signaling plane and a target MAC length of the signaling plane according to the first algorithm selection strategy, including at least the following two situations:
[0384] Case 1: The first node determines the target security algorithm of the signaling plane and the target MAC length of the signaling plane according to the first length selection strategy and the first algorithm selection strategy. The first length selection strategy may be a selection strategy preconfigured or defined in the first node, and may be implemented by priority, or may be implemented according to a preconfigured or defined selection order, or may be implemented by an algorithm, a model, or the like. For example, the first length selection strategy may be to select the longest MAC length, or may be to select the shortest MAC length, and further optionally, the longest MAC length may be configured as the default length selection strategy for the first node.
[0385] Optionally, the first node determines the target security algorithm of the signaling plane and the target MAC length of the signaling plane according to the first length selection strategy and the first algorithm selection strategy, and specifically there may be at least the following two implementation methods:
[0386] Implementation method 1: The first node determines a target security algorithm for the signaling plane according to the first algorithm selection strategy, and determines a target MAC length for the signaling plane according to the first length selection strategy and the target security algorithm for the signaling plane.
[0387] For example, see Figure 5 , Figure 5 It is a schematic diagram of a possible method for determining the target MAC length of the signaling plane provided in an embodiment of the present application. Referring to area 501, it can be seen that the information of the security algorithm supported by the second node indicates that the information of the security algorithm supported by the second node is "0011, 1010", indicating that the algorithms supported by the second node are the AES-CMAC algorithm and the AES-GCM algorithm. The first algorithm selection strategy is implemented in the first node by means of priority. Referring to area 502, it can be seen that the priority of the AES-CMAC algorithm is 2, and the priority of AES-GCM is 3. Therefore, according to the first algorithm selection strategy, AES-CMAC is determined as the target security algorithm of the signaling plane. The MAC lengths supported by the AES-CMAC algorithm corresponding to the identifier "0011" are 64 bits and 128 bits. Figure 5 From the first length selection strategy shown, it can be known that the priority of 64 bits is higher than that of 128 bits, so 64 bits are determined as the target MAC length of the signaling plane (see area 503).
[0388] For another example, the first node can be configured as a default first length selection strategy to select the longest MAC length among the MAC lengths supported by the target security algorithm. If the MAC lengths supported by the AES-CMAC algorithm corresponding to the identifier "0011" are 64 bits and 128 bits, the first node can select 128 bits as the target MAC length of the signaling plane by default. Alternatively, the first node can be configured as a default first length selection strategy to select the shortest MAC length among the MAC lengths supported by the target security algorithm.
[0389] Implementation method 2: The first node determines an algorithm or algorithm set that supports the first length according to the first length selection strategy. The first node determines a first algorithm from the algorithm or algorithm set that supports the first length according to the first algorithm selection strategy, and if the first algorithm belongs to the security algorithm supported by the second node, the first algorithm is determined as the target security algorithm of the signaling plane, and the first length is determined as the target MAC length of the signaling plane.
[0390] For example, see Figure 6 , Figure 6 It is a schematic diagram of another possible method for determining the target MAC length of the signaling plane provided by an embodiment of the present application. Referring to area 602, the first node determines the algorithm group supporting the MAC length of 128 bits (i.e., the algorithms corresponding to the identifiers "0011, 1010, and 1011" respectively) according to the first length selection strategy. Referring to area 603, the first node then determines the algorithm with the highest priority (i.e., the AES-CMAC algorithm corresponding to the identifier "0011") according to the first algorithm selection strategy. Referring to area 601, it can be seen that the second node supports the algorithm corresponding to the identifier "0011", so the AES-CMAC algorithm is determined as the target security algorithm of the signaling plane, and 128 bits are determined as the target MAC length of the signaling plane.
[0391] It can be understood that if algorithms of a certain length are supported but are not supported by the second node, an algorithm or set of algorithms of the next length can be selected. For example, if 128-bit algorithms (i.e., algorithms corresponding to the identifiers "0011, 1010, 1011" respectively) are supported but are not supported by the second node, the target security algorithm can be selected from the algorithms corresponding to the MAC length of the next priority. Case 2: The first node determines the target security algorithm of the signaling plane according to the first algorithm selection strategy, and the MAC length corresponding to the target security algorithm of the signaling plane is the target MAC length of the signaling plane. Specifically, there can be at least the following two implementation methods:
[0392] Implementation method three: The target security algorithm of the signaling plane only supports the generation of one length of MAC. In this case, the first node determines the target security algorithm of the signaling plane according to the first algorithm selection strategy, and determines the MAC length supported by the target security algorithm of the signaling plane as the target MAC length of the signaling plane. For example, the algorithm identified as "0001" (the corresponding algorithm is the AES-CMAC algorithm) only supports the generation of a 32-bit MAC. When the first node determines the target security algorithm of the signaling plane as the algorithm identified as "0001" according to the first algorithm selection strategy, the corresponding 32 bits are used as the target MAC length of the signaling plane. For another example, the HMAC256 algorithm is one of the HMAC algorithms and only supports the generation of a MAC length of 256 bits. Therefore, when the second node only supports the HMAC256 algorithm, the 256 bits corresponding to HMAC256 are used as the target MAC length of the signaling plane.
[0393] Implementation method 4: The first node pre-stores a correspondence between the target security algorithm and the MAC length. The first node determines the MAC length corresponding to the target security algorithm of the signaling plane as the target MAC length of the signaling plane according to the correspondence between the target security algorithm of the signaling plane and the MAC length. The correspondence may be pre-configured or defined. For example, see Figure 7 , Figure 7 It is a schematic diagram of another possible first algorithm selection strategy provided by an embodiment of the present application, as shown in area 701, the first algorithm strategy can also represent the correspondence between the security algorithm and the length, and different correspondences have different priorities, wherein the priority of the AES-CMAC algorithm identified as "0001" and the corresponding 32-bit MAC length is 1. After the first node determines the AES-CMAC algorithm identified as "0001" as the target security algorithm of the signaling plane according to the first algorithm selection strategy, it determines the 32 bits corresponding to the AES-CMAC algorithm identified as "0001" as the target MAC length of the signaling plane according to the correspondence between the AES-CMAC algorithm and the MAC length.
[0394] Step S303: The first node generates a first MAC by using a target security algorithm of the signaling plane.
[0395] Specifically, the length of the first MAC is the target MAC length of the aforementioned signaling plane, and the first MAC is used by the second node to verify the integrity of the security context request message.
[0396] Optionally, in addition to the target security algorithm, a shared key between the first node and the second node (specifically, an integrity protection key) and message data that needs to be integrity protected by the first MAC are also required when generating the first MAC. For example, the first MAC can be obtained according to a Cipher-based Message Authentication Code (CMAC) algorithm using a shared key K1 (specifically, an integrity protection key) and part or all of the data data1 in the security context request message except the first MAC, for example: first MAC = CMAC (K1, data1).
[0397] Optionally, the communication method described in the embodiment of the present application may further include step S304 or part or all of the steps in S304-S311. Steps S304-S311 are specifically as follows:
[0398] Step S304: the first node sends a security context request message to the second node.
[0399] Specifically, the security context request message includes information for indicating a target security algorithm for the signaling plane and information for indicating a target MAC length for the signaling plane. Further, the security context request message includes a first MAC, the length of the first MAC is the length of the target MAC for the signaling plane, and the first MAC is also used to verify the integrity of the security context request message. Specifically, the first MAC is used by the second node to verify the integrity of the security context request message.
[0400] Optionally, the information used to indicate the target MAC length of the signaling plane may include at least the following possible situations:
[0401] Case 1: The information used to indicate the target MAC length of the signaling plane can be directly the target MAC length of the signaling plane. For example, the security context request message includes "signaling plane MAC length: 64 bits", and the second node can obtain the target MAC length of the signaling plane according to the context request message. In this case, the security context request message includes the first MAC, information indicating the target security algorithm of the signaling plane, and the target MAC length of the signaling plane.
[0402] Case 2: The information used to indicate the target MAC length of the signaling plane may be the aforementioned first MAC. Specifically, the length of the first MAC is the target MAC length of the signaling plane, and the second node may determine the target MAC length of the signaling plane based on the length of the first MAC. In this case, the security context request message includes the first MAC and information used to indicate the target security algorithm of the signaling plane.
[0403] Case three: When the target security algorithm of the signaling plane is determined to correspond to only one MAC length, the information used to indicate the target MAC length of the signaling plane may be information used to indicate the target security algorithm of the signaling plane. For example, the algorithm identified as "0001" (the corresponding algorithm is the AES-CMAC algorithm) only supports the generation of a MAC with a length of 32 bits. Therefore, if the target security algorithm of the signaling plane is identified as "0001", the identifier "0001" may be carried in the security context request message. The identifier 0001 is used to indicate the target security algorithm of the signaling plane. Since the algorithm only corresponds to a MAC with a length of 32 bits, the identifier may also indicate that the target MAC length of the signaling plane is 32 bits. In this case, the security context request message includes the first MAC and information used to indicate the target security algorithm of the signaling plane.
[0404] It should be noted that there is an optional design in each embodiment of the present application. If the target security algorithm of the signaling plane determined corresponds to only one MAC length, the first node can carry information indicating the target security algorithm of the signaling plane in the message sent to the second node, and the information indicating the target security algorithm of the signaling plane can also be used to indicate the target MAC length of the signaling plane. Correspondingly, if the target security algorithm of the user plane determined corresponds to only one MAC length, the first node can carry information indicating the target security algorithm of the user plane in the message, and the information indicating the target security algorithm of the user plane can also be used to indicate the target MAC length of the user plane.
[0405] Optionally, the security context request message also includes a freshness parameter obtained (or generated) by the first node. The freshness parameter may include at least one of a random number (number once, NONCE), a counter, a sequence number, etc. For the convenience of description, the freshness parameter in the security context request message is referred to as a second freshness parameter.
[0406] Optionally, the security context request message also includes first identity authentication information, which is generated by the first node based on a shared key between the first node and the second node. The shared key may be a pre-shared key between the first node and the second node. For example, the first node may generate the first identity authentication information AUTHa through KDF based on the pre-shared key PSK, that is: AUTHa=KDF(PSK). Optionally, in the case where the association request message includes a first freshness parameter, the first identity authentication information may be generated based on the shared key and the first freshness parameter. For example, the first identity authentication information AUTHa is generated through KDF based on the pre-shared key PSK and the first freshness parameter NONCEe, for example AUTHa=KDF(PSK, NONCEe).
[0407] Further optionally, in actual processing, the parameters used by the first node to generate the first identity authentication information may also include other information. For example, the generated first identity authentication information AUTHa may satisfy: AUTHa=KDF(PSK, association request message).
[0408] Further optionally, when the security context request message includes a second freshness parameter, the first identity authentication information AUTHa generated by the first node may also satisfy: AUTHa = KDF (PSK, NONCEa, association request message), where NONCEa is the second freshness parameter in the security context request message.
[0409] Optionally, the first node may encrypt part or all of the data in the security context request message using an encryption key. Correspondingly, the second node may receive the security context request message, decrypt the corresponding encrypted part, and obtain the message content.
[0410] Step S305: The second node verifies the integrity of the security context request message according to the first MAC using the target security algorithm of the signaling plane.
[0411] Specifically, the second node verifies the message integrity of the security context request message according to the first MAC to prevent the content in the security context request message from being tampered with by an attacker.
[0412] In a possible solution, the first node generates the first MAC in the same way as the second node generates the check value. If the generated check value is the same as the first MAC, the integrity check passes. For example, the first MAC is obtained by the first node through the target security algorithm of the signaling plane, based on the shared key K1 and part or all of the data data1 in the security context request message except the first MAC. Then the second node also generates the check value check1 in the same way: check1 = CMAC (K1, data1). If check1 is the same as the first MAC, it means that the data data1 has not been tampered with, and the integrity check of the security context request message passes.
[0413] Optionally, if the integrity check fails, it indicates that the security context request message may be tampered by an attacker. Therefore, the second node may discard the security context request message, or ignore the security context request message, or further include not applying the target security algorithm in the security context request message, and not applying the target MAC information in the security context request message.
[0414] Step S306: The second node verifies the first identity authentication information according to the shared key between the second node and the first node.
[0415] Specifically, since the first identity authentication information is generated by the first node according to a shared key between the first node and the second node, the second node also verifies whether the first identity authentication information is correct according to the shared key.
[0416] In an optional solution, according to the protocol, the first node uses the same parameters to generate the first identity authentication information, and the second node should also use the same parameters to generate the verification information. If the verification information is the same as the first identity authentication information, the verification is considered to be successful. For example, the first identity authentication information is generated by KDF, so the second node can generate the verification information through KDF, also known as the verification value test1. The second node verifies whether the first identity authentication information is correct through the verification information.
[0417] The following is an example:
[0418] For example, if the first identity authentication information AUTHa is KDF (PSK, NONCEe), the second node obtains the verification value test1 = KDF (PSK, NONCEe) through KDF based on PSK and the first freshness parameter NONCEe. If the verification value test1 is the same as AUTHa, the verification is successful.
[0419] Optionally, if the first identity authentication information verification fails, it means that the identity of the first node is not credible. Therefore, the second node can discard the security context request message, or ignore the security context request message, or also include not applying the target security algorithm in the security context request message, not applying the target MAC length in the security context request message. Further, the second node can disconnect from the first node to facilitate association with the correct node.
[0420] Optionally, the second node may first perform the operation described in step S306 and then perform the operation described in step S305.
[0421] Step S307: The second node generates a second MAC using the target security algorithm of the signaling plane.
[0422] Specifically, the length of the second MAC is the target MAC length of the aforementioned signaling plane, and the second MAC is used by the first node to verify the integrity of the security context response message. In a specific implementation, in addition to the target security algorithm, a shared key between the second node and the first node (specifically, an integrity protection key) and message data that needs to be integrity protected by the second MAC are also required when generating the second MAC.
[0423] For example, the second MAC can be obtained according to the CMAC algorithm, using the shared key K1 (specifically, the integrity protection key) and part or all of the data data2 in the security context response message except the second MAC, for example: the second MAC = CMAC (K1, data2).
[0424] Step S308: The second node sends a security context response message to the first node.
[0425] Specifically, the security context response message includes a second MAC, and the second MAC is used to verify the integrity of the security context response message.
[0426] Optionally, the security context response message also includes second identity authentication information, which is generated by the second node based on a shared key between the second node and the first node. The shared key may be a pre-shared key between the second node and the first node. For example, the second node may generate the second identity authentication information AUTHe through KDF based on the pre-shared key PSK, that is, AUTHe=KDF(PSK).
[0427] Optionally, when the security context request message includes a second freshness parameter, the second identity authentication information may be generated by the second node according to the shared key and the second freshness parameter. For example, the second node generates the second identity authentication information AUTHe through KDF according to the pre-shared key PSK and the second freshness parameter NONCEa, for example, AUTHe=KDF(PSK, NONCEa).
[0428] Further optionally, in actual processing, the parameters for generating the second identity authentication information by the second node may also include other information. For example, the generated second identity authentication information AUTHe may satisfy: AUTHe=KDF (PSK, security context request message).
[0429] Further optionally, when the association request message includes the first freshness parameter, the second identity authentication information AUTHe generated by the second node may also satisfy: AUTHe = KDF (PSK, NONCEa, security context request message), where NONCEa is the first freshness parameter in the association request message.
[0430] Optionally, the second node may encrypt part or all of the data in the security context response message using an encryption key. Correspondingly, the first node may receive the security context response message, decrypt the corresponding encrypted part, and obtain the message content.
[0431] Step S309: The second node verifies the integrity of the security context response message according to the second MAC using the target security algorithm of the signaling plane.
[0432] Specifically, the first node verifies the message integrity of the security context response message according to the second MAC to prevent the content in the security context response message from being tampered with by an attacker.
[0433] In a possible solution, the second node generates the second MAC in the same way as the first node generates the check value. If the generated check value is the same as the second MAC, the integrity check passes. For example, the second MAC is obtained by the second node through the target security algorithm of the signaling plane, based on the shared key K1 and part or all of the data data2 in the security context request message except the second MAC. Then the first node also generates the check value check2 in the same way: check2 = CMAC (K1, data2). If check2 is the same as the second MAC, it means that the data data2 has not been tampered with, and the integrity check of the security context request message passes.
[0434] Optionally, if the integrity check fails, it indicates that the security context response message may be tampered by an attacker. Therefore, the first node may discard the security context response message, or ignore the security context response message, or further include not applying the aforementioned target security algorithm of the signaling plane, and not applying the aforementioned target MAC length of the signaling plane.
[0435] Step S310: The first node verifies the second identity authentication information according to the shared key between the first node and the second node.
[0436] Specifically, since the second identity authentication information is generated by the second node according to a shared key between the second node and the first node, the first node can verify whether the second identity authentication information is correct according to the shared key.
[0437] In an optional solution, according to the protocol, the first node should also use the same parameters to generate the verification information as the second node uses to generate the second identity authentication information. If the verification information is the same as the second identity authentication information, the verification is considered to be successful. For example, the second identity authentication information is generated by KDF, so the first node can generate the verification information through KDF, also known as the verification value test2. The first node verifies whether the second identity authentication information is correct through the verification information, as shown below:
[0438] For example, if the second identity authentication information AUTHe is KDF (PSK, NONCEa), the first node obtains the verification value test2 = KDF (PSK, NONCEa) through KDF based on PSK and the second freshness parameter NONCEa. If the verification value test2 is the same as AUTHe, the verification is successful.
[0439] Optionally, if the second identity authentication information verification fails, it means that the identity of the second node is not credible. Therefore, the first node can discard the security context response message, or ignore the security context response message, or also include not applying the aforementioned target security algorithm of the signaling plane, not applying the aforementioned target MAC length of the signaling plane. Further, the first node can disconnect from the second node to facilitate association with the correct node.
[0440] Optionally, the second node may first perform the operation described in step S310, and then perform the operation described in step S309.
[0441] Step S311: the first node sends an association establishment message to the second node.
[0442] Specifically, the association establishment message may indicate that an association is established between the second node and the first node.
[0443] Optionally, the association establishment message may also carry a MAC for protecting the integrity of the association establishment message. The MAC for protecting the integrity of the association establishment message may be generated by the aforementioned target security algorithm of the signaling plane, and the length of the MAC for protecting the integrity of the association establishment message is the target MAC length of the signaling plane.
[0444] Optionally, the first node may encrypt part or all of the data in the association establishment message using an encryption key. Correspondingly, the second node may receive the association establishment message, decrypt the corresponding encrypted part, and obtain the message content.
[0445] Optionally, the first node may also determine a target security algorithm for the user plane according to a second algorithm policy, where the target security algorithm for the user plane belongs to a set of security algorithms indicated by information about security algorithms supported by the second node. The target security algorithm for the user plane may be sent to the second node via a security context request message, so that the second node receives the security context request message and thereby obtains the target security algorithm for the user plane. Further optionally, the second algorithm policy may be the same algorithm policy as the first algorithm policy.
[0446] Optionally, the first node can also obtain the identifier of the first service and / or the data packet size of the first service. The first node can determine the target MAC length of the user plane based on the MAC length supported by the target security algorithm of the user plane, the identifier of the first service and at least one of the data packet size of the first service. The target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service. Further optionally, the first node can send a resource scheduling message to the second node, and the resource scheduling message includes the target MAC length of the user plane. Accordingly, the second node receives the resource scheduling message, thereby obtaining the target MAC length of the user plane. It should be noted that the first service can be a service processed (or executed) in the second node, or it can be a service processed by other nodes forwarded by the second node.
[0447] exist Figure 3 In the method shown, the first node determines the target security algorithm of the signaling plane and the target MAC length of the signaling plane according to the information of the security algorithm supported by the second node and the algorithm strategy pre-configured or defined, and then uses the target MAC length of the signaling plane as the MAC length of the signaling message between the first node and the second node. In this way, the first node can formulate different selection strategies according to the needs, thereby determining the MAC length that meets the needs and improving the flexibility of the MAC length. For example, an algorithm with higher security can be selected from the algorithms supported by the second node, and a longer MAC length can also be selected, making it difficult for attackers to crack the MAC, thereby enhancing the integrity of the message protected by the MAC and improving the data security during the node communication process.
[0448] See also Figure 8 , Figure 8 is a flow chart of a communication method provided in an embodiment of the present application. The communication method can be based on Figure 1 The communication system shown in the figure is implemented, and the method at least includes the following steps:
[0449] Step S801: the second node sends a service attribute reporting response message to the first node.
[0450] Specifically, the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service.
[0451] Optionally, the first node may send a service attribute reporting request message to one or more nodes including the second node, and accordingly, the second node receives the service attribute reporting request message from the first node, thereby sending a service attribute reporting response message to the first node. Specifically, the service attribute reporting request message of the first node may include at least one of the identity identifier of the first node, the identity description information of the first node, or information for indicating sending a service attribute reporting response message, etc. After receiving the service attribute reporting request message, the second node sends a service attribute reporting response message to the first node.
[0452] Step S802: The first node determines a target MAC length of the user plane according to a MAC length supported by a target security algorithm of the user plane, and at least one of an identifier of the first service and a data packet size of the first service.
[0453] Specifically, the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service. In the specific implementation process, at least the following four situations are included:
[0454] Case 1: The first node determines the second length selection strategy according to the identifier of the first service and / or the data packet size of the first service. The second node determines the target MAC length of the user plane according to the second length selection strategy and the MAC length supported by the target security algorithm of the user plane, and the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service. The second length selection strategy may be a selection strategy pre-configured or defined in the first node, and may be implemented through priority, or may be implemented in accordance with a pre-configured or defined selection order, or may be implemented through algorithms, models, and the like.
[0455] For example, see Fig. 9 , Fig. 9It is a schematic diagram of a method for determining the target MAC length of the user plane provided by an embodiment of the present application. Area 901 includes the identity numbers (identify, ID) of some services, which can be used as the identification of the service. Different service identifications usually correspond to different services. For example, identification "0001" indicates video upload, identification "0002" indicates voice call, and identification "0003" indicates audio playback. Referring to area 902, it can be seen that different length selection strategies can be determined according to the identification of different services, for example, the video upload service with identification "0001" corresponds to length selection strategy A. The first node can determine that the target MAC length of the user plane is 128 bits (see area 904) based on the length selection strategy A corresponding to the service and the length 903 supported by the target security algorithm of the user plane. The MAC generated based on the MAC length is used to perform integrity protection on the data of the service with identification "0001". Similarly, referring to area 905, it can be seen that the length of the MAC for integrity protection of the service with identification "0002" is 64 bits; referring to area 906, it can be seen that the length of the MAC for integrity protection of the service with identification "0003" is 64 bits.
[0456] It should be noted that the service identifier can be used to determine whether integrity protection is enabled for the service. Fig. 9 , the noise reduction service with the service identifier "0004" may not enable integrity protection. In addition, whether to enable integrity protection may also be determined by the length selection strategy. For example, in the length selection strategy C, a MAC length of 0 indicates that integrity protection is not enabled.
[0457] For example, see Fig.10 , Fig.10 It is a schematic diagram of a method for determining the target MAC length of the user plane provided by an embodiment of the present application. Area 1001 includes the identifiers of some services and the corresponding data packet sizes. For example, the data packet size corresponding to the identifier "0001" is 500 bits. Referring to area 1002, it can be seen that different length selection strategies can be determined according to different data packet sizes, for example, the length selection strategy F corresponding to the data packet size of 65 bits to 256 bits. The first node can determine that the target MAC length of the user plane is 64 bits (see area 1004) based on the length selection strategy F corresponding to the data packet size and the length 1003 supported by the target security algorithm of the user plane. The MAC generated based on this MAC length is used to perform integrity protection on the data of the service with identifier "0002". Similarly, referring to area 1004, it can be seen that the length of the MAC for integrity protection of the service with identifier "0001" is 128 bits. Of course, Fig.10 The data packet size shown is only an example. There are other data packet sizes in the specific implementation process, or the corresponding length selection strategy can be determined by the range of data packet sizes, which will not be repeated here.
[0458] Case 2: The first node determines the target MAC length of the user plane according to the MAC length supported by the target security algorithm of the user plane and the identifier of the first service.
[0459] Optionally, there is a correspondence between the identifier of the first service and the MAC length in the first node, and the correspondence can be pre-configured or defined. The first node can determine the MAC length corresponding to the identifier of the first service as the target MAC length of the user plane based on the MAC length supported by the target security algorithm of the user plane and the correspondence between the identifier of the first service and the MAC length.
[0460] Table 3 Correspondence between service identifier and MAC length
[0461]
[0462]
[0463] For example, refer to Table 3, which is a correspondence between the identifier and MAC length of a possible service provided in an embodiment of the present application. The identifier "0001" represents a video upload service, and the corresponding MAC length is 128 bits. If the target security algorithm of the user plane supports a MAC length of 128 bits, 128 bits can be determined as the target MAC length of the user plane.
[0464] It can be understood that if the target security algorithm of the user plane does not support the MAC length corresponding to a certain service, a MAC length with a closer length can be selected from the lengths supported by the target security algorithm of the user plane as the target MAC length of the user plane. The specific implementation process will not be repeated here.
[0465] Optionally, the service reporting request message may include identifiers of multiple services. Accordingly, the first node may determine target MAC lengths of multiple corresponding user planes, and the target MAC lengths of the multiple user planes are respectively used to perform integrity protection on data of the multiple services.
[0466] Case 3: The first node determines the target MAC length of the user plane according to the MAC length supported by the target security algorithm of the user plane and the data packet size of the first service. Specifically, the first node may be pre-configured or defined with a correspondence between the data packet size and the MAC length of the first service. The first node may determine the MAC length corresponding to the data packet size of the first service as the target MAC length of the user plane according to the MAC length supported by the target security algorithm of the user plane and the correspondence between the data packet size and the MAC length of the first service.
[0467] Case 4: When the target security algorithm of the user plane corresponds to only one MAC length, the first node can also determine the target MAC length of the user plane according to the MAC length corresponding to the target security algorithm of the user plane. For example, the algorithm identified as "0001" (the corresponding algorithm is the AES-CMAC algorithm) only supports the generation of a 32-bit MAC. If the target security algorithm of the user plane is the algorithm identified as "0001", the corresponding 32 bits are used as the target MAC length of the user plane. For another example, HMAC256 only supports the generation of a 256-bit MAC length. Therefore, when the target security algorithm of the user plane is the HMAC256 algorithm, the 256 bits corresponding to HMAC256 are used as the target MAC length of the user plane.
[0468] Optionally, before determining the target MAC length of the user plane, the first node first determines that the data of the first service needs to be integrity protected. Specifically, services of different service types have different requirements for integrity protection. The first node can determine whether to turn on integrity protection based on the identifier of the first service. For services that need to turn on integrity protection, the corresponding target MAC length of the user plane is generated, thereby meeting the security requirements of different services. For example, the video upload service is a service with higher security requirements, so the data of the video upload service needs to be completely protected, and thus the length of the MAC used to protect the data of the service needs to be determined. For another example, the identifier of the first service corresponds to the first service type, wherein the data of the service of the first service type needs to be integrity protected, thereby determining the MAC length of the service belonging to the first service type.
[0469] Optionally, the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of the security algorithms supported by the second node. Further optionally, the target security algorithm of the user plane may be determined by the first node through a second algorithm selection strategy, and the second algorithm selection strategy may be a selection strategy pre-configured or defined in the first node. Optionally, the second algorithm selection strategy may be implemented by priority or in accordance with a pre-configured or defined selection order. For example, see Figure 4 , Figure 4 This is a schematic diagram of a possible algorithm selection strategy provided in an embodiment of the present application. As shown in area 401, the priority of the AES-CMAC algorithm is 1, indicating that when the second node supports the AES-CMAC algorithm, the AES-CMAC algorithm will be preferentially selected as the target security algorithm for the user plane.
[0470] Optionally, the communication method described in the embodiment of the present application may further include some or all of steps S803-S804, and steps S803-S804 are specifically as follows:
[0471] Step S803: the second node determines the target MAC length of the user plane according to the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service.
[0472] Specifically, the second node is configured with the same method for determining the target MAC length of the user plane as that in the first node, so that the second node can determine the target MAC length of the user plane. In one possible solution, the protocol stipulates that the first node determines the target MAC length of the user plane in the same manner, and the second node also determines the target MAC length of the user plane in the same manner. In this way, the node does not need to send the target MAC length to the other party, saving network resources. It can be understood that the specific method for determining the target MAC length of the user plane can be found in the specific description in step S802, which will not be repeated here.
[0473] Step S804: the first node sends a resource scheduling message to the second node.
[0474] Specifically, the resource scheduling message may include the target MAC length of the user plane, or the resource scheduling message includes information indicating the target MAC length of the user plane. Optionally, when the second node determines the target MAC length of the user plane through step S803, the resource scheduling message may not include the target MAC length of the user plane.
[0475] Optionally, the second node may also send a resource response message to the first node, where the resource response message is used to indicate that the second node has received the resource scheduling message.
[0476] Optionally, the first node and / or the second node may also generate a third MAC through the target security algorithm of the user plane and the target MAC length of the user plane, and the third MAC is used to perform integrity protection on the data of the first service. For example, the first node determines that the MAC length of the video upload service (i.e., the service with the identifier "0001") is 128 bits, then the first node and / or the second node may generate a third MAC with a length of 128 bits, and the third MAC is used to ensure the message integrity of the video upload service.
[0477] Optionally, the above-mentioned service attribute reporting request message, service attribute reporting response message, resource scheduling message, resource response message, etc. belong to signaling plane messages, so the message content can be integrity protected by the target security algorithm of the signaling plane. Among them, the target security algorithm of the signaling plane corresponds to the first algorithm selection strategy. Further optionally, the first node can also obtain information about the security algorithm of the second node. The first node can determine the target security algorithm of the signaling plane and the target MAC length of the signaling plane according to the first algorithm selection strategy. The target security algorithm of the signaling plane belongs to the set of security algorithms indicated by the information of the security algorithms supported by the second node. For example, taking the resource scheduling message as an example, the first node can generate a fourth MAC through the target security algorithm of the signaling plane. The length of the fourth MAC is the target MAC length of the above-mentioned signaling plane. The fourth MAC can be carried in the prefix or suffix of the resource scheduling message to ensure the integrity of the resource scheduling message.
[0478] Further optionally, the first node may send a security context request message to the second node, wherein the security context request message includes a target security algorithm for the signaling plane, a target security algorithm for the user plane, and a target MAC length for the signaling plane. Accordingly, the second node receives the security context request message, thereby obtaining the target security algorithm for the signaling plane, the target security algorithm for the user plane, and the target MAC length for the signaling plane.
[0479] exist Figure 8 In the method shown, the first node determines the target MAC length of the user plane according to the MAC length supported by the security algorithm of the user plane, the identifier of the first service and / or the data packet size of the first service, and then uses the target MAC length of the user plane as the MAC length of the message when processing the first service. In this way, different services or services with different data packet sizes can determine MAC lengths of different lengths, thereby improving the flexibility of the MAC length. On the one hand, for services with higher security, a longer MAC length can be used, which is difficult to crack and improves data security. On the other hand, for some messages with low security requirements or small data packets, a shorter MAC length can be used to avoid affecting communication efficiency and reduce resource consumption of network transmission.
[0480] See also Fig.11 , Fig.11 is a flow chart of a communication method provided in an embodiment of the present application. The communication method can be based on Figure 1 The communication system shown in the figure is implemented, and the method at least includes the following steps:
[0481] Step S1101: The second node sends a service attribute reporting response message to the first node. Correspondingly, the first node receives the service attribute reporting response message.
[0482] Specifically, the service attribute reporting response message includes at least one service identifier. Further, the at least one service identifier may include at least one second service identifier, the at least one second service identifier corresponds to a second service type, wherein data of the service of the second service type does not need to be integrity protected.
[0483] For example, referring to Table 4, Table 4 is a possible service type corresponding to a service identifier provided in an embodiment of the present application. It can be seen that the identifier "0001" represents a video upload service, which is an important service type and requires integrity protection to be enabled; correspondingly, the identifier "0004" represents an audio noise reduction service, which is an unimportant service type and does not require integrity protection to be enabled.
[0484] Table 4 Business types corresponding to business identifiers
[0485] Business logo Business Name Business Type Is the warranty turned on? 0001 Video Upload important yes 0002 Voice Call important yes 0003 Audio Playback ordinary yes 0004 Audio Noise Reduction unimportant no 0005 Positioning data synchronization important yes
[0486] Step S1102: The first node sends a resource scheduling message to the second node.
[0487] Specifically, the resource scheduling message includes information indicating to enable integrity protection and / or information indicating not to enable integrity protection. For services that do not need to enable integrity protection, the resource scheduling message may include information indicating not to enable integrity protection for the service. Correspondingly, for services that need to enable integrity protection, the resource scheduling message may include a MAC length indicating to perform integrity protection on the data of the service.
[0488] For example, the identifier of the second service corresponds to the second service type, and the data of the service of the second service type does not need to be integrity protected. Therefore, a first field may exist in the resource scheduling message, and the data in the first field may indicate that the service corresponding to the identifier of at least one second service does not start integrity protection. For example, when the data in the first field is "0", it indicates that the service corresponding to the identifier of the second service does not start integrity protection.
[0489] The first node sends a resource scheduling message to the second node, and correspondingly, the second node receives the resource scheduling message from the first node.
[0490] Step S1103: The second node determines, according to the resource scheduling message, that the service corresponding to the identifier of at least one second service does not start integrity protection. It should be noted that this step is optional and is only performed when there is at least one second service.
[0491] Specifically, the resource scheduling message may include a first field, and the data in the first field may indicate that the service corresponding to the identifier of at least one second service does not start integrity protection. For example, when the data in the first field is "0", it indicates that the service corresponding to the identifier of the second service does not start integrity protection.
[0492] Step S1104: The second node determines the service startup integrity protection corresponding to the identifier of at least one first service based on the resource scheduling message. It should be noted that this step is optional and is only performed when there is at least one first service. Specifically, for services that require integrity protection, the resource scheduling message may include a MAC length indicating the integrity protection of the data of the service. For example, the identifier of the first service corresponds to the first service type, and the data of the service of the first service type needs to be integrity protected. Therefore, the resource scheduling message includes information indicating the service startup integrity protection corresponding to the identifier of the first service. Specifically, there can be the following two implementation methods:
[0493] Mode 1: There may be a second field in the resource scheduling message, and the data in the second field may indicate starting integrity protection. For example, when the data in the second field is "1", it indicates that integrity protection is started for the service corresponding to the identifier of the first service.
[0494] Method 2: When the resource scheduling message carries an algorithm and / or MAC length for integrity protection of the data of the service, the second node can be instructed to start integrity protection for the service. For example, the resource scheduling message includes the target MAC length of the user plane corresponding to the first service, or the resource scheduling message includes information indicating the target MAC length of the user plane corresponding to the first service. The target MAC length of the user plane corresponding to the first service is used to indicate the length of the MAC for integrity protection of the data of the first service. Furthermore, the target MAC length of the user plane corresponding to the first service can be based on Figure 8 The method described in the illustrated embodiment is used to determine the present invention and will not be described in detail here.
[0495] Optionally, the second node may also send a resource response message to the first node, where the resource response message is used to indicate that the second node has received the resource scheduling message.
[0496] exist Fig.11 In the method shown, different types of services have different requirements for integrity protection, and the first node can determine whether to enable integrity protection based on the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be fully protected, so the MAC length of the corresponding audio noise reduction service can be determined.
[0497] Furthermore, the first node may carry indication information in the resource scheduling message, so that the second node determines whether integrity protection is enabled for the service according to the indication information.
[0498] above Fig.11 The method embodiment shown includes many possible implementation schemes. Fig.12 Some of the implementation schemes are illustrated with examples. It should be noted that: Fig.12 For related concepts, operations or logical relationships that are not explained, please refer to Fig.11 The corresponding description in the illustrated embodiment.
[0499] See also Fig.12 , Fig.12 is a flow chart of a communication method provided in an embodiment of the present application. The communication method can be based on Figure 1 The communication system shown in the figure is implemented, and the method at least includes the following steps:
[0500] Step S1201: the second node sends a service attribute reporting response message to the first node.
[0501] Specifically, the service attribute reporting response message includes at least one service identifier, and the at least one service identifier includes the service identifier of the first service. Optionally, the service attribute reporting response message may also include at least one service data packet size, and the at least one data packet size includes the data packet size of the first service.
[0502] Optionally, the first node may send a service attribute reporting request message to one or more nodes including the second node. The second node receives the service attribute reporting request message from the first node and sends a service attribute reporting response message to the first node.
[0503] Step S1202: The first node determines whether to start integrity protection for a first service among at least one service.
[0504] Specifically, the first node can determine whether to start integrity protection for the service through the identifier of the first service. For example, referring to Table 4, Table 4 is a possible service type corresponding to a service identifier provided in an embodiment of the present application. It can be seen that the identifier "0001" indicates a video upload service, which needs to start integrity protection; correspondingly, the identifier "0004" indicates an audio noise reduction service, which does not need to start integrity protection.
[0505] Step S1203: If the first node determines that integrity protection needs to be started for the first service, the target MAC length of the user plane is determined according to the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service.
[0506] Specifically, the service attribute reporting message includes the service identifier of the first service, so the first node can determine the target MAC length of the user plane based on the MAC length supported by the user plane and the identifier of the first service. Further optionally, when the service attribute reporting message includes the data packet size corresponding to the first service, the first node can determine the target MAC length of the user plane based on the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service. The target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service. The specific method for determining the target MAC length of the user plane can refer to the detailed description of step S802, which will not be repeated here.
[0507] Step S1204: the first node sends a resource scheduling message to the second node.
[0508] Specifically, when the first service needs to start integrity protection, the resource scheduling message includes the target MAC length of the user plane, or the resource scheduling message includes information for indicating the target MAC length of the user plane. The target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service.
[0509] Correspondingly, the second node receives the resource scheduling message and can obtain the target MAC length of the user plane.
[0510] Step S1205: If the first node determines that integrity protection does not need to be enabled for the first service, a resource scheduling message is sent to the second node.
[0511] Specifically, when the first service does not need to enable integrity protection, a first field may exist in the resource scheduling message, and the data in the first field may indicate that the service corresponding to the identifier of the first service does not enable integrity protection. For example, when the data in the first field is "0", it indicates that the service corresponding to the identifier of the first service does not enable integrity protection.
[0512] Optionally, the service attribute report response message may carry the identifiers of multiple services. In this case, the second node may determine whether the multiple services have integrity protection enabled, and accordingly, the resource scheduling message may be used to indicate whether integrity protection is enabled for the multiple services. For services that require integrity protection, the MAC lengths corresponding to the multiple services are also required to be included.
[0513] Correspondingly, the second node receives the resource scheduling message and can determine that integrity protection is not started for the first service.
[0514] Optionally, the second node may also send a resource response message to the first node, where the resource response message is used to indicate that the first node has received the resource scheduling message.
[0515] See also Fig.13 , Fig.13 is a flow chart of a communication method provided in an embodiment of the present application. The communication method can be based on Figure 1 The communication system shown in the figure is implemented, and the method at least includes the following steps:
[0516] Step S1301: The second node sends an association request message to the first node.
[0517] Specifically, the first message includes information about the security algorithm supported by the second node and the identity of the second node. The security algorithm supported by the second node includes one or more of the encryption algorithm, integrity protection algorithm or authentication encryption algorithm supported by the second node. Optionally, the information about the security algorithm supported by the second node can also be referred to as the security capabilities (Sec Capabilities) of the second node. The identity of the second node is also called the device identifier of the second node, which can be the ID of the second node, the media access control (MAC) address, domain name, domain address or other custom identifier. The ID of the second node can be a fixed ID or a temporary ID.
[0518] Optionally, the first message may also include a freshness parameter acquired (or generated) by the second node.
[0519] Optionally, the first node may send an access message or a broadcast message, and the second node receives the access message or the broadcast message from the first node, thereby sending a first association request message to the first node.
[0520] Step S1302: The first node determines a target security algorithm for the signaling plane and a target MAC length for the signaling plane according to a first algorithm selection strategy.
[0521] For a detailed description, please refer to step S302.
[0522] Step S1303: The first node determines a target security algorithm for the user plane and a target MAC length for the user plane according to the identity of the second node and the second algorithm selection policy.
[0523] Specifically, there are at least three ways:
[0524] Method 1: The first node determines the target security algorithm of the user plane according to the second algorithm selection strategy, and further determines the second length selection strategy according to the identity identifier of the second node, so that the target MAC length of the user plane can be determined according to the second length selection strategy and the target security algorithm of the user plane.
[0525] Method 2: The first node determines the target security algorithm of the user plane according to the second algorithm selection strategy. Further, based on the MAC length supported by the target security algorithm of the user plane and the correspondence between the identity identifier and the MAC length of the second node, the MAC length corresponding to the identity identifier of the second node is determined as the target MAC length of the user plane.
[0526] Method three: The first node determines the target security algorithm of the user plane according to the second algorithm selection strategy. The first node can determine the second length selection strategy, and determine the target MAC length of the user plane according to the second length selection strategy, and the target MAC length of the user plane is the MAC length supported by the target security algorithm of the user plane. Optionally, the second length selection strategy can be a length selection strategy pre-configured or pre-defined by the first node, so when determining the second length selection strategy, the identity of the second node may not be used.
[0527] Step S1304: The first node generates a first MAC by using a target security algorithm of the signaling plane.
[0528] For a detailed description, please refer to step S303.
[0529] Optionally, the communication method described in the embodiment of the present application may further include step S1305 or part or all of the steps in S1305-S1312. Steps S1305-S1312 are specifically as follows:
[0530] Step S1305: The first node sends a security context request message to the second node.
[0531] Specifically, the security context request message includes a first MAC, information indicating a target security algorithm for the signaling plane, information indicating a target security algorithm for the user plane, information indicating a target MAC length for the signaling plane, and information indicating a target MAC length for the user plane, and the first MAC is used to verify the integrity of the security context request message. Optionally, the security context request message also includes a second freshness parameter obtained (or generated) by the first node.
[0532] Optionally, the security context request message further includes first identity authentication information, where the first identity authentication information is generated by the first node according to a shared key between the first node and the second node. For detailed description, please refer to the corresponding description in S304.
[0533] Optionally, the security context request message may be encrypted by using an encryption key of the first node. Accordingly, after receiving the security context request message, the second node decrypts the message by using the corresponding encryption key to obtain the message content.
[0534] Step S1306: The second node verifies the integrity of the security context request message according to the first MAC using the target security algorithm of the signaling plane.
[0535] For a detailed description, please refer to step S305.
[0536] Step S1307: The second node verifies the first identity authentication information according to the shared key between the second node and the first node.
[0537] For a detailed description, please refer to step S306.
[0538] Step S1308: The second node generates a second MAC using the target security algorithm of the signaling plane.
[0539] For a detailed description, please refer to step S307.
[0540] Step S1309: The second node sends a security context response message to the first node.
[0541] For a detailed description, please refer to step S308.
[0542] Step S1310: The second node verifies the integrity of the security context response message according to the second MAC through the target security algorithm of the signaling plane.
[0543] For a detailed description, please refer to step S309.
[0544] Step S1311: The first node verifies the second identity authentication information according to the shared key between the first node and the second node.
[0545] For a detailed description, please refer to step S310.
[0546] Step S1312: The first node sends an association establishment message to the second node.
[0547] Specifically, the association establishment message indicates that an association is established between the second node and the first node.
[0548] For a detailed description, please refer to step S311.
[0549] exist Fig.13In the illustrated embodiment, the first node can be configured with different strategies to determine MAC lengths of different lengths, thereby improving the flexibility of the MAC length. Furthermore, the first node can determine the target security algorithm of the user plane and the target MAC of the user plane according to the identity of the second node, thereby meeting the requirements of different types of nodes for MAC length. For example, some nodes that handle important services can use longer MAC lengths to improve security. For another example, some auxiliary nodes or ordinary nodes can use shorter MAC lengths to reduce resource consumption and improve communication efficiency.
[0550] The method of the embodiment of the present application is described in detail above, and the device of the embodiment of the present application is provided below.
[0551] See also Fig.14 , Fig.14 1 is a schematic diagram of the structure of a communication device 140 provided in an embodiment of the present application. The device 140 may be a node or a device in a node, such as a chip or an integrated circuit. The device 140 may include a receiving unit 1401 and a processing unit 1402. The description of each unit is as follows:
[0552] The receiving unit 1401 is configured to receive an association request message from a second node, where the association request message includes information about a security algorithm supported by the second node;
[0553] The processing unit 1402 is configured to determine a target security algorithm of the signaling plane and a target MAC length of the signaling plane according to the first algorithm selection strategy, where the target security algorithm of the signaling plane belongs to the set of security algorithms indicated by the information of the security algorithms supported by the second node;
[0554] The processing unit 1402 is further configured to generate a first MAC by using a target security algorithm of the signaling plane, and the length of the first MAC is the target MAC length of the signaling plane.
[0555] In the embodiment of the present application, the device 140 determines the target security algorithm of the signaling plane and the target MAC length of the signaling plane through a pre-configured or defined algorithm strategy according to the information of the security algorithm supported by the second node, and then uses the target MAC length of the signaling plane as the MAC length of the signaling message between the first node and the second node. In this way, MAC lengths of different lengths can be determined according to different strategies configured in the device 140, thereby improving the flexibility of the MAC length. Furthermore, the algorithm selection strategy can be pre-configured or defined according to the communication requirements of the first node. For example, a more secure algorithm and a longer MAC length can be selected first, thereby improving data security.
[0556] In a possible implementation manner, the processing unit 1402 is specifically configured to:
[0557] A target security algorithm for the signaling plane and a target MAC length for the signaling plane are determined according to the first length selection strategy and the first algorithm selection strategy.
[0558] In yet another possible implementation, the processing unit 1402 is specifically configured to:
[0559] The target security algorithm of the signaling plane is determined according to the first algorithm selection strategy, and the MAC length corresponding to the target security algorithm of the signaling plane is the target MAC length of the signaling plane.
[0560] In yet another possible implementation, the device 140 further includes:
[0561] The sending unit 1403 is used to send a security context request message to the second node, where the security context request message includes a first MAC, information indicating a target security algorithm of the signaling plane, and a target MAC length of the signaling plane, where the first MAC is used to verify the integrity of the security context request message.
[0562] In yet another possible implementation, the device 140 further includes:
[0563] The sending unit 1403 is used to send a security context request message to the second node, and the security context request message includes the first MAC and information indicating the target security algorithm of the signaling plane; the first MAC is used to verify the integrity of the security context request message, and the first MAC is also used to indicate the target MAC length of the signaling plane.
[0564] In another possible implementation, the apparatus further includes a sending unit 1403, configured to send a security context request message to the second node, the security context request message including a first MAC, information indicating a target security algorithm of the signaling plane, a target MAC length of the signaling plane, and first identity authentication information; wherein the first MAC is used to verify the integrity of the security context request message, and the first identity authentication information is generated according to a shared key between the first node and the second node;
[0565] The above-mentioned receiving unit 1401 is also used to receive a security context response message from the second node, and the security context response message includes second identity authentication information and a second MAC; wherein the length of the second MAC is the target MAC length of the signaling plane; the second identity authentication information is used to verify the identity of the second node, and the second MAC is used to verify the integrity of the security context response message.
[0566] In another possible implementation manner, the security context request message further includes a target security algorithm of the user plane; and the processing unit 1402 is specifically configured to:
[0567] A target security algorithm for the user plane is determined according to the second algorithm selection policy, where the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
[0568] In yet another possible implementation, the receiving unit 1401 is further configured to obtain an identifier of the first service and / or a data packet size of the first service;
[0569] The processing unit 1402 is further configured to determine a target MAC length of the user plane according to a MAC length supported by a target security algorithm of the user plane, and at least one of an identifier of the first service and a data packet size of the first service; wherein the target MAC length of the user plane is used to indicate a length of a MAC for integrity protection of data of the first service;
[0570] The sending unit 1403 is further configured to send a resource scheduling message to the second node, where the resource scheduling message includes a target MAC length of the user plane.
[0571] It should be noted that the implementation of each unit can also refer to Figure 3 The device 140 is a device for Figure 3 The first node in the embodiment shown.
[0572] In addition, in each embodiment of the present application, the division of the units in the device is only a logical division according to the function, and is not used as a limitation on the specific structure of the device. In a specific implementation, some functional modules may be subdivided into more small functional modules, and some functional modules may be combined into one functional module, but no matter whether these functional modules are subdivided or combined, the general process executed is the same. For example, taking device 140 as an example, the above-mentioned receiving unit 1401 and sending unit 1403 can also be combined into a communication unit, which is used to implement the functions of receiving unit 1401 and sending unit 1403. Usually, each unit corresponds to its own program code (or program instruction), and when the program code corresponding to each of these units runs on the processor, the unit executes the corresponding process to implement the corresponding function.
[0573] See also Fig.15 , Fig.15 1 is a schematic diagram of the structure of a communication device 150 provided in an embodiment of the present application. The device 150 may be a node or a device in a node, such as a chip or an integrated circuit. The device 150 may include a sending unit 1501 and a receiving unit 1502. The description of each unit is as follows:
[0574] A sending unit 1501 is configured to send an association request message to a first node, where the association request message includes information about a security algorithm supported by a second node;
[0575] Receiving unit 1502 is used to receive a security context request message from the first node, the security context request message including information for indicating a target security algorithm for the signaling plane and information for indicating a target MAC length for the signaling plane; wherein the target security algorithm for the signaling plane and the target MAC length for the signaling plane correspond to a first algorithm selection strategy, and the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
[0576] In the embodiment of the present application, the above-mentioned device 150 sends information about the security algorithm supported by the second node to the first node. The first node determines the target security algorithm of the signaling plane and the target MAC length of the signaling plane through a pre-configured or defined algorithm strategy based on the information about the security algorithm supported by the second node, and then uses the target MAC length of the signaling plane as the MAC length of the signaling message between the first node and the second node. In this way, MAC lengths of different lengths can be determined according to different strategies configured in the above-mentioned device 150, thereby improving the flexibility of the MAC length. For example, an algorithm with higher security can be selected from the algorithms supported by the second node, and a longer MAC length can also be selected, thereby improving data security.
[0577] In a possible implementation manner, the security context request message includes a first MAC; the length of the first MAC is a target MAC length of the signaling plane; and the device further includes:
[0578] Processing unit 1503, configured to verify the integrity of the security context request message according to the first MAC through the target security algorithm of the signaling plane
[0579] In a possible implementation manner, the first MAC is the information used to indicate the target MAC length of the signaling plane. In a possible implementation manner, the security context request message also includes first identity authentication information; the processing unit is further used to verify the first identity authentication information according to the shared key between the second node and the first node;
[0580] The processing unit 1503 is further configured to generate a second MAC by using a target security algorithm of the signaling plane if the integrity of the security context request message is verified and the first identity authentication information is verified, and the length of the second MAC is the target MAC length of the signaling plane;
[0581] The sending unit 1501 is further used to send a security context response message to the first node, wherein the security context response message includes a second MAC and second identity authentication information; the second identity authentication information is generated based on a shared key between the second node and the first node.
[0582] In another possible implementation, the security context request message further includes information indicating a target security algorithm of the user plane; wherein the target security algorithm of the user plane corresponds to the second algorithm selection policy, and the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node;
[0583] The above-mentioned receiving unit 1502 is also used to receive a resource scheduling message from the first node, which includes a target MAC length of the user plane; wherein the target MAC length of the user plane corresponds to the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service; the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service.
[0584] It should be noted that the implementation of each unit can also refer to Figure 3 The device 150 is a device for Figure 3 The second node in the embodiment shown.
[0585] See also Fig.16 , Fig.16 1 is a schematic diagram of the structure of a communication device 160 provided in an embodiment of the present application. The device 160 may be a node or a device in a node, such as a chip or an integrated circuit. The device 160 may include a receiving unit 1601 and a processing unit 1602. The description of each unit is as follows:
[0586] The receiving unit 1601 is configured to receive a service attribute reporting response message from a second node, where the service attribute reporting response message includes an identifier of a first service and / or a data packet size of the first service;
[0587] Processing unit 1602 is used to determine the target MAC length of the user plane based on the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service, wherein the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service.
[0588] In an embodiment of the present application, the above-mentioned device 160 determines the target MAC length of the user plane according to the MAC length supported by the security algorithm of the user plane, the identifier of the first service and the data packet size of the first service, and then uses the target MAC length of the user plane as the MAC length of the message when processing the first service. In this way, different MAC lengths can be determined for different services or services with different data packet sizes, thereby improving the flexibility of the MAC length. On the one hand, for services with higher confidentiality, a longer MAC length can be used, which is difficult to crack and improves data security. On the other hand, for some messages that do not require high privacy or have smaller data packets, a shorter MAC length can be used to avoid affecting communication efficiency and reduce resource consumption of network transmission.
[0589] In a possible implementation manner, the processing unit 1602 is specifically configured to:
[0590] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identifier of the first service and the MAC length, the MAC length corresponding to the identifier of the first service is determined as the target MAC length of the user plane;
[0591] Alternatively, based on the MAC length supported by the target security algorithm of the user plane and the correspondence between the data packet size and the MAC length of the first service, the MAC length corresponding to the data packet size of the first service is determined as the target MAC length of the user plane.
[0592] In yet another possible implementation, the processing unit 1602 is specifically configured to:
[0593] Determine a second length selection strategy according to an identifier of the first service and / or a data packet size of the first service;
[0594] The target MAC length of the user plane is determined according to the second length selection policy and the MAC length supported by the target security algorithm of the user plane.
[0595] In yet another possible implementation, the identifier of the first service corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0596] In yet another possible implementation, the apparatus 160 further includes a sending unit 1603, configured to send a resource scheduling message to the second node, where the resource scheduling message includes a target MAC length of the user plane.
[0597] In yet another possible implementation, the processing unit 1602 is further configured to:
[0598] A third MAC is generated by a target security algorithm of the user plane. The length of the third MAC is the target MAC length of the user plane. The third MAC is used to perform integrity protection on data of the first service.
[0599] In yet another possible implementation, the receiving unit 1601 is further configured to obtain information about a security algorithm supported by the second node;
[0600] The processing unit 1602 is further configured to determine a target security algorithm of the signaling plane and a target MAC length of the signaling plane according to the first algorithm selection strategy, wherein the target security algorithm of the signaling plane belongs to a set of security algorithms indicated by the information of the security algorithms supported by the second node;
[0601] The processing unit 1602 is further configured to generate a fourth MAC by using a target security algorithm of the signaling plane, wherein the length of the fourth MAC is the target MAC length of the signaling plane;
[0602] The sending unit 1603 is further used to send a resource scheduling message to the second node, where the resource scheduling message includes a fourth MAC and a target MAC length of the user plane, and the fourth MAC is used to perform integrity protection on the resource scheduling message.
[0603] In yet another possible implementation, the processing unit 1602 is further configured to:
[0604] A target security algorithm for the user plane is determined according to the second algorithm selection policy, where the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
[0605] It should be noted that the implementation of each unit can also refer to Figure 8 The device 160 is a device for Figure 8 The first node in the embodiment shown.
[0606] See also Fig.17 , Fig.17 1 is a schematic diagram of the structure of a communication device 170 provided in an embodiment of the present application. The device 170 may be a node or a device in a node, such as a chip or an integrated circuit. The device 170 may include a sending unit 1701 and a receiving unit 1702. The description of each unit is as follows:
[0607] The sending unit 1701 is configured to send a service attribute reporting response message to the first node, where the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service;
[0608] Receiving unit 1702 is used to receive a resource scheduling message from the first node, wherein the resource scheduling message includes a target MAC length of the user plane; wherein the target MAC length of the user plane is a MAC length supported by a target security algorithm of the user plane, and the target MAC length of the user plane corresponds to at least one of an identifier of the first service and a data packet size of the first service; the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of data of the first service.
[0609] In the above embodiment, different types of services have different requirements for integrity protection, and the above device 170 can determine whether to enable integrity protection according to the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be completely protected.
[0610] In a possible implementation manner, the identifier of the first service corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0611] In yet another possible implementation, the target security algorithm of the user plane corresponds to the second algorithm selection policy, and the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node.
[0612] In yet another possible implementation manner, the resource scheduling message further includes a fourth MAC; and the processing unit is further configured to:
[0613] The message integrity of the resource scheduling message is verified according to the fourth MAC through the target security algorithm of the user plane.
[0614] It should be noted that the implementation of each unit can also refer to Figure 8 The device 170 is a device for Figure 8 The second node in the embodiment shown.
[0615] See also Fig.18 , Fig.18 1 is a schematic diagram of the structure of a communication device 180 provided in an embodiment of the present application. The device 180 may be a node or a device in a node, such as a chip or an integrated circuit. The device 180 may include a sending unit 1801 and a processing unit 1802. The description of each unit is as follows:
[0616] The sending unit 1801 is configured to send a service attribute reporting response message to the first node, where the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service;
[0617] Processing unit 1802 is used to determine the target MAC length of the user plane based on the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service; wherein the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service.
[0618] The above-mentioned device 180 is configured with the same method for determining the target MAC length of the user plane as that in the first node. Therefore, the above-mentioned device 180 can determine the target MAC length of the user plane based on the MAC length supported by the security algorithm of the user plane, the identifier of the first service and / or the data packet size of the first service, and then use the target MAC length of the user plane as the MAC length of the message when processing the first service. In this way, different services or services with different data packet sizes can determine MAC lengths of different lengths, thereby improving the flexibility of the MAC length.
[0619] By configuring the same method for determining the target MAC length of the user plane in the device 180 and the first node, the device 180 can determine the target MAC length of the user plane in the same manner as the first node determines the target MAC length of the user plane. In this way, the node does not need to send the target MAC length to the other party, saving network resources.
[0620] In yet another possible implementation, the processing unit 1802 is specifically configured to:
[0621] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identification ID of the first service and the MAC length, the MAC length corresponding to the ID of the first service is determined as the target MAC length of the user plane;
[0622] Alternatively, based on the MAC length supported by the target security algorithm of the user plane and the correspondence between the data packet size and the MAC length of the first service, the MAC length corresponding to the data packet size of the first service is determined as the target MAC length of the user plane.
[0623] In yet another possible implementation, the processing unit 1802 is specifically configured to:
[0624] Determine a second length selection strategy according to the ID of the first service and / or the data packet size of the first service;
[0625] The target MAC length of the user plane is determined according to the second length selection policy and the MAC length supported by the target security algorithm of the user plane.
[0626] In yet another possible implementation, the identifier of the first service corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0627] In yet another possible implementation, the target security algorithm of the user plane corresponds to the second algorithm selection policy, and the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node.
[0628] It should be noted that the implementation of each unit can also refer to Figure 8 The device 180 is a device for Figure 8 The second node in the embodiment shown.
[0629] See also Fig.19 , Fig.19 1 is a schematic diagram of the structure of a communication device 190 provided in an embodiment of the present application. The device 190 may be a node or a device in a node, such as a chip or an integrated circuit. The device 190 may include a receiving unit 1901 and a sending unit 1902. The description of each unit is as follows:
[0630] A receiving unit 1901 is configured to receive a service attribute reporting response message from a second node, where the service attribute reporting response message includes at least one service identifier, where the at least one service identifier includes an identifier of at least one second service, where the at least one second service identifier corresponds to a second service type, and where data of a service of the second service type does not need to be integrity protected;
[0631] The sending unit 1902 is configured to send a resource scheduling message to the second node, where the resource scheduling message is used to indicate that integrity protection is not started for a service corresponding to an identifier of at least one second service.
[0632] It can be seen that different types of services have different requirements for integrity protection, and the above device can determine whether to turn on integrity protection according to the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be fully protected, so the MAC length of the corresponding audio noise reduction service can be determined.
[0633] In a possible implementation, the at least one service identifier includes at least one first service identifier, the at least one first service identifier corresponds to a first service type, and data of the service of the first service type needs to be integrity protected.
[0634] In yet another possible implementation manner, the resource scheduling message is further used to indicate a target MAC length of a user plane for at least one first service.
[0635] It should be noted that the implementation of each unit can also refer to Fig.11 or Fig.12 The device 190 is a device for Fig.11 or Fig.12 The first node in the embodiment shown.
[0636] See also Fig. 20 , Fig. 20 1 is a schematic diagram of the structure of a communication device 200 provided in an embodiment of the present application. The device 200 may be a node or a device in a node, such as a chip or an integrated circuit. The device 200 may include a sending unit 2001, a receiving unit 2002 and a processing unit 2003. The description of each unit is as follows:
[0637] A sending unit 2001 is configured to send a service attribute reporting response message to a first node, where the service attribute reporting response message includes at least one service identifier, where the at least one service identifier includes an identifier of at least one second service, where the at least one second service identifier corresponds to a second service type, and where data of a service of the second service type does not need to be integrity protected;
[0638] The receiving unit 2002 is configured to receive a resource scheduling message from the first node;
[0639] The processing unit 2003 is configured to determine, according to the resource scheduling message, that integrity protection is not initiated for a service corresponding to an identifier of at least one second service.
[0640] It can be seen that different types of services have different requirements for integrity protection, and the first node can determine whether to enable integrity protection based on the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be fully protected, so the MAC length of the corresponding audio noise reduction service can be determined.
[0641] In a possible implementation, the at least one service identifier includes at least one first service identifier, the at least one first service identifier corresponds to a first service type, and data of a service of the first service type needs to be integrity protected;
[0642] The processing unit 2003 is further configured to determine, according to the resource scheduling message, service startup integrity protection corresponding to an identifier of at least one first service.
[0643] In yet another possible implementation, the resource scheduling message is further used to indicate the length of a MAC for integrity protection of data of at least one first service.
[0644] It should be noted that the implementation of each unit can also refer to Fig.11 or Fig.12 The device 200 is a device for Fig.11 or Fig.12 The second node in the embodiment shown.
[0645] See also Fig.21 , Fig.21 2 is a schematic diagram of the structure of a communication device 210 provided in an embodiment of the present application. The device 210 may be a node or a device in a node, such as a chip or an integrated circuit. The device 210 may include a receiving unit 2101 and a processing unit 2102. The description of each unit is as follows:
[0646] The receiving unit 2101 is configured to receive an association request message from a second node, where the association request message includes information about a security algorithm supported by the second node and an identity of the second node;
[0647] The processing unit 2102 is configured to determine a target security algorithm of the signaling plane and a target MAC length of the signaling plane according to the first algorithm selection strategy, where the target security algorithm of the signaling plane belongs to the set of security algorithms indicated by the information of the security algorithms supported by the second node;
[0648] The processing unit 2102 is further configured to determine a target security algorithm for the user plane and a target MAC length for the user plane according to the second algorithm selection strategy and the identity of the second node, wherein the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information of the security algorithms supported by the second node; the target MAC length for the user plane is used to indicate the length of the MAC for performing integrity protection on the data of the first service;
[0649] The processing unit 2102 is further configured to generate a first MAC by using a target security algorithm of the signaling plane, wherein the length of the first MAC is the target MAC length of the signaling plane.
[0650] In an embodiment of the present application, the above-mentioned device 210 can be configured with different strategies to determine MAC lengths of different lengths to improve the flexibility of the MAC length. Furthermore, the above-mentioned device 210 can determine the target security algorithm of the user plane and the target MAC of the user plane according to the identity of the second node to meet the requirements of different types of nodes for MAC length. For example, some nodes that handle important business can use a longer MAC length to improve security. For another example, some auxiliary nodes or ordinary nodes can use a shorter MAC length to reduce resource consumption and improve communication efficiency.
[0651] In a possible implementation manner, the processing unit 2102 is specifically configured to:
[0652] A target security algorithm for the signaling plane and a target MAC length for the signaling plane are determined according to the first length selection strategy and the first algorithm selection strategy.
[0653] In yet another possible implementation, the processing unit 2102 is specifically configured to:
[0654] Determining a target security algorithm for the signaling plane according to the first algorithm selection strategy;
[0655] The target MAC length of the signaling plane is determined according to the first length selection strategy and the target security algorithm of the signaling plane.
[0656] In yet another possible implementation, the processing unit 2102 is specifically configured to:
[0657] A target security algorithm for the signaling plane is determined according to the first algorithm selection strategy, and a MAC length corresponding to the target security algorithm for the signaling plane is a target MAC length for the signaling plane.
[0658] In yet another possible implementation, the processing unit 2102 is specifically configured to:
[0659] Determining a target security algorithm for the user plane according to a second algorithm selection strategy;
[0660] Determine a second length selection strategy according to the identity identifier of the second node;
[0661] The target MAC length of the signaling plane is determined according to the second length selection strategy and the target security algorithm of the user plane.
[0662] In yet another possible implementation, the processing unit 2102 is specifically configured to:
[0663] Determining a target security algorithm for the user plane according to a second algorithm selection strategy;
[0664] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identity identifier of the second node and the MAC length, the MAC length corresponding to the identity identifier of the second node is determined as the target MAC length of the user plane.
[0665] In another possible implementation, the above-mentioned device also includes a sending unit 2103, which is used to send a security context request message to the second node, and the security context request message includes a first MAC, information indicating a target security algorithm for the signaling plane, information indicating a target security algorithm for the user plane, a target MAC length for the signaling plane, and a target MAC length for the user plane, and the first MAC is used to verify the integrity of the security context request message.
[0666] In another possible implementation, the apparatus further includes a sending unit 2103, which is used to send a security context request message to the second node, where the security context request message includes a first MAC, information indicating a target security algorithm for a signaling plane, information indicating a target security algorithm for a user plane, a target MAC length for a signaling plane, a target MAC length for a user plane, and first identity authentication information; wherein the first MAC is used to verify the integrity of the security context request message, and the first identity authentication information is generated based on a shared key between the first node and the second node;
[0667] The above-mentioned receiving unit 2101 is also used to receive a security context response message from a second node, and the security context response message includes second identity authentication information and a second MAC; wherein the length of the second MAC is the target MAC length of the signaling plane; the second identity authentication information is used to verify the identity of the second node, and the second MAC is used to verify the integrity of the security context response message.
[0668] In yet another possible implementation, the processing unit 2102 is further configured to verify the integrity of the security context response message according to the target security algorithm of the signaling plane and the second MAC;
[0669] The processing unit 2102 is further configured to verify the second identity authentication information according to the shared key;
[0670] The above-mentioned device also includes a sending unit 2103, which is used to send an association establishment message to the second node if the integrity of the security context response message is verified and the second identity authentication information is verified. The association establishment message indicates that an association is established between the second node and the first node.
[0671] It should be noted that the implementation of each unit can also refer to Fig.13 The device 210 is a device for Fig.13 The first node in the embodiment shown.
[0672] See also Fig. 22 , Fig. 22 2 is a schematic diagram of the structure of a communication device 220 provided in an embodiment of the present application. The device 220 may be a node or a device in a node, such as a chip or an integrated circuit. The device 220 may include a sending unit 2201, a receiving unit 2202, and a processing unit 2203. The description of each unit is as follows:
[0673] A sending unit 2201 is configured to send an association request message to a first node, where the association request message includes information about a security algorithm supported by a second node and an identity of the second node;
[0674] The receiving unit 2202 is used to receive a security context request message from the first node, wherein the security context request message includes information for indicating a target security algorithm for the signaling plane, information for indicating a target security algorithm for the user plane, a target MAC length for the signaling plane, a target MAC length for the user plane, and a first MAC; wherein the target security algorithm for the signaling plane and the target MAC length for the signaling plane correspond to a first algorithm selection strategy, and the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by information on security algorithms supported by the second node; the target security algorithm for the user plane and the target MAC length for the user plane correspond to a second algorithm selection strategy and an identity of the second node, and the target security algorithm for the user plane belongs to a set of security algorithms indicated by information on security algorithms supported by the second node; the length of the first MAC is the target MAC length for the signaling plane;
[0675] The processing unit 2203 is configured to verify the integrity of the security context request message according to the first MAC by using a target security algorithm of the signaling plane.
[0676] In an embodiment of the present application, different strategies can be configured in the first node to determine MAC lengths of different lengths to improve the flexibility of the MAC length. Furthermore, the first node can determine the target security algorithm of the user plane and the target MAC of the user plane based on the identity of the second node to meet the requirements of different types of nodes for MAC length. The above-mentioned device 220 obtains the target MAC length from the first node and protects the message integrity through the target MAC length. For example, some nodes that handle important business can use a longer MAC length to improve security. For another example, some auxiliary nodes or ordinary nodes can use a shorter MAC length to reduce resource consumption and improve communication efficiency.
[0677] In a possible implementation, the target security algorithm of the signaling plane and the target MAC length of the signaling plane are determined according to a first algorithm selection strategy, and the target security algorithm of the signaling plane belongs to the set of security algorithms indicated by the information of the security algorithms supported by the second node; the first MAC is generated according to the target security algorithm of the signaling plane.
[0678] In another possible implementation, the target security algorithm of the user plane and the target MAC length of the user plane are determined according to a second algorithm selection strategy, and the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node; the first MAC is generated according to the target security algorithm of the signaling plane.
[0679] In another possible implementation, the security context request message further includes the first identity authentication information; the processing unit 2203 is further configured to verify the first identity authentication information according to a shared key between the second node and the first node;
[0680] The processing unit 2202 is further configured to generate a second MAC by using a target security algorithm of the signaling plane if the integrity of the security context request message is verified and the first identity authentication information is verified, and the length of the second MAC is the target MAC length of the signaling plane;
[0681] The above-mentioned receiving unit 2202 is also used to send a security context response message to the first node, and the security context response message includes a second MAC and second identity authentication information; the second identity authentication information is generated based on a shared key between the second node and the first node.
[0682] In yet another possible implementation, the receiving unit 2202 is further configured to receive an association establishment message from the first node, where the association establishment message indicates that an association is established between the second node and the first node.
[0683] It should be noted that the implementation of each unit can also refer to Fig.13 The device 220 is a device for Fig.13 The second node in the embodiment shown.
[0684] See also Fig.23 , Fig.23 2 is a schematic diagram of the structure of a communication device 230 provided in an embodiment of the present application. The device 230 may be a node or a device in a node. The device 230 may include at least one memory 2301 and at least one processor 2302. Optionally, a bus 2303 may also be included. Further optionally, a communication interface 2304 may also be included, wherein the memory 2301, the processor 2302 and the communication interface 2304 are connected via the bus 2303.
[0685] The memory 2301 is used to provide a storage space, in which data such as an operating system and a computer program can be stored. The memory 2301 can be a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), or a portable read-only memory (CD-ROM), etc., or a combination of multiple thereof.
[0686] Processor 2302 is a module that performs arithmetic operations and / or logical operations, and can specifically be a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor unit (MPU), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a complex programmable logic device (CPLD), and other processing modules, or a combination of multiple of them.
[0687] The communication interface 2304 is used to receive data sent externally and / or send data externally, and may be a wired link interface such as an Ethernet cable, or a wireless link (Wi-Fi, Bluetooth, etc.) interface. Optionally, the communication interface 2304 may also include a transmitter (such as a radio frequency transmitter, an antenna, etc.) coupled to the interface, or a receiver, etc.
[0688] The processor 2302 in the device 230 is used to read the computer program stored in the memory 2301 to execute the aforementioned communication method, for example Figure 3 , Figure 8 , Fig.11 , Fig.12 or Fig.13 The communication method described.
[0689] For example, the processor 2302 in the device 230 is used to read the computer program stored in the memory 2301 to perform the following operations:
[0690] receiving an association request message from the second node through the communication interface 2304, the association request message including information about a security algorithm supported by the second node;
[0691] Determine, according to the first algorithm selection strategy, a target security algorithm for the signaling plane and a target MAC length for the signaling plane, where the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node;
[0692] A first MAC is generated by a target security algorithm of the signaling plane, and a length of the first MAC is a target MAC length of the signaling plane.
[0693] In the embodiment of the present application, the device 230 determines the target security algorithm of the signaling plane and the target MAC length of the signaling plane through a pre-configured or defined algorithm strategy according to the information of the security algorithm supported by the second node, and then uses the target MAC length of the signaling plane as the MAC length of the signaling message between the first node and the second node. In this way, MAC lengths of different lengths can be determined according to different strategies configured in the device 230, thereby improving the flexibility of the MAC length. Furthermore, the algorithm selection strategy can be pre-configured or defined according to the communication requirements of the first node. For example, a higher security algorithm and a longer MAC length can be preferentially selected to improve data security.
[0694] In a possible implementation manner, the processor 2302 is specifically configured to determine a target security algorithm of the signaling plane and a target MAC length of the signaling plane according to a first length selection strategy and a first algorithm selection strategy.
[0695] In yet another possible implementation, the processor 2302 is specifically configured to:
[0696] Determining a target security algorithm for the signaling plane according to the first algorithm selection strategy;
[0697] The target MAC length of the signaling plane is determined according to the first length selection strategy and the target security algorithm of the signaling plane.
[0698] In another possible implementation, the processor 2302 is specifically configured to determine a target security algorithm of the signaling plane according to the first algorithm selection strategy, and a MAC length corresponding to the target security algorithm of the signaling plane is a target MAC length of the signaling plane.
[0699] In another possible implementation, the processor 2302 is also used to send a security context request message to the second node through the communication interface 2304, where the security context request message includes a first MAC, information indicating a target security algorithm on the signaling plane, and a target MAC length on the signaling plane, and the first MAC is used to verify the integrity of the security context request message.
[0700] It can be seen that the device 230 can carry information indicating the target security algorithm of the signaling plane and the target MAC length of the signaling plane in the security context request message, so that the second node can obtain the target security algorithm of the signaling plane and the target MAC length of the signaling plane through the security context request message. Further, the security context request message can carry a first MAC for the second node to verify the integrity of the security context request message and prevent the security context request message from being tampered with by an attacker.
[0701] In another possible implementation, the processor 2302 is also used to send a security context request message to the second node through the communication interface 2304, and the security context request message includes the first MAC and information indicating the target security algorithm of the signaling plane; the first MAC is used to verify the integrity of the security context request message, and the first MAC is also used to indicate the target MAC length of the signaling plane.
[0702] In yet another possible implementation, after determining the target security algorithm of the signaling plane and the target MAC length of the signaling plane according to the first algorithm selection strategy, the processor 2302 is further configured to:
[0703] Sending a security context request message to the second node through the communication interface 2304, the security context request message including a first MAC, information indicating a target security algorithm of the signaling plane, a target MAC length of the signaling plane, and first identity authentication information; wherein the first MAC is used to verify the integrity of the security context request message, and the first identity authentication information is generated according to a shared key between the first node and the second node;
[0704] A security context response message is received from the second node through the communication interface 2304, and the security context response message includes second identity authentication information and a second MAC; wherein the length of the second MAC is the target MAC length of the signaling plane; the second identity authentication information is used to verify the identity of the second node, and the second MAC is used to verify the integrity of the security context response message.
[0705] Among them, the shared key is a secret value shared between the first node and the second node, which can be used to generate identity authentication information to facilitate node identity verification. It can be seen that the device 230 can generate the first identity authentication information through the shared key, and the first identity authentication information is used by the second node to verify the identity of the first node. Correspondingly, the first node can also verify the identity of the second node through the second identity authentication information. If an attacker wants to use the identity of the second node to obtain the target security algorithm of the signaling plane or the target MAC length of the signaling plane, since the shared key cannot be forged, the identity authentication of the above-mentioned device 230 cannot be passed, thereby avoiding the first node from communicating with an untrusted node and improving the communication security of the first node.
[0706] In yet another possible implementation, the processor 2302 is further configured to:
[0707] Verify the integrity of the security context response message according to the target security algorithm of the signaling plane and the second MAC;
[0708] Verify the second identity authentication information according to the shared key;
[0709] If the integrity of the security context response message is verified and the second identity authentication information is verified, an association establishment message is sent to the second node, and the association establishment message indicates that an association is established between the second node and the first node.
[0710] In another possible implementation, the above-mentioned security context request message also includes a target security algorithm for the user plane; the processor 2302 is also used to determine the target security algorithm for the user plane according to the second algorithm selection strategy, and the target security algorithm for the user plane belongs to the set of security algorithms indicated by the information on security algorithms supported by the second node.
[0711] In yet another possible implementation, the processor 2302 is further configured to:
[0712] Acquire an identifier of a first service and / or a data packet size of the first service;
[0713] Determine a target MAC length of the user plane according to a MAC length supported by a target security algorithm of the user plane, and at least one of an identifier of the first service and a data packet size of the first service; the target MAC length of the user plane is used to indicate a length of a MAC for integrity protection of data of the first service;
[0714] A resource scheduling message is sent to the second node through the communication interface 2304, where the resource scheduling message includes a target MAC length of the user plane.
[0715] It can be seen that the target MAC length of the user plane can be determined according to the MAC length supported by the security algorithm of the user plane, the identifier of the first service and the data packet size of the first service. Different services or services with different data packet sizes can determine different MAC lengths, thereby improving the flexibility of the MAC length. On the one hand, for services with higher confidentiality, a longer MAC length can be used, which is difficult to crack and improves data security.
[0716] It should be noted that the implementation of each unit can also refer to Figure 3 The device 230 is a device for Figure 3 The first node in the embodiment shown.
[0717] See also Fig.24 , Fig.242 is a schematic diagram of the structure of a communication device 240 provided in an embodiment of the present application. The device 240 may be a node or a device in a node. The device 240 may include at least one memory 2401 and at least one processor 2402. Optionally, a bus 2403 may also be included. Further optionally, a communication interface 2404 may also be included, wherein the memory 2401, the processor 2402 and the communication interface 2404 are connected via the bus 2403.
[0718] The memory 2401 is used to provide a storage space, and the storage space can store data such as an operating system and a computer program, etc. The memory 2401 can be one or a combination of multiple of RAM, ROM, EPROM, CD-ROM, etc.
[0719] The processor 2402 is a module that performs arithmetic operations and / or logical operations, and may specifically be one or a combination of multiple processing modules such as a CPU, a GPU, an MPU, an ASIC, an FPGA, and a CPLD.
[0720] The communication interface 2404 is used to receive data sent from the outside and / or send data to the outside, and can be a wired link interface such as an Ethernet cable, or a wireless link (Wi-Fi, Bluetooth, etc.) interface. Optionally, the communication interface 2404 can also include a transmitter (such as a radio frequency transmitter, antenna, etc.) or a receiver coupled to the interface.
[0721] The processor 2402 in the device 240 is used to read the computer program stored in the memory 2401 to execute the aforementioned communication method, for example Figure 3 The communication method described.
[0722] For example, the processor 2402 in the device 240 is used to read the computer program stored in the memory 2401 to perform the following operations:
[0723] Sending an association request message to the first node through the communication interface 2404, the association request message including information about a security algorithm supported by the second node;
[0724] A security context request message is received from the first node through the communication interface 2404, and the security context request message includes information for indicating a target security algorithm of the signaling plane, a target MAC length of the signaling plane, and a first MAC; wherein the target security algorithm of the signaling plane and the target MAC length of the signaling plane correspond to a first algorithm selection strategy, and the target security algorithm of the signaling plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node.
[0725] In the embodiment of the present application, the above-mentioned device 240 sends information about the security algorithm supported by the second node to the first node. The first node determines the target security algorithm of the signaling plane and the target MAC length of the signaling plane through a pre-configured or defined algorithm strategy based on the information about the security algorithm supported by the second node, and then uses the target MAC length of the signaling plane as the MAC length of the signaling message between the first node and the second node. In this way, MAC lengths of different lengths can be determined according to different strategies configured in the above-mentioned device 240, thereby improving the flexibility of the MAC length. For example, an algorithm with higher security can be selected from the algorithms supported by the second node, and a longer MAC length can also be selected, thereby improving data security.
[0726] In one possible implementation, the security context request message includes a first MAC; the length of the first MAC is the target MAC length of the signaling plane; the processor 2402 is specifically used to verify the integrity of the security context request message according to the first MAC through the target security algorithm of the signaling plane.
[0727] In a possible implementation manner, the first MAC is the information used to indicate the target MAC length of the signaling plane.
[0728] In a possible implementation manner, the target security algorithm of the signaling plane and the target MAC length of the signaling plane are determined according to a first algorithm selection strategy; and the first MAC is generated according to the target security algorithm of the signaling plane.
[0729] In yet another possible implementation, the security context request message further includes first identity authentication information; and the processor 2402 is further configured to:
[0730] Verifying the first identity authentication information according to a shared key between the second node and the first node;
[0731] If the integrity of the security context request message is verified and the first identity authentication information is verified, a second MAC is generated by the target security algorithm of the signaling plane, and the length of the second MAC is the target MAC length of the signaling plane;
[0732] A security context response message is sent to the first node via the communication interface 2404 , wherein the security context response message includes a second MAC and second identity authentication information; the second identity authentication information is generated based on a shared key between the second node and the first node.
[0733] In yet another possible implementation, the processor 2402 is further configured to receive an association establishment message from the first node through the communication interface 2404, where the association establishment message indicates that an association is established between the second node and the first node.
[0734] In another possible implementation, the security context request message further includes information indicating a target security algorithm of the user plane; wherein the target security algorithm of the user plane corresponds to a second algorithm selection policy, and the target security algorithm of the user plane belongs to a set of security algorithms indicated by the information of security algorithms supported by the second node; the method further includes:
[0735] A resource scheduling message is received from the first node through the communication interface 2404, and the resource scheduling message includes a target MAC length of the user plane; the target MAC length of the user plane corresponds to the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service; the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service.
[0736] It can be seen that different services or services with different data packet sizes can determine different MAC lengths, thereby increasing the flexibility of the MAC length. On the one hand, for services with higher confidentiality, a longer MAC length can be used, making it difficult to crack and thus increasing data security.
[0737] Further, the first node may carry information indicating a target security algorithm of the user plane and a target MAC length of the user plane in a resource scheduling message, so that the above-mentioned device 240 may obtain the target security algorithm of the user plane and the target MAC length of the user plane through the resource scheduling message.
[0738] It should be noted that the implementation of each unit can also refer to Figure 3 The device 240 is a device for Figure 3 The second node in the embodiment shown.
[0739] See also Fig.25 , Fig.25 2 is a schematic diagram of the structure of a communication device 240 provided in an embodiment of the present application. The device 250 may be a node or a device in a node. The device 250 may include at least one memory 2501 and at least one processor 2502. Optionally, a bus 2503 may also be included. Further optionally, a communication interface 2504 may also be included, wherein the memory 2501, the processor 2502 and the communication interface 2504 are connected via the bus 2503.
[0740] The memory 2501 is used to provide a storage space, and the storage space can store data such as an operating system and a computer program, etc. The memory 2501 can be one or a combination of multiple of RAM, ROM, EPROM, CD-ROM, etc.
[0741] The processor 2502 is a module that performs arithmetic operations and / or logical operations, and may specifically be one or a combination of multiple processing modules such as a CPU, a GPU, an MPU, an ASIC, an FPGA, and a CPLD.
[0742] The communication interface 2504 is used to receive data sent from the outside and / or send data to the outside, and can be a wired link interface such as an Ethernet cable, or a wireless link (Wi-Fi, Bluetooth, etc.) interface. Optionally, the communication interface 2504 can also include a transmitter (such as a radio frequency transmitter, antenna, etc.) or a receiver coupled to the interface.
[0743] The processor 2502 in the device 250 is used to read the computer program stored in the memory 2501 to execute the aforementioned communication method, for example Figure 8 The communication method described.
[0744] For example, the processor 2502 in the device 250 is used to read the computer program stored in the memory 2501 to perform the following operations:
[0745] Receiving a service attribute reporting response message from the second node through the communication interface 2504, where the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service;
[0746] The target MAC length of the user plane is determined based on the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service. The target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service.
[0747] In an embodiment of the present application, the above-mentioned device 250 determines the target MAC length of the user plane according to the MAC length supported by the security algorithm of the user plane, the identifier of the first service and the data packet size of the first service, and then uses the target MAC length of the user plane as the MAC length of the message when processing the first service. In this way, different MAC lengths can be determined for different services or services with different data packet sizes, thereby improving the flexibility of the MAC length. On the one hand, for services with higher confidentiality, a longer MAC length can be used, which is difficult to crack and improves data security. On the other hand, for some messages that do not require high privacy or have smaller data packets, a shorter MAC length can be used to avoid affecting communication efficiency and reduce resource consumption of network transmission.
[0748] In a possible implementation manner, the processor 2502 is specifically configured to determine a target MAC length of the user plane according to a MAC length supported by a target security algorithm of the user plane and an identifier of the first service;
[0749] Alternatively, the target MAC length of the user plane is determined according to the MAC length supported by the target security algorithm of the user plane and the data packet size of the first service.
[0750] In yet another possible implementation, the processor 2502 is specifically configured to:
[0751] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identifier of the first service and the MAC length, the MAC length corresponding to the identifier of the first service is determined as the target MAC length of the user plane;
[0752] Alternatively, based on the MAC length supported by the target security algorithm of the user plane and the correspondence between the data packet size and the MAC length of the first service, the MAC length corresponding to the data packet size of the first service is determined as the target MAC length of the user plane.
[0753] In another possible implementation, determining the target MAC length of the user plane according to the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service includes:
[0754] Determine a second length selection strategy according to an identifier of the first service and / or a data packet size of the first service;
[0755] The target MAC length of the user plane is determined according to the second length selection policy and the MAC length supported by the target security algorithm of the user plane.
[0756] In yet another possible implementation, the identifier of the first service corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0757] Different types of services have different requirements for integrity protection. The first node can determine whether to enable integrity protection based on the identifier of the first service. For services that require integrity protection, the corresponding user plane target MAC is generated, thereby meeting the security requirements of different services. For example, the video upload service is a service with high security requirements, so the data of the video upload service needs to be fully protected, so it is necessary to determine the length of the MAC used to protect the data of the service.
[0758] In yet another possible implementation, the processor 2502 is further configured to send a resource scheduling message to the second node through the communication interface 2504, where the resource scheduling message includes a target MAC length of the user plane.
[0759] In yet another possible implementation, the above method further includes:
[0760] A third MAC is generated by a target security algorithm of the user plane. The length of the third MAC is the target MAC length of the user plane. The third MAC is used to perform integrity protection on the data of the first service.
[0761] In yet another possible implementation, the processor 2502 is further configured to:
[0762] Obtain information about security algorithms supported by the second node;
[0763] Determine a target security algorithm for the signaling plane and a target MAC length for the signaling plane according to the first algorithm selection strategy, wherein the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node;
[0764] Generate a fourth MAC using a target security algorithm of the signaling plane, where the length of the fourth MAC is the target MAC length of the signaling plane;
[0765] A resource scheduling message is sent to the second node through the communication interface 2504, where the resource scheduling message includes a fourth MAC and a target MAC length of the user plane, where the fourth MAC is used to perform integrity protection on the resource scheduling message.
[0766] In another possible implementation, the processor 2502 is further configured to determine a target security algorithm for the user plane according to a second algorithm selection strategy, where the target security algorithm for the user plane belongs to a set of security algorithms indicated by information on security algorithms supported by the second node.
[0767] It should be noted that the implementation of each unit can also refer to Figure 8 The device 250 is a device for Figure 8 The first node in the embodiment shown.
[0768] See also Fig.26 , Fig.26 2 is a schematic diagram of the structure of a communication device 260 provided in an embodiment of the present application. The device 260 may be a node or a device in a node. The device 260 may include at least one memory 2601 and at least one processor 2602. Optionally, a bus 2603 may also be included. Further optionally, a communication interface 2604 may also be included, wherein the memory 2601, the processor 2602 and the communication interface 2604 are connected via the bus 2603.
[0769] The memory 2601 is used to provide a storage space, and the storage space can store data such as an operating system and a computer program, etc. The memory 2601 can be one or a combination of RAM, ROM, EPROM, CD-ROM, etc.
[0770] The processor 2602 is a module that performs arithmetic operations and / or logical operations, and specifically may be one or a combination of multiple processing modules such as a CPU, a GPU, an MPU, an ASIC, an FPGA, and a CPLD.
[0771] The communication interface 2604 is used to receive data sent from the outside and / or send data to the outside, and can be a wired link interface such as an Ethernet cable, or a wireless link (Wi-Fi, Bluetooth, etc.) interface. Optionally, the communication interface 2604 can also include a transmitter (such as a radio frequency transmitter, antenna, etc.) or a receiver coupled to the interface.
[0772] The processor 2602 in the device 260 is used to read the computer program stored in the memory 2601 to execute the aforementioned communication method, for example Figure 8 The communication method described.
[0773] For example, the processor 2602 in the device 260 is used to read the computer program stored in the memory 2601 to perform the following operations:
[0774] Sending a service attribute reporting response message to the first node through the communication interface 2604, where the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service;
[0775] A resource scheduling message is received from the first node through the communication interface 2604, and the resource scheduling message includes a target MAC length of the user plane; wherein the target MAC length of the user plane is the MAC length supported by the target security algorithm of the user plane, and the target MAC length of the user plane corresponds to at least one of an identifier of the first service and a data packet size of the first service; the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of data of the first service.
[0776] In the above embodiment, different types of services have different requirements for integrity protection, and the above device 260 can determine whether to enable integrity protection according to the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be completely protected.
[0777] Furthermore, the first node may carry indication information in the resource scheduling message, so that the second node determines whether integrity protection is enabled for the service according to the indication information.
[0778] In a possible implementation manner, the target MAC length of the user plane is determined according to a MAC length supported by a target security algorithm of the user plane, and at least one of an identifier of the first service and a data packet size of the first service.
[0779] In yet another possible implementation, the identifier of the first service corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0780] Different types of services have different requirements for integrity protection. The first node can determine whether to enable integrity protection based on the identifier of the first service. For services that require integrity protection, the corresponding user plane target MAC is generated, thereby meeting the security requirements of different services. For example, the video upload service is a service with high security requirements, so the data of the video upload service needs to be fully protected, so it is necessary to determine the length of the MAC used to protect the data of the service.
[0781] In yet another possible implementation, the target security algorithm of the user plane corresponds to the second algorithm selection policy, and the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node.
[0782] In another possible implementation, the resource scheduling message further includes a fourth MAC, and the processor 2602 is further configured to verify the message integrity of the resource scheduling message according to the fourth MAC through a target security algorithm of the user plane.
[0783] It should be noted that the implementation of each unit can also refer to Figure 8 The device 260 is a device for Figure 8 The second node in the embodiment shown.
[0784] See also Fig. 27 , Fig. 27 2 is a schematic diagram of the structure of a communication device 270 provided in an embodiment of the present application. The device 270 may be a node or a device in a node. The device 270 may include at least one memory 2701 and at least one processor 2702. Optionally, a bus 2603 may also be included. Further optionally, a communication interface 2704 may also be included, wherein the memory 2701, the processor 2702 and the communication interface 2704 are connected via a bus 2703.
[0785] The memory 2601 is used to provide a storage space, in which data such as an operating system and a computer program can be stored. The memory 2701 can be one or a combination of RAM, ROM, EPROM, CD-ROM, etc.
[0786] The processor 2702 is a module that performs arithmetic operations and / or logical operations, and may specifically be one or a combination of multiple processing modules such as a CPU, a GPU, an MPU, an ASIC, an FPGA, and a CPLD.
[0787] The communication interface 2704 is used to receive data sent from the outside and / or send data to the outside, and can be a wired link interface such as an Ethernet cable, or a wireless link (Wi-Fi, Bluetooth, etc.) interface. Optionally, the communication interface 2704 can also include a transmitter (such as a radio frequency transmitter, antenna, etc.) or a receiver coupled to the interface.
[0788] The processor 2702 in the device 270 is used to read the computer program stored in the memory 2701 to execute the aforementioned communication method, for example Figure 8 The communication method described.
[0789] For example, the processor 2702 in the device 270 is used to read the computer program stored in the memory 2701 to perform the following operations:
[0790] Sending a service attribute reporting response message to the first node through the communication interface 2704, where the service attribute reporting response message includes an identifier of the first service and / or a data packet size of the first service;
[0791] The target MAC length of the user plane is determined according to the MAC length supported by the target security algorithm of the user plane, and at least one of the identifier of the first service and the data packet size of the first service; wherein the target MAC length of the user plane is used to indicate the length of the MAC for integrity protection of the data of the first service.
[0792] The above-mentioned device 270 is configured with the same method for determining the target MAC length of the user plane as that in the first node. Therefore, the above-mentioned device 270 can determine the target MAC length of the user plane based on the MAC length supported by the security algorithm of the user plane, the identifier of the first service and / or the data packet size of the first service, and then use the target MAC length of the user plane as the MAC length of the message when processing the first service. In this way, different services or services with different data packet sizes can determine MAC lengths of different lengths, thereby improving the flexibility of the MAC length.
[0793] The same method for determining the target MAC length of the user plane is configured in the device 270 and the first node, so that the first node determines the target MAC length of the user plane in the same manner as the device 270. In this way, the node does not need to send the target MAC length to the other party, saving network resources.
[0794] In a possible implementation manner, the processor 2702 is specifically configured to:
[0795] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identification ID of the first service and the MAC length, the MAC length corresponding to the ID of the first service is determined as the target MAC length of the user plane;
[0796] Alternatively, based on the MAC length supported by the target security algorithm of the user plane and the correspondence between the data packet size and the MAC length of the first service, the MAC length corresponding to the data packet size of the first service is determined as the target MAC length of the user plane.
[0797] In a possible implementation manner, the processor 2702 is specifically configured to:
[0798] Determine a target MAC length of the user plane according to a MAC length supported by a target security algorithm of the user plane and an identifier of the first service;
[0799] Alternatively, the target MAC length of the user plane is determined according to the MAC length supported by the target security algorithm of the user plane and the data packet size of the first service.
[0800] In yet another possible implementation, the processor 2702 is specifically configured to:
[0801] Determine a second length selection strategy according to the ID of the first service and / or the data packet size of the first service;
[0802] The target MAC length of the user plane is determined according to the second length selection strategy and the MAC length supported by the target security algorithm of the user plane.
[0803] In yet another possible implementation, the identifier of the first service corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected.
[0804] Different types of services have different requirements for integrity protection. The first node can determine whether to enable integrity protection based on the identifier of the first service. For services that require integrity protection, the corresponding user plane target MAC is generated, thereby meeting the security requirements of different services. For example, the video upload service is a service with high security requirements, so the data of the video upload service needs to be fully protected, so it is necessary to determine the length of the MAC used to protect the data of the service.
[0805] In yet another possible implementation, the target security algorithm of the user plane corresponds to the second algorithm selection policy, and the target security algorithm of the user plane belongs to the set of security algorithms indicated by the information of security algorithms supported by the second node.
[0806] It should be noted that the implementation of each unit can also refer to Figure 8 The device 270 is a device for Figure 8 The second node in the embodiment shown.
[0807] See also Fig.28 , Fig.28 2 is a schematic diagram of the structure of a communication device 280 provided in an embodiment of the present application. The device 280 may be a node or a device in a node. The device 280 may include at least one memory 2801 and at least one processor 2802. Optionally, a bus 2803 may also be included. Further optionally, a communication interface 2804 may also be included, wherein the memory 2801, the processor 2802 and the communication interface 2804 are connected via a bus 2703.
[0808] The memory 2801 is used to provide a storage space, and the storage space can store data such as an operating system and a computer program, etc. The memory 2801 can be one or a combination of multiple of RAM, ROM, EPROM, CD-ROM, etc.
[0809] The processor 2802 is a module that performs arithmetic operations and / or logical operations, and specifically may be one or a combination of multiple processing modules such as a CPU, a GPU, an MPU, an ASIC, an FPGA, and a CPLD.
[0810] The communication interface 2804 is used to receive data sent from the outside and / or send data to the outside, and can be a wired link interface such as an Ethernet cable, or a wireless link (Wi-Fi, Bluetooth, etc.) interface. Optionally, the communication interface 2804 can also include a transmitter (such as a radio frequency transmitter, antenna, etc.) or a receiver coupled to the interface.
[0811] The processor 2802 in the device 280 is used to read the computer program stored in the memory 2801 to execute the aforementioned communication method, for example Fig.11 or Fig.12 The communication method described.
[0812] For example, the processor 2802 in the device 280 is used to read the computer program stored in the memory 2801 to perform the following operations:
[0813] The communication interface 2804 receives a service attribute reporting response message from the second node, where the service attribute reporting response message includes at least one service identifier, where the at least one service identifier includes an identifier of at least one second service, where the at least one second service identifier corresponds to a second service type, and where data of the service of the second service type does not need to be integrity protected;
[0814] The communication interface 2804 sends a resource scheduling message to the second node, where the resource scheduling message is used to indicate that integrity protection is not started for a service corresponding to an identifier of at least one second service.
[0815] It can be seen that different types of services have different requirements for integrity protection, and the above device can determine whether to turn on integrity protection according to the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be fully protected, so the MAC length of the corresponding audio noise reduction service can be determined.
[0816] Furthermore, the first node may carry indication information in the resource scheduling message, so that the second node determines whether integrity protection is enabled for the service according to the indication information.
[0817] In a possible implementation, the at least one service identifier includes at least one first service identifier, the at least one first service identifier corresponds to a first service type, and data of the service of the first service type needs to be integrity protected.
[0818] In yet another possible implementation manner, the resource scheduling message is further used to indicate a target MAC length of a user plane for at least one first service.
[0819] It can be seen that, for services that require integrity protection, the above-mentioned device 280 may carry information indicating the target MAC length of the user plane, which is used to indicate the length of the MAC for integrity protection of the service data.
[0820] It should be noted that the implementation of each unit can also refer to Fig.11 or Fig.12The device 280 is a device for Fig.11 or Fig.12 The first node in the embodiment shown.
[0821] See also Fig.29 , Fig.29 2 is a schematic diagram of the structure of a communication device 290 provided in an embodiment of the present application. The device 290 may be a node or a device in a node. The device 290 may include at least one memory 2801 and at least one processor 2902. Optionally, a bus 2903 may also be included. Further optionally, a communication interface 2904 may also be included, wherein the memory 2901, the processor 2902 and the communication interface 2904 are connected via a bus 2703.
[0822] The memory 2901 is used to provide a storage space, and the storage space can store data such as an operating system and a computer program, etc. The memory 2901 can be one or a combination of RAM, ROM, EPROM, CD-ROM, etc.
[0823] The processor 2902 is a module that performs arithmetic operations and / or logical operations, and may specifically be one or a combination of multiple processing modules such as a CPU, a GPU, an MPU, an ASIC, an FPGA, and a CPLD.
[0824] The communication interface 2904 is used to receive data sent from the outside and / or send data to the outside, and can be a wired link interface such as an Ethernet cable, or a wireless link (Wi-Fi, Bluetooth, etc.) interface. Optionally, the communication interface 2904 can also include a transmitter (such as a radio frequency transmitter, antenna, etc.) or a receiver coupled to the interface.
[0825] The processor 2902 in the device 290 is used to read the computer program stored in the memory 2901 to execute the aforementioned communication method, for example Fig.11 or Fig.12 The communication method described.
[0826] For example, the processor 2902 in the device 290 is used to read the computer program stored in the memory 2901 to perform the following operations:
[0827] The communication interface 2904 sends a service attribute reporting response message to the first node, where the service attribute reporting response message includes at least one service identifier, where the at least one service identifier includes an identifier of at least one second service, where the at least one second service identifier corresponds to a second service type, and where data of the service of the second service type does not need to be integrity protected;
[0828] The communication interface 2904 receives a resource scheduling message from the first node;
[0829] According to the resource scheduling message, it is determined that integrity protection is not started for a service corresponding to an identifier of at least one second service.
[0830] It can be seen that different types of services have different requirements for integrity protection, and the first node can determine whether to enable integrity protection based on the identifier of the first service. For example, the audio noise reduction service is a service with low security requirements, so the data of the audio noise reduction service does not need to be fully protected, so the MAC length of the corresponding audio noise reduction service can be determined.
[0831] In another possible implementation, the at least one service identifier includes at least one first service identifier, the at least one first service identifier corresponds to a first service type, wherein data of a service of the first service type needs to be integrity protected; and the method further includes:
[0832] According to the resource scheduling message, the service startup integrity protection corresponding to the identifier of at least one first service is determined.
[0833] In yet another possible implementation, the resource scheduling message is further used to indicate the length of a MAC for integrity protection of data of at least one first service.
[0834] It should be noted that the implementation of each unit can also refer to Fig.11 or Fig.12 The device 290 is a device for Fig.11 or Fig.12 The second node in the embodiment shown.
[0835] See also Fig.30 , Fig.30 1 is a schematic diagram of the structure of a communication device 300 provided in an embodiment of the present application. The device 300 may be a node or a device in a node. The device 300 may include at least one memory 3001 and at least one processor 3002. Optionally, a bus 3003 may also be included. Further optionally, a communication interface 3004 may also be included, wherein the memory 3001, the processor 3002 and the communication interface 3004 are connected via the bus 3003.
[0836] The memory 3001 is used to provide a storage space, and the storage space can store data such as an operating system and a computer program, etc. The memory 3001 can be one or a combination of multiple of RAM, ROM, EPROM, CD-ROM, etc.
[0837] The processor 3002 is a module that performs arithmetic operations and / or logical operations, and specifically may be one or a combination of multiple processing modules such as a CPU, a GPU, an MPU, an ASIC, an FPGA, and a CPLD.
[0838] The communication interface 3004 is used to receive data sent from the outside and / or send data to the outside, and can be a wired link interface such as an Ethernet cable, or a wireless link (Wi-Fi, Bluetooth, etc.) interface. Optionally, the communication interface 3004 can also include a transmitter (such as a radio frequency transmitter, antenna, etc.) or a receiver coupled to the interface.
[0839] The processor 3002 in the device 300 is used to read the computer program stored in the memory 3001 to execute the aforementioned communication method, such as the communication method described in 13.
[0840] For example, the processor 3002 in the device 300 is used to read the computer program stored in the memory 3001, and to perform the following operations:
[0841] Receiving an association request message from the second node through the communication interface 3004, the association request message including information about a security algorithm supported by the second node and an identity of the second node;
[0842] Determine, according to the first algorithm selection strategy, a target security algorithm for the signaling plane and a target MAC length for the signaling plane, where the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node;
[0843] Determine a target security algorithm for the user plane and a target MAC length for the user plane according to the second algorithm selection strategy and the identity of the second node, where the target security algorithm for the user plane belongs to the set of security algorithms indicated by the information of the security algorithms supported by the second node; the target MAC length for the user plane is used to indicate the length of the MAC for integrity protection of data of the first service;
[0844] A first MAC is generated by a target security algorithm of the signaling plane, and a length of the first MAC is a target MAC length of the signaling plane.
[0845] In an embodiment of the present application, the above-mentioned device 300 can be configured with different strategies to determine MAC lengths of different lengths to improve the flexibility of the MAC length. Furthermore, the above-mentioned device 300 can determine the target security algorithm of the user plane and the target MAC of the user plane according to the identity of the second node to meet the requirements of different types of nodes for MAC length. For example, some nodes that handle important business can use a longer MAC length to improve security. For another example, some auxiliary nodes or ordinary nodes can use a shorter MAC length to reduce resource consumption and improve communication efficiency.
[0846] In a possible implementation manner, the processor 3002 is specifically configured to determine a target security algorithm for the signaling plane and a target MAC length for the signaling plane according to a first length selection strategy and a first algorithm selection strategy.
[0847] In yet another possible implementation, the processor 3002 is specifically configured to:
[0848] Determining a target security algorithm for the signaling plane according to the first algorithm selection strategy;
[0849] The target MAC length of the signaling plane is determined according to the first length selection strategy and the target security algorithm of the signaling plane.
[0850] In yet another possible implementation, the processor 3002 is specifically configured to:
[0851] A target security algorithm for the signaling plane is determined according to the first algorithm selection strategy, and a MAC length corresponding to the target security algorithm for the signaling plane is a target MAC length for the signaling plane.
[0852] In yet another possible implementation, the processor 3002 is specifically configured to:
[0853] Determining a target security algorithm for the user plane according to a second algorithm selection strategy;
[0854] Determine a second length selection strategy according to the identity identifier of the second node;
[0855] The target MAC length of the signaling plane is determined according to the second length selection strategy and the target security algorithm of the user plane.
[0856] In yet another possible implementation, the processor 3002 is specifically configured to:
[0857] Determining a target security algorithm for the user plane according to a second algorithm selection strategy;
[0858] According to the MAC length supported by the target security algorithm of the user plane and the correspondence between the identity identifier of the second node and the MAC length, the MAC length corresponding to the identity identifier of the second node is determined as the target MAC length of the user plane.
[0859] In another possible implementation, the processor 3002 is also used to send a security context request message to the second node through the communication interface 3004, where the security context request message includes a first MAC, information indicating a target security algorithm for the signaling plane, information indicating a target security algorithm for the user plane, a target MAC length for the signaling plane, and a target MAC length for the user plane, and the first MAC is used to verify the integrity of the security context request message.
[0860] In yet another possible implementation, the processor 3002 is further configured to:
[0861] Sending a security context request message to the second node through the communication interface 3004, the security context request message including a first MAC, information indicating a target security algorithm for the signaling plane, information indicating a target security algorithm for the user plane, a target MAC length for the signaling plane, a target MAC length for the user plane, and first identity authentication information; wherein the first MAC is used to verify the integrity of the security context request message, and the first identity authentication information is generated according to a shared key between the first node and the second node;
[0862] A security context response message is received from the second node through the communication interface 3004, and the security context response message includes second identity authentication information and a second MAC; wherein the length of the second MAC is the target MAC length of the signaling plane; the second identity authentication information is used to verify the identity of the second node, and the second MAC is used to verify the integrity of the security context response message.
[0863] In yet another possible implementation, the processor 3002 is further configured to:
[0864] Verify the integrity of the security context response message according to the target security algorithm of the signaling plane and the second MAC;
[0865] Verify the second identity authentication information according to the shared key;
[0866] If the integrity of the security context response message is verified and the second identity authentication information is verified, an association establishment message is sent to the second node, and the association establishment message indicates that an association is established between the second node and the first node.
[0867] It should be noted that the implementation of each unit can also refer to Fig.13 The device 300 is a device for Fig.13The first node in the embodiment shown.
[0868] See also Fig.31 , Fig.31 310 is a schematic diagram of the structure of a communication device 310 provided in an embodiment of the present application. The device 310 may be a node or a device in a node. The device 310 may include at least one memory 3101 and at least one processor 3102. Optionally, a bus 3103 may also be included. Further optionally, a communication interface 3104 may also be included, wherein the memory 3101, the processor 3102 and the communication interface 3104 are connected via the bus 3103.
[0869] The memory 3101 is used to provide a storage space, and the storage space can store data such as an operating system and a computer program, etc. The memory 3101 can be one or a combination of multiple of RAM, ROM, EPROM, CD-ROM, etc.
[0870] The processor 3102 is a module that performs arithmetic operations and / or logical operations, and specifically may be one or a combination of multiple processing modules such as a CPU, a GPU, an MPU, an ASIC, an FPGA, and a CPLD.
[0871] The communication interface 3104 is used to receive data sent from the outside and / or send data to the outside, and can be a wired link interface such as an Ethernet cable, or a wireless link (Wi-Fi, Bluetooth, etc.) interface. Optionally, the communication interface 3104 can also include a transmitter (such as a radio frequency transmitter, antenna, etc.) or a receiver coupled to the interface.
[0872] The processor 3102 in the device 310 is used to read the computer program stored in the memory 3101 to execute the aforementioned communication method, such as the communication method described in 13.
[0873] For example, the processor 3102 in the device 310 is used to read the computer program stored in the memory 3101 to perform the following operations:
[0874] Sending an association request message to the first node through the communication interface 3104, where the association request message includes information about a security algorithm supported by the second node and an identity of the second node;
[0875] A security context request message is received from the first node through the communication interface 3104, and the security context request message includes information for indicating a target security algorithm for the signaling plane, information for indicating a target security algorithm for the user plane, a target MAC length for the signaling plane, a target MAC length for the user plane, and a first MAC; wherein the target security algorithm for the signaling plane and the target MAC length for the signaling plane correspond to a first algorithm selection strategy, and the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by information on security algorithms supported by the second node; the target security algorithm for the user plane and the target MAC length for the user plane correspond to a second algorithm selection strategy and an identity of the second node, and the target security algorithm for the user plane belongs to a set of security algorithms indicated by information on security algorithms supported by the second node; the length of the first MAC is the target MAC length for the signaling plane;
[0876] The integrity of the security context request message is verified according to the first MAC through the target security algorithm of the signaling plane.
[0877] In an embodiment of the present application, different strategies can be configured in the first node to determine MAC lengths of different lengths to improve the flexibility of the MAC length. Furthermore, the first node can determine the target security algorithm of the user plane and the target MAC of the user plane based on the identity of the second node to meet the requirements of different types of nodes for MAC length. The above-mentioned device 310 obtains the target MAC length from the first node and protects the integrity of the message through the target MAC length. For example, some nodes that handle important business can use a longer MAC length to improve security. For another example, some auxiliary nodes or ordinary nodes can use a shorter MAC length to reduce resource consumption and improve communication efficiency.
[0878] In a possible implementation, the target security algorithm of the signaling plane and the target MAC length of the signaling plane are determined according to a first algorithm selection strategy, and the target security algorithm of the signaling plane belongs to the set of security algorithms indicated by the information of the security algorithms supported by the second node; the first MAC is generated according to the target security algorithm of the signaling plane.
[0879] In another possi...
Claims
1. A communication method, It is characterized in that include: receiving an association request message from a second node, wherein the association request message includes information about a security algorithm supported by the second node; Determining a target security algorithm for the signaling plane according to the first algorithm selection strategy, where the target security algorithm for the signaling plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node; Determining a target MAC length of the signaling plane at least according to a target security algorithm of the signaling plane; A first MAC is generated by using a target security algorithm of the signaling plane, and a length of the first MAC is a target MAC length of the signaling plane.
2. The method according to claim 1, It is characterized in that The determining the target MAC length of the signaling plane at least according to the target security algorithm of the signaling plane includes: According to the correspondence between the target security algorithm of the signaling plane and the MAC length, the MAC length corresponding to the target security algorithm of the signaling plane is determined as the target MAC length of the signaling plane.
3. The method according to claim 1, It is characterized in that The determining the target MAC length of the signaling plane at least according to the target security algorithm of the signaling plane includes: In a case where the target security algorithm of the signaling plane supports multiple MAC lengths, the target MAC length of the signaling plane is determined based on a first length selection strategy.
4. The method according to any one of claims 1 to 3, It is characterized in that The method further comprises: A security context request message is sent to the second node, where the security context request message includes the first MAC and information indicating a target security algorithm of the signaling plane, and the first MAC is used to verify the integrity of the security context request message.
5. The method according to any one of claims 1 to 3, It is characterized in that After determining the target security algorithm of the signaling plane according to the first algorithm selection strategy, the method further includes: Sending a security context request message to the second node, the security context request message including the first MAC, information indicating a target security algorithm of the signaling plane, and first identity authentication information; wherein the first MAC is used to verify the integrity of the security context request message, and the first identity authentication information is generated according to a shared key between the first node and the second node; Receive a security context response message from the second node, the security context response message including second identity authentication information and a second MAC; wherein the length of the second MAC is the target MAC length of the signaling plane; the second identity authentication information is used to verify the identity of the second node, and the second MAC is used to verify the integrity of the security context response message.
6. The method according to claim 4, It is characterized in that The security context request message includes information indicating a target security algorithm for the user plane; the method further includes: A target security algorithm for the user plane is determined according to a second algorithm selection strategy, where the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
7. The method according to claim 6, It is characterized in that The method further comprises: Acquire an identifier of a first service and / or a data packet size of the first service; Determine a target MAC length of the user plane according to a MAC length supported by a target security algorithm of the user plane, and at least one of an identifier of the first service and a data packet size of the first service; the target MAC length of the user plane is used to indicate a length of a MAC for integrity protection of data of the first service; A resource scheduling message is sent to the second node, where the resource scheduling message includes a target MAC length of the user plane.
8. A communication method, It is characterized in that include: Sending an association request message to the first node, wherein the association request message includes information about a security algorithm supported by the second node; receiving a security context request message from the first node, the security context request message including information for indicating a target security algorithm of a signaling plane; wherein the target security algorithm of the signaling plane corresponds to a first algorithm selection policy, and the target security algorithm of the signaling plane belongs to a set of security algorithms indicated by the information of security algorithms supported by the second node; The security context request message also includes a first MAC, the length of the first MAC is a target MAC length of the signaling plane, and the target MAC length of the signaling plane is at least related to a target security algorithm of the signaling plane.
9. The method according to claim 8, It is characterized in that The method further includes: verifying the integrity of the security context request message according to the first MAC through a target security algorithm of the signaling plane.
10. The method according to claim 8 or 9, It is characterized in that The security context request message also includes first identity authentication information; the method also includes: Verifying the first identity authentication information according to a shared key between the second node and the first node; If the integrity of the security context request message is verified and the first identity authentication information is verified, a second MAC is generated by using the target security algorithm of the signaling plane, and the length of the second MAC is the target MAC length of the signaling plane; A security context response message is sent to the first node, wherein the security context response message includes the second MAC and second identity authentication information; the second identity authentication information is generated based on the shared key between the second node and the first node.
11. The method according to claim 8 or 9, It is characterized in that The security context request message includes information indicating a target security algorithm for the user plane; wherein the target security algorithm for the user plane corresponds to a second algorithm selection policy, and the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
12. A communication device, It is characterized in that include: A receiving unit, configured to receive an association request message from a second node, wherein the association request message includes information about a security algorithm supported by the second node; a processing unit, configured to determine a target security algorithm of a signaling plane according to a first algorithm selection strategy, wherein the target security algorithm of the signaling plane belongs to a set of security algorithms indicated by the information of security algorithms supported by the second node; The processing unit is further configured to determine a target MAC length of the signaling plane at least according to a target security algorithm of the signaling plane; The processing unit is further configured to generate a first MAC by using a target security algorithm of the signaling plane, wherein a length of the first MAC is a target MAC length of the signaling plane.
13. The device according to claim 12, It is characterized in that The processing unit is specifically used for: According to the correspondence between the target security algorithm of the signaling plane and the MAC length, the MAC length corresponding to the target security algorithm of the signaling plane is determined as the target MAC length of the signaling plane.
14. The device according to claim 12, It is characterized in that The processing unit is specifically used for: In a case where the target security algorithm of the signaling plane supports multiple MAC lengths, the target MAC length of the signaling plane is determined based on a first length selection strategy.
15. The device according to any one of claims 12 to 14, It is characterized in that The device also includes: A sending unit is used to send a security context request message to the second node, where the security context request message includes the first MAC and information indicating a target security algorithm of the signaling plane, and the first MAC is used to verify the integrity of the security context request message.
16. The device according to any one of claims 12 to 14, It is characterized in that The device also includes a sending unit, configured to send a security context request message to the second node, wherein the security context request message includes the first MAC, information indicating a target security algorithm of the signaling plane, and first identity authentication information; wherein the first MAC is used to verify the integrity of the security context request message, and the first identity authentication information is generated according to a shared key between the first node and the second node; The receiving unit is also used to receive a security context response message from the second node, and the security context response message includes second identity authentication information and a second MAC; wherein the length of the second MAC is the target MAC length of the signaling plane; the second identity authentication information is used to verify the identity of the second node, and the second MAC is used to verify the integrity of the security context response message.
17. The device according to claim 15, It is characterized in that The security context request message includes information for indicating a target security algorithm for the user plane; the processing unit is specifically configured to: A target security algorithm for the user plane is determined according to a second algorithm selection strategy, where the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
18. A communication device, It is characterized in that include: A sending unit, configured to send an association request message to the first node, wherein the association request message includes information about a security algorithm supported by the second node; a receiving unit, configured to receive a security context request message from the first node, the security context request message including information for indicating a target security algorithm of a signaling plane; wherein the target security algorithm of the signaling plane corresponds to a first algorithm selection policy, and the target security algorithm of the signaling plane belongs to a set of security algorithms indicated by the information of security algorithms supported by the second node; The security context request message also includes a first MAC, the length of the first MAC is a target MAC length of the signaling plane, and the target MAC length of the signaling plane is at least related to a target security algorithm of the signaling plane.
19. The device according to claim 18, It is characterized in that The device also includes: A processing unit is used to verify the integrity of the security context request message according to the first MAC through a target security algorithm of the signaling plane.
20. The device according to claim 18, It is characterized in that The security context request message includes first identity authentication information; the communication device also includes: a processing unit, configured to verify the first identity authentication information according to a shared key between the second node and the first node; The processing unit is further configured to generate a second MAC by using a target security algorithm of the signaling plane if the integrity of the security context request message is verified and the first identity authentication information is verified, wherein the length of the second MAC is the target MAC length of the signaling plane; The sending unit is also used to send a security context response message to the first node, and the security context response message includes the second MAC and second identity authentication information; the second identity authentication information is generated based on the shared key between the second node and the first node.
21. The device according to claim 18 or 19, It is characterized in that The security context request message includes information indicating a target security algorithm for the user plane; wherein the target security algorithm for the user plane corresponds to a second algorithm selection policy, and the target security algorithm for the user plane belongs to a set of security algorithms indicated by the information on security algorithms supported by the second node.
22. A chip system, It is characterized in that The chip system includes at least one processor and a communication interface, and the at least one processor is used to call a computer program stored in at least one memory so that the device where the chip system is located implements the method as described in any one of claims 1-7.
23. A chip system, It is characterized in that The chip system includes at least one processor and a communication interface, and the at least one processor is used to call a computer program stored in at least one memory so that the device where the chip system is located implements the method as described in any one of claims 8-11.
24. A communication system, It is characterized in that The method comprises a first node and a second node, wherein: The first node comprises the apparatus according to any one of claims 12 to 17; the second node comprises the apparatus according to any one of claims 18 to 21.
25. A computer-readable storage medium, It is characterized in that The computer-readable storage medium stores a computer program, and when the computer program runs on one or more processors, the method according to any one of claims 1 to 7 is executed, or the method according to any one of claims 8 to 11 is executed.
Citation Information
Patent Citations
Selective processing method and device of security algorithm, network entity and communication system
CN101854625A