Secret Sharing Using The Chinese Remainder Theorem
   HOME

TheInfoList



OR:

Secret sharing Secret sharing (also called secret splitting) refers to methods for distributing a secret among a group, in such a way that no individual holds any intelligible information about the secret, but when a sufficient number of individuals combine th ...
consists of recovering a secret ''S'' from a set of shares, each containing partial information about the secret. The
Chinese remainder theorem In mathematics, the Chinese remainder theorem states that if one knows the remainders of the Euclidean division of an integer ''n'' by several integers, then one can determine uniquely the remainder of the division of ''n'' by the product of thes ...
(CRT) states that for a given system of simultaneous congruence equations, the solution is unique in some , with under some appropriate conditions on the congruences.
Secret sharing Secret sharing (also called secret splitting) refers to methods for distributing a secret among a group, in such a way that no individual holds any intelligible information about the secret, but when a sufficient number of individuals combine th ...
can thus use the CRT to produce the shares presented in the congruence equations and the secret could be recovered by solving the system of congruences to get the unique solution, which will be the secret to recover.


Secret sharing schemes: several types

There are several types of
secret sharing Secret sharing (also called secret splitting) refers to methods for distributing a secret among a group, in such a way that no individual holds any intelligible information about the secret, but when a sufficient number of individuals combine th ...
schemes. The most basic types are the so-called threshold schemes, where only the
cardinality In mathematics, the cardinality of a set is a measure of the number of elements of the set. For example, the set A = \ contains 3 elements, and therefore A has a cardinality of 3. Beginning in the late 19th century, this concept was generalized ...
of the set of shares matters. In other words, given a secret ''S'', and ''n'' shares, any set of ''t'' shares is a set with the smallest
cardinality In mathematics, the cardinality of a set is a measure of the number of elements of the set. For example, the set A = \ contains 3 elements, and therefore A has a cardinality of 3. Beginning in the late 19th century, this concept was generalized ...
from which the secret can be recovered, in the sense that any set of ''t-1'' shares is not enough to give ''S''. This is known as a threshold access structure. We call such schemes (''t'',''n'') threshold
secret sharing Secret sharing (also called secret splitting) refers to methods for distributing a secret among a group, in such a way that no individual holds any intelligible information about the secret, but when a sufficient number of individuals combine th ...
schemes, or ''t''-out-of-''n'' scheme. Threshold
secret sharing Secret sharing (also called secret splitting) refers to methods for distributing a secret among a group, in such a way that no individual holds any intelligible information about the secret, but when a sufficient number of individuals combine th ...
schemes differ from one another by the method of generating the shares, starting from a certain secret. The first ones are Shamir's threshold secret sharing scheme, which is based on
polynomial interpolation In numerical analysis, polynomial interpolation is the interpolation of a given data set by the polynomial of lowest possible degree that passes through the points of the dataset. Given a set of data points (x_0,y_0), \ldots, (x_n,y_n), with no ...
in order to find ''S'' from a given set of shares, and
George Blakley George Robert (Bob) Blakley Jr. was an American cryptographer and a professor of mathematics at Texas A&M University, best known for inventing a secret sharing scheme in 1979 (see ). Biography Blakley did his undergraduate studies in physics at Ge ...
's geometric secret sharing scheme, which uses geometric methods to recover the secret ''S''. Threshold
secret sharing Secret sharing (also called secret splitting) refers to methods for distributing a secret among a group, in such a way that no individual holds any intelligible information about the secret, but when a sufficient number of individuals combine th ...
schemes based on the CRT are due to Mignotte and Asmuth-Bloom, they use special sequences of integers along with the CRT.


Chinese remainder theorem

Let k \geqslant 2, m_1,...,m_k \geqslant 2, and b_1,...,b_k \in \mathbf. The system of congruences :\begin x \equiv & b_1 \ \bmod \ m_1 \\ & \vdots \\ x \equiv & b_k \ \bmod \ m_k \\ \end has solutions in if and only if b_i \equiv b_j \bmod (m_i,m_j) for all 1 \leqslant i,j \leqslant k, where (m_i,m_j) denotes the
greatest common divisor In mathematics, the greatest common divisor (GCD) of two or more integers, which are not all zero, is the largest positive integer that divides each of the integers. For two integers ''x'', ''y'', the greatest common divisor of ''x'' and ''y'' is ...
(GCD) of and . Furthermore, under these conditions, the system has a unique solution in where n = _1,...,m_k/math>, which denotes the
least common multiple In arithmetic and number theory, the least common multiple, lowest common multiple, or smallest common multiple of two integers ''a'' and ''b'', usually denoted by lcm(''a'', ''b''), is the smallest positive integer that is divisible by bot ...
(LCM) of m_1,...,m_k.


Secret sharing using the CRT

Since the
Chinese remainder theorem In mathematics, the Chinese remainder theorem states that if one knows the remainders of the Euclidean division of an integer ''n'' by several integers, then one can determine uniquely the remainder of the division of ''n'' by the product of thes ...
provides us with a method to uniquely determine a number ''S'' modulo ''k''-many
relatively prime In mathematics, two integers and are coprime, relatively prime or mutually prime if the only positive integer that is a divisor of both of them is 1. Consequently, any prime number that divides does not divide , and vice versa. This is equivale ...
integers m_1, m_2, ..., m_k, given that S < \prod_^k m_i, then, the idea is to construct a scheme that will determine the secret ''S'' given any ''k'' shares (in this case, the remainder of ''S'' modulo each of the numbers ), but will not reveal the secret given less than ''k'' of such shares. Ultimately, we choose ''n''
relatively prime In mathematics, two integers and are coprime, relatively prime or mutually prime if the only positive integer that is a divisor of both of them is 1. Consequently, any prime number that divides does not divide , and vice versa. This is equivale ...
integers m_1< m_2< ...< m_n such that ''S'' is smaller than the product of any choice of ''k'' of these integers, but at the same time is greater than any choice of ''k-1'' of them. Then the shares s_1, s_2, ..., s_n are defined by s_i = S \bmod \ m_i for i=1, 2, ..., n. In this manner, thanks to the CRT, we can uniquely determine ''S'' from any set of ''k'' or more shares, but not from less than ''k''. This provides the so-called threshold access structure. This condition on ''S'' can also be regarded as :\prod_^n m_i < S < \prod_^k m_i. Since ''S'' is smaller than the smallest product of ''k'' of the integers, it will be smaller than the product of any ''k'' of them. Also, being greater than the product of the greatest integers, it will be greater than the product of any of them. There are two Secret Sharing Schemes that utilize essentially this idea, Mignotte's and Asmuth-Bloom's Schemes, which are explained below.


Mignotte's threshold secret sharing scheme

As said before, Mignotte's threshold
secret sharing Secret sharing (also called secret splitting) refers to methods for distributing a secret among a group, in such a way that no individual holds any intelligible information about the secret, but when a sufficient number of individuals combine th ...
scheme uses, along with the CRT, special sequences of integers called the (''k'',''n'')-Mignotte sequences which consist of ''n'' integers,
pairwise coprime In mathematics, two integers and are coprime, relatively prime or mutually prime if the only positive integer that is a divisor of both of them is 1. Consequently, any prime number that divides does not divide , and vice versa. This is equivale ...
, such that the product of the smallest ''k'' of them is greater than the product of the biggest ones. This condition is crucial because the scheme is built on choosing the secret as an integer between the two products, and this condition ensures that at least ''k'' shares are needed to fully recover the secret, no matter how they are chosen. Formally, let be integers. A (''k'',''n'')-Mignotte sequence is a strictly increasing sequence of positive integers m_1 < \cdots < m_n, with (m_i,m_j) = 1 for all , such that m_ \cdots m_n < m_1 \cdots m_k. Let \alpha = m_ \cdots m_n and \beta = m_1 \cdots m_k ; we call the integers lying strictly between \alpha and \beta the authorized range. We build a (''k'',''n'')- threshold
secret sharing Secret sharing (also called secret splitting) refers to methods for distributing a secret among a group, in such a way that no individual holds any intelligible information about the secret, but when a sufficient number of individuals combine th ...
scheme as follows: We choose the secret ''S'' as a random integer \alpha < S < \beta in the authorized range. We compute, for every , the reduction modulo of ''S'' that we call , these are the shares. Now, for any ''k'' different shares s_, \ldots, s_, we consider the system of congruences: :\begin x \equiv & s_ \ \bmod \ m_ \\ & \vdots \\ x \equiv & s_ \ \bmod \ m_ \\ \end By the
Chinese remainder theorem In mathematics, the Chinese remainder theorem states that if one knows the remainders of the Euclidean division of an integer ''n'' by several integers, then one can determine uniquely the remainder of the division of ''n'' by the product of thes ...
, since m_, \ldots, m_ are
pairwise coprime In mathematics, two integers and are coprime, relatively prime or mutually prime if the only positive integer that is a divisor of both of them is 1. Consequently, any prime number that divides does not divide , and vice versa. This is equivale ...
, the system has a unique solution modulo m_ \cdots m_. By the construction of our shares, this solution is nothing but the secret ''S'' to recover.


Asmuth-Bloom's threshold secret sharing scheme

This scheme also uses special sequences of integers. Let be integers. We consider a sequence of
pairwise coprime In mathematics, two integers and are coprime, relatively prime or mutually prime if the only positive integer that is a divisor of both of them is 1. Consequently, any prime number that divides does not divide , and vice versa. This is equivale ...
positive integers m_0 < ... < m_n such that m_0 \cdot m_ \cdots m_n < m_1 \cdots m_k. For this given sequence, we choose the secret S as a random integer in the set . We then pick a random integer such that S + \alpha \cdot m_0 < m_1 \cdots m_k. We compute the reduction modulo of S + \alpha \cdot m_0, for all , these are the shares I_i=(s_i,m_i). Now, for any ''k'' different shares I_,...,I_, we consider the system of congruences: \begin x \equiv & s_ \ \bmod \ m_ \\ & \vdots \\ x \equiv & s_ \ \bmod \ m_ \\ \end By the
Chinese remainder theorem In mathematics, the Chinese remainder theorem states that if one knows the remainders of the Euclidean division of an integer ''n'' by several integers, then one can determine uniquely the remainder of the division of ''n'' by the product of thes ...
, since m_, ... , m_ are
pairwise coprime In mathematics, two integers and are coprime, relatively prime or mutually prime if the only positive integer that is a divisor of both of them is 1. Consequently, any prime number that divides does not divide , and vice versa. This is equivale ...
, the system has a unique solution modulo m_ \cdots m_. By the construction of our shares, the secret S is the reduction modulo of . It is important to notice that the Mignotte (''k'',''n'')- threshold secret-sharing scheme is not perfect in the sense that a set of less than ''k'' shares contains some information about the secret. The Asmuth-Bloom scheme is perfect: is independent of the secret and \left.\begin \prod_^n m_i\\ \alpha \end\right\}<\frac Therefore can be any integer modulo :\prod_^n m_i. This product of moduli is the largest of any of the n choose possible products, therefore any subset of equivalences can be any integer modulo its product, and no information from is leaked.


Example

The following is an example on the Asmuth-Bloom's Scheme. For practical purposes we choose small values for all parameters. We choose ''k=3'' and ''n=4''. Our
pairwise coprime In mathematics, two integers and are coprime, relatively prime or mutually prime if the only positive integer that is a divisor of both of them is 1. Consequently, any prime number that divides does not divide , and vice versa. This is equivale ...
integers being m_0 =3, m_1 =11, m_2 =13, m_3 =17 and m_4 =19. They satisfy the Asmuth-Bloom required sequence because 3\cdot17\cdot19 < 11\cdot13\cdot17. Say our secret is 2. Pick \alpha = 51, satisfying the required condition for the Asmuth-Bloom scheme. Then 2+51\cdot 3=155 and we compute the shares for each of the integers 11, 13, 17 and 19. They are respectively 1, 12, 2 and 3. We consider one possible set of 3 shares: among the 4 possible sets of 3 shares we take the set and show that it recovers the secret S=2. Consider the following system of congruences: :\begin x \equiv & 1 \ \bmod \ 11 \\ x \equiv & 12 \ \bmod \ 13 \\ x \equiv & 2 \ \bmod \ 17 \\ \end To solve the system, let M = 11 \cdot 13 \cdot 17. From a constructive algorithm for solving such a system, we know that a solution to the system is x_0 = 1 \cdot e_1 + 12\cdot e_2 + 2\cdot e_3, where each is found as follows: By
Bézout's identity In mathematics, Bézout's identity (also called Bézout's lemma), named after Étienne Bézout, is the following theorem: Here the greatest common divisor of and is taken to be . The integers and are called Bézout coefficients for ; they a ...
, since (m_i,M/m_i) = 1, there exist positive integers and , that can be found using the
Extended Euclidean algorithm In arithmetic and computer programming, the extended Euclidean algorithm is an extension to the Euclidean algorithm, and computes, in addition to the greatest common divisor (gcd) of integers ''a'' and ''b'', also the coefficients of Bézout's ide ...
, such that r_i.m_i+s_i.M/m_i = 1. Set e_i=s_i\cdot M/m_i. From the identities 1 = 1\cdot 221 - 20\cdot 11 = (-5)\cdot 187 + 72\cdot 13 = 5\cdot 143 + (-42)\cdot 17, we get that e_1 = 221, e_2=-935, e_3=715, and the unique solution modulo 11\cdot 13\cdot 17 is 155. Finally, S = 155 \equiv 2 \mod 3 .


See also

*
Secret Sharing Secret sharing (also called secret splitting) refers to methods for distributing a secret among a group, in such a way that no individual holds any intelligible information about the secret, but when a sufficient number of individuals combine th ...
* Shamir's Secret Sharing Scheme *
Chinese remainder theorem In mathematics, the Chinese remainder theorem states that if one knows the remainders of the Euclidean division of an integer ''n'' by several integers, then one can determine uniquely the remainder of the division of ''n'' by the product of thes ...
*
Access Structure Access structures are used in the study of security systems where multiple parties need to work together to obtain a resource. Groups of parties that are granted access are called qualified. In set theoretic terms they are referred to as qualifie ...


References

*
Oded Goldreich Oded Goldreich ( he, עודד גולדרייך; b. 1957) is a professor of Computer Science at the Faculty of Mathematics and Computer Science of Weizmann Institute of Science, Israel. His research interests lie within the theory of computation ...
,
Dana Ron Dana Ron Goldreich ( he, דנה רון גולדרייך; b. 1964) is a computer scientist, a professor of electrical engineering at the Tel Aviv University, Israel. Prof. Ron is one of the pioneers of research in property testing, and a leading ...
and
Madhu Sudan Madhu Sudan (born 12 September 1966) is an Indian-American computer scientist. He has been a Gordon McKay Professor of Computer Science at the Harvard John A. Paulson School of Engineering and Applied Sciences since 2015. Career He received ...
, Chinese Remaindering with Errors, IEEE Transactions on Information Theory, Vol. 46, No. 4, July 2000, pages 1330-1338. * Mignotte M. (1983) How to Share a Secret. In: Beth T. (eds) Cryptography. EUROCRYPT 1982. Lecture Notes in Computer Science, vol 149. Springer, Berlin, Heidelberg. * C.A. Asmuth and J. Bloom. A modular approach to key safeguarding. IEEE Transactions on Information Theory, IT-29(2):208-210, 1983. * Sorin Iftene. General Secret Sharing Based on the Chinese Remainder Theorem with Applications in E-Voting. Electronic Notes in Theoretical Computer Science (ENTCS). Volume 186, (July 2007). Pages 67–84. Year of Publication: 2007. . *
Thomas H. Cormen Thomas H. Cormen is the co-author of ''Introduction to Algorithms'', along with Charles Leiserson, Ron Rivest, and Cliff Stein. In 2013, he published a new book titled '' Algorithms Unlocked''. He is a professor of computer science at Dartmout ...
,
Charles E. Leiserson Charles Eric Leiserson is a computer scientist, specializing in the theory of parallel computing and distributed computing, and particularly practical applications thereof. As part of this effort, he developed the Cilk multithreaded language. ...
,
Ronald L. Rivest Ronald Linn Rivest (; born May 6, 1947) is a cryptographer and an Institute Professor at MIT. He is a member of MIT's Department of Electrical Engineering and Computer Science (EECS) and a member of MIT's Computer Science and Artificial Inte ...
, and
Clifford Stein Clifford Seth Stein (born December 14, 1965), a computer scientist, is a professor of industrial engineering and operations research at Columbia University in New York, NY, where he also holds an appointment in the Department of Computer Scien ...
. Introduction to Algorithms, Second Edition. MIT Press and McGraw-Hill, 2001. {{ISBN, 0-262-03293-7. Section 31.5: The Chinese remainder theorem, pages 873-876. *
Ronald Cramer Ronald John Fitzgerald Cramer (born 3 February 1968 in Haarlem) is a professor at the Centrum Wiskunde & Informatica (CWI) in Amsterdam and the University of Leiden. He obtained his PhD from the University of Amsterdam in 1997. Prior to returning t ...
. Basic Secret Sharing (Lectures 1-2), Class Notes. October 2008, version 1.1.


External links

* https://web.archive.org/web/20091209071915/http://www.cryptolounge.org/wiki/Ronald_Cramer Cryptographic algorithms ru:Схема Миньотта