METHOD FOR DETERMINING A STATISTIC VALUE ON DATA BASED ON ENCRYPTED DATA

Information

  • Patent Application
  • 20150154422
  • Publication Number
    20150154422
  • Date Filed
    November 29, 2014
    9 years ago
  • Date Published
    June 04, 2015
    9 years ago
Abstract
In one embodiment, it is proposed a method for determining a statistic value, for a given time period t, on a set of n≧2 of plaintext data {xi,t}1≦i≦n with xi,tεp, p being a primer number, only based on a set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n, where E is an encryption method and ski an encryption key, without having access to all elements of the set of corresponding encryption key {ski}1≦i≦n. The method is implemented by an electronic device and is remarkable in that it comprises: obtaining said given time period t, and said set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n for which Eski(xi,t,t)=ƒ(xi,t) Πj=1k+1Hj(t)sj,i where functions H1, . . . , Hk+1:→ are hash functions, is a group of prime order q, k≧1 and said encryption key ski={sj,i}1≦j≦k+1 which comprises (k+1) random elements in /q, and ƒ is a function defined according to said statistic value, and having for codomain said group ;obtaining an aggregator private key sk0={sj,0}1≦j≦k+1={−Σi=1nsj,i mod q}1≦j≦k+1;determining said statistic value based on sk0 and said set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n.
Description
FIELD OF THE DISCLOSURE

The disclosure relates to cryptography, and more specifically to the determination of aggregate data statistics for time-series data.


BACKGROUND

This section is intended to introduce the reader to various aspects of art, which may be related to various aspects of the present invention that are described and/or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present invention. Accordingly, it should be understood that these statements are to be read in this light, and not as admissions of prior art.


Generally, data aggregator systems enable to collect information/data associated to users and then perform some data mining operations on these data in order to obtain relevant information (such as statistics of views of a film for example in the case the data aggregator system is a service provider). However, in the case where the users don't trust the data aggregator and therefore do not want the data aggregator to obtain specific information (i.e. guarantee the privacy of these data), the following issue has to be overcome: “How can an untrusted data aggregator system obtain some statistics, for a given period, based on the exploitation of encrypted data without having access to users′decryption keys?”


Such issue is solved by a technique called an aggregator oblivious encryption scheme described in the article: “Privacy-Preserving Aggregation of Time Series Data”, by Shi et al. and published at the conference NDSS 2011, as well as in the patent document EP 2 485 430. Indeed, such a scheme enables n users/participants (n≧1) to provide encrypted data on which the untrusted data aggregator is able to determine the sum or the mean of the unencrypted data without decrypting individual inputs (instead of the mean, it could also be possible to determine the variance; in that case, users have to encrypt the square of the plaintexts). Such scheme has a formal security proof in view of a security game depicted in said article, assuming that the Decisional Diffie Hellman problem is hard in the group in which computation are performed. However, such security proof has a degradation factor in O(Tn3) as mentioned in the article “A Scalable Scheme for Privacy Preserving Aggregation of Time Series Data” by M. Joye et al., published in the proceedings of the conference FC 2013. In this article, the authors proposed a technique based on another security assumption (the composite residuosity assumption instead of the DDH assumption) in order to get rid of the in O(n3) degradation factor in the security proof. But, it is still an open problem to obtain an aggregator oblivious encryption scheme which relies on the DDH assumption (or a weaker assumption such as the Decision Linear assumption, or also, more generally, the k decision linear problem) and that has a security proof without a degradation factor in O(Tn3). The present disclosure provides a solution that fulfill these requirements.


SUMMARY OF THE DISCLOSURE

The present disclosure is directed to a method for determining a statistic value, for a given time period t, on a set of n≧2 of plaintext data {xi,t}1≦i≦n with xi,tεcustom-character, p being a primer number, only based on a set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n, where E is an encryption method and ski an encryption key, without having access to all elements of the set of corresponding encryption key {ski}1≦i≦n. The method is implemented by an electronic device and is remarkable in that it comprises:

    • a step of obtaining said given time period t, and said set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n for which Eski(xi,t,t)=ƒ(xi,tj=1k+1Hj(t)sj,i where functions H1, . . . , Hk+1:custom-charactercustom-character are hash functions, custom-character is a group of prime order q, k≧1 and said encryption key ski={sj,i}1≦j≦k+1 which comprises (k+1) random elements in custom-character/qcustom-character, and ƒ is a function defined according to said statistic value, and having for codomain said group custom-character;
    • a step of obtaining an aggregator private key sk0={sj,0}1≦j≦k+1={−Σi=1nsj,i mod q}1≦j≦k+1;
    • a step of determining said statistic value based on sk0 and said set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n.


Such method is secure in the random oracle model under the Decision Diffie-Hellman (DDH) assumption. Moreover, for such method, the gap between the adversary's advantage and the reduction's success probability does not depend on the number n of users whatsoever, contrary to the technique introduced by Shi et al. previously mentioned. At last, such method is compatible with the use of elliptic curve subgroups so as to obtain shorter keys and ciphertexts.


The term “obtaining a value” means either computing the value or receiving the value from another device, or from a unit of said electronic device.


In a preferred embodiment, such method is used with k=1.


In a preferred embodiment, the method is remarkable in that said function ƒ is a function defined by an equation ƒ(x)=xn, where n is a real number, and said group custom-character corresponds to custom-characterp.


In a preferred embodiment, the method is remarkable in that said function ƒ is a function defined by an equation







f


(
x
)


=

g

x

n








where gεcustom-character is a random generator of said group custom-character, and n′ is a natural number.


In a preferred embodiment, the method is remarkable in that n′ is equal to one, and said statistic value corresponds to a sum of plaintexts associated to encrypted data, and in that said step of determining said statistic value comprises:

    • a step of obtaining Vt:=Πj=1k+1Hj(t)sj,0·Πi=1nci,t=gXt;
    • a step of determining the discrete logarithm of Vt with regards to basis g.


In a preferred embodiment, the step of determining the discrete logarithm of Vt comprises a step of executing a Pollard's kangaroo algorithm.


In another embodiment, the step of determining the discrete logarithm of Vt comprises a step of executing an index calculus algorithm.


In another embodiment, the step of determining the discrete logarithm of Vt comprises a step of executing a Pohlig-Hellman algorithm.


In a preferred embodiment, said plaintext data {xi,t}1≦i≦n correspond to data provided by a device belonging to a smart grid.


In another embodiment, said plaintext data {xi,t}1≦i≦n correspond to rating on films, or advertisements. In another embodiment, said plaintext data {xi,t}1≦i≦n correspond to metadata associated with images, films or sounds. These metadata corresponds to a response of a questionnaire on the content they are associated with. In another embodiment, said plaintext data {xi,t}1≦i≦n correspond to data obtained by smart meters (such as the ones used for measuring an electricity consumption, or a gas consumption or a water consumption).


According to an exemplary implementation, the different steps of the method are implemented by a computer software program or programs, this software program comprising software instructions designed to be executed by a data processor of a relay module according to the disclosure and being designed to control the execution of the different steps of this method.


Consequently, an aspect of the disclosure also concerns a program liable to be executed by a computer or by a data processor, this program comprising instructions to command the execution of the steps of a method as mentioned here above.


This program can use any programming language whatsoever and be in the form of a source code, object code or code that is intermediate between source code and object code, such as in a partially compiled form or in any other desirable form.


The disclosure also concerns an information medium readable by a data processor and comprising instructions of a program as mentioned here above.


The information medium can be any entity or device capable of storing the program. For example, the medium can comprise a storage means such as a ROM (which stands for “Read Only Memory”), for example a CD-ROM (which stands for “Compact Disc-Read Only Memory”) or a microelectronic circuit ROM or again a magnetic recording means, for example a floppy disk or a hard disk drive.


Furthermore, the information medium may be a transmissible carrier such as an electrical or optical signal that can be conveyed through an electrical or optical cable, by radio or by other means. The program can be especially downloaded into an Internet-type network.


Alternately, the information medium can be an integrated circuit into which the program is incorporated, the circuit being adapted to executing or being used in the execution of the method in question.


According to one embodiment, an embodiment of the disclosure is implemented by means of software and/or hardware components. From this viewpoint, the term “module” can correspond in this document both to a software component and to a hardware component or to a set of hardware and software components.


A software component corresponds to one or more computer programs, one or more sub-programs of a program, or more generally to any element of a program or a software program capable of implementing a function or a set of functions according to what is described here below for the module concerned. One such software component is executed by a data processor of a physical entity (terminal, server, etc.) and is capable of accessing the hardware resources of this physical entity (memories, recording media, communications buses, input/output electronic boards, user interfaces, etc.).


Similarly, a hardware component corresponds to any element of a hardware unit capable of implementing a function or a set of functions according to what is described here below for the module concerned. It may be a programmable hardware component or a component with an integrated circuit for the execution of software, for example an integrated circuit, a smart card, a memory card, an electronic board for executing firmware etc.


In another embodiment, it is proposed an electronic device comprising means for determining a statistic value, for a given time period t, on a set of n≧2 of plaintext data {xi,t}1≦i≦n with xi,tεcustom-characterp, p being a primer number, only based on a set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n, where E is an encryption method and ski an encryption key, without having access to all elements of the set of corresponding encryption key {Ski}1≦i≦n. The electronic device is remarkable in that it comprises:

    • means for obtaining said given time period t, and said set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n for which Eski(xi,t,t)=ƒ(xi,tj=1k+1Hj(s)sj,i where functions H1, . . . , Hk+1:custom-charactercustom-character are hash functions, custom-character is a group of prime order q, k≧1 and said encryption key ski={sj,i}1≦j≦k+1 which comprises (k+1) random elements in custom-character/qcustom-character, and ƒ is a function defined according to said statistic value, and having for codomain said group custom-character;
    • means for obtaining an aggregator private key sk0={sj,0}1≦j≦k+1={−Σi=1nsj,i mod q}1≦j≦k+1;
    • means for determining said statistic value based on sk0 and said set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n.


In another embodiment, the electronic device uses an element k=1.


In another embodiment, the electronic device is remarkable in that said function ƒ is a function defined by an equation ƒ(x)=xn, where n is a real number, and said group custom-character corresponds to custom-characterp.


In another embodiment, the electronic device is remarkable in that said function ƒ is a function defined by an equation







f


(
x
)


=

g

x

n








where gεcustom-character is a random generator of said group custom-character, and n′ is a natural number.


In another embodiment, the electronic device is remarkable in that n′ is equal to one, and said statistic value corresponds to a sum of plaintexts associated to encrypted data, and in that said means for determining said statistic value comprise:

    • means for obtaining Vt:=Πj=1k+1Hj(t)sj,0·Πi=1n ci,t=gXt;
    • means for determining the discrete logarithm of Vt with regards to basis g.


In another embodiment, each previous mentioned means correspond to a module configured to perform the same operation. In another embodiment, a module can perform one or several operations.





BRIEF DESCRIPTION OF THE FIGURES

The above and other aspects of the invention will become more apparent by the following detailed description of exemplary embodiments thereof with reference to the attached drawings in which:



FIGS. 1(
a)-(c) present the main functions of an Aggregator-Oblivious Encryption scheme according to one embodiment of the invention;



FIG. 2 presents an electronic device that can be used to perform one or several steps of the methods disclosed in the present document.





DETAILED DESCRIPTION


FIGS. 1(
a)-(c) present the main functions of an aggregator-oblivious encryption scheme according to one embodiment of the invention.


Before describing these figures, and clarifying the scope of the present disclosure, some reminders for the reader should be done on aggregator-oblivious encryption scheme and also the corresponding security notion. We refer the reader to the article of Shi et al previously mentioned for further introductory background. It should be noted that aggregator-oblivious encryption scheme can be applied in the context of use of smart meters (such as the ones used for measuring an electricity consumption, or a gas consumption or a water consumption). In such case, a value to be encrypted by such aggregator-oblivious encryption scheme correspond to a measured data. For one skilled in the art, an Aggregator-Oblivious Encryption (AOE) scheme is a tuple of algorithms, (Setup; Enc; AggrDec), defined as:


Setup(1κ): Given a security parameter κ, a trusted dealer generates the system parameters param, the aggregator's private key sk0, and the private key ski for each user i (1≦i≦n);


Enc(param, ski, t, xi,t): At time period t, user i encrypts a value xi,t using his private key encryption key ski to get ci,t=Enc(param, ski, xi,t).


AggrDec(param, sk0, t, c1,t, . . . , cn,t): At time period t, the aggregator using sk0 obtains Xti=1n xi,t as Xt=AggrDec(param, sk0, t, c1,t, . . . , cn,t)


Basically, the security notion of aggregator obliviousness (AO) requires that the aggregator cannot learn, for each time period, anything more than the aggregate value Xt from the encrypted values of n (honest) users. If there are corrupted users (i.e. users sharing their private information with the aggregator), the notion only requires that the aggregator gets no extra information about the values of the honest users beyond their aggregate value. Furthermore, it is assumed that each user encrypts only one value per time period. More formally, AO is defined by the following game between a challenger and an attacker.


Setup The challenger runs the Setup(1κ) algorithm and gives param to the attacker.


Queries In a first phase, the attacker can submit queries that are answered by the challenger.


The attacker can make two types of queries:


1. Encryption queries: The attacker submits (i,t,xi,t) for a pair (i,t) and gets back the encryption of xi,t under key ski for a time period t;


2. Compromise queries: The attacker submits i and receives the private key ski of user i; if i=0, the attacker receives the private key of the aggregator.


Challenge In a second phase, the attacker chooses a time period t*. The attacker also chooses a subset S*{1, . . . , n} and two different series of triples






custom-character(i,t*,xi,t(0))custom-characteriεS* and custom-character(i,t*,xi,t*(1))custom-characteriεS*.


that are given to the challenger.


The challenger chooses at random a bit bε{0,1} and returns the encryption of custom-characterxi,t*(b)custom-characteriεS* to the attacker.


More queries: The attacker can make more encryption and compromise queries. Let U*{1, . . . , n} be the whole set of users for which, at the end of the game, no encryption queries have been made on time period t*and no compromise queries have been made. If the aggregator capability sk0 is compromised at the end of the game and S*=U*, it is required that ΣiεS*xi,t*(0)iεS*xi,t*(1)


Outcome At the end of the game, the attacker outputs a bit b′ and wins the game if and only if b′=b. As usual, A's advantage is defined to be







0



Adv

A





O




(
A
)



:=





Pr


(

b
=

b



)


-

1
2






1
/
2






It should be noted that in the “More queries” phase, since S*U*, the attacker cannot submit an encryption query (i,t*,.) with iεS*or a compromise query i with iεS*.


So, the following definition concerning the security of an AO can be established: an encryption scheme is said to meet the AO security notion if no probabilistic polynomial-time attacker can guess correctly in the above game the bit b with a probability non-negligibly better (in the security parameter) than ½. The probability is taken over the random coins of the game according to the distribution induced by Setup and over the random coins of the attacker.


We also remind the reader with the different algorithm assumptions on which the present disclosure relies on.


We consider a group custom-character of prime order p>2λ where λ is the security parameter, over which the discrete logarithm problem is presumably hard. In these groups, we rely on the following hardness assumptions.


In a group custom-character, the Decision Diffie Hellman (DDH) problem is to distinguish the distributions (g,ga,gb,gabcustom-character4 and (g,ga,gb,gzcustom-character4, with






a
,

b



R




p
*






and





z




R




p
*

.






It is known that the DDH fails to hold in certain groups: examples include groups over which a bilinear map is efficiently computable. In these groups, it is common to rely on the Decision Linear assumption, which is believed to be strictly weaker than DDH. While DDH amounts to deciding whether two vectors of dimension two (g,ga) and (gb,gc) are linearly dependent (which is the case when c=ab), the Decision Linear problem consists in solving the same problem for vectors of dimension three: given (ga,1,g)(1,gb,g) and (gac,gbd,gz), the problem is to decide if z=c+d.


The Decision Linear Problem (DLIN) in G, is to distinguish the distributions (ga,gb,gac,gbd,gc+dcustom-character5 and (ga,gb,gac,gbd,gzcustom-character5, with






a
,
b
,
c
,

d



R




p
*






and





z




R




p
*

.






The DLIN assumption can be further weakened by increasing the dimension of the vectors. As pointed out in the article “Cramer-Shoup Encryption Scheme from the Linear Assumption and from Progressively Weaker Linear Variants.” by H. Shacham, available on the Cryptology ePrint Archive (report 2007/074), and in the article “Secure Hybrid Encryption from Weakened Key Encapsulation” by D. Hofheinz et al., published in the proceedings of the conference Crypto'07, for k>1, the k-linear assumption seems to hold (at least in the generic group model), even in the presence of an oracle that solves the (k−1)-linear problem.


The k-Linear Problem (k-LIN) in custom-character, is given group elements g1, . . . , gk, gεR custom-character and a vector {right arrow over (g)}k+1εcustom-characterk+1, to decide whether {right arrow over (g)}k+1εspan({right arrow over (g)}1, . . . , {right arrow over (g)}k) or {right arrow over (g)}k+1εcustom-characterk+1 where, for each iε{1, . . . , k}, {right arrow over (g)}i=(custom-character, . . . , custom-character, gi, custom-character, . . . , custom-character,g)=(gi{right arrow over (e)}i|g)εcustom-characterk+1 and {right arrow over (e)}i=(0, . . . , 0, 1, 0, . . . , 0) stands for the i-th unit vector of dimension k.


The 1-linear assumption corresponds to the DDH assumption while the 2-linear assumption is the DLIN assumption.


At last, for reminders, we detail the Aggregator-Oblivious Encryption (AOE) scheme that was proposed by Shi and al, in the previously mentioned paper that meets the AO security notion under the DDH assumption, in the random oracle model.


Setup(1κ): Let a group custom-character of prime order q for which the DDH assumption holds, an let a random generator gεcustom-character. Let also a hash function H:custom-charactercustom-character viewed as a random oracle. Finally, let n random elements in custom-character/qcustom-character, s1, . . . , sn and defines s0=−Σi=1nsi mod q.


Param={(custom-character,g,H}; the aggregator's private key is s0 and user I's private key is ski=si, (for each user i (1≦i≦n));


Enc(param, ski,t,xi,t): At time period t, user i encrypts a value xi,tεcustom-character/qcustom-character using his private key encryption key ski to get ci,t=gxi,tH(t)si.


AggrDec(param, sk0,t,c1,t, . . . , cn,t): At time period t, the aggregator using sk0 obtains Xti=1nxi,t by first computing Vt:=H(t)s0Πi=1nci,t=gXt, and next the discrete logarithm of Vt w.r.t. basis g.


It should be noted that, since g has order a, note that the so-obtained value for Xt is defined modulo q.


However, as already mentioned, the security reduction of the AOE scheme proposed by Shi et al. is very loose as, if the scheme is set up for n users, there is a multiplicative gap of O(Tn3) between the adversary's advantage and the reduction's probability to solve the DDH problem.


Let's describe the FIGS. 1(a)-(c) which discloses an AOE scheme which does not have such multiplicative gap of O(Tn3), and that relies on the k-LIN assumption.


The function Setup(1κ), referenced 101, takes as input a security parameter κ as well as an integer k≧1. Let a group custom-character of prime order q for which the k-LIN assumption holds, an let a random generator gεcustom-character. Let also hash functions H1, . . . , Hk+1:custom-charactercustom-character that will be viewed as random oracles in the security analysis. Finally, let (k+1)n random elements in custom-character/qcustom-character, {sj,1, . . . , sj,n}jε{1, . . . , k+1}, and define sj,0=−Σi=1nsj,i mod for each jε{1, . . . , k+1}.


The function 101 outputs the following elements: Param={(q,custom-character,g,(Hj)j=1k+1}; and the private keys ski={sj,i}1≦j≦k+1, (i(0≦i≦n)) that are then securely transmitted.


The function Enc(param, ski,t,xi,t), referenced 102, enables, for a given time period t, a user i to encrypt a value xi,tεcustom-character/qcustom-character using his private key ski to get ci,t=gsi,tΠj=1k+1Hj(t)sj,i.


The function AggrDec(param, sk0,t,c1,t, . . . , cn,t), referenced 103, enables, for a given time period t, an aggregator, using its private key sk0, to obtain the following value Xti=1nxi,t by first computing Vt:=Πj=1k+1Hj(t)sj,0·Πi=1n ci,t=gXt, and next computing the discrete logarithm of Vt with regards to the basis g.


It should be noted that since g has order q, the so-obtained value for Xt is defined modulo q. It should be also noted that such scheme supports only polynomial-sized plaintext spaces for computing sums. In applications like power consumption measurements, Xt is likely to fit within 30 bits, in which case the discrete logarithm computation is fairly fast.


For known groups satisfying Shi et al.'s setting (i.e., prime-order DDH groups), the most appropriate method is Pollard's λ algorithm (or variants thereof described in the article “Computing Small Discrete Logarithms Faster”, by D. Bernstein et al., published in the Cryptology Sprint Archive (report 2012/458)) and requires that the range of Xt is small.


In another embodiment, instead of the sum, a statistic related to a product can be obtained. In such case, instead of obtaining the following value ci,t=gxi,tΠj=1k+1Hj(t)sj,i in the function 102, the following value is obtained ci,t=xi,tΠj=1k+1Hj(t)sj,i. In such case, the scheme does not have a restriction of the size of the data xi,t as the one where the value gxi,t must be computed.


The security of the following scheme can be proven under the k-LIN assumption in the random oracle model (i.e., the scheme provides AO security under the k-LIN assumption in the random oracle model). Namely, for any probabilistic polynomial-time adversary A, there exists a k-LIN distinguisher B with comparable running time and such that:





AdvAO(A)≦e·(qenc+1)Advk-LIN(B)


where e is the base for the natural logarithm and qenc denotes the number of encryption queries made for distinct periods other than t*.


We remark that, if Tεcustom-character denotes the maximal number of time periods, we always have qenc≦T−1 (namely, queries made by distinct users during the same period are only counted once) so that the tightness of the reduction does not depend on the number of users n.


At last, increasing the value of k allows relying on a seemingly weaker assumption (since the k-linear assumption with k>1 is believed to resist in groups equipped with a DDH distinguisher) without increasing the length of ciphertexts: only the size of private keys and the number of exponentiations are affected by k.


When k=1, this embodiment of the invention can be written as follows:


Setup(1κ): Let a group custom-character of prime order q for which the DDH assumption holds, an let a random generator gεcustom-character. Let also two hash functions H1: custom-charactercustom-character and H2:custom-charactercustom-character that will be viewed as random oracles in the security analysis. Finally, let 2n random elements in custom-character/qcustom-character, s1, . . . , sn, t1, . . . , tn and defines s0=−Σi=1nsi mod q as well as t0=−Σi=1nti mod q.


Param={(q,custom-character,g,Ht,H2}; the aggregator's private key corresponds to (s0,t0), whereas the private key of user i is ski=(si,ti), (for each user i (1≦i≦n));


Enc(param, ski,t,xi,t): At time period t, user i encrypts a value xi,tεcustom-character/qcustom-character using his private key ski to get ci,t=gxi,tH1(t)siH2(t)ti.


AggrDec(param, sk0,t,c1,t, . . . , cn,t): At time period t, the aggregator using sk0 obtains Xti=1nxi,t by first computing Vt:=H1(t)s0H2(t)t0Πi=1n ci,t=gXt, and next the discrete logarithm of Vt with regards to the basis g.


This embodiment uses fewer operations, and is faster to be executed on electronic devices with small resources. This embodiment has the shortest private keys as well as the fastest and aggregate decryption operations among all construction with tighter security reductions.


In another embodiment, the data/values that are encrypted by an aggregator-oblivious encryption scheme according to the invention, as previously described, are noisy data/values as in the article “Privacy-Preserving Aggregation of Time Series Data” already mentioned. Indeed, the sum of the masking values (or noise values) that are added to the measurements data corresponds to a known value, and can be deleted later.


In another embodiment, the present technique can be turned out into a fault tolerant aggregator-oblivious encryption scheme as proposed in the article: “Privacy-Preserving Stream Aggregation with Fault Tolerance” by T. H. Hubert Chan, et al., published in the proceedings of the conference Financial Cryptography 2012. Indeed, in this article, a technique to turn the Shi et al. construction into a fault-tolerant system is described, and can therefore be applied to the present invention.


In another embodiment, the proposed technique that comprises the use of at least two hash functions and vectors of at least two coordinates for defining the private key of a participant/user can be used in other context, such as in the design of adaptively secure threshold signatures schemes.



FIG. 2 presents an electronic device that can be used to perform one or several steps of the methods disclosed in the present document.


Such device referenced 200 comprises a computing unit (for example a CPU, for “Central Processing Unit”), referenced 201, and one or more memory units (for example a RAM (for “Random Access Memory”) block in which intermediate results can be stored temporarily during the execution of instructions a computer program, or a ROM (“Read Only Memory”) block in which, among other things, computer programs are stored, or an EEPROM (“Electrically-Erasable Programmable Read-Only Memory”) block, or a flash block) referenced 202. Computer programs are made of instructions that can be executed by the computing unit. Such device 200 can also comprise a dedicated unit, referenced 203, constituting an input-output interface to allow the device 200 to communicate with other devices. In particular, this dedicated unit 203 can be connected with an antenna (in order to perform communication without contacts), or with serial ports (to carry communications with physical contacts). It should be noted that the arrows in FIG. 2 signify that the linked unit can exchange data through buses for example together.


In an alternative embodiment, some or all of the steps of the method previously described, can be implemented in hardware in a programmable FPGA (“Field Programmable Gate Array”) component or ASIC (“Application-Specific Integrated Circuit”) component.


In an alternative embodiment, some or all of the steps of the method previously described, can be executed on an electronic device comprising memory units and processing units as the one disclosed in the FIG. 2.

Claims
  • 1. A method for determining a statistic value, for a given time period t, on a set of n≧2 of plaintext data {xi,t}1≦i≦n with xi,tεp, p being a primer number, only based on a set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n, where E is an encryption method and ski an encryption key, without having access to all elements of the set of corresponding encryption key {ski}1≦i≦n, said method being implemented by an electronic device and wherein it comprises: obtaining said given time period t, and said set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n for which Eski(xi,t,t)=ƒ(xi,t) Πj=1k+1Hj(t)sj,i where functions H1, . . . , Hk+1:→ are hash functions, is a group of prime order q, k>1 and said encryption key ski={sj,i}1≦j≦k+1 which comprises (k+1) random elements in /q, and ƒ is a function defined according to said statistic value, and having for codomain said group ;obtaining an aggregator private key sk0={sj,0}1≦j≦k+1γ{−Σi=1nsj,i mod q}1≦j≦k+1;determining said statistic value based on sk0 and said set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦t≦n.
  • 2. The method according to claim 1, wherein k=1.
  • 3. The method according to claim 1, wherein said function ƒ is a function defined by an equation ƒ(x)=xn, where n is a real number, and said group corresponds to p.
  • 4. The method according to claim 1, wherein said function ƒ is a function defined by an equation
  • 5. The method according to claim 4, wherein n′ is equal to one, and said statistic value corresponds to a sum of plaintexts associated to encrypted data, and in that said step of determining said statistic value comprises: obtaining Vt:=Πj=1k+1Hj(t)sj,0·Πi=1nci,t=gXt; determining the discrete logarithm of Vt with regards to basis g.
  • 6. The method according to claim 5, wherein said determining the discrete logarithm of Vt comprises executing a Pollard's kangaroo algorithm.
  • 7. The method according to claim 5, wherein said determining the discrete logarithm of Vt comprises executing an index calculus algorithm.
  • 8. The method according to claim 5, wherein said determining the discrete logarithm of Vt comprises executing a Pohlig-Hellman algorithm.
  • 9. The method according to claim 1, wherein said plaintext data {xi,t}1≦i≦n correspond to data provided by a device belonging to a smart grid.
  • 10. An electronic device comprising a first module configured to determine a statistic value, for a given time period t, on a set of n≧2 of plaintext data {xi,t}1≦i≦n with xi,tεp, p being a primer number, only based on a set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n, where E is an encryption method and ski an encryption key, without having access to all elements of the set of corresponding encryption key {ski}1≦i≦n, wherein said electronic device comprises: a second module configured to obtain said given time period t, and said set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n for which Eski(xi,t,t)=ƒ(xi,t) Πj=1k+1Hj(t)sj,i where functions H1, . . . , Hk+1:→ are hash functions, is a group of prime order q, k≧1 and said encryption key ski={sj,i}1≦j≦k+1 which comprises (k+1) random elements in /q, and ƒ is a function defined according to said statistic value, and having for codomain said group ;a third module configured to obtain an aggregator private key sk0={sj,0}1≦i≦k+1={−Σi=1nsj,i mod q}1≦j≦k+1;a fourth module configured to determine said statistic value based on sk0 and said set of corresponding ciphertext data {ci,t=Eski(xi,t,t)}1≦i≦n.
  • 11. The electronic device according to claim 10, wherein k=1.
  • 12. The electronic device according to claim 10, wherein said function ƒ is a function defined by an equation ƒ(x)=xn, where n is a real number, and said group corresponds to p.
  • 13. The electronic device according to claim 10, wherein said function ƒ is a function defined by an equation
  • 14. The electronic device according to claim 13, wherein n′ is equal to one, and said statistic value corresponds to a sum of plaintexts associated to encrypted data, and in that said fourth module configured to determine said statistic value comprises: a fifth module configured to obtain Vt:=Πj=1k+1Hj(t)sj,0·Πj=1nci,t=gXt; a sixth module configured to determine the discrete logarithm of Vt with regards to basis g.
Priority Claims (1)
Number Date Country Kind
13306642.3 Nov 2013 EP regional