METHOD FOR SENDING AND RECEIVING CONSUMPTION DATA AND DEVICES FOR PERFORMING THE METHOD
Patent Information
- Application Number
- DE602022010112
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2022-03-24
- Filing Date
- 2022-12-28
- Publication Date
- 2025-01-29
- Estimated Expiration
- 2042-12-28
AI Technical Summary
Current consumption data transmission processes in intelligent meters lack reliability, as errors can occur during transmission, and there is no effective way to certify that data comes from certified and correct versions of metrology software, leading to disputes between customers and service providers.
A consumption data transmission process that generates an imprint using a quadruplet including consumption data, a serial number, a cyclic redundancy code, and a certificate number, encrypts it with a private key, and transmits it with an identifier, allowing the management system to verify the signature and ensure data integrity.
This process ensures that consumption data received is authentic and generated by a correct version of the metrology software, reducing disputes and errors in billing by providing a reliable and certified data transmission method.
Description
TECHNICAL FIELD
[0001] At least one embodiment relates to a method for transmitting consumption data from a meter to a system for managing said consumption data. At least one other embodiment relates to a method for receiving consumption data. Devices implementing said transmission and reception methods are also described. STATE OF PRIOR ART
[0002] Smart meters, such as electricity meters, thermal energy meters, or fluid meters (e.g., gas or water meters), are known to use communication interfaces that allow an automated management system to remotely collect consumption data. For example, these smart meters include one or more PLC (Power Line Communication) and / or radio communication interfaces. They then transmit a customer's consumption data, for example, in the form of data frames, via these communication interfaces. This data is then sent, at regular or irregular intervals, to an information system for centralized processing. The information system uses this consumption data, particularly for billing purposes by a service provider.To this end, meters use metrological processes or software to generate consumption data from measurements that must comply with legal metrology requirements. Metrology is the science of measurement and its applications. It encompasses all theoretical and practical aspects of measurements. Legal metrology is a branch of metrology that relates to activities arising from regulatory requirements and applicable to measurements, units of measurement, and measuring instruments. Thus, legal metrology also includes the establishment of legal requirements, the control / evaluation of the conformity of regulated products and activities, the supervision of regulated products and activities, and the implementation of the infrastructure necessary for the traceability of regulated measurements and measuring instruments.
[0003] For example, Directive 2014 / 32 / EU, known as the MID (Measuring Instruments Directive), regulates the placing on the market of a large number of measuring instruments (e.g., electricity, gas, heat, or water meters) covered by legal metrology. It sets out the technical requirements applicable to their design and production. Thus, only MID-certified meters can be used for billing. During certification, an MID certificate number is assigned to the meter by the certification body.
[0004] The consumption data used for billing must be error-free to avoid potential disputes arising from disagreements over its values. Errors can occur, for example, due to alterations in the data frames containing consumption data during transmission. They can also result from a meter using an incorrect, or outdated, version of the metering software. Currently, in the event of a dispute between a customer and the service provider regarding the value of consumption data, one solution is for the service provider to send an operator to the customer's home to take a direct reading of the consumption data on the meter's display. This solution is unsatisfactory because it requires both the meter to be equipped with a display and the operator to travel to the customer's home, which is costly.
[0005] US patent 2016 / 163177 A1 describes a water and energy consumption monitoring and / or leak detection system designed to operate with a water supply system in a residential, industrial, or commercial facility. GB patent 2 588 647 A describes a method for attesting and generating keys for constrained devices.
[0006] Document EP 2552048 A1 describes a remote meter reading terminal that generates electronic signature data based on reading information including a measured value acquired by electricity meters, the date and time of reading, and an electricity meter identifier, and transmits the generated electronic signature data and meter reading information to a meter reading data management server.
[0007] It is desirable to overcome these various drawbacks of the current state of the art. In particular, it is desirable to propose a reliable method for transmitting consumption data that allows, among other things, verification that the consumption data received by the information system does indeed originate from the certified software of the meter from which it is supposed to come, and that, moreover, it was generated by a correct version of the metrology software. DESCRIPTION OF THE INVENTION
[0008] At least one embodiment relates to a method for transmitting consumption data from a meter to a meter data management system. The method comprises the following steps implemented by said meter: obtain a consumption data, said data being obtained by metrology software; generate a fingerprint from a quadruplet comprising said consumption data obtained and a triplet comprising a serial number of said meter, a cyclic redundancy code calculated from said metrology software and a certificate number certifying that said meter is authorized to be used for consumption billing; encrypt said fingerprint with a private key known only to the meter, said encrypted fingerprint being a signature; and transmit to the management system of said consumption data a frame comprising an identifier of said meter, said consumption data obtained and said signature.
[0009] The described process advantageously allows us to certify that the consumption data received comes from the correct meter, i.e. the meter supposed to have sent said consumption data, and that, moreover, this consumption data was obtained by a correct version of the metrology software.
[0010] According to a particular embodiment, generating a fingerprint includes applying a hash function to said triplet.
[0011] According to a particular embodiment, the hash function belongs to the set of hash functions comprising: SHA-224 of the SHA-3 family; SHA-256 of the SHA-3 family; SHA-384 of the SHA-3 family; SHA-512 of the SHA-3 family; SHA-224 of the SHA-2 family; SHA-256 of the SHA-2 family; SHA-384 of the SHA-2 family; SHA-512 of the SHA-2 family; MD-4; MD-5; and SHA-1.
[0012] According to a particular embodiment, encrypting said fingerprint with a private key known only to the counter includes applying an asymmetric elliptic curve encryption.
[0013] According to one particular embodiment, said consumption data are consumption data for electricity, gas, gasoline, thermal energy, or water. At least one embodiment relates to a method for receiving consumption data by a consumption data management system, said consumption data management system storing in memory, for each meter in a set of meters, a triplet comprising a serial number of said meter, a cyclic redundancy code of metrology software, and an associated certificate number certifying that said meter is authorized to be used for consumption billing. The method includes the following steps implemented by said consumption data management system: -receive a frame including a meter identifier, consumption data and a signature; decrypt said signature with a public key associated with the meter identified by said identifier; generate a fingerprint from a quadruplet including said consumption data obtained and said triplet associated in said memory said meter identified by said identifier; compare said decrypted signature and said generated fingerprint and in case of inequality send an alarm signal.
[0014] At least one embodiment relates to a method for transmitting consumption data from a meter to a consumption data management system, said consumption data management system storing in memory, for each meter in a set of meters, a triplet comprising a serial number of said meter, a cyclic redundancy code of metrology software, and an associated certificate number certifying that said meter is authorized to be used for consumption billing. The method includes the following steps implemented by said meter: obtain a consumption data, said data being obtained by metrology software; generate a fingerprint from a quadruplet comprising said consumption data obtained and a triplet comprising a serial number of said meter, a cyclic redundancy code calculated from said metrology software and a certificate number certifying that said meter is authorized to be used for consumption billing; encrypt said fingerprint with a private key known only to the meter, said encrypted fingerprint being a signature; and transmit to the management system of said consumption data a frame comprising an identifier of said meter, said consumption data obtained and said signature.
[0015] The process further includes the following steps implemented by said consumption data management system: -receive said frame; decrypt said signature with a public key associated with the meter identified by said identifier; generate a fingerprint from a quadruplet comprising said consumption data obtained and said triplet associated in said memory said meter identified by said identifier; and compare said decrypted signature and said generated fingerprint and in case of inequality send an alarm signal.
[0016] At least one embodiment relates to a meter configured to transmit consumption data to a system for managing said consumption data. The meter includes: means for obtaining consumption data, said data being obtained by metrology software; means for generating a fingerprint from a quadruplet comprising said consumption data obtained and a triplet comprising a serial number of said meter, a cyclic redundancy code calculated from said metrology software and a certificate number certifying that said meter is authorized to be used for consumption billing; means for encrypting said fingerprint with a private key known only to the meter, said encrypted fingerprint being a signature; and means for transmitting to the management system of said consumption data a frame comprising an identifier of said meter, said consumption data obtained and said signature.
[0017] At least one embodiment relates to a meter data management system storing in memory, for each meter in a set of meters, a triplet comprising a serial number of said meter, a cyclic redundancy code of a metrology software, and an associated certificate number certifying that said meter is authorized to be used for consumption billing, said meter data management system comprising: means to receive a frame including a meter identifier, consumption data and a signature; means to decrypt said signature with a public key associated with the meter identified by said identifier; means to generate a fingerprint from a quadruplet including said consumption data obtained and said triplet associated in said memory of said meter identified by said identifier; and means to compare said decrypted signature and said generated fingerprint and in case of inequality send an alarm signal.
[0018] At least one embodiment relates to an automated management system configured to perform remote collection of consumption data, said automated management system comprising at least one meter according to one of the preceding embodiments and a meter data management system according to one of the preceding embodiments.
[0019] At least one embodiment relates to a computer program product comprising instructions to implement the transmission method or the reception method according to any of the embodiments described above, when said program is executed by a processor.
[0020] At least one embodiment relates to a storage medium that stores a computer program comprising instructions to implement the transmission process or the reception process according to any of the embodiments described above when said program is executed by a processor. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] The features of the invention mentioned above, as well as others, will become clearer upon reading the following description of an exemplary embodiment, said description being made in relation to the accompanying drawings, among which: [Fig. 1 ] schematically illustrates an automated management system configured to collect consumption data from measuring devices communicating according to a particular embodiment; [ Fig. 2 ] schematically illustrates an example of the hardware architecture of a smart meter in an automated management system according to a particular embodiment; [ Fig. 3 ] schematically illustrates an example of the hardware architecture of a meter data management system according to a particular implementation; [ Fig. 4 ] illustrates a method for transmitting consumption data by a meter according to a particular embodiment not covered by the claims; [ Fig. 5 ] illustrates a frame transmitted by a meter to a meter data management system; [ Fig. 6 ] illustrates a method for receiving consumption data by a consumption data management system according to a particular embodiment not covered by the claims; [ Fig. 7 ] illustrates a method for transmitting consumption data by a meter according to a particular embodiment; and [ Fig. 8 ] illustrates a process of receiving consumption data by a consumption data management system according to a particular embodiment. DETAILED DESCRIPTION OF IMPLEMENTATION METHODS
[0022] There Fig. 1 This schematically illustrates an automated management system 100 in which the present invention can be implemented. The automated management system 100 is configured to collect consumption data from communicating measuring devices 140a and 140b, e.g., smart meters (SM). Smart meters 140a and 140b are, for example, electricity meters, gas meters, thermal energy meters, or water meters, or meters for any other type of fluid, e.g., gasoline, whose consumption can be measured using metrology software. These smart meters 140a and 140b have the ability to communicate via radio transmission and / or PLC with an information system (IS) 110.The SI 110 information system includes a Head-End System (HES), a Meter Data Management System (MDMS), and a Key Management System (KMS).
[0023] The role of the SI 110 information system is to monitor measurement operations performed by the SM 140a and 140b smart meters. To do this, the SI 110 information system delegates the management of a data collection network to data concentrators (DCs). Two DCs, 120a and 120b, are shown in the diagram. Fig. 1 For example, the automated management system 100 typically includes a plurality of such DCs that send frames to the HES headend system.
[0024] The various systems of the IS communicate with each other through a network (not shown on the Fig.1 ), e.g., a private network such as a VPN or the Internet. The HES headend system communicates with the DC 120a, 120b data concentrators via a NET 101 communication network. For example, the NET 101 communication network is the Internet. In other embodiments, the NET 101 communication network is a wireless communication network, for example, GPRS (General Packet Radio Service), UMTS (Universal Mobile Telecommunication System), LTE (Long-Term Evolution), NB-IoT (Narrowband Internet of Things), 2G, 3G, 4G, or 5G.
[0025] Each DC 120a, 120b data hub manages communications with a set of SM smart meters via an LR_NET 102 communication network. The LR_NET 102 communication network is either a PLC (Power Line Communication) network or a wireless network, e.g., a long-range wireless network. Preferably, the LR_NET 102 communication network is a low-power LPWAN (Low-Power Wide Area Network), for example, based on LoRaWAN or NB-IoT technology. In one variant, an SM smart meter can communicate with a DC data hub using two separate networks, e.g., a PLC network and a wireless network.
[0026] Thanks to the LR_NET 102 communication network, the DC 120a data concentrator communicates directly or indirectly (e.g. through smart meters assigned a REL relay role) with the SM 140a, 140b smart meters that are paired with it.
[0027] Thus, the DC data concentrators collect and periodically send, for example once or several times a day, consumption data from the paired SM 140a, 140b smart meters to the SI 110 information system.
[0028] In an alternative embodiment not shown on the Fig.1 , a smart meter SM can communicate directly with the SI 110 without going through a DC.
[0029] In legal metrology, a cyclic redundancy code (CRC) is calculated (CRC32, calculated on 32 bits using a normalized polynomial) during the generation of metrology software. This cyclic redundancy code is integrated into the metrology software. The metrology software is validated and then submitted for certification to obtain MID certification. Once MID certification is obtained, a certification number is transmitted to the Meter Data Management System (MDMS), which then stores in memory, for each MID-certified meter, a CRC code from the metrology software and an MID certification number associated with the serial number of that meter.
[0030] There Fig. 2 schematically illustrates an example of the hardware architecture of a smart meter 200 of the automated management system 100 according to a particular embodiment.
[0031] The smart meter 200 includes, connected by a communication bus 210: a processor or CPU (Central Processing Unit) 201; a RAM (Random Access Memory) 202; a ROM (Read Only Memory) 203, for example a Flash memory; a data storage device, such as a HDD (Hard Disk Drive), or a storage media reader, such as an SD (Secure Digital) card reader 204; at least one I / O input-output interface 205, in particular a communication interface with the LR_NET communication network 102, and where applicable with the NET communication network 101 in the case of direct communication with the IS.
[0032] The processor 201 is capable of executing instructions loaded into RAM 202 from ROM 203, external memory (not shown), storage media such as an SD card, or a communication network (not shown). When the smart counter 200 is powered on, the processor 201 can read instructions from RAM 202 and execute them. These instructions form a computer program that causes the processor 201 to carry out the steps and processes described below in connection with the Fig. 4 .
[0033] All or part of the steps and processes described below in connection with the Fig. 4 It can thus be implemented in software form by executing a set of instructions by a programmable machine, such as a DSP (Digital Signal Processor) or a microcontroller, or in hardware form by a dedicated machine or component (chip) or a dedicated set of components (chipset), such as an FPGA (Field-Programmable Gate Array) or an ASIC (Application-Specific Integrated Circuit). Generally speaking, the 200 smart meter includes electronic circuitry arranged and configured to implement the following steps and processes related to the Fig. 4 .
[0034] There Fig. 3 schematically illustrates an example of hardware architecture of an MDMS 300 meter data management system of the automated management system 100 according to a particular embodiment.
[0035] The MDMS 300 meter data management system includes, connected by a communication bus 310: a processor or CPU (Central Processing Unit) 301; a RAM (Random Access Memory) 302; a ROM (Read Only Memory) 303, for example a Flash memory; a data storage device, such as a HDD (Hard Disk Drive), or a storage media reader, such as an SD (Secure Digital) card reader 304; at least one I / O interface 305 which includes in particular a communication interface with the NET network.
[0036] The processor 301 is capable of executing instructions loaded into RAM 302 from ROM 303, external memory (not shown), storage media such as an SD card, or a communication network (not shown). When the MDMS 300 counter data management system is powered on, the processor 301 can read instructions from RAM 302 and execute them. These instructions form a computer program that causes the processor 301 to implement the steps and processes described below in connection with the Fig. 6 .
[0037] All or part of the steps and processes described below in connection with the Fig. 6 It can thus be implemented in software form by executing a set of instructions by a programmable machine, such as a DSP (Digital Signal Processor) or a microcontroller, or in hardware form by a dedicated machine or component (chip) or a dedicated set of components (chipset), such as an FPGA (Field-Programmable Gate Array) or an ASIC (Application-Specific Integrated Circuit). Generally speaking, the MDMS 300 meter data management system comprises electronic circuitry arranged and configured to implement the steps and processes described below in connection with the Fig. 6 .
[0038] There Fig. 4 illustrates a method for transmitting consumption data, denoted Idx, by a meter according to a particular embodiment not covered by the claims. The consumption data is, for example, an index from an electricity meter, water meter, etc.
[0039] The process starts during an S300 step.
[0040] During an S301 step, the meter obtains consumption data through metrology software.
[0041] During an S302 step, the meter generates a hash from a triplet comprising its serial number, a cyclic redundancy code (CRC) calculated by the meter's metrology software, and a MID certificate number assigned to the meter. This certificate attests that the meter is authorized for consumption billing. A hash function, such as a function from the SHA-2 family, is used for this purpose. A hash function, H(.), is a specific function that, given input data, calculates a digital fingerprint used to quickly identify the original data. In other words, a given triplet corresponds to a unique hash, i.e., the result of the hash function.Therefore, for two different triplets T1 and T2, the counter generates two footprints S1=H(T1) and S2=H(T2) where S1 and S2 are different.
[0042] In one embodiment, the function H(.) is a function from the SHA-2 family, e.g., SHA-224, SHA-256, SHA-384, or SHA-512. If the function H(.) is of type SHA-256, the resulting hash comprises 256 bits. If the function H is of type SHA-512, the resulting hash comprises 512 bits. Other functions can be used, e.g., SHA-3, MD4, MD5, or SHA-1, all well-known in the field of cryptography; these examples are by no means exhaustive.
[0043] In one embodiment, an optional padding step is applied to the triplet to obtain an integer number of bytes before applying the hash function H(.).
[0044] During step S304, the counter encrypts the generated hash with a private key known only to the counter. The encrypted hash is a signature and is denoted HASH'. This private key was previously generated by the counter from its serial number. In a particular embodiment, the private key is generated by applying an "exclusive OR" operator between a random N-bit value specific to the counter and H(serial number), e.g., N=256, where H() is the SHA-256 function used to obtain a 256-bit private key. A public key, known in particular to the KMS key management system, is associated with this private key. The encryption is asymmetric, e.g., elliptic curve or RSA. Asymmetric encryption is a technique that uses two encryption keys: a public key and a private key. The public key is shared without restriction, while the private key is known only to the counter that generated it.The public key associated with the private key of a meter is known to the information system, particularly the KMS key management system. The meter uses its private key to encrypt the hash to obtain a hash signature, which the recipient—in this case, the MDMS meter data management system—can decrypt with the meter's public key, retrieved from the KMS, thus authenticating the meter that sent the frame.
[0045] Using elliptic curve encryption offers a significant advantage in limiting the size of the HASH signature. Indeed, an asymmetric encryption such as RSA uses larger encryption keys, e.g., from 2048 to 8192 bits, than an asymmetric elliptic curve encryption, which uses encryption keys of 256 to 384 bits. The size of the HASH depends on both the size of the HASH itself and the size of the counter's private key. Thus, when both the HASH and the counter's private key are 256 bits, the signature size is reduced. HASH' is 512 bits. When the HASH and the counter's private key are each 384 bits, the size of HASH' is 768 bits.
[0046] During an S306 step, the meter transmits a T frame containing a header and payload data to the MDMS meter data management system. Such a T frame is illustrated by the Fig. 5 The frame is generated according to a communication protocol such as G3-PLC, PRIME, 2G, 3G, 4G, or 5G. The frame header includes, among other things, an identifier of the meter (Id cpt) transmitting the frame and other data, e.g., synchronization and control data required to demodulate the data frame, which depend on the communication protocol used for transmission. The payload data includes the meter's HASH signature and consumption data (Idx). The frame is transmitted according to the selected communication protocol to the meter data management system (MDMS), for example, via a data concentrator as illustrated in the diagram. Fig. 1 .
[0047] The process ends at step S308.
[0048] This method is particularly advantageous because only the consumption data is transmitted in the frame's payload. Indeed, the metrology software's CRC and the MID certificate number are not transmitted. This reduces the network load.
[0049] There Fig. 6 illustrates a method of receiving consumption data from a meter by a meter data management system according to a particular embodiment not covered by the claims.
[0050] The process is implemented within the information system (IS), specifically by the meter data management system (MDMS) of the IS. The MDMS includes non-volatile memory in which the serial numbers of the meters registered with the IS are stored. For each meter, and therefore for each serial number, the MDMS also stores a MID certificate number and a CRC from the metrology software.
[0051] The process starts during an S400 step.
[0052] During an S402 step, the MDMS meter data management system receives the T frame containing in its useful data a HASH signature and a consumption data from the meter and in its header the identifier Id cpt of the meter.
[0053] During an S404 step, the meter data management system (MDMS) decrypts the signature using a public key associated with the meter identified in the frame header by the identifier 'Id cpt'. Specifically, from the meter's identifier 'Id cpt' in the frame header, MDMS retrieves the meter's serial number and then the associated public key. MDMS informs KMS that it wishes to retrieve the public key associated with the meter identified by its serial number and / or the identifier 'Id cpt'. MDMS sends a request to this effect to KMS, which in turn sends back the public key associated with the meter. This public key is used to decrypt the received signature, 'HASH'.
[0054] During step S406, the MDMS generates a "HASH" from the triplet associated with the meter identified by Id cpt. This triplet includes the serial number, the metrology software CRC, and the MID certificate number associated with the meter identified by Id cpt. This data is stored in the MDMS's non-volatile memory. In other words, the MDMS performs the same operation as the meter in step S302 with the data—i.e., serial number, metrology software CRC, and MID certificate number—that it has available for the meter identified by Id cpt. Specifically, the MDMS uses the same HASH function in step S406 as it did in step S302.
[0055] During step S408, the MDMS compares the HASH fingerprint generated in step S406 with the fingerprint resulting from the HASH signature decrypted in step S404. If they are equal, the process continues to step S412. This is because, in the event of a tie, the MDMS is certain that the consumption data in the T-frame payload originates from the correct meter—that is, the meter that supposedly sent the consumption data—and that this consumption data was obtained using a correct version of the metering software. If they are still unequal, the process continues to step S410.
[0056] At step S410, the MDMS sends an alarm signal to the SI 110 information system to indicate that the received consumption data is problematic either because it does not come from the meter from which it is supposed to come, or because the metrology software used to obtain the consumption data is not correct, e.g., it is a bad version of the metrology software.
[0057] The process ends at step S412.
[0058] The processes described with reference to Figs 4 And 6These procedures apply when new metrology software is downloaded to a meter. When new metrology software is downloaded to a meter, the private and public keys are retained. Alternatively, these keys are renewed. In the latter case, to provide the new public key to the information system, the new public key is signed with the new private key, and the entire set is then re-signed with the old private key to certify that the new public key originates from the correct meter. The new public key is then transmitted in clear text to the meter management system.
[0059] With further reference to the Fig. 1 , let us consider that the 140a meter implements the process described in reference to the Fig. 4 Thus, counter 140a generates a T frame
[0060] The 140a meter includes in its payload an electricity consumption data and a signature obtained by implementing steps S302 and S304. It then transmits its frame, for example over the electrical network, via power line carrier to the DC 120a data concentrator. The generated frame conforms, for example, to the G3-PLC or PRIME communication protocol.
[0061] The DC 120a data concentrator receives the T frame and retransmits it on the 101 NET communication network, e.g. a GPRS cellular network, to the SI 110 information system, more specifically to the HES of the SI 110 information system. For this purpose, the data contained in the received T frame is retrieved to be decapsulated and then recaptured in a frame compatible with the 101 NET communication network.
[0062] The HES of the SI which is at the head of the network receives the T frame and transmits it to the MDMS.
[0063] MDMS retrieves from KMS the public key necessary to verify the signature contained in the payload of frame "A".
[0064] There Fig. 7 This illustrates a method for transmitting consumption data, denoted Idx, by a meter according to a particular embodiment. The consumption data is, for example, an index from an electricity meter, water meter, etc.
[0065] The process starts during an S700 step.
[0066] During an S702 step, the meter generates a hash from a set of four elements comprising its serial number, a cyclic redundancy code (CRC) calculated by the meter's metrology software, a MID certificate number assigned to the meter, and the consumption data (Idx). This certificate attests that the meter is authorized for use in consumption billing. A hash function, such as a function from the SHA-2 family, is used for this purpose. A hash function, H(.), is a specific function that, given input data, calculates a digital fingerprint used to quickly identify the original data. In other words, a given set of four elements corresponds to a unique hash, i.e., the result of the hash function.Therefore, for two different quadruplets T1 and T2, the counter generates two footprints S1=H(T1) and S2=H(T2) where S1 and S2 are different.
[0067] In one embodiment, the function H(.) is a function from the SHA-2 family, e.g., SHA-224, SHA-256, SHA-384, or SHA-512. If the function H(.) is of type SHA-256, the resulting hash comprises 256 bits. If the function H is of type SHA-512, the resulting hash comprises 512 bits. Other functions can be used, e.g., SHA-3, MD4, MD5, or SHA-1, all well-known in the field of cryptography; these examples are by no means exhaustive.
[0068] In one embodiment, an optional padding step is applied to the quadruplet to obtain an integer number of bytes before applying the hash function H(.).
[0069] During step S704, the counter encrypts the generated hash with a private key known only to the counter. The encrypted hash is a signature and is denoted HASH'. This private key was previously generated by the counter from its serial number. In a particular embodiment, the private key is generated by applying an "exclusive OR" operator between a random N-bit value specific to the counter and H(serial number), e.g., N=256, where H() is the SHA-256 function used to obtain a 256-bit private key. A public key, known in particular to the KMS key management system, is associated with this private key. The encryption is asymmetric, e.g., elliptic curve or RSA. Asymmetric encryption is a technique that uses two encryption keys: a public key and a private key. The public key is shared without restriction, while the private key is known only to the counter that generated it.The public key associated with the private key of a meter is known to the information system, particularly the KMS key management system. The meter uses its private key to encrypt the hash to obtain a hash signature, which the recipient—in this case, the MDMS meter data management system—can decrypt with the meter's public key, retrieved from the KMS, thus authenticating the meter that sent the frame.
[0070] Using elliptic curve encryption offers a significant advantage in limiting the size of the HASH signature. Indeed, an asymmetric encryption such as RSA uses larger encryption keys, e.g., from 2048 to 8192 bits, than an asymmetric elliptic curve encryption, which uses encryption keys of 256 to 384 bits. The size of the HASH depends on both the size of the HASH itself and the size of the counter's private key. Thus, when both the HASH and the counter's private key are 256 bits, the signature size is reduced. HASH' is 512 bits. When the HASH and the counter's private key are each 384 bits, the size of HASH' is 768 bits. During an S706 step, the meter transmits a T frame containing a header and payload data to the MDMS meter data management system. Such a T frame is illustrated by the Fig. 5 The frame is generated according to a communication protocol such as G3-PLC, PRIME, 2G, 3G, 4G, or 5G. The frame header includes, among other things, an identifier of the meter (Id cpt) transmitting the frame and other data, e.g., synchronization and control data required to demodulate the data frame, which depend on the communication protocol used for transmission. The payload data includes the meter's HASH signature and consumption data (Idx). The frame is transmitted according to the selected communication protocol to the meter data management system (MDMS), for example, via a data concentrator as illustrated in the diagram. Fig. 1 .
[0071] The process ends at step S708. Thus, in this embodiment, the consumption data, in addition to being transmitted, is used to generate the HASH signature.
[0072] This method is particularly advantageous because only the consumption data is transmitted in the frame's payload. Indeed, the metrology software's CRC and the MID certificate number are not transmitted. This reduces the network load.
[0073] There Fig. 8 This illustrates a method for receiving consumption data from a meter by a meter data management system according to a specific embodiment. The method is implemented within the information system (IS), more specifically by the MDMS meter data management system. The MDMS meter data management system includes, among other things, non-volatile memory in which the serial numbers of the meters registered with the IS are stored. For each meter, and therefore for each serial number, the MDMS meter data management system also stores a MID certificate number and a CRC from the metrology software.
[0074] The process starts during an S800 step.
[0075] During an S802 step, the MDMS meter data management system receives the T frame containing in its payload a HASH signature and meter consumption data and in its header the meter ID cpt identifier.
[0076] During an S804 step, the meter data management system (MDMS) decrypts the signature using a public key associated with the meter identified in the frame header by the identifier 'Id cpt'. Specifically, from the meter's identifier 'Id cpt' in the frame header, MDMS retrieves the meter's serial number and then the associated public key. MDMS informs KMS that it wishes to retrieve the public key associated with the meter identified by its serial number and / or the identifier 'Id cpt'. MDMS sends a request to this effect to KMS, which in turn sends back the public key associated with the meter. This public key is used to decrypt the received signature, 'HASH'.
[0077] During step S806, the MDMS generates a "HASH" from the quadruple associated with the meter identified by Id cpt. This quadruple includes the meter's serial number, the metrology software's CRC, the MID certificate number associated with the meter identified by Id cpt, and the meter's consumption data from the frame received by the MDMS. This data is stored in the MDMS's non-volatile memory. In other words, the MDMS performs the same operation as the meter in step S702 with the data—i.e., serial number, metrology software CRC, consumption data Idx, and MID certificate number—that it has available for the meter identified by Id cpt. Specifically, in step S806, the MDMS uses the same HASH function as in step S702.
[0078] During step S808, the MDMS compares the HASH fingerprint generated in step S806 with the fingerprint resulting from the HASH signature decrypted in step S804. If they are equal, the process continues to step S812. Indeed, in the event of a tie, the MDMS is certain that the consumption data present in the T-frame payload does indeed originate from the certified software of the correct meter, i.e., the meter supposed to have sent said consumption data, and that, moreover, this consumption data was obtained by a correct version of the metrology software. In the event of a discrepancy, the process continues to step S810. At step S810, the MDMS sends an alarm signal to the SI 110 information system to indicate that the received consumption data is problematic, either because it does not originate from the meter from which it is supposed to come, or because the metrology software used to obtain the consumption data is incorrect, e.g.that it is a faulty version of the metrology software.
[0079] The process ends at step S812.
[0080] The processes described with reference to Figs 7 And 8 These procedures apply when new metrology software is downloaded to a meter. When new metrology software is downloaded to a meter, the private and public keys are retained. Alternatively, these keys are renewed. In the latter case, to provide the new public key to the information system, the new public key is signed with the new private key, and the entire set is then re-signed with the old private key to certify that the new public key originates from the correct meter. The new public key is then transmitted in clear text to the meter management system.
[0081] With further reference to the Fig. 1 , let us consider that the 140a meter implements the process described in reference to the Fig. 7Thus, the 140a meter generates a T frame containing in its payload an electricity consumption data and a signature obtained by implementing steps S702 and S704. The 140a meter then transmits its frame, for example over the electrical network, via power line communication to the DC 120a data concentrator. The generated frame conforms, for example, to the G3-PLC or PRIME communication protocol.
[0082] The DC 120a data concentrator receives the T frame and retransmits it on the 101 NET communication network, e.g. a GPRS cellular network, to the SI 110 information system, more specifically to the HES of the SI 110 information system. For this purpose, the data contained in the received T frame is retrieved to be decapsulated and then recaptured in a frame compatible with the 101 NET communication network.
[0083] The HES of the SI which is at the head of the network receives the T frame and transmits it to the MDMS.
[0084] MDMS retrieves from KMS the public key necessary to verify the signature contained in the payload of frame "A".
Claims
1. A method for transmitting consumption data by a meter intended for a meter data management system, comprising the following steps performed by said meter: - obtaining (S301) consumption data, said data being obtained by metrology software; - generating (S302) a hashcode from a quadruplet comprising said consumption data obtained and a triplet comprising a serial number of said meter, a cyclic redundancy code calculated from said metrology software and a certificate number certifying that said meter is authorised to be used for invoicing consumption; - encrypting (S304) said hashcode with a private key known solely to the meter, said encrypted hashcode being a signature; and - transmitting (S306), to the system managing said consumption data, a frame comprising an identifier of said meter, said consumption data obtained and said signature.
2. The transmission method according to claim 1, wherein generating a hashcode comprises applying a hash function to said quadruplet.
3. The transmission method according to claim 1, wherein the hash function belongs to the set of hash functions comprising: - SHA-224 of the family SHA-3 ; - SHA-256 of the family SHA-3 ; - SHA-384 of the family SHA-3 ; - SHA-512 of the family SHA-3 ; - SHA-224 of the family SHA-2 ; - SHA-256 of the family SHA-2 ; - SHA-384 of the family SHA-2 ; - SHA-512 of the family SHA-2 ; - MD-4 ; - MD-5 ; and - SHA-1.
4. The transmission method according to one of claims 1 to 3, wherein encrypting said hashcode with a private key known solely to the meter comprises applying an elliptic curve asymmetric encryption.
5. The transmission method according to one of claims 1 to 4, wherein said consumption data are data on consumption of electricity, gas, petrol, thermal energy or water.
6. A method for receiving consumption data by a system for managing said consumption data, said system for managing said consumption data storing in memory, for each meter in a set of meters, a triplet comprising a serial number of said meter, a cyclic redundancy code of metrology software and an associated certificate number certifying that said meter is authorised to be used for invoicing consumption, said method comprising the following steps performed by said system for managing said consumption data: - receiving (S402) a frame comprising an identifier of a meter, consumption data and a signature; - decrypting (S404) said signature with a public key associated with the meter identified by said identifier; - generating (S406) a hashcode from a quadruplet comprising said triplet and said consumption data received, said triplet being associated in said memory with said meter identified by said identifier; - comparing (S408) said decrypted signature and said generated hashcode and, in the case of inequality, sending an alarm signal.
7. A method for transmitting consumption data by a meter intended for a system for managing said consumption data, said system for managing said consumption data storing in memory, for each meter in a set of meters, a triplet comprising a serial number of said meter, a cyclic redundancy code of metrology software and an associated certificate number certifying that said meter is authorised to be used for invoicing consumption, said method comprising the following steps performed by said meter: - obtaining (S301) consumption data, said data being obtained by metrology software; - generating (S302) a hashcode from a quadruplet comprising said consumption data obtained and from said triplet comprising a serial number of said meter, a cyclic redundancy code calculated from said metrology software and a certificate number certifying that said meter is authorised to be used for invoicing consumption; - encrypting (S304) said hashcode with a private key known solely to the meter, said encrypted hashcode being a signature; and - transmitting (S306), to the system managing said consumption data, a frame comprising an identifier of said meter, said consumption data obtained and said signature, said method further comprises the following steps performed by said system for managing said consumption data: - receiving (S402) said frame; - decrypting (S404) said signature with a public key associated with the meter identified by said identifier; - generating (S406) a hashcode from a quadruplet comprising said triplet and said consumption data received, said triplet being associated in said memory with said meter identified by said identifier; - comparing (S408) said decrypted signature and said generated hashcode and, in the case of inequality, sending an alarm signal.
8. A meter configured to transmit consumption data to a system for managing said consumption data, comprising: - means for obtaining consumption data, said data being obtained by metrology software; - means for generating a hashcode from a quadruplet comprising said consumption data received and a triplet comprising a serial number of said meter, a cyclic redundancy code calculated from said metrology software and a certificate number certifying that said meter is authorised to be used for invoicing consumption; - means for encrypting said hashcode with a private key known solely to the meter, said encrypted hashcode being a signature; and - mean for transmitting, to the system managing said consumption data, a frame comprising an identifier of said meter, said consumption data obtained and said signature.
9. A system for managing data from meters storing in memory, for each meter in a set of meters, a triplet comprising a serial number of said meter, a cyclic redundancy code of metrology software and an associated certificate number certifying that said meter is authorised to be used for invoicing consumption, said meter data management system comprising: - means for receiving a frame comprising an identifier of a meter, consumption data and a signature; - means for decrypting said signature with a public key associated with the meter identified by said identifier; - means for generating a hashcode from a quadruplet comprising said triplet and said consumption data received, said triplet being associated in said memory with said meter identified by said identifier; - means for comparing said decrypted signature and said generated hashcode and, in the case of inequality, sending an alarm signal.
10. An automated management system configured to make a remote collection of consumption data, said automated management system comprising at least one meter according to claim 8 and a meter data management system according to claim 9.
11. A computer program product comprising instructions for implementing the transmission method according to any one of claims 1 to 5 or the reception method according to claim 6, when said program is executed by a processor.
12. A storage medium storing a computer program comprising instructions for implementing the transmission method according to any one of claims 1 to 5 or the reception method according to claim 6, when said program is executed by a processor.