IMPROVEMENTS IN THE TRANSMISSION OF DATA OR MESSAGES ON BOARD A VEHICLE USING A SOME/IP COMMUNICATION PROTOCOL

20220201039 · 2022-06-23

    Inventors

    Cpc classification

    International classification

    Abstract

    A method for transmitting messages on a communications network on board a vehicle between a requesting entity requesting a service instance and an offering entity offering a service instance using a Service Oriented MiddlewarE over Internet Protocol (SOME/IP) communication protocol is provided. The method includes a preliminary mutual authentication step between the requesting entity and the offering entity in view of a communication associated with the service instance, including verifying existence and mutual validity of a pre-assigned certificate of the requesting entity and the offering entity, authorizing access to the service instance, verifying that security level of the service offered by the offering entity is not lower than a minimum security level pre-assigned to the service at the requesting entity and at the offering entity and transmitting at least one communication message associated with the service instance from the offering entity to the requesting entity and vice versa based on successful security level verification and successful pre-assigned certificate verification.

    Claims

    1. A method for transmitting data or messages on a communications network on board a vehicle between a requesting entity requesting a service instance and an offering entity offering a service instance using a Service Oriented MiddlewarE over Internet Protocol (SOME/IP) communication protocol, in which said offering entity provides a response as a result of a request by said requesting entity, or in which said offering entity provides periodic notifications or notifications triggered by events as a result of a subscription to a service by said requesting entity, wherein an authorization to said requesting entity and to said offering entity to access the service instance is predefined by a certification body external to the vehicle, which issues a pre-assigned certificate of said requesting entity and said offering entity, wherein the pre-assigned certificate of said offering entity further assigns a minimum security level to said service for the offering entity among a plurality of predetermined security levels and the pre-assigned certificate of said requesting entity assigns a minimum security level to said service for the requesting entity among said plurality of predetermined security levels, and wherein said method comprises a preliminary mutual authentication step between said requesting entity and said offering entity in view of a subsequent communication associated with the service instance, comprising: verifying existence and mutual validity of said pre-assigned certificate of said requesting entity and of said offering entity, verifying that security level of the service offered by the offering entity is not less than the minimum security level pre-assigned to said service at the requesting entity and at the offering entity, and transmitting at least one communication message associated with the service instance from the offering entity to the requesting entity and vice versa based on successful security level verification and successful pre-assigned certificate verification.

    2. The method of claim 1, wherein said plurality of predetermined security levels comprises an authentication security level, in which a message authentication code encrypted with a predetermined encryption function is associated with each communication message of the service instance, and a confidentiality security level, in which each communication message includes a message authentication code encrypted with a predetermined encryption function and payload encrypted with said predetermined encryption function.

    3. The method of claim 2, wherein said predetermined encryption function includes a symmetric encryption key associated with a respective service instance communicated by said offering entity to said requesting entity in the preliminary mutual authentication step.

    4. The method of claim 3, wherein said message authentication code is generated by a sending entity by use of said predetermined encryption function which receives in input said communication message and said symmetric encryption key associated with the service instance and returns a fixed-size string of bytes.

    5. The method of claim 3, wherein said symmetric encryption key is communicated by said offering entity to said requesting entity encrypted by a public encryption key of the requesting entity.

    6. The method of claim 1, wherein verifying that the security level of the service offered by the offering entity is not less than the minimum security level pre-assigned to said service at the offering entity and at the requesting entity is implemented at the offering entity and at the requesting entity.

    7. The method of claim 1, wherein said preliminary mutual authentication step comprises sending from the requesting entity to the offering entity an authentication request message including said pre-assigned certificate or an identifier of said pre-assigned certificate of the requesting entity and sending from the offering entity to the requesting entity an authentication response message including said pre-assigned certificate or an identifier of said pre-assigned certificate of the offering entity.

    8. The method of claim 7, wherein said pre-assigned certificate of the requesting entity and said pre-assigned certificate of the offering entity are stored in a centralized certificate register of the vehicle or replicated in each on-board device, published by the certification body external to the vehicle.

    9. The method of claim 7, wherein verifying the existence and mutual validity of said pre-assigned certificate of said requesting entity and of said offering entity is carried out by verifying correctness of a digital signature associated with said pre-assigned certificate, using a public key contained in a master certificate, whose integrity and authenticity is guaranteed by external mechanisms.

    10. The method of claim 7, wherein said authentication response message further includes a control signature of the offering entity generated by a private cryptographic key of the offering entity.

    11. The method of claim 3, wherein a plurality of requesting entities requesting a same service instance communicates with a single offering entity offering the service instance in a multicast communication configuration, in which said symmetric encryption key associated with said service instance is generated by said single offering entity and shared with said plurality of requesting entities.

    Description

    [0025] Further features and advantages of the invention will appear more clearly from the following detailed description of an embodiment thereof, given by way of non-limiting example with reference to the accompanying drawing, in which:

    [0026] FIG. 1 shows the known communication modes between an entity requesting a service, or client, and an entity offering the service, or server, in a vehicular communications network;

    [0027] FIG. 2 schematically shows the known format of a message transmitted over a vehicular communications network according to the SOME/IP protocol, including a header and a payload;

    [0028] FIG. 3 is a schematic representation of a multicast communication configuration over a vehicular communications network to which the invention relates;

    [0029] FIG. 4 is a high level schematic representation of the establishment of a communication session between a requesting entity and an offering entity connected to the vehicular communications network, according to the invention;

    [0030] FIG. 5 is a schematic representation of a declaration of the properties of a vehicle entity, or of an application executed by a vehicle entity, connected to a vehicular communications network according to the invention;

    [0031] FIG. 6 shows a sequence diagram representative of a mutual authentication scenario between an entity requesting a service instance and an entity offering a service instance, according to the method of the invention;

    [0032] FIG. 7 schematically shows an example of the format of an authentication request message according to the method of the invention;

    [0033] FIG. 8 schematically shows an example of the format of an authentication reply message according to the method of the invention; and

    [0034] FIG. 9 schematically shows an example of the format of a message transmitted over the vehicle network according to the improved SOME/IP protocol according to the invention.

    [0035] FIG. 1 shows two different types of communication between a server entity, or offering entity OF, and a client entity, or requesting entity RQ. A first type of communication, called “Request/Response,” includes the sending of a request to a service instance by the requesting entity RQ and optionally, as a consequence of it, the sending of a response by the offering entity OF. A second type of communication, called “Publish/Subscribe,” includes the activation of a subscription to one or more events associated with a service instance by the requesting entity RQ and the sending of periodic or event-triggered notifications by the offering entity OF.

    [0036] FIG. 2 shows the format of a message transmitted over a vehicular communications network according to the SOME/IP protocol. The message includes a header H comprising a message identifier, a message length, a request identifier and a plurality of identification fields of the protocol version, the interface version, the type of message and the return code. The message also includes a variable size payload P.

    [0037] FIG. 3 shows a schematic representation of a multicast communication configuration on a vehicular communications network, in which a plurality of entities RQ requesting the same service instance communicate with a single entity OF offering the service instance. The continuous line arrows AuthREQ and AuthRES represent a two-way communication of mutual authentication while the dashed arrows M represent a message communication session according to the secure SOME/IP protocol of the invention, possible only if mutual authentication is successful.

    [0038] FIG. 4 shows a schematic representation of the establishment of a communication session between a requesting entity RQ and an offering entity OF facing the vehicular communications network, characterized by mutual authentication by means of an asymmetric encryption technique. The requesting entity RQ transmits an AUTH_RQ authentication and authorization certificate at the time of the request to a service instance of an offering entity OF, and the latter responds with the transmission of an AUTH_OF authentication and authorization certificate together with a symmetric cryptography key K in encrypted form.

    [0039] FIG. 5 shows a schematic representation of a declaration of the properties of a vehicle entity E, or of an application executed by a vehicle entity E, connected to a vehicular communications network. An entity E or an application executed by an entity E may offer a plurality of services S1, S2, S3, each with a respective minimum security level SL1, SL2, SL3 and may request a plurality of services S4, S5 each with a respective minimum security level SL4, SL5. Such an entity or application is associated with a certification fingerprint F and a signature S. The certification fingerprint may be a certificate C, for example according to the X.509 standard, or a certificate identifier F_ID#, where #=1, 2, . . . adapted to point to a centralized certificate register REG of the vehicle or replicated in each on-board device (in the latter case obtaining higher efficiency since the certificates are available locally when they are requested), for example published by a certification body external to the vehicle such as the vehicle manufacturer or the first tier supplier of an on-board component, the respective certificate C# (where #=1, 2, . . . ) including a public cryptography key K_PUB adapted to operate with a corresponding private cryptography key K_PRIV, accessible only to the corresponding entity, for the encryption and decryption of data exchanged between the requesting and offering entities RQ, OF according to a known asymmetric encryption technology. The certification (i.e. the existence and validity of the certificate) certifies the authorization of the entity requesting the service instance and of the entity offering the service instance to communicate with each other on board the vehicle. A service, or an application whose execution creates a service, may only be accessed by authorized entities.

    [0040] With reference to FIGS. 6 to 9, a secure communication method according to the SOME/IP protocol according to the invention is described below.

    [0041] FIG. 6 shows a sequence diagram of a mutual authentication scenario between a requesting entity RQ and an offering entity OF. In a first step, the requesting entity RQ sends on the vehicular communications network an AuthREQ authentication request message to an offering entity OF to which it intends to make a request of a service instance. A possible format of the AuthREQ authentication request message is shown in FIG. 7. It includes, in particular, an F_RQ certification fingerprint of the requesting entity RQ.

    [0042] Upon receiving the AuthREQ authentication request message, the offering entity OF retrieves the certificate of the receiving entity through the F_RQ fingerprint, for example by accessing the certificate through the REG certificate register, consulted at the address associated with the certificate identifier F_RQ. The offering entity validates the certificate by verifying the digital signature contained therein, by using the public key contained in a master certificate, called the “root certificate,” the integrity and authenticity of which is guaranteed through external mechanisms, and in case of success compares the minimum security level SL.sub.RQ allowed by the requesting entity expressed by the certificate with the security level SL.sub.SE to which the service instance is currently offered. In the event that the minimum security level SL.sub.RQ allowed by the requesting entity is higher than the security level to which the service instance is offered, SL.sub.RQ>SL.sub.SE, the offering entity OF aborts the communication. Otherwise, if the minimum security level SL.sub.RQ allowed by the requesting entity is equal to or lower than the security level SL.sub.SE to which the service instance is offered, the offering entity OF responds by sending on the vehicular communications network an AuthRES authentication response message.

    [0043] A possible format of the AuthRES authentication response message is shown in FIG. 8. It includes, in particular, a certification fingerprint F_OF of the offering entity OF, a symmetric encryption key K_SYM encrypted by means of the public encryption key K_PUB_RQ of the requesting entity RQ acquired from the certificate of the requesting entity, indicated with k where k=encrypt(K_SYM).sub.K_PUB_RQ, and a digital signature S_OF affixed by means of the private cryptographic key of the offering entity OF, indicated with s where s=sign(AuthRES).sub.K_PRIV_OF.

    [0044] Upon receiving the AuthRES authentication response message, the requesting entity RQ retrieves the certificate of the offering entity through the F_OF fingerprint, for example by accessing the certificate through the REG certificate register, consulted at the address associated with the certificate identifier F_OF. The requesting entity validates the certificate by verifying the digital signature contained therein, by using the public key contained in a master certificate, called the “root certificate,” the integrity and authenticity of which is guaranteed through external mechanisms, and in case of success verifies the signature s associated with the message received by means of the public encryption key K_PUB_OF of the offering entity OF acquired from the certificate of the offering entity. If the validation of the digital signature is successful, the requesting entity compares the security level SL.sub.SE to which the service instance is currently offered both with the minimum security level SL.sub.OF that must be guaranteed by the offering entity expressed by the certificate and with its own minimum security level allowed SL.sub.RQ. In the event that the security level to which the service instance is offered is lower than the minimum security level SL.sub.OF that must be guaranteed by the offering entity, SL.sub.SE<SL.sub.OF, or the security level to which the service is offered is below its minimum allowed security level SL.sub.RQ, SL.sub.SE<SL.sub.RQ, the requesting entity aborts the communication. In the opposite case in which the security level to which the service instance is offered is equal to or higher than both the minimum security level SL.sub.OF that must be guaranteed by the offering entity and its own minimum security level allowed SL.sub.RQ, the requesting entity RQ completes the establishment of the communication session by decrypting, by means of the private cryptographic key of the receiving entity RQ, the symmetric key transmitted by the offering entity for the subsequent protection of the messages, briefly indicated with the expression K_SYM=decrypt(k).sub.K_PRIV_RQ.

    [0045] The authorization of an entity of a vehicle to request or provide a service instance is then mutually verified both by the entity requesting the service instance and by the entity offering the service instance, through the verification of the relevant certificate, and an authentication code is associated with any subsequent communication message between the entities involved according to the SOME/IP protocol that is transmitted between the offering entity and the requesting entity, if the verification of the authorizations of both entities has given a positive result.

    [0046] Once the communication session between the requesting entity RQ and the offering entity OF has been established, messages may be exchanged securely according to the SOME/IP communication protocol between the two authenticated and authorized entities, according to the format shown in FIG. 9, in which the payload P is encrypted by means of the symmetric key K_SYM if a “confidential” communication is in progress.

    [0047] Advantageously, the described method guarantees the protection of a message with a different symmetric key for each service instance in a multicast communication configuration. The key is generated by the offering entity and shared securely with a multiplicity of requesting entities during a step of establishing a communication session. A re-generation of the key may be convenient for long-lasting services, for example for the communication of position data, and should be carried out with a periodicity such as to preserve over time the level of security guaranteed by the features of the cryptographic algorithm and the key used.

    [0048] The use of a single key in a specific group of entities whose communication concerns a predetermined service instance allows multicast communications to be transparently protected without limiting the functionality of the SOME/IP protocol and without increasing the use of the vehicular communications network.

    [0049] Advantageously, the method of the invention is designed to operate preferably with granularity at the level of service instances, i.e. considering each instance of a SOME/IP service as a unique object to which a predetermined application (or on-board device) may have access or be denied access. This condition is an efficient compromise between the need for a strong isolation of communications, which requires the adoption of extremely fine granularity, and attention to resources, which requires a limitation of the number of processes for establishing authentication sessions in order not to cause an unsustainable increase in latency in the transmission of messages and data over the vehicular communications network.

    [0050] Unlike the TLS protocol, the method of the invention is designed to rigorously respect the level of security configured by the designers of an application or on-board device, by the provision that digital certificates declare the minimum level of security that must be respected by each entity in addition to defining the set of service instances that each on-board application or device is authorized to access (traffic matrix). Hence, during a step of establishing a communication session, the level at which a desired service instance is provided is compared with the requirements of the offering entity and the requesting entity to prevent these entities from violating previously imposed design constraints. Assuming guaranteed the authenticity and integrity of the digital certificates, the method of the invention prevents attacks based on the forced degradation of the security level below the requirements imposed by the designers of an application or on-board device.

    [0051] The invention therefore represents a personalized approach integrated into the SOME/IP protocol to relax the constraints imposed by external solutions and obtain compatibility with all the different communication models supported by the SOME/IP protocol (unicast and multicast). It achieves the aim of providing a simple and effective solution for expressing the traffic matrix allowed in a vehicle (the set of services that each entity may request/offer) and at the same time providing multiple levels of security to take into account the different security and overhead requests that may arise.

    [0052] Of course, the principle of the invention being understood, the manufacturing details and the embodiments may widely vary compared to what described and illustrated by way of a non-limiting example only, without departing from the scope of the invention as defined in the appended claims.