EP3811587A1 - Procédé de modification de messages par un équipement sur un chemin de communication établi entre deux noeuds - Google Patents

Procédé de modification de messages par un équipement sur un chemin de communication établi entre deux noeuds

Info

Publication number
EP3811587A1
EP3811587A1 EP19742862.6A EP19742862A EP3811587A1 EP 3811587 A1 EP3811587 A1 EP 3811587A1 EP 19742862 A EP19742862 A EP 19742862A EP 3811587 A1 EP3811587 A1 EP 3811587A1
Authority
EP
European Patent Office
Prior art keywords
node
equipment
data
data message
modification
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP19742862.6A
Other languages
German (de)
English (en)
Inventor
Emile Stephan
Frédéric FIEAU
Gaël FROMENTOUX
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
Orange SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Orange SA filed Critical Orange SA
Publication of EP3811587A1 publication Critical patent/EP3811587A1/fr
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0471Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying encryption by an intermediary, e.g. receiving clear information at the intermediary and encrypting the received information at the intermediary before forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/76Proxy, i.e. using intermediary entity to perform cryptographic operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies

Definitions

  • the invention is in the field of telecommunications infrastructure in which secure sessions are established on paths between end nodes and modified by so-called intermediate equipment.
  • the communications established between two end nodes are increasingly encrypted, at least from the transport layer and up to the application layer in the TCP / IP model (in English Transmission Control Protocol / Internet Protocol).
  • the lower layers are generally not encrypted to allow the routing of packets in the communication infrastructure.
  • the QUIC protocol Quality UDP Internet Connections
  • new transport protocol being standardized and described in the document IETF (draft-ietf-quic-transport-12) based on the UDP protocol (in English User Datagram Protocol)
  • UDP protocol in English User Datagram Protocol
  • This QUIC protocol natively integrates security functions, such as TLS functions, thus allowing communications based on this protocol to be secure without requiring an additional security protocol ,.
  • the equipment deployed on the communication paths established between the end nodes, between which a communication path is established to transport the data of application sessions see their role reduced to the routing. messages and are no longer able to add or modify data to these messages.
  • a transport protocol such as QUIC
  • application protocols such as HTTP, SIP (in English Session Initiation Protocol), SMTP (in English Simple Mail Transfer Protocol ) cannot be read or modified by the equipment on the way.
  • the equipment on the communication path would have to have all the keys used by the end nodes to encrypt and decrypt the message data, which is difficult to envisage, in particular because the equipment on the path are most often managed by administrative entities distinct from those managing the end nodes of the communication.
  • the equipment present on the communication paths must intervene, in certain cases or for certain services, not only to route the messages but also to read, modify or add certain data to the messages.
  • these devices carry out, for example, web optimization, requiring modifications at the application level, or else carry out filtering functions at the transport and / or application level, or else provide flow identification functions, requiring being able to read transport data as well as application data for messages.
  • the object of the present invention is to remedy these drawbacks.
  • the invention improves the situation using a method of modifying a data message sent by a first node to a second node on a path in a communication network, the second node having obtained a set of encryption variables originating from the first node, the method being intended to be executed by a device capable of intercepting the data message, the method comprising the following steps:
  • the invention allows equipment placed on the communication path to be able to apply processing to data exchanged securely between nodes, such as a client and a server.
  • nodes such as a client and a server.
  • intermediate equipment that is to say on the communication path, can for example obtain an encryption parameter by configuring an encryption key, following an agreement recorded between the manager of the first node and the manager of the equipment.
  • the encryption parameter can be a public encryption key and the encryption variable can be a private key associated with the public key.
  • An encryption parameter is therefore relative to an encryption variable.
  • the first node thus selects the devices on the way that can modify the data messages and provide them with an encryption parameter.
  • a first device on the way by exploiting the encryption parameter, which is specific to it, to create a cryptographic element, prevents other devices on the way from reading or modifying the data that the first device will have modified.
  • the modification of the data by an equipment has in fact been carried out using the cryptographic element resulting from the encryption parameter which only it can use, and only the second node, receiving the data messages transmitted by the first node and intercepted and modified. by the different devices authorized on the way, will be able to access the data modified by the different devices thanks to the encryption variables exchanged beforehand with the node sending the data.
  • the intervention thus allows equipment on the way, duly authorized by the first node, to be able to modify the data transmitted by this first node.
  • the encryption parameter is specific to a device because when several devices can intervene on a given path, it is important to be able to unambiguously identify the device that modified the data message.
  • the use of encryption parameters, such as specific encryption keys per device, not only ensures confidentiality of the modifications made by a device vis-à-vis other devices but also enables the device having actually been identified changed the data.
  • the encryption parameter is obtained in the data message received.
  • the method avoids having to transmit an encryption parameter to the equipment beforehand and makes it possible to use the data messages for the purposes of transmitting the encryption parameters.
  • the devices on the way use the different parameters present in the data message to determine their own cryptographic element.
  • the modification method further comprises a step of deleting the encryption parameter in the data message sent to destination of the second node.
  • the method can thus be implemented while preventing other equipment placed on the path from being able to fraudulently or accidentally modify the data already modified by other equipment located upstream from the path.
  • Any equipment on a communication path can modify the data in a secure manner and without risking that this modified data be exploited by other equipment with the exception of the second node since the encryption parameter is removed by the equipment having exploited it. .
  • the encryption parameter is included in the transport layer of a packet of the data message.
  • Transport protocols are evolving and it is advantageous to take advantage of the free spaces provided in the recently specified and increasingly used transport protocols, such as for example the QUIC protocol.
  • the advantage of using a transport protocol for transporting data messages that the equipment can modify is that it can be used for a wide variety of applications.
  • the modification method further includes a step of adding the cryptographic element to the data message sent to the second node.
  • the second node upon receipt of the data message, also obtains the cryptographic elements of the various devices on the path. This allows it to hold the encryption parameters and the cryptographic elements in order to be able to read the data modified by the intermediate equipment.
  • the cryptographic element is determined from a random number present in the received data message.
  • a node can send a message including random numbers that the different devices on the way can use.
  • a device can advantageously use the random number received, encrypt it with a public key specific to the device, so that it can be identified and authenticated.
  • the equipment modifying the data message can be authenticated.
  • the cryptographic element is specific to the communication path.
  • the cryptographic element determined by the equipment can be specific to the communication path so as to prevent equipment which has determined this element from being able to reuse it on another communication path, for the same communication or for a separate communication. The safety of the process is thus improved.
  • the invention also relates to a method for controlling modification of a data message sent by a first node to a second node on a communication path between the two nodes, the modification being carried out by equipment capable of intercepting the data message, the method being intended to be executed by the first node and comprising the following steps:
  • the control process is initialized when the communication is established, and thus has the advantage of being able to be implemented for all of the data messages exchanged between the nodes.
  • Data messages are application type messages, for example HTTP, SMTP (in English Simple Mail Transfer Protocol), RTSP (in English Real Time Streaming Protocol) messages or even DNS control messages (in English Domain Name System) ), ICMP (in English Internet Control Message Protocol), SIP (in English Session Initiation Protocol).
  • the encryption variables are transmitted to the second node so that it is able to decrypt the data modified by the devices on the communication path. Thus, only the nodes have access to the different information modified by the equipment located on the path.
  • the method allows equipment, duly authorized by the encryption parameter received, to modify data in a secure manner since the encryption parameter is specifically assigned to it.
  • the encryption parameter is a public encryption key and the cryptographic element is a random number encrypted using the public encryption key.
  • the device receives a random number in the data message and encrypts it using a distributed public key.
  • the invention also relates to a device for modifying a data message sent by a first node to a second node on a communication path established between the two nodes, the second node having previously obtained a set of variables of encryption from the first node, the device comprising:
  • An interception module capable of intercepting the data message, coming from the first node and bound for the second node
  • a obtaining module capable of obtaining an encryption parameter, relating to a variable of the set, coming from the first node
  • a determination module capable of determining a cryptographic element from the parameter obtained
  • a modification module capable of modifying at least one datum of the message from the determined cryptographic element
  • a transmitter capable of transmitting the modified data message to the second node.
  • This device is capable of implementing in all of its embodiments the modification method which has just been described.
  • the invention also relates to a device for controlling the modification of a data message sent by a first node to a second node on a communication path between the two nodes, the modification being executed by a device, capable of intercepting the data message, the device comprising:
  • a receiver capable of receiving a message requesting the establishment of the communication path from the second node
  • a generation module capable of generating a set of encryption variables
  • a transmitter capable of transmitting an establishment response message comprising the set of encryption variables intended for the second node
  • a delivery module capable of delivering an encryption parameter, relating to a parameter of the assembly, intended for the equipment
  • a transmitter capable of transmitting a data message to the second node.
  • This device is capable of implementing in all of its embodiments the control method which has just been described.
  • the invention also relates to a system for modifying a data message sent by a first node to a second node, the modification being carried out by equipment on at least one communication path between the two nodes, the system comprising :
  • a first node comprising a device for controlling modification of the data message, such as that which has just been described,
  • a second node comprising:
  • a transmitter capable of transmitting a message for requesting the establishment of a communication path to the first node
  • - A receiver capable of receiving an establishment response message comprising the set of encryption variables originating from the first node, and capable of receiving the data message originating from the first node.
  • the invention also relates to a computer program comprising instructions for implementing the steps of the modification method which has just been described, when this program is executed by a processor, as well as to a computer program comprising instructions for implementing the steps of the control method which has just been described, when this program is executed by a processor.
  • the invention also relates to an information medium readable by equipment capable of transmitting, intercepting or receiving a data message, and comprising instructions from one or the other of the computer programs as mentioned above.
  • the programs mentioned above can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in n any other desirable form.
  • a support may include a storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or also a magnetic recording means.
  • a storage means such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or also a magnetic recording means.
  • Such storage means can for example be a hard disk, a flash memory, etc.
  • an information medium can be a transmissible medium such as an electrical or optical signal, which can be routed via an electrical or optical cable, by radio or by other means.
  • a program according to the invention can in particular be downloaded from a network of the Internet type.
  • an information medium can be an integrated circuit in which a program is incorporated, the circuit being adapted to execute or to be used in the execution of the processes in question. 4. Presentation of the figures
  • FIG. 1 shows a simplified view of a communication network in which the modification process is implemented
  • FIG. 2 presents the modification method according to a first embodiment of the invention
  • FIG. 3 presents the modification method in a communication network according to a second embodiment of the invention
  • FIG. 4 shows the modification method in a communication network according to a third embodiment of the invention
  • FIG. 5 shows an example of the structure of a modification device, according to one aspect of the invention
  • FIG. 6 shows an example of the structure of a modification control device, according to one aspect of the invention.
  • the communication network can either be a fixed type communication network or a mobile / wireless type communication network.
  • the network can also be a hybrid network integrating a wired part and a wireless part.
  • FIG. 1 presents a simplified view of a communication network in which the modification method is implemented according to one aspect of the invention.
  • Two nodes 10 and 50 which may for example be mobile terminals such as smartphones or fixed terminals such as residential gateways or any equipment equipped with communication means, are attached to a communication network 1.
  • Other nodes 20, 30, 40 which can be HTTP servers, DNS servers (in English Domain Name Server), FTP servers (in English File Transfer Protocol) or even nodes of the same type as the nodes 10 and 50, are also attached to the communication network 1.
  • the communication network 1 allows the nodes 10, 50 on the one hand and 20, 30, 40 on the other hand to be able to exchange data, for example by establishing application sessions between the nodes.
  • the communication network 1 comprises communication paths C1, C2, C3, C4. These paths include devices which carry data from nodes and links, wired or non-wired, interconnecting the devices.
  • the path between a node and another node can be selected according to quality of service criteria, management criteria, characteristics specific to the end nodes or application constraints.
  • the operator of network 1 can implement routing policies to route data from the different nodes attached to network 1.
  • path C1 routes data from node 10 to node 20 and includes the equipment 13, 1 1, 12.
  • the path C3 routes the data from the node 10 to the node 40 and comprises the devices 15 and 16.
  • Path C4 routes data from node 50 to node 40 and includes equipment 15 and 14.
  • a path can route data sent by separate nodes to nodes which may also be separate. The path is then shared for several data sessions.
  • a single session can also use several paths.
  • the node 10 could send data to node 20 using several paths, for example to make data transfer more reliable or to benefit from more transmission capacities.
  • a path can be unidirectional or bidirectional.
  • the data from node 10 to node 30 is routed via a path different from the data sent by node 30 to node 10.
  • the data follows the same path regardless of the transmitter or receiver of the data.
  • the data of a bidirectional path may have to be processed by the same devices on the path, but a device can, in certain cases, only modify the data transmitted in a given direction.
  • a bidirectional path is said to be symmetrical if the same equipment intervenes in both directions.
  • the equipment 1 1, 12, 13, 14, 15, 16 of the paths C1, C2, C3, c4 have routing capacities but they also have processing capacities. They can thus modify the messages transmitted by the nodes either by extracting data, or by adding data, or by changing data, all these operations consisting in modifying the data transmitted by the nodes. Data modification or extraction is possible if this data is not encrypted in the message. For example, these nodes can perform operations to optimize HTTP functions (in English Hypertext Transfer Protocol), address translation, data filtering, legal interception, data security, etc.
  • HTTP functions in English Hypertext Transfer Protocol
  • the node 10 which is considered to be a terminal in this embodiment, establishes an application session with the node 20, which is considered to be an HTTP server.
  • the data from the application session is transmitted on path C5.
  • the data is sent from the terminal 10 to the server 20 and is processed by the three devices M1 13, M2 14 and M3 15 located on the path C5.
  • the equipment is said to be intermediate, because it is located between the two nodes 10 and 20, called end points, on path C5.
  • Equipment M1, M2, M3 must be able to intervene on the data transmitted if nodes 10 and 20 authorize it to do so.
  • the equipment M1 adds quality of service information, while the equipment M2 extracts information from the data for legal purposes and the equipment M3 replaces information with the data for example to mask information at the destination node 20.
  • the number of devices on the path is not limited and the devices can be managed by a single or separate entity.
  • the terminal 10 transmits a packet P1 to the server 20.
  • This packet includes a header, including information making it possible to route the packet on the path C5 and other information, for example of quality of service, as well as information say useful corresponding to the application data.
  • This is for example an HTTP request.
  • a DMZ field is present so that it can be used by the intermediate equipment on path C5.
  • This DMZ field is an exchange area that the intermediate equipment uses to modify certain packet data.
  • the DMZ field can for example be a padding field (or “padding” in English) of packets used for the purposes of the modification process. It can also be a field of a transport protocol or an application protocol.
  • the M1 equipment intercepts the P1 packet and uses part of the DMZ field to add information relating to the quality of service.
  • the equipment uses an M1 Info field, which may or may not be assigned to it.
  • the DMZ field can include fields specifically allocated to the equipment on the way, or a single field that each intermediate equipment can use according to its needs.
  • the information M1 Info is encrypted using an encryption key specific to the equipment M1, obtained beforehand, from the terminal 10 or from the server 20 so that other equipment on the path C5 cannot read or modify the modified data of M1.
  • the M2 equipment intercepts the P1 packet but does not make any modification, either because it is not authorized to modify by the end nodes, or because the packet does not carry information which it must modify .
  • Equipment can be authorized or not to modify the packet P1 using a key allowing it to modify the packet for example, this key being transmitted to it independently in this embodiment.
  • the equipment M2 can modify the encrypted packet data only if it has a decryption key allowing it to be able to access the encrypted data of the packet P1 using a key corresponding to the encryption key used to encrypt the data.
  • the terminal can thus encrypt certain data with a key and other data with another key.
  • the equipment M2 transmits the packet P1 to the server 20.
  • the M3 equipment intercepts the P1 packet and also modifies information from the P1 packet. For example, it substitutes information from the packet P1 to mask the information relating to the terminal 10. This can in particular be useful if the packet transits to a network managed by an entity different from that which manages the equipment M3 to reach the server 20.
  • the equipment 20 therefore modifies the packet P1 and indicates it in an unused part of the DMZ field.
  • the M1 info data encrypted by the M1 equipment is not accessible either to the M2 equipment or to the M3 equipment.
  • the M3 equipment can add M3 Info information in the DMZ field and it encrypts this information with its own encryption key. It can encrypt the only information it has added or all of the information M1 info and M3 info. In this case, the M1 info data is encrypted by the M1 equipment and then by the M3 equipment while the data added by the M3 equipment is only encrypted by the M3 equipment.
  • the packet P1 comprising the fields M1 info and M3 info, respectively encrypted by the equipment M1 and M3, is then sent to the server 20.
  • the server 20, having encryption variables, which in this case are encryption keys used by equipment 13 and 15 can access data M1 info and M3 info.
  • the server 20 has in fact obtained from the terminal 10 the keys used by the equipment 13 and 15 for the session between the terminal 10 and the server 20. These keys are for example transmitted by the server 20 to the equipment during the establishment of the session, providing change control to the server 20.
  • the server 20 can also check the packet P1 received in order to check the modifications made by the equipment on the way. In particular, the server 20 can identify if data has been modified using keys that it does not hold or if modifications have been made to the packet P1 by different equipment using the same key. In the case where the server 20 detects that a modification has been made without authorization, it can decide to delete the packet, transmit a message to the terminal 10 to interrupt the transmission of data for example.
  • FIG. 3 presents an overview of the modification method according to a second embodiment of the invention.
  • Entities 10, 13, 14, 15 and 20 correspond to the identically numbered entities in Figure 2.
  • the protocol used in this embodiment is the QUIC protocol.
  • Another protocol, such as TLS could also be used.
  • step E1 the terminal 10 transmits a “HELLO client” message for establishing session to the server 20.
  • step E2 the server 20 determines a set of encryption variables.
  • these are private encryption keys a ’, b’, c ’, d’ and the public encryption keys a, b, c, d corresponding to the private keys.
  • the server can thus generate as many keys as necessary according to its own means, for example from a computer. It is also possible to generate keys during a session to increase security, which requires that the generated keys are then transmitted to the terminal 10.
  • step E3 the server 20 sends to the client 10 a message of the “HELLO server” type comprising the private keys a ', b', c ', d' determined during step E2.
  • the messages "HELLO client” and “HELLO server” transmitted during the respective steps E1 and E3 are encrypted so that they can only be read by the terminal 10 and the server 20. They could also be secret keys, which require prior exchanges between the server 20 and the terminal 10.
  • step E4 the terminal 10 stores the encryption keys received so that it can subsequently decrypt the data messages from the server 20.
  • step E5 the terminal 10 sends a request for obtaining content to the server 20.
  • the request for obtaining the content can be for example an HTTP request.
  • the step E6 corresponds to the sending of HTTP data by the server 20 to the terminal 10 following the reception of the request during the step E5.
  • the data message further comprises the encryption parameters relating to the variables a ’, b’, c ’, d’.
  • these are public keys a, b, c, d determined by the server 20 during step E2.
  • the keys are preferably transmitted in clear, that is to say unencrypted so that the equipment on the way can use them without requiring additional keys.
  • the message comprising the data originating from the server 20 is intercepted by the equipment 15.
  • the equipment 15 extracts a first public key, for example the public key a.
  • the equipment 15 adds data in a message field, for example in the padding field of the transport protocol. It may be information indicating that data of the message has been modified or else data specific to the equipment 15 to be transmitted to the terminal 10. Once the data has been modified, it encrypts the field in which it has added the modified data using the public key a and it extracts this key a from the message to be sent to the terminal 10. Thus, another device cannot reuse the key a to access the data modified by the device 15 or to make modifications with this key since the key a is no longer present in the modified message sent by the equipment 15. A key can therefore only be used by an equipment.
  • the equipment 13 in turn intercepts the data message, comprising only the public keys b, c, d, initially issued by the server 20 and routed via the equipment 15.
  • the equipment 13 performs operations comparable to the operations performed by the equipment 15, by modifying the data of the message received but by encrypting the modified data using the public encryption key b and by removing it from the message to be sent to the terminal 10.
  • the equipment 13, according to an alternative, encrypts with the key b only the data that it has added or else, according to another alternative, the data added by the equipment 15 and encrypted with key a, in addition to its data. In the latter alternative, the data added by the equipment 15 is encrypted with the key a and then with the key b while the data added by the equipment 13 is only encrypted with the key b.
  • the message is then sent to the terminal which receives it during step E9.
  • the message includes the data sent by the server 20, which have been modified by the equipment 15 and 13, and whose data added by the equipment 15 and 13 are respectively encrypted with the public keys a and b.
  • the message received by the terminal 10 also includes the public keys c and d which have not been used by any equipment on the way.
  • the terminal 10, holding the private keys a 'and b' memorized during step E4, is able to decrypt the information modified by the equipment 15 and 13. It suffices to use the private key corresponding to the last key public not present in the message received to decrypt the last modified part.
  • the terminal 10 accesses the modification of the equipment 13 as well as the modification of the encrypted equipment 15. Then, using the private key a ’, the terminal 10 can decrypt the part modified by the equipment 15. Thus, only the terminal 10, can access all of the data modified by the equipment 13 and 15.
  • step E10 the terminal 10 sends an HTTP request message to the server, for example to obtain other content following the data retrieved during step E9.
  • steps E10 to E13 include the transmission of the message by the terminal 10, the modification of this message by the equipment 13 then 14 and the reception by the server 20. It should be noted that the equipment involved in the steps E7 and E8 on the one hand and E1 1 and E12 on the other hand are not the same, which may be the case when the paths are non-symmetrical.
  • FIG. 4 presents an overview of the modification method according to a third embodiment of the invention.
  • step E ⁇ the terminal 10 sends a session establishment message to the server 20.
  • This can be a SYN type message if it is a TCP session (in English Transport Control Protocol) .
  • step E’2 the server 20 determines random numbers x, y, z also called nonces.
  • the keys in the second embodiment it is possible to envisage the determination of different nonces during a session between the server 20 and the terminal 10, in particular to increase the security of the data exchanged during the session.
  • step E'3 the server 20 transmits to the terminal 10 the determined nonces x, y, z as well as the encryption variables, the private encryption keys K ⁇ , K'2, K'3 corresponding to the encryption parameters that are the public keys K1, K2, K3 transmitted to the devices 15, 14, 13.
  • step E’4 the terminal stores the nonces x, y, z received and the private keys K ⁇ , K’2, K’3 received during step E’3.
  • step E’5 the terminal 10 sends a request to the server 20 to obtain content, for example by transmitting a request of HTTPGET type.
  • the terminal sends the HTTP GET type data message to the server 20 during step E'5, the data message further comprising nonces x, y, z.
  • the equipment 13 intercepts the data message during step E’6 and extracts the nonce x. From the public key K3 transmitted by the server 20 during step E ’" 0, the equipment 13 calculates an encrypted nonce x ’from the nonce x using the key K3.
  • the equipment 13 digits, using the key K3, the data which it must add to the data message according to the function which it fulfills. It can for example add an address of a PCRF server (in English Policy Rules and Control Function) to which the billing data must be sent. It encrypts this IP address using the public key K3.
  • the equipment also modifies the data message by replacing the nonce x of the received data message with the encrypted nonce x.
  • the modified message to be sent to the server 20 includes data modified using the key K3, the nonce has been encrypted with the key K3 and no longer understands the nonce a.
  • the data message is intercepted during step E'7 by the equipment 14 which also intervenes on the message by modifying the message by adding information, for example by indicating the identity of the manager of this equipment 14.
  • the equipment encrypts the identity to be added with the public key K2 received during step E ”0.
  • the equipment 14 encrypts the nonce y with the public key K2 and obtains an encrypted nonce y ’.
  • the equipment 14 modifies the data message by adding the identity of the encrypted manager and by replacing the nonce y received with the encrypted nonce y ’.
  • the data message modified by the equipment 13 then by the equipment 14 is transmitted to the server 20 which it receives during step E’8.
  • the server 20 having the private keys K'3 and K'2 can decrypt the data modified by the equipment 13 and 14 on the way and it can also identify which equipment has modified the said data from the encrypted nonces x 'and y' received. Knowing that he can only obtain the nonce x from the key K’3, he can identify that the device 13 has encrypted the message data with the key K3.
  • the data sent by the server 20 to the terminal 10 during step E'9, following the request sent by the terminal 10, are intercepted by the same equipment 13 and 14 during steps E ⁇ 0 and E ⁇ 1 since it is considered that the path used for the transmission of the data is bidirectional and symmetrical.
  • the terminal receives the data during step E ⁇ 2 and can decrypt the data modified by the equipment 13 and 14 because it has information on the nonces x, y, z and the private keys K ⁇ , K'2, K'3 .
  • This embodiment has the advantage of being able to identify the equipment which has modified data of a message for a message transmitted on a path and, moreover, it makes it possible to avoid transmitting the encryption keys in the data message.
  • the modification device 100 implements the modification method, various embodiments of which have just been described.
  • Such a device 100 can be implemented in any type of equipment present on a communication path, whether this equipment is virtualized or not.
  • This can be a mobile network gateway, equipment responsible for translating IP addresses, a firewall, equipment providing DPI functions (in English Deep Packet Inspection), etc.
  • the device 100 comprises a processing unit 106, equipped for example with an mR microprocessor, and controlled by a computer program 105, stored in a memory 107 and implementing the selection method according to the invention.
  • a computer program 105 stored in a memory 107 and implementing the selection method according to the invention.
  • the code instructions of the computer program 105 are for example loaded into a RAM memory, before being executed by the processor of the processing unit 106.
  • Such a device 100 includes:
  • An interception module 101 capable of intercepting the data message, coming from the first node and bound for the second node,
  • a module 102 for obtaining capable of obtaining an encryption parameter for the assembly from the first node
  • a determination module 103 capable of determining a cryptographic element from the parameter obtained
  • a modification module 104 capable of modifying at least one datum of the message from the determined cryptographic element
  • a transmitter 1 10 capable of transmitting the modified data mess message to the second node.
  • the modification control device 200 can be implemented in equipment of the fixed or mobile terminal type, residential gateway or any type of server.
  • the node 200 comprises a processing unit 206, equipped for example with a microprocessor mR, and controlled by a computer program 205, stored in a memory 207 and implementing the selection method according to the invention.
  • a computer program 205 stored in a memory 207 and implementing the selection method according to the invention.
  • the code instructions of the computer program 205 are for example loaded into a RAM memory, before being executed by the processor of the processing unit 206.
  • Such a device 200 comprises:
  • a receiver 220 capable of receiving a Req message requesting the establishment of the communication path from the second node
  • a generation module 201 capable of generating a set of encryption parameters
  • a transmitter 210 A transmitter 210,
  • a delivery module 202 capable of delivering an encryption parameter, relating to a variable of the set, to the equipment.
  • the modules described in connection with FIG. 5 and FIG. 6 can be hardware or software modules.
  • the modification method and the modification control method makes it possible to be able to authorize so-called intermediate equipment, present on an access network or in a core network, for example on a Wi-Fi infrastructure or a GPRS / LTE / 5G network to modify data.
  • a client or a server may or may not allow intermediate equipment to modify data, in particular by adding information to the data transmitted by the client or the server.
  • the methods also make it possible to know which intermediate equipment has added which data to the message.
  • the methods allow the use of transport or application protocols to emit encryption parameters if necessary, knowing that the use of transport protocol such as QUIC, which is rapidly increasing in use in networks, is an appropriate choice. to develop the use of processes.
  • the methods do not call into question the security of the data since it is possible to use unencrypted fields to transport the encryption parameters and to keep an encryption of the other data transmitted by the terminal or the server that the equipment must not not change. It is also possible to encrypt certain data of a message with a key and other data of the message with other keys so as to make accessible to equipment only certain parts of the messages and also to prevent only modifications made by one device can be read or modified by another device on the data path.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Les communications établies sur un chemin (C5) de communication entre deux nœuds (10, 20), par exemple entre un client et un serveur, sont de plus en plus chiffrées, au moins à partir de la couche transport et jusqu'à la couche applicative dans le modèle OSI (en anglais Open Systems Interconnection). Or, les équipements (13, 14, 15) présents sur le chemin (C5) de la communication, doivent dans certains cas ou pour certains services, intervenir non seulement pour acheminer les messages mais également pour lire, modifier ou ajouter des données dans les messages. En outre, il est également souhaitable que seuls les équipements « autorisés » puissent effectuer ces actions. Pour pouvoir intervenir sur ces données, il faut que les équipements (13, 14, 15) sur le chemin (C5) de communication disposent de toutes les clés utilisées par les nœuds (10, 20) pour chiffrer et déchiffrer les données des messages, ce qui est difficilement envisageable. Le procédé de modification permet à un équipement (13, 14, 15), apte à intercepter un message de données sur un chemin de communication (C5) entre deux nœuds (10, 20), de pouvoir modifier des données sous le contrôle des nœuds (10, 20), tout en garantissant qu'un équipement (13, 14) ne puisse accéder aux données modifiées par un autre équipement (15) sur le chemin.

Description

Procédé de modification de messages par un équipement sur un chemin de communication établi entre deux nœuds
1. Domaine de l'invention
La demande d’invention se situe dans le domaine des infrastructures de télécommunications dans lesquelles des sessions sécurisées sont établies sur des chemins entre des nœuds d’extrémité et modifiées par des équipements dits intermédiaires.
2. Etat de la technique antérieure
Les communications établies entre deux nœuds d’extrémité, par exemple entre un client et un serveur, sont de plus en plus chiffrées, au moins à partir de la couche transport et jusqu’à la couche applicative dans le modèle TCP/IP (en anglais Transmission Control Protocol / Internet Protocol). Les couches inférieures ne sont généralement pas chiffrées pour permettre l’acheminement des paquets dans l’infrastructure de communication.
Notamment, l’utilisation de sessions HTTP sur TLS (en anglais HyperText Transfer Protocol sur Transport Layer Security) proposant le chiffrement des données du protocole HTTP, initialement principalement utilisées pour des transactions bancaires, s’est largement développée pour les différentes applications du web, y compris pour les applications relatives aux réseaux sociaux.
De même, le protocole QUIC (Quick UDP Internet Connections), nouveau protocole de transport en cours de standardisation et décrit dans le document IETF (draft-ietf-quic-transport-12) s’appuyant sur le protocole UDP (en anglais User Datagram Protocol), est de plus en plus utilisé pour les communications comme protocole de transport, notamment par rapport au protocole TCP. Ce protocole QUIC intègre nativement des fonctions de sécurité, telles que les fonctions TLS, permettant ainsi aux communications basées sur ce protocole d’être sécurisées sans nécessiter un protocole de sécurité supplémentaire,.
Dans ce contexte de chiffrement des données des communications, les équipements déployés sur les chemins de communication établis entre les nœuds d’extrémité, entre lesquels un chemin de communication est établi pour transporter les données de sessions applicatives, voient leur rôle réduit à l’acheminement des messages et ne sont plus en capacité de pouvoir ajouter ou modifier des données à ces messages. Ainsi, si un protocole de transport tel que QUIC est utilisé pour les communications, le chiffrement des données dans le protocole QUIC et dans les protocoles applicatifs tels que HTTP, SIP (en anglais Session Initiation Protocol), SMTP (en anglais Simple Mail Transfer Protocol) ne peuvent être lus ou modifiés par les équipements sur le chemin. Pour pouvoir intervenir sur ces données, il faudrait que les équipements sur le chemin de communication disposent de toutes les clés utilisées par les nœuds d’extrémités pour chiffrer et déchiffrer les données des messages, ce qui est difficilement envisageable, notamment parce que les équipements sur le chemin sont le plus souvent gérés par des entités administratives distinctes de celles gérant les nœuds d’extrémité de la communication.
Or, les équipements présents sur les chemins de la communication doivent intervenir, dans certains cas ou pour certains services, non seulement pour acheminer les messages mais également pour lire, modifier ou ajouter certaines données dans les messages. Ainsi, ces équipements réalisent par exemple de l’optimisation web, requérant des modifications au niveau applicatif, ou bien réalisent des fonctions de filtrage au niveau transport et/ou applicatif, ou bien assurent des fonctions d’identification de flux, nécessitant de pouvoir lire les données de transport ainsi que les données applicatives des messages.
En outre, il est également souhaitable que seuls les équipements « autorisés » par les nœuds d’extrémité puissent effectuer ces actions. L’accès aux données des messages et leur modification n’est en effet pas souhaitable pour un équipement qui réussirait à se placer sur le chemin de communication de façon frauduleuse. Le développement du chiffrement des communications au niveau transport et applicatif empêche tout accès par des équipements intermédiaires, et ne permet pas à ces équipements intermédiaires de pouvoir intervenir sur des données des messages échangés entre deux noeuds.
La présente invention a pour objet de remédier à ces inconvénients.
3. Exposé de l'invention
L'invention vient améliorer la situation à l'aide d'un procédé de modification d’un message de données émis par un premier nœud à destination d’un second nœud sur un chemin d’un réseau de communication, le second nœud ayant obtenu un ensemble de variables de chiffrement en provenance du premier nœud, le procédé étant destiné à être exécuté par un équipement apte à intercepter le message de données, le procédé comprenant les étapes suivantes :
- Interception du message de données, en provenance du premier nœud et à destination du second nœud,
- Obtention d’un paramètre de chiffrement spécifique à l'équipement et relatif à une variable de l’ensemble en provenance du premier nœud,
- Détermination d’un élément cryptographique relatif au paramètre obtenu,
- Modification d’au moins une donnée du message à partir de l’élément cryptographique déterminé,
- Emission du message de données modifié à destination du second nœud.
L’invention permet à des équipements placés sur le chemin de communication de pouvoir appliquer un traitement aux données échangées de façon sécurisée entre des nœuds, tels qu’un client et un serveur. Un équipement dit intermédiaire, c’est à dire sur le chemin de communication, peut par exemple obtenir un paramètre de chiffrement par configuration d’une clé de chiffrement, suite à un accord enregistré entre le gestionnaire du premier nœud et le gestionnaire de l’équipement. Le paramètre de chiffrement peut être une clé publique de chiffrement et la variable de chiffrement peut être une clé privé associée à la clé publique. Un paramètre de chiffrement est donc relatif à une variable de chiffrement. Le premier nœud sélectionne ainsi les équipements sur le chemin qui pourront modifier les messages de données et leur procure un paramètre de chiffrement. Un premier équipement sur le chemin, en exploitant le paramètre de chiffrement, qui lui est spécifique, pour se créer un élément cryptographique, empêche d’autres équipements sur le chemin de lire ou de modifier les données que le premier équipement aura modifiées. La modification de la donnée par un équipement a en effet été réalisée en utilisant l’élément cryptographique issu du paramètre de chiffrement que lui seul peut utiliser, et seul le second nœud, recevant les messages de données transmis par le premier nœud et interceptés et modifiés par les différents équipements autorisés sur le chemin, pourra accéder aux données modifiées par les différents équipements grâce aux variables de chiffrement échangés au préalable avec le nœud émettant les données.
L’intervention permet ainsi à des équipements sur le chemin, dûment autorisés par le premier nœud, de pouvoir modifier des données transmises par ce premier nœud.
Le paramètre de chiffrement est spécifique à un équipement car lorsque plusieurs équipements peuvent intervenir sur un chemin donné, il est important de pouvoir identifier de façon non ambiguë l’équipement ayant modifié le message de données. L’utilisation de paramètres de chiffrement, tels que des clés de chiffrement spécifiques par équipement, permet non seulement d’assurer une confidentialité des modifications apportées par un équipement vis-à-vis des autres équipements mais aussi de pouvoir identifier l’équipement ayant effectivement modifié les données.
Selon un aspect du procédé de modification, le paramètre de chiffrement est obtenu dans le message de données reçu.
Le procédé, ainsi mis en œuvre, évite de devoir transmettre un paramètre de chiffrement à destination de l’équipement au préalable et permet d’utiliser les messages de données pour les besoins de transmission des paramètres de chiffrement. Les équipements sur le chemin utilisent les différents paramètres présents dans le message de données pour déterminer leur propre élément cryptographique.
Selon un aspect, le procédé de modification comprend en outre une étape de suppression du paramètre de chiffrement dans le message de données émis à destination du second nœud.
Le procédé peut ainsi être mis en œuvre tout en évitant que d’autres équipements placés sur le chemin puissent modifier frauduleusement ou accidentellement les données déjà modifiées par un autre équipement situé en amont du chemin. Tout équipement sur un chemin de communication peut modifier les données de façon sécurisée et sans risquer que ces données modifiées soient exploitées par d’autres équipements à l’exception du second nœud puisque le paramètre de chiffrement est ôté par l’équipement l’ayant exploité.
Selon un aspect du procédé de modification, le paramètre de chiffrement est compris dans la couche transport d’un paquet du message de données.
Les protocoles de transport sont en pleine évolution et il est avantageux de tirer parti des espaces libres prévus dans les protocoles de transport récemment spécifiés et de plus en plus utilisés, tels que par exemple le protocole QUIC. L’intérêt d’utiliser un protocole de transport pour le transport de messages de données que l’équipement peut modifier est qu’il est peut être utilisé pour une grande diversité d’applications.
Selon un aspect, le procédé de modification comprend en outre une étape d’ajout de l’élément cryptographique dans le message de données émis vers le second nœud.
Le second nœud, à la réception du message de données, obtient également les éléments cryptographiques des différents équipements se trouvant sur le chemin. Cela lui permet ainsi de détenir les paramètres de chiffrement et les éléments cryptographiques pour pouvoir lire les données modifiées par les équipements intermédiaires.
Selon un aspect du procédé de modification, l’élément cryptographique est déterminé à partir d’un nombre aléatoire présent dans le message de données reçu.
Un nœud peut émettre un message comprenant des nombres aléatoires que les différents équipements sur le chemin peuvent utiliser. Un équipement peut avantageusement utiliser le nombre aléatoire reçu, le chiffrer avec une clé publique spécifique à l’équipement, pour pouvoir être identifié et authentifié. Ainsi l’équipement modifiant le message de données peut être authentifié.
Selon un aspect du procédé de modification, l’élément cryptographique est spécifique au chemin de communication.
L’élément cryptographique déterminé par l’équipement peut être spécifique au chemin de communication de façon à empêcher qu’un équipement ayant déterminé cet élément puisse le réutiliser sur un autre chemin de communication, pour une même communication ou pour une communication distincte. La sécurité du procédé est ainsi améliorée.
Les différents aspects du procédé de modification qui viennent d'être décrits peuvent être mis en œuvre indépendamment les uns des autres ou en combinaison les uns avec les autres.
L'invention concerne aussi un procédé de contrôle de modification d’un message de données émis par un premier nœud à destination d’un second nœud sur un chemin de communication entre les deux nœuds, la modification étant exécutée par un équipement apte à intercepter le message de données, le procédé étant destiné à être exécuté par le premier nœud et comprenant les étapes suivantes :
- Réception d’un message de requête d’établissement d’un chemin de communication en provenance du second nœud,
Génération d’un ensemble de variables de chiffrement,
- Emission d’un message de réponse d’établissement comprenant l’ensemble de variables générés à destination du second nœud,
- Livraison d’un paramètre de chiffrement spécifique à l'équipement et relatif à une variable de l’ensemble, à l’équipement,
- Emission d’un message de données comprenant le paramètre de chiffrement, à destination du second nœud.
Le procédé de contrôle est initialisé lors de l’établissement de la communication, et présente ainsi l’avantage de pouvoir être mis en œuvre pour l’ensemble des messages de données échangés entre les nœuds. Les messages de données sont des messages de type applicatif, par exemple des messages HTTP, SMTP (en anglais Simple Mail Transfer Protocol), RTSP (en anglais Real Time Streaming Protocol) ou bien encore des messages de contrôle DNS (en anglais Domain Name System), ICMP (en anglais Internet Control Message Protocol), SIP (en anglais Session Initiation Protocol). Les variables de chiffrement sont transmis au second nœud de façon à ce qu’il soit en capacité de déchiffrer les données modifiées par les équipements sur le chemin de communication. Ainsi, seuls les nœuds ont accès aux différentes informations modifiées par les équipements se trouvant sur le chemin. Le procédé permet à un équipement, dûment autorisé par le paramètre de chiffrement reçu, de modifier des données de façon sécurisée puisque le paramètre de chiffrement lui est spécifiquement attribué.
Selon un aspect du procédé de contrôle, le paramètre de chiffrement est une clé publique de chiffrement et l’élément cryptographique est un nombre aléatoire chiffré à l’aide de la clef de chiffrement publique.
Les clés privées étant uniquement échangées entre les deux nœuds et chaque clé publique correspondant étant fournie à chaque équipement, seuls les nœuds sont en mesure d’accéder aux modifications apportées par les équipements respectifs sur le message de données. L’équipement reçoit un nombre aléatoire dans le message de données et le chiffre à l’aide d’une clé publique distribuée.
L'invention concerne encore un dispositif de modification d’un message de données émis par un premier nœud à destination d’un second nœud sur un chemin de communication établi entre les deux nœuds, le second nœud ayant obtenu au préalable un ensemble de variables de chiffrement en provenance du premier nœud, le dispositif comprenant :
- Un module d’interception, apte à intercepter le message de données, en provenance du premier nœud et à destination du second nœud,
- Un module d’obtention, apte à obtenir un paramètre de chiffrement, relatif à une variable de l’ensemble, en provenance du premier nœud,
- Un module de détermination, apte à déterminer un élément cryptographique à partir du paramètre obtenu,
- Un module de modification, apte à modifier au moins une donnée du message à partir de l’élément cryptographique déterminé,
- Un émetteur apte à émettre le message de données modifié à destination du second nœud. Ce dispositif est apte à mettre en œuvre dans tous ses modes de réalisation le procédé de modification qui vient d'être décrit.
L'invention concerne aussi un dispositif de contrôle de modification d’un message de données émis par un premier nœud à destination d’un second nœud sur un chemin de communication entre les deux nœuds, la modification étant exécutée par un équipement, apte à intercepter le message de données, le dispositif comprenant :
- Un récepteur, apte à recevoir un message de requête d’établissement du chemin de communication en provenance du second nœud,
Un module de génération, apte à générer un ensemble de variables de chiffrement,
- Un émetteur, apte à émettre un message de réponse d’établissement comprenant l’ensemble de variables de chiffrement à destination du second nœud,
Un module de livraison, apte à livrer un paramètre de chiffrement, relatif à un paramètre de l’ensemble, à destination de l’équipement,
- Un émetteur, apte à émettre un message de données à destination du second nœud.
Ce dispositif est apte à mettre en œuvre dans tous ses modes de réalisation le procédé de contrôle qui vient d'être décrit.
L'invention concerne encore un système de modification d’un message de données émis par un premier nœud à destination d’un second nœud, la modification étant exécutée par un équipement sur au moins un chemin de communication entre les deux nœuds, le système comprenant :
- Un équipement comprenant un dispositif de modification du message de données tel que celui qui vient d'être décrit,
- Un premier nœud, comprenant un dispositif de contrôle de modification du message de données, tel que celui qui vient d'être décrit,
- Un second nœud comprenant :
- un émetteur, apte à émettre un message de requête d’établissement d’un chemin de communication à destination du premier nœud, et - un récepteur, apte à recevoir un message de réponse d’établissement comprenant l’ensemble de variables de chiffrement en provenance du premier nœud, et apte à recevoir le message de données en provenance du premier nœud.
L'invention concerne aussi un programme d'ordinateur comprenant des instructions pour la mise en œuvre des étapes du procédé de modification qui vient d'être décrit, lorsque ce programme est exécuté par un processeur, ainsi qu'un un programme d'ordinateur comprenant des instructions pour la mise en œuvre des étapes du procédé de contrôle qui vient d'être décrit, lorsque ce programme est exécuté par un processeur.
L’invention vise aussi un support d'informations lisible par un équipement apte à émettre, intercepter ou recevoir un messages de données, et comportant des instructions de l'un ou l'autre des programmes d'ordinateur tels que mentionnés ci- dessus.
Les programmes mentionnés ci-dessus peuvent utiliser n’importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n’importe quelle autre forme souhaitable.
Les supports d'informations mentionnés ci-dessus peuvent être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, un support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique.
Un tel moyen de stockage peut par exemple être un disque dur, une mémoire flash, etc.
D'autre part, un support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Un programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet.
Alternativement, un support d'informations peut être un circuit intégré dans lequel un programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution des procédés en question. 4. Présentation des figures
D'autres avantages et caractéristiques de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation particulier de l'invention, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels :
- la figure 1 présente une vue simplifiée d’un réseau de communication dans lequel le procédé de modification est mis en œuvre,
- la figure 2 présente le procédé de modification selon un premier mode de réalisation de l'invention,
- la figure 3 présente le procédé de modification dans un réseau de communication selon un deuxième mode de réalisation de l'invention,
- la figure 4 présente le procédé de modification dans un réseau de communication selon un troisième mode de réalisation de l'invention,
- la figure 5 présente un exemple de structure d'un dispositif de modification, selon un aspect de l'invention,
- la figure 6 présente un exemple de structure d'un dispositif de contrôle de modification, selon un aspect de l'invention.
5. Description détaillée d'au moins un mode de réalisation de l'invention
Dans la suite de la description, on présente des exemples de plusieurs modes de réalisation de l'invention dans un réseau de communications. Le réseau de communication peut indifféremment être un réseau de communication de type fixe ou un réseau de communication de type mobile/sans fils. Le réseau peut également être un réseau hybride intégrant une partie filaire et une partie sans fils. On se réfère tout d’abord à la figure 1 qui présente une vue simplifiée d’un réseau de communication dans lequel le procédé de modification est mis en oeuvre selon un aspect de l’invention.
Deux noeuds 10 et 50, qui peuvent être par exemple des terminaux mobiles tels que des smartphones ou des terminaux fixes tels que des passerelles résidentielles ou n’importe quel équipement doté de moyens de communication, sont attachés à un réseau 1 de communication. D’autres noeuds 20, 30, 40, qui peuvent être des serveurs HTTP, des serveurs DNS (en anglais Domain Name Server ), des serveurs FTP (en anglais File Transfer Protocol ) ou bien encore des noeuds de même type que les noeuds 10 et 50, sont également attachés au réseau 1 de communication. Le réseau 1 de communication permet aux noeuds 10, 50 d’une part et 20, 30, 40 d’autre part de pouvoir s’échanger des données, par exemple en établissant des sessions applicatives entre les noeuds.
Le réseau 1 de communication comprend des chemins C1 , C2, C3, C4 de communication. Ces chemins comprennent des équipements qui acheminent les données des noeuds et des liens, filaires ou non-filaires, interconnectant les équipements. Le chemin entre un nœud et un autre nœud peut être sélectionné en fonctions de critères de qualité de service, de critères de gestion, de caractéristiques propres aux nœuds d’extrémité ou de contraintes applicatives. Notamment, l’opérateur du réseau 1 peut mettre en œuvre des politiques de routage pour acheminer les données des différents nœuds attachés au réseau 1. Dans le réseau 1 , le chemin C1 achemine les données du nœud 10 vers le nœud 20 et comprend les équipements 13, 1 1 , 12. Le chemin C2, acheminant les données du nœud 10 vers le nœud 30, comprend les équipements 13 et 14. Le chemin C3 achemine les données du nœud 10 vers le nœud 40 et comprend les équipements 15 et 16. Le chemin C4 achemine les données du nœud 50 vers le nœud 40 et comprend les équipements 15 et 14. Un chemin peut acheminer des données émises par des nœuds distincts vers des nœuds qui peuvent également être distincts. Le chemin est alors partagé pour plusieurs sessions de données.
Une même session peut par ailleurs utiliser plusieurs chemins. Par exemple, le nœud 10 pourrait envoyer des données au nœud 20 en utilisant plusieurs chemins, par exemple pour fiabiliser le transfert de données ou bénéficier de plus de capacités de transmission. En outre, un chemin peut être unidirectionnel ou bien bidirectionnel. Dans le cas d’un chemin unidirectionnel, les données du nœud 10 vers le nœud 30 sont acheminées via un chemin différent des données émises par le nœud 30 vers le nœud 10. Dans le cas d’un chemin bidirectionnel les données empruntent le même chemin quel que soit l’émetteur ou le récepteur des données. Les données d’un chemin bidirectionnel peuvent devoir être traitées par les mêmes équipements sur le chemin mais un équipement peut, dans certains cas, uniquement modifier les données transmises dans une direction donnée. Un chemin bidirectionnel est dit symétrique si les mêmes équipements interviennent dans les deux directions. Les équipements 1 1 , 12, 13, 14, 15, 16 des chemins C1 , C2, C3, c4 ont des capacités d’acheminement mais ils ont également des capacités de traitement. Ils peuvent ainsi modifier alors les messages transmis par les nœuds soit en extrayant des données, soit en ajoutant des données, soit en changeant des données, toutes ces opérations consistant à modifier les données émises par les nœuds. La modification ou l’extraction des données est possible si ces données ne sont pas chiffrées dans le message. Par exemple, ces nœuds peuvent effectuer des opérations d’optimisation de fonctions HTTP (en anglais Hypertext Transfer Protocol), de translation d’adresses, de filtrage de données, d’interceptions légales, de sécurisation des données, etc...
En relation avec la figure 2, on présente un aperçu du procédé de modification, selon un premier mode de réalisation de l'invention. Dans ce mode de réalisation, le nœud 10, que l’on considère être un terminal dans ce mode de réalisation, établit une session applicative avec le nœud 20, que l’on considère être un serveur HTTP. Les données de la session applicative sont transmises sur le chemin C5. Les données sont acheminées depuis le terminal 10 jusqu’au serveur 20 et sont traitées par les trois équipements M1 13, M2 14 et M3 15 se trouvant sur le chemin C5. Les équipements sont dits intermédiaires, car ils se situent entre les deux nœuds 10 et 20, dits d’extrémité, sur le chemin C5. Les équipements M1 , M2, M3 doivent pouvoir intervenir sur les données transmises si les nœuds 10 et 20 les y autorisent. Ainsi, l’équipement M1 , selon un exemple, ajoute une information de qualité de service, alors que l’équipement M2 extrait des informations des données à des fins légales et l’équipement M3 substitue des informations des données par exemple pour masquer des informations au nœud destinataire 20. Le nombre d’équipements sur le chemin n’est pas limité et les équipements peuvent être gérés par une entité unique ou distincte.
Le terminal 10 transmet un paquet P1 à destination du serveur 20. Ce paquet comprend un en-tête, incluant des informations permettant d’acheminer le paquet sur le chemin C5 et d’autres informations par exemple de qualité de service, ainsi que des informations dites utiles correspondant aux données applicatives. Il s’agit par exemple d’une requête HTTP. Dans le paquet P1 , un champ DMZ est présent pour qu’il puisse être exploité par les équipements intermédiaires sur le chemin C5. Ce champ DMZ est une zone d’échange que les équipements intermédiaires utilisent pour modifier certaines données des paquets. Le champ DMZ peut par exemple être un champ de bourrage (ou « padding » en anglais) de paquets exploité aux fins du procédé de modification. Il peut s’agir également d’un champ d’un protocole de transport ou d’un protocole applicatif.
L’équipement M1 intercepte le paquet P1 et utilise une partie du champ DMZ pour ajouter des informations relatives à la qualité de service. L’équipement utilise un champ M1 Info, qui lui est attribué ou non. En effet, le champ DMZ peut comprendre des champs spécifiquement alloués aux équipements sur le chemin, ou bien un champ unique que chaque équipement intermédiaire peut utiliser selon ses besoins. L’information M1 Info est chiffrée à l’aide d’une clé de chiffrement spécifique à l’équipement M1 , obtenue au préalable, du terminal 10 ou du serveur 20 de façon à ce que d’autres équipements sur le chemin C5 ne puissent lire ou modifier les données modifiées de M1.
L’équipement M2 intercepte le paquet P1 mais n’apporte aucune modification, soit parce qu’il n’est pas autorisé à modifier par les nœuds d’extrémité, soit parce que le paquet ne transporte pas d’informations qu’il doit modifier. Un équipement peut être autorisé ou non à modifier le paquet P1 grâce à une clé lui permettant de modifier le paquet par exemple, cette clé lui étant transmise de façon indépendante dans ce mode de réalisation. Ainsi dans le cas où le paquet a été chiffré par le terminal 10, l’équipement M2 peut modifier des données du paquet chiffrées seulement s’il détient une clé de déchiffrement lui permettant de pouvoir accéder aux données chiffrées du paquet P1 à l’aide d’une clé correspondante à la clé de chiffrement utilisée pour chiffrer les données. Le terminal peut ainsi chiffrer certaines données avec une clé et d’autres données avec une autre clé. L’équipement M2 transmet le paquet P1 à destination du serveur 20.
L’équipement M3 intercepte le paquet P1 et modifie également des informations du paquet P1. Par exemple, il substitue des informations du paquet P1 pour masquer les informations relatives au terminal 10. Cela peut notamment être utile si le paquet transite vers un réseau géré par une entité différente de celle qui gère l’équipement M3 pour atteindre le serveur 20. L’équipement 20 modifie donc le paquet P1 et l’indique dans une partie non utilisée du champ DMZ. Il est à noter que les données M1 info chiffrées par l’équipement M1 , ne sont accessibles, ni à l’équipement M2, ni à l‘équipement M3. L’équipement M3 peut ajouter une information M3 Info dans le champ DMZ et il chiffre cette information avec une clé de chiffrement qui lui est propre. Il peut chiffrer les seules informations qu’il a ajoutées ou bien l’ensemble des informations M1 info et M3 info. Dans ce cas les données M1 info sont chiffrées par l’équipement M1 puis par l’équipement M3 tandis que les données ajoutées par l’équipement M3 sont uniquement chiffrées par l’équipement M3.
Le paquet P1 comprenant les champs M1 info et M3 info, respectivement chiffrés par les équipements M1 et M3, est ensuite émis vers le serveur 20. Le serveur 20, disposant de variables de chiffrement, qui sont dans ce cas des clés de chiffrement utilisées par les équipements 13 et 15, peut accéder aux données M1 info et M3 info. Le serveur 20 a en effet obtenu du terminal 10 les clés utilisées par les équipements 13 et 15 pour la session entre le terminal 10 et le serveur 20. Ces clés sont par exemple transmises par le serveur 20 aux équipements lors de l’établissement de la session, procurant un contrôle des modifications au serveur 20. Le serveur 20 peut en outre vérifier le paquet P1 reçu afin de contrôler les modifications apportées par les équipements sur le chemin. En particulier, le serveur 20 peut identifier si des données ont été modifiées en utilisant des clés qu’il ne détient pas ou si des modifications ont été apportées au paquet P1 par des équipements différents utilisant une même clé. Dans le cas où le serveur 20 détecte qu’une modification a été apportée sans autorisation, il peut décider de supprimer le paquet, transmettre un message au terminal 10 pour interrompre l’émission de données par exemple.
Il est à noter que, selon le type de message échangé entre le terminal 10 et le serveur 20, les rôles respectifs du terminal 10 et du serveur 20 peuvent être inversés et la session peut être établie du serveur 20 vers le terminal 10.
On se réfère maintenant à la figure 3 qui présente un aperçu du procédé de modification selon un deuxième mode de réalisation de l'invention.
Les entités 10, 13, 14, 15 et 20 correspondent aux entités numérotées de façon identique dans la figure 2.
Le protocole utilisé dans ce mode de réalisation est le protocole QUIC. Un autre protocole, tel que TLS pourrait être également utilisé.
Lors de l’étape E1 , le terminal 10 transmet un message « Client HELLO » d’établissement de session à destination du serveur 20.
Lors de l’étape E2, le serveur 20 détermine un ensemble de variables de chiffrement. Dans cet exemple, il s’agit de clés privées de chiffrement a’, b’, c’, d’ ainsi que les clés publiques a, b, c, d de chiffrement correspondantes aux clés privées. Le serveur peut ainsi générer autant de clés que nécessaire selon le moyen qui lui est propre, par exemple à partir d’un calculateur. Il est également possible de générer des clés pendant une session pour accroître la sécurité, ce qui requiert que les clés générées soient ensuite transmises au terminal 10.
Lors de l’étape E3 le serveur 20 émet à destination du client 10 un message de type « Serveur HELLO » comprenant les clés privées a’, b’, c’, d’ déterminées lors de l’étape E2. Avantageusement, les messages « client HELLO » et « Serveur HELLO » transmis lors des étapes respectives E1 et E3 sont chiffrés de façon qu’ils ne puissent être lus que par le terminal 10 et le serveur 20. Il pourrait également s’agir de clés secrètes, qui nécessitent des échanges préalables entre le serveur 20 et le terminal 10.
Lors de l’étape E4, le terminal 10 mémorise les clés de chiffrement reçues de façon à pouvoir ultérieurement déchiffrer les messages de données en provenance du serveur 20.
Lors de l’étape E5, le terminal 10 émet une requête d’obtention d’un contenu au serveur 20. La requête d’obtention du contenu peut être par exemple une requête HTTP.
L’étape E6 correspond à l’envoi des données HTTP par le serveur 20 au terminal 10 suite à la réception de la requête lors de l’étape E5. Le message de données, selon une alternative, comprend en outre les paramètres de chiffrement relatifs aux variables a’, b’, c’, d’. Dans ce mode de réalisation, il s’agit de clés publiques a, b, c, d déterminées par le serveur 20 lors de l’étape E2. Les clés sont de préférence transmises en clair, c’est-à-dire non chiffrées pour que les équipements sur le chemin puissent les utiliser sans requérir de clés supplémentaires. Lors d'une étape E7, le message comprenant les données en provenance du serveur 20 est intercepté par l’équipement 15. L’équipement 15 extrait une première clé publique, par exemple la clé publique a. L’équipement 15 ajoute des données dans un champ du message, par exemple dans le champ padding du protocole de transport. Il peut s’agir d’une information indiquant que des données du message ont été modifiées ou bien des données propres à l’équipement 15 à transmettre au terminal 10. Une fois les données modifiées, il chiffre le champ dans lequel il a ajouté les données modifiées en utilisant la clé publique a et il extrait cette clé a du message à transmettre à destination du terminal 10. Ainsi, un autre équipement ne peut réutiliser la clé a pour accéder aux données modifiées par l’équipement 15 ou pour apporter des modifications avec cette clé puisque la clé a n’est plus présente dans le message modifiée acheminé par l’équipement 15. Une clé ne peut ainsi être utilisée que par un équipement.
Lors de l’étape E8, l’équipement 13 intercepte à son tour le message de données, ne comprenant plus que les clés publiques b, c, d, émis initialement par le serveur 20 et acheminé via l’équipement 15. L’équipement 13 effectue des opérations comparables aux opérations effectuées par l’équipement 15, en modifiant les données du message reçu mais en chiffrant les données modifiées en utilisant la clé de chiffrement publique b et en la retirant du message à émettre vers le terminal 10. L’équipement 13, selon une alternative, ne chiffre avec la clé b que les données qu’il a ajoutées ou bien selon une autre alternative, les données ajoutées par l’équipement 15 et chiffrées avec la clé a, en plus de ses données. Dans cette dernière alternative, les données ajoutées par l’équipement 15 sont chiffrées avec la clé a puis avec la clé b alors que les données ajoutées par l’équipement 13 sont seulement chiffrées avec la clé b.
Le message est ensuite émis vers le terminal qui le reçoit lors de l’étape E9. Le message comprend les données émises par le serveur 20, qui ont été modifiées par les équipements 15 et 13, et dont les données ajoutées par les équipements 15 et 13 sont respectivement chiffrées avec les clés publiques a et b. Le message reçu par le terminal 10 comprend en outre les clés publiques c et d qui n’ont été utilisées par aucun équipement sur le chemin. Le terminal 10, détenant les clés privées a’ et b’ mémorisées lors de l’étape E4, est en mesure de déchiffrer les informations modifiées par les équipements 15 et 13. Il lui suffit d’utiliser la clé privée correspondant à la dernière clé publique non présente dans le message reçu pour déchiffrer la dernière partie modifiée. Si l’équipement 13 a chiffré toutes les parties modifiées, aussi bien par lui que par l’équipement 15, le terminal 10 accède à la modification de l’équipement 13 ainsi qu’à la modification de l’équipement 15 chiffré. Ensuite, en utilisant la clé privée a’, le terminal 10 peut déchiffrer la partie modifiée par l’équipement 15. Ainsi, seul le terminal 10, peut accéder à l’ensemble des données modifiées par les équipements 13 et 15.
Lors de l’étape E10, le terminal 10 émet un message de requête HTTP vers le serveur, par exemple pour obtenir un autre contenu suite aux données récupérées lors de l’étape E9.
Le message est intercepté par les équipements 13 et 14 sur le chemin du réseau de communication entre le terminal 10 et le serveur 20. De façon comparable aux étapes E6 à E9, les étapes E10 à E13 incluent la transmission du message par le terminal 10, la modification de ce message par les équipements 13 puis 14 et la réception par le serveur 20. Il est à noter que les équipements intervenant dans les étapes E7 et E8 d’une part et E1 1 et E12 d’autre part ne sont pas les mêmes, ce qui peut être le cas lorsque les chemins sont non symétriques.
On se réfère maintenant à la figure 4 qui présente un aperçu du procédé de modification selon un troisième mode de réalisation de l'invention.
Dans ce mode de réalisation, un accord est préalablement signé entre le gestionnaire du serveur 20 et les gestionnaires respectifs des équipements 13, 14, 15. Le serveur 20 transmet aux équipements 15, 14, 13 leur clé de chiffrement publique respective K1 , K2, K3 lors des étapes E’O, E”0 et E’”0. Ainsi chaque équipement a obtenu une clé de chiffrement de la part du serveur 20.
Lors de l’étape EΊ , le terminal 10 émet un message d’établissement de session à destination du serveur 20. Cela peut être un message de type SYN s’il s’agit d’une session TCP (en anglais Transport Control Protocol).
Lors de l’étape E’2, le serveur 20 détermine des nombres aléatoires x, y, z aussi appelés nonces. Comme pour les clés dans le deuxième mode de réalisation, il est possible d’envisager la détermination de nonces différents lors d’une session entre le serveur 20 et le terminal 10, notamment pour accroître la sécurisation des données échangées lors de la session.
Lors de l’étape E’3, le serveur 20 transmet au terminal 10 les nonces x, y, z déterminés ainsi que les variables de chiffrement, les clés de chiffrement KΊ , K’2, K’3 privées correspondant aux paramètres de chiffrement que sont les clés publiques K1 , K2, K3 transmises aux équipements 15, 14, 13.
Lors de l’étape E’4, le terminal mémorise les nonces x, y, z reçus et les clés privées KΊ , K’2, K’3 reçues lors de l’étape E’3.
Lors de l’étape E’5, le terminal 10 émet une requête à destination du serveur 20 pour obtenir un contenu, par exemple en transmettant une requête de type HTTPGET.
Le terminal émet le message de données de type HTTP GET à destination du serveur 20 lors de l’étape E’5, le message de données comprenant en outre les nonces x, y, z.
L’équipement 13 intercepte le message de données lors de l’étape E’6 et extrait le nonce x. A partir de la clé publique K3 transmise par le serveur 20 lors de l’étape E’”0, l’équipement 13 calcule un nonce x’ chiffré à partir du nonce x en utilisant la clé K3. L’équipement 13 chiffre, à l’aide de la clé K3, les données qu’il doit ajouter au message de données conformément à la fonction qu’il remplit. Il peut par exemple ajouter une adresse d’un serveur PCRF (en anglais Policy Rules and Control Function) auquel doit être envoyé les données de facturation. Il chiffre cette adresse IP à l’aide de la clé publique K3. L’équipement modifie en outre le message de données en substituant au nonce x du message de données reçu le nonce x’ chiffré. Le message modifié à émettre vers le serveur 20 comprend des données modifiées à l’aide de la clé K3, le nonce a’ chiffré avec la clé K3 et ne comprend plus le nonce a.
Il émet ensuite le message modifié à destination du serveur 20. Le message de données est intercepté lors de l’étape E’7 par l’équipement 14 qui intervient également sur le message en modifiant le message par l’ajout d’une information, par exemple en indiquant l’identité du gestionnaire de cet équipement 14. L’équipement chiffre l’identité à ajouter avec la clé publique K2 reçue lors de l’étape E”0. En outre, l’équipement 14 chiffre le nonce y avec la clé publique K2 et obtient un nonce chiffré y’. L’équipement 14 modifie le message de données en ajoutant l’identité du gestionnaire chiffré et en substituant au nonce y reçu le nonce chiffré y’. Le message de données modifié par l’équipement 13 puis par l’équipement 14 est transmis au serveur 20 qu’il reçoit lors de l’étape E’8.
Le serveur 20 disposant des clés privées K’3 et K’2 peut déchiffrer les données modifiées par les équipements 13 et 14 sur le chemin et il peut également identifier quel équipement a modifié les dites données à partir des nonces chiffrés x’ et y’ reçus. Sachant qu’il ne peut obtenir le nonce x qu’à partir de la clé K’3, il peut identifier que l’équipement 13 a chiffré les données du message avec la clé K3.
Les données émises par le serveur 20 au terminal 10 lors de l’étape E’9, suite à la requête émise par le terminal 10, sont interceptées par les mêmes équipements 13 et 14 lors des étapes EΊ 0 et EΊ 1 car il est considéré que le chemin utilisé pour la transmission des données est bidirectionnel et symétrique. Le terminal reçoit les données lors de l’étape EΊ 2 et peut déchiffrer les données modifiées par les équipements 13 et 14 car il dispose des informations sur les nonces x, y, z et les clés privées KΊ , K’2, K’3.
Ce mode de réalisation présente l’intérêt de pouvoir identifier l’équipement ayant modifié des données d’un message pour un message transmis sur un chemin et en outre, il permet d’éviter de transmettre les clés de chiffrement dans le message de données.
En relation avec la figure 5, on présente un exemple de structure d'un dispositif de modification, selon un aspect de l'invention.
Le dispositif 100 de modification met en oeuvre le procédé de modification, dont différents modes de réalisation viennent d'être décrits.
Un tel dispositif 100 peut être mis en oeuvre dans un tout type d’équipement présent sur un chemin de communication, que cet équipement soit virtualisé ou non. Cela peut être une passerelle de réseau mobile, un équipement chargé de la translation d’adresses IP, un firewall, un équipement assurant des fonctions de DPI (en anglais Deep Packet Inspection), etc...
Par exemple, le dispositif 100 comprend une unité de traitement 106, équipée par exemple d'un microprocesseur mR, et pilotée par un programme d'ordinateur 105, stocké dans une mémoire 107 et mettant en oeuvre le procédé de sélection selon l'invention. A l’initialisation, les instructions de code du programme d’ordinateur 105 sont par exemple chargées dans une mémoire RAM, avant d’être exécutées par le processeur de l’unité de traitement 106.
Un tel dispositif 100 comprend :
- Un module 101 d’interception, apte à intercepter le message de données, en provenance du premier nœud et à destination du second nœud,
- Un module 102 d’obtention, apte à obtenir un paramètre de chiffrement de l’ensemble en provenance du premier nœud, - Un module 103 de détermination, apte à déterminer un élément cryptographique à partir du paramètre obtenu,
- Un module 104 de modification, apte à modifier au moins une donnée du message à partir de l’élément cryptographique déterminé,
- Un émetteur 1 10 apte à émettre le message Mess de données modifié à destination du second nœud.
En relation avec la figure 6, on présente un exemple de structure d'un dispositif de contrôle de modification, selon un aspect de l'invention.
Le dispositif 200 de contrôle de modification dont différents modes de réalisation viennent d'être décrits peut être mis en œuvre dans des équipements de type terminal fixe ou mobile, passerelle résidentielle ou tout type de serveur.
Par exemple, le nœud 200 comprend une unité de traitement 206, équipée par exemple d'un microprocesseur mR, et pilotée par un programme d'ordinateur 205, stocké dans une mémoire 207 et mettant en œuvre le procédé de sélection selon l'invention. A l’initialisation, les instructions de code du programme d’ordinateur 205 sont par exemple chargées dans une mémoire RAM, avant d’être exécutées par le processeur de l’unité de traitement 206.
Un tel dispositif 200 comprend :
- Un récepteur 220, apte à recevoir un message Req de requête d’établissement du chemin de communication en provenance du second nœud,
- Un module 201 de génération, apte à générer un ensemble de paramètres de chiffrement,
Un émetteur 210,
o apte à émettre un message Etab de réponse d’établissement comprenant l’ensemble de variables de chiffrement à destination du second nœud,
o apte à émettre un message Donn de données à destination du second nœud.
Un module 202 de livraison, apte à livrer un paramètre de chiffrement, relatif à une variable de l’ensemble, à l’équipement.
Les modules décrits en relation avec la figure 5 et la figure 6 peuvent être des modules matériels ou logiciels.
Le procédé de modification et le procédé de contrôle de modification, dont différents modes de réalisation viennent d’être décrits, permet de pouvoir autoriser des équipements dits intermédiaires, présents sur un réseau d’accès ou dans un cœur de réseau, par exemple sur une infrastructure Wi-Fi ou un réseau GPRS/LTE/5G à modifier des données. En distribuant des clés de chiffrement dans les messages de données ou dans des messages spécifiques, un client ou un serveur peut autoriser ou non des équipements intermédiaires à modifier des données, notamment en ajoutant des informations aux données transmises par le client ou le serveur. Les procédés permettent en outre de savoir quels équipements intermédiaires ont ajouté quelles données dans le message. Les procédés autorisent l’utilisation de protocoles de transport ou applicatifs pour émettre le cas échéant des paramètres de chiffrement, sachant que l’utilisation de protocole de transport tel que QUIC, en forte progression d’utilisation dans les réseaux s’avère un choix opportun pour développer l’utilisation des procédés. Les procédés ne remettent pas en cause la sécurisation des données puisqu’il est possible d’utiliser des champs non chiffrés pour transporter les paramètres de chiffrement et de conserver un chiffrement des autres données émises par le terminal ou le serveur que l’équipement ne doit pas modifier. Il est également possible de chiffrer certaines données d’un message avec une clé et d’autres données du message avec d’autre clés de façon à ne rendre accessible à des équipement que certaines parties des messages et aussi d’empêcher que des modifications apportées par un équipement puissent être lues ou modifiées par un autre équipement sur le chemin des données.

Claims

REVENDICATIONS
1 . Procédé de modification d’un message de données émis par un premier nœud (20) à destination d’un second nœud (10) sur un chemin (C5) d’un réseau (1 ) de communication, le second nœud (10) ayant obtenu un ensemble de variables de chiffrement en provenance du premier nœud (20), le procédé étant destiné à être exécuté par un équipement (13, 14, 15) apte à intercepter le message de données, le procédé comprenant les étapes suivantes :
- interception du message de données, en provenance du premier nœud (20) et à destination du second nœud (10),
- obtention d’un paramètre de chiffrement spécifique à l'équipement et relatif à une variable de l’ensemble en provenance du premier nœud (20),
- détermination d’un élément cryptographique relatif au paramètre obtenu,
- modification d’au moins une donnée du message à partir de l’élément cryptographique déterminé,
- émission du message de données modifié à destination du second nœud (10).
2. Procédé de modification, selon la revendication 1 , où le paramètre de chiffrement est obtenu dans le message de données reçu.
3. Procédé de modification, selon la revendication 2, comprenant en outre une étape de suppression du paramètre de chiffrement dans le message de données émis à destination du second nœud (10).
4. Procédé de modification, selon la revendication 2, où le paramètre de chiffrement est compris dans la couche transport d’un paquet du message de données.
5. Procédé de modification, selon la revendication 1 , comprenant en outre une étape d’ajout de l’élément cryptographique dans le message de données émis vers le second nœud (10).
6. Procédé de modification, selon la revendication 1 , où l’élément cryptographique est déterminé à partir d’un nombre aléatoire présent dans le message de données reçu.
7. Procédé de modification, selon la revendication 1 , où l’élément cryptographique est spécifique au chemin (C5) de communication.
8. Procédé de contrôle de modification d’un message de données émis par un premier nœud (20) à destination d’un second nœud (10) sur un chemin (C5) de communication entre les deux nœuds (10, 20), la modification étant exécutée par un équipement (13, 14, 15) apte à intercepter le message de données, le procédé étant destiné à être exécuté par le premier nœud (20) et comprenant les étapes suivantes :
- réception d’un message de requête d’établissement d’un chemin de communication en provenance du second nœud (10),
génération d’un ensemble de variables de chiffrement,
- émission d’un message de réponse d’établissement comprenant l’ensemble de variables générés à destination du second nœud (10),
- livraison d’un paramètre de chiffrement spécifique à l'équipement et relatif à une variable de l’ensemble, à l’équipement (13, 14, 15),
- émission d’un message de données comprenant le paramètre de chiffrement, à destination du second nœud (10).
9. Procédé de contrôle, selon la revendication 8, où le paramètre de chiffrement est une clé publique de chiffrement et l’élément cryptographique est un nombre aléatoire chiffré à l’aide de la clef de chiffrement publique.
10. Dispositif de modification d’un message de données émis par un premier nœud (20) à destination d’un second nœud (10) sur un chemin (C5) de communication établi entre les deux nœuds (10, 20), le second nœud ayant obtenu au préalable un ensemble de variables de chiffrement en provenance du premier nœud (20), le dispositif comprenant :
- un module d’interception, apte à intercepter le message de données, en provenance du premier nœud (20) et à destination du second nœud (10),
- un module d’obtention, apte à obtenir un paramètre de chiffrement spécifique à l'équipement et relatif à une variable de l’ensemble, en provenance du premier nœud (20),
- un module de détermination, apte à déterminer un élément cryptographique à partir du paramètre obtenu,
- un module de modification, apte à modifier au moins une donnée du message à partir de l’élément cryptographique déterminé,
- un émetteur apte à émettre le message de données modifié à destination du second nœud (10).
1 1. Dispositif de contrôle de modification d’un message de données émis par un premier nœud (20) à destination d’un second nœud (10) sur un chemin de communication entre les deux nœuds (10, 20), la modification étant exécutée par un équipement (13, 14, 15), apte à intercepter le message de données, le dispositif comprenant :
- un récepteur, apte à recevoir un message de requête d’établissement du chemin de communication en provenance du second nœud (10),
- un module de génération, apte à générer un ensemble de variables de chiffrement,
- un émetteur, apte à émettre un message de réponse d’établissement comprenant l’ensemble de variables de chiffrement à destination du second nœud (10),
- un module de livraison, apte à livrer un paramètre de chiffrement spécifique à l'équipement et relatif à un paramètre de l’ensemble, à destination de l’équipement (13, 14, 15),
- un émetteur, apte à émettre un message de données comprenant le paramètre de chiffrement, à destination du second nœud (10).
12. Système de modification d’un message de données émis par un premier nœud (20) à destination d’un second nœud (10), la modification étant exécutée par un équipement sur au moins un chemin (C5) de communication entre les deux nœuds (10, 20), comprenant :
- un équipement (13, 14, 15) comprenant un dispositif de modification du message de données selon la revendication 10,
- un premier nœud (20), comprenant un dispositif de contrôle de modification du message de données, selon la revendication 1 1 ,
- un second nœud (10) comprenant :
- un émetteur, apte à émettre un message de requête d’établissement d’un chemin de communication à destination du premier nœud (20),
- un récepteur,
- apte à recevoir un message de réponse d’établissement comprenant l’ensemble de variables de chiffrement en provenance du premier nœud (20),
- apte à recevoir le message de données en provenance du premier nœud (20).
13. Programme d'ordinateur, caractérisé en ce qu'il comprend des instructions pour la mise en œuvre des étapes du procédé de modification selon la revendication 1 ou du procédé de contrôle selon la revendication 8, lorsque ce procédé est exécuté par un processeur.
14. Support d’enregistrement lisible par un dispositif de modification conforme à la revendication 10 ou par un dispositif de contrôle conforme à la revendication 1 1 sur lequel est enregistré le programme selon la revendication 13.
EP19742862.6A 2018-06-25 2019-06-14 Procédé de modification de messages par un équipement sur un chemin de communication établi entre deux noeuds Pending EP3811587A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1855681A FR3081653A1 (fr) 2018-06-25 2018-06-25 Procede de modification de messages par un equipement sur un chemin de communication etabli entre deux noeuds
PCT/FR2019/051440 WO2020002793A1 (fr) 2018-06-25 2019-06-14 Procédé de modification de messages par un équipement sur un chemin de communication établi entre deux nœuds

Publications (1)

Publication Number Publication Date
EP3811587A1 true EP3811587A1 (fr) 2021-04-28

Family

ID=63963135

Family Applications (1)

Application Number Title Priority Date Filing Date
EP19742862.6A Pending EP3811587A1 (fr) 2018-06-25 2019-06-14 Procédé de modification de messages par un équipement sur un chemin de communication établi entre deux noeuds

Country Status (4)

Country Link
US (1) US11936634B2 (fr)
EP (1) EP3811587A1 (fr)
FR (1) FR3081653A1 (fr)
WO (1) WO2020002793A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3111252A1 (fr) * 2020-06-04 2021-12-10 Orange Procédé de capture d’un paquet d’une session chiffrée

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7188180B2 (en) * 1998-10-30 2007-03-06 Vimetx, Inc. Method for establishing secure communication link between computers of virtual private network
US8510846B1 (en) * 2006-06-29 2013-08-13 Google Inc. Data encryption and isolation
US7865717B2 (en) * 2006-07-18 2011-01-04 Motorola, Inc. Method and apparatus for dynamic, seamless security in communication protocols
US8700894B2 (en) * 2007-10-17 2014-04-15 Pitney Bowes Inc. Method and system for securing routing information of a communication using identity-based encryption scheme
US9349018B1 (en) * 2012-07-19 2016-05-24 Mobile Iron, Inc. Preventing content data leak on mobile devices
US9571471B1 (en) * 2015-11-10 2017-02-14 AO Kaspersky Lab System and method of encrypted transmission of web pages
US10116634B2 (en) * 2016-06-28 2018-10-30 A10 Networks, Inc. Intercepting secure session upon receipt of untrusted certificate
WO2018076183A1 (fr) * 2016-10-25 2018-05-03 华为技术有限公司 Procédé, appareil, et système de transmission de données
US20180176187A1 (en) * 2016-12-16 2018-06-21 Amazon Technologies, Inc. Secure data ingestion for sensitive data across networks

Also Published As

Publication number Publication date
FR3081653A1 (fr) 2019-11-29
US20210273926A1 (en) 2021-09-02
US11936634B2 (en) 2024-03-19
WO2020002793A1 (fr) 2020-01-02

Similar Documents

Publication Publication Date Title
US11848961B2 (en) HTTPS request enrichment
EP3646557A1 (fr) Procédé de communication quic via des chemins multiples
FR3053197A1 (fr) Procede de communication udp via des chemins multiples entre deux terminaux
EP2359546B1 (fr) Procede de configuration de parametres de gestion de paquets de donnees appartenant a un flux de donnees
EP3613186B1 (fr) Système et procédé de communications
EP3643044B1 (fr) Procédé d'activation de traitements appliqués à une session de données
EP3695571B1 (fr) Dispositif et procédé de transmission de données
WO2020260813A1 (fr) Procédé de gestion d'une communication entre terminaux dans un réseau de communication, et dispositifs pour la mise en oeuvre du procédé
WO2020002793A1 (fr) Procédé de modification de messages par un équipement sur un chemin de communication établi entre deux nœuds
EP4222994A1 (fr) Procedes de configuration d'un equipement utilisateur, de negociation avec une entite du reseau, et de gestion d'une connexion, et dispositifs associes
US20220201090A1 (en) Over-the-top management in a communication network
WO2016097534A1 (fr) Procédé d'échanges de données entre deux navigateurs internet, équipement de routage, terminal, programme d'ordinateur et support d'informations corespondants
EP3949287A1 (fr) Passerelle et procédé de différentiation de trafic émis par la passerelle, dispositif et procédé gestion du trafic
FR3080967A1 (fr) Procede d'envoi d'une information et de reception d'une information pour la gestion de reputation d'une ressource ip
WO2023083771A1 (fr) Procédés de contrôle, de vérification et de configuration, et entités configurées pour mettre en œuvre ces procédés
EP2146534B1 (fr) Authentification d'un terminal
EP4033794A1 (fr) Procédé d'attribution dynamique d'identifiants à une carte de circuit intégré universelle embarquée - euicc d'un équipement utilisateur et système associé
EP3970318A1 (fr) Gestion de services de transmission libre dans un réseau de communication
EP1858224A1 (fr) Méthode de mise en place des réseaux privés virtuels et contrôle d'accès distant
FR2965132A1 (fr) Procede de configuration de parametres de gestion de paquets de donnees appartenant a un flux de donnees

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20210118

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

RAP3 Party data changed (applicant data changed or rights of an application transferred)

Owner name: ORANGE

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20230313