Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Short integer solution problem

From Wikipedia, the free encyclopedia
Computational problem used in cryptography

Short integer solution (SIS) andring-SIS problems are twoaverage-case problems that are used inlattice-based cryptography constructions. Lattice-based cryptography began in 1996 from a seminal work byMiklós Ajtai[1] who presented a family ofone-way functions based on SIS problem. He showed that it is secure in an average case if theshortest vector problemSVPγ{\displaystyle \mathrm {SVP} _{\gamma }} (whereγ=nc{\displaystyle \gamma =n^{c}} for some constantc>0{\displaystyle c>0}) is hard in the worst case.

Average case problems are the problems that are hard to be solved for some randomly selected instances. For cryptography applications, worst case complexity is not sufficient, and we need to guarantee cryptographic construction are hard based on average case complexity.

Lattices

[edit]

Afull ranklatticeLRn{\displaystyle {\mathfrak {L}}\subset \mathbb {R} ^{n}} is a set of integer linear combinations ofn{\displaystyle n} linearly independent vectors{b1,,bn}{\displaystyle \{b_{1},\ldots ,b_{n}\}}, namedbasis:

L(b1,,bn)={i=1nzibi:ziZ}={Bz:zZn}{\displaystyle {\mathfrak {L}}(b_{1},\ldots ,b_{n})=\left\{\sum _{i=1}^{n}z_{i}b_{i}:z_{i}\in \mathbb {Z} \right\}=\{B{\boldsymbol {z}}:{\boldsymbol {z}}\in \mathbb {Z} ^{n}\}}

whereBRn×n{\displaystyle B\in \mathbb {R} ^{n\times n}} is a matrix having basis vectors in its columns.

Remark: GivenB1,B2{\displaystyle B_{1},B_{2}} two bases for latticeL{\displaystyle {\mathfrak {L}}}, there exist unimodular matricesU1{\displaystyle U_{1}} such thatB1=B2U11,B2=B1U1{\displaystyle B_{1}=B_{2}U_{1}^{-1},B_{2}=B_{1}U_{1}}.

Ideal lattice

[edit]

Definition: Rotationalshift operator onRn(n2){\displaystyle \mathbb {R} ^{n}(n\geq 2)} is denoted byrot{\displaystyle \operatorname {rot} }, and is defined as:

x=(x1,,xn1,xn)Rn:rot(x1,,xn1,xn)=(xn,x1,,xn1){\displaystyle \forall {\boldsymbol {x}}=(x_{1},\ldots ,x_{n-1},x_{n})\in \mathbb {R} ^{n}:\operatorname {rot} (x_{1},\ldots ,x_{n-1},x_{n})=(x_{n},x_{1},\ldots ,x_{n-1})}

Cyclic lattices

[edit]

Micciancio introducedcyclic lattices in his work in generalizing the compactknapsack problem to arbitrary rings.[2] A cyclic lattice is a lattice that is closed under rotational shift operator. Formally, cyclic lattices are defined as follows:

Definition: A latticeLZn{\displaystyle {\mathfrak {L}}\subseteq \mathbb {Z} ^{n}} is cyclic ifxL:rot(x)L{\displaystyle \forall {\boldsymbol {x}}\in {\mathfrak {L}}:\operatorname {rot} ({\boldsymbol {x}})\in {\mathfrak {L}}}.

Examples:[3]

  1. Zn{\displaystyle \mathbb {Z} ^{n}} itself is a cyclic lattice.
  2. Lattices corresponding to any ideal in the quotient polynomial ringR=Z[x]/(xn1){\displaystyle R=\mathbb {Z} [x]/(x^{n}-1)} are cyclic:

consider the quotient polynomial ringR=Z[x]/(xn1){\displaystyle R=\mathbb {Z} [x]/(x^{n}-1)}, and letp(x){\displaystyle p(x)} be some polynomial inR{\displaystyle R}, i.e.p(x)=i=0n1aixi{\displaystyle p(x)=\sum _{i=0}^{n-1}a_{i}x^{i}} whereaiZ{\displaystyle a_{i}\in \mathbb {Z} } fori=0,,n1{\displaystyle i=0,\ldots ,n-1}.

Define the embedding coefficientZ{\displaystyle \mathbb {Z} }-module isomorphismρ{\displaystyle \rho } as:

ρ:RZnp(x)=i=0n1aixi(a0,,an1){\displaystyle {\begin{aligned}\quad \rho :R&\rightarrow \mathbb {Z} ^{n}\\[4pt]p(x)=\sum _{i=0}^{n-1}a_{i}x^{i}&\mapsto (a_{0},\ldots ,a_{n-1})\end{aligned}}}

LetIR{\displaystyle I\subset R} be an ideal. The lattice corresponding to idealIR{\displaystyle I\subset R}, denoted byLI{\displaystyle {\mathfrak {L}}_{I}}, is a sublattice ofZn{\displaystyle \mathbb {Z} ^{n}}, and is defined as

LI:=ρ(I)={(a0,,an1)i=0n1aixiI}Zn.{\displaystyle {\mathfrak {L}}_{I}:=\rho (I)=\left\{(a_{0},\ldots ,a_{n-1})\mid \sum _{i=0}^{n-1}a_{i}x^{i}\in I\right\}\subset \mathbb {Z} ^{n}.}

Theorem:LZn{\displaystyle {\mathfrak {L}}\subset \mathbb {Z} ^{n}} is cyclic if and only ifL{\displaystyle {\mathfrak {L}}} corresponds to some idealI{\displaystyle I} in the quotient polynomial ringR=Z[x]/(xn1){\displaystyle R=\mathbb {Z} [x]/(x^{n}-1)}.

proof:){\displaystyle \Leftarrow )} We have:

L=LI:=ρ(I)={(a0,,an1)i=0n1aixiI}{\displaystyle {\mathfrak {L}}={\mathfrak {L}}_{I}:=\rho (I)=\left\{(a_{0},\ldots ,a_{n-1})\mid \sum _{i=0}^{n-1}a_{i}x^{i}\in I\right\}}

Let(a0,,an1){\displaystyle (a_{0},\ldots ,a_{n-1})} be an arbitrary element inL{\displaystyle {\mathfrak {L}}}. Then, definep(x)=i=0n1aixiI{\displaystyle p(x)=\sum _{i=0}^{n-1}a_{i}x^{i}\in I}. But sinceI{\displaystyle I} is an ideal, we havexp(x)I{\displaystyle xp(x)\in I}. Then,ρ(xp(x))LI{\displaystyle \rho (xp(x))\in {\mathfrak {L}}_{I}}. But,ρ(xp(x))=rot(a0,,an1)LI{\displaystyle \rho (xp(x))=\operatorname {rot} (a_{0},\ldots ,a_{n-1})\in {\mathfrak {L}}_{I}}. Hence,L{\displaystyle {\mathfrak {L}}} is cyclic.

){\displaystyle \Rightarrow )}

LetLZn{\displaystyle {\mathfrak {L}}\subset \mathbb {Z} ^{n}} be a cyclic lattice. Hence(a0,,an1)L:rot(a0,,an1)L{\displaystyle \forall (a_{0},\ldots ,a_{n-1})\in {\mathfrak {L}}:\operatorname {rot} (a_{0},\ldots ,a_{n-1})\in {\mathfrak {L}}}.

Define the set of polynomialsI:={i=0n1aixi(a0,,an1)L}{\displaystyle I:=\left\{\sum _{i=0}^{n-1}a_{i}x^{i}\mid (a_{0},\ldots ,a_{n-1})\in {\mathfrak {L}}\right\}}:

  1. SinceL{\displaystyle {\mathfrak {L}}} a lattice and hence an additive subgroup ofZn{\displaystyle \mathbb {Z} ^{n}},IR{\displaystyle I\subset R} is an additive subgroup ofR{\displaystyle R}.
  2. SinceL{\displaystyle {\mathfrak {L}}} is cyclic,p(x)I:xp(x)I{\displaystyle \forall p(x)\in I:xp(x)\in I}.

Hence,IR{\displaystyle I\subset R} is an ideal, and consequently,L=LI{\displaystyle {\mathfrak {L}}={\mathfrak {L}}_{I}}.

Ideal lattices

[edit]

Source:[4]

Letf(x)Z[x]{\displaystyle f(x)\in \mathbb {Z} [x]} be amonic polynomial of degreen{\displaystyle n}. For cryptographic applications,f(x){\displaystyle f(x)} is usually selected to be irreducible. The ideal generated byf(x){\displaystyle f(x)} is:

(f(x)):=f(x)Z[x]={f(x)g(x):g(x)Z[x]}.{\displaystyle (f(x)):=f(x)\cdot \mathbb {Z} [x]=\{f(x)g(x):\forall g(x)\in \mathbb {Z} [x]\}.}

The quotient polynomial ringR=Z[x]/(f(x)){\displaystyle R=\mathbb {Z} [x]/(f(x))} partitionsZ[x]{\displaystyle \mathbb {Z} [x]} into equivalence classes of polynomials of degree at mostn1{\displaystyle n-1}:

R=Z[x]/(f(x))={i=0n1aixi:aiZ}{\displaystyle R=\mathbb {Z} [x]/(f(x))=\left\{\sum _{i=0}^{n-1}a_{i}x^{i}:a_{i}\in \mathbb {Z} \right\}}

where addition and multiplication are reduced modulof(x){\displaystyle f(x)}.

Consider the embedding coefficientZ{\displaystyle \mathbb {Z} }-module isomorphismρ{\displaystyle \rho }. Then, each ideal inR{\displaystyle R} defines a sublattice ofZn{\displaystyle \mathbb {Z} ^{n}} calledideal lattice.

Definition:LI{\displaystyle {\mathfrak {L}}_{I}}, the lattice corresponding to an idealI{\displaystyle I}, is called ideal lattice. More precisely, consider a quotient polynomial ringR=Z[x]/(p(x)){\displaystyle R=\mathbb {Z} [x]/(p(x))}, where(p(x)){\displaystyle (p(x))} is the ideal generated by a degreen{\displaystyle n} polynomialp(x)Z[x]{\displaystyle p(x)\in \mathbb {Z} [x]}.LI{\displaystyle {\mathfrak {L}}_{I}}, is a sublattice ofZn{\displaystyle \mathbb {Z} ^{n}}, and is defined as:

LI:=ρ(I)={(a0,,an1)i=0n1aixiI}Zn.{\displaystyle {\mathfrak {L}}_{I}:=\rho (I)=\left\{(a_{0},\ldots ,a_{n-1})\mid \sum _{i=0}^{n-1}a_{i}x^{i}\in I\right\}\subset \mathbb {Z} ^{n}.}

Remark:[5]

  1. It turns out thatGapSVPγ{\displaystyle {\text{GapSVP}}_{\gamma }} for even smallγ=poly(n){\displaystyle \gamma =\operatorname {poly(n)} } is typically easy on ideal lattices. The intuition is that the algebraic symmetries causes the minimum distance of an ideal to lie within a narrow, easily computable range.
  2. By exploiting the provided algebraic symmetries in ideal lattices, one can convert a short nonzero vector inton{\displaystyle n} linearly independent ones of (nearly) the same length. Therefore, on ideal lattices,SVPγ{\displaystyle \mathrm {SVP} _{\gamma }} andSIVPγ{\displaystyle \mathrm {SIVP} _{\gamma }} are equivalent with a small loss.[6] Furthermore, even forquantum algorithms,SVPγ{\displaystyle \mathrm {SVP} _{\gamma }} andSIVPγ{\displaystyle \mathrm {SIVP} _{\gamma }} are believed to be very hard in the worst-case scenario.

Short integer solution problem

[edit]

The Short Integer Solution (SIS) problem is anaverage case problem that is used in lattice-based cryptography constructions. Lattice-based cryptography began in 1996 from a seminal work by Ajtai[1] who presented a family of one-way functions based on the SIS problem. He showed that it is secure in an average case ifSVPγ{\displaystyle \mathrm {SVP} _{\gamma }} (whereγ=nc{\displaystyle \gamma =n^{c}} for some constantc>0{\displaystyle c>0}) is hard in a worst-case scenario. Along with applications in classical cryptography, the SIS problem and its variants are utilized in several post-quantum security schemes includingCRYSTALS-Dilithium andFalcon.[7][8]

SISq,n,m,β

[edit]

LetAZqn×m{\displaystyle A\in \mathbb {Z} _{q}^{n\times m}} be ann×m{\displaystyle n\times m} matrix with entries inZq{\displaystyle \mathbb {Z} _{q}} that consists ofm{\displaystyle m} uniformly random vectorsaiZqn{\displaystyle {\boldsymbol {a_{i}}}\in \mathbb {Z} _{q}^{n}}:A=[a1||am]{\displaystyle A=[{\boldsymbol {a_{1}}}|\cdots |{\boldsymbol {a_{m}}}]}. Find a nonzero vectorxZm{\displaystyle {\boldsymbol {x}}\in \mathbb {Z} ^{m}} such that for some norm{\displaystyle \|\cdot \|}:

A solution to SIS without the required constraint on the length of the solution (xβ{\displaystyle \|{\boldsymbol {x}}\|\leq \beta }) is easy to compute by usingGaussian elimination technique. We also requireβ<q{\displaystyle \beta <q}, otherwisex=(q,0,,0)Zm{\displaystyle {\boldsymbol {x}}=(q,0,\ldots ,0)\in \mathbb {Z} ^{m}} is a trivial solution.

In order to guaranteefA(x){\displaystyle f_{A}({\boldsymbol {x}})} has non-trivial, short solution, we require:

Theorem: For anym=poly(n){\displaystyle m=\operatorname {poly} (n)}, anyβ>0{\displaystyle \beta >0}, and any sufficiently largeqβnc{\displaystyle q\geq \beta n^{c}} (for any constantc>0{\displaystyle c>0}), solvingSISn,m,q,β{\displaystyle \operatorname {SIS} _{n,m,q,\beta }} with nonnegligible probability is at least as hard as solving theGapSVPγ{\displaystyle \operatorname {GapSVP} _{\gamma }} andSIVPγ{\displaystyle \operatorname {SIVP} _{\gamma }} for someγ=βO(n){\displaystyle \gamma =\beta \cdot O({\sqrt {n}})} with a high probability in the worst-case scenario.

R-SISq,n,m,β

[edit]

The SIS problem solved over an ideal ring is also called the Ring-SIS or R-SIS problem.[2][9] This problem considers a quotient polynomial ringRq=Zq[x]/(f(x)){\displaystyle R_{q}=\mathbb {Z} _{q}[x]/(f(x))} withf(x)=xn1{\displaystyle f(x)=x^{n}-1} for some integern{\displaystyle n} and with some norm{\displaystyle \|\cdot \|}. Of particular interest are cases where there exists integerk{\displaystyle k} such thatn=2k{\displaystyle n=2^{k}} as this restricts the quotient to cyclotomic polynomials.[10]

We then define the problem as follows:

Selectm{\displaystyle m} independent uniformly random elementsaiRq{\displaystyle a_{i}\in R_{q}}. Define vectora:=(a1,,am)Rqm{\displaystyle {\vec {\boldsymbol {a}}}:=(a_{1},\ldots ,a_{m})\in R_{q}^{m}}. Find a nonzero vectorz:=(z1,,zm)Rm{\displaystyle {\vec {\boldsymbol {z}}}:=(z_{1},\ldots ,z_{m})\in R^{m}} such that:

Recall that to guarantee existence of a solution to SIS problem, we requiremnlogq{\displaystyle m\approx n\log q}. However, Ring-SIS problem provide us with more compactness and efficacy: to guarantee existence of a solution to Ring-SIS problem, we requiremlogq{\displaystyle m\approx \log q} .

Definition: Thenega-circulant matrix ofb{\displaystyle b} is defined as:

forb=i=0n1bixiR,rot(b):=[b0bn1b1b1b0b2bn1bn2b0]{\displaystyle {\text{for}}\quad b=\sum _{i=0}^{n-1}b_{i}x^{i}\in R,\quad \operatorname {rot} (b):={\begin{bmatrix}b_{0}&-b_{n-1}&\ldots &-b_{1}\\[0.3em]b_{1}&b_{0}&\ldots &-b_{2}\\[0.3em]\vdots &\vdots &\ddots &\vdots \\[0.3em]b_{n-1}&b_{n-2}&\ldots &b_{0}\end{bmatrix}}}

When the quotientpolynomial ring isR=Z[x]/(xn+1){\displaystyle R=\mathbb {Z} [x]/(x^{n}+1)} forn=2k{\displaystyle n=2^{k}}, the ring multiplicationai.pi{\displaystyle a_{i}.p_{i}} can be efficiently computed by first formingrot(ai){\displaystyle \operatorname {rot} (a_{i})}, the nega-circulant matrix ofai{\displaystyle a_{i}}, and then multiplyingrot(ai){\displaystyle \operatorname {rot} (a_{i})} withρ(pi(x))Zn{\displaystyle \rho (p_{i}(x))\in Z^{n}}, the embedding coefficient vector ofpi{\displaystyle p_{i}} (or, alternatively withσ(pi(x))Zn{\displaystyle \sigma (p_{i}(x))\in Z^{n}}, the canonical coefficient vector.

Moreover, R-SIS problem is a special case of SIS problem where the matrixA{\displaystyle A} in the SIS problem is restricted to negacirculant blocks:A=[rot(a1)||rot(am)]{\displaystyle A=[\operatorname {rot} (a_{1})|\cdots |\operatorname {rot} (a_{m})]}.[10]

M-SISq,n,d,m,β

[edit]

The SIS problem solved over a module lattice is also called the Module-SIS or M-SIS problem. Like R-SIS, this problem considers the quotient polynomial ringR=Z[x]/(f(x)){\displaystyle R=\mathbb {Z} [x]/(f(x))} andRq=Zq[x]/(f(x)){\displaystyle R_{q}=\mathbb {Z} _{q}[x]/(f(x))} forf(x)=xn1{\displaystyle f(x)=x^{n}-1} with a special interest in cases wheren{\displaystyle n} is a power of 2. Then, letM{\displaystyle M} be a module of rankd{\displaystyle d} such thatMRd{\displaystyle M\subseteq R^{d}} and let{\displaystyle \|\cdot \|} be an arbitrary norm overRqm{\displaystyle R_{q}^{m}}.

We then define the problem as follows:

Selectm{\displaystyle m} independent uniformly random elementsaiRqd{\displaystyle a_{i}\in R_{q}^{d}}. Define vectora:=(a1,,am)Rqd×m{\displaystyle {\vec {\boldsymbol {a}}}:=(a_{1},\ldots ,a_{m})\in R_{q}^{d\times m}}. Find a nonzero vectorz:=(z1,,zm)Rm{\displaystyle {\vec {\boldsymbol {z}}}:=(z_{1},\ldots ,z_{m})\in R^{m}} such that:

While M-SIS is a less compact variant of SIS than R-SIS, the M-SIS problem is asymptotically at least as hard as R-SIS and therefore gives a tighter bound on the hardness assumption of SIS. This makes assuming the hardness of M-SIS a safer, but less efficient underlying assumption when compared to R-SIS.[10]

See also

[edit]

References

[edit]
  1. ^abAjtai, Miklós. [Generating hard instances of lattice problems.] Proceedings of the twenty-eighth annual ACM symposium on Theory of computing. ACM, 1996.
  2. ^abMicciancio, Daniele. [Generalized compact knapsacks, cyclic lattices, and efficient one-way functions from worst-case complexity assumptions.] Foundations of Computer Science, 2002. Proceedings. The 43rd Annual IEEE Symposium on. IEEE, 2002.
  3. ^Fukshansky, Lenny, and Xun Sun. [On the geometry of cyclic lattices.] Discrete & Computational Geometry 52.2 (2014): 240–259.
  4. ^Craig Gentry.Fully Homomorphic Encryption Using Ideal Lattices. Inthe 41st ACM Symposium on Theory of Computing (STOC), 2009.
  5. ^Peikert, Chris. [A decade of lattice cryptography.] Cryptology ePrint Archive, Report 2015/939, 2015.
  6. ^Peikert, Chris, and Alon Rosen. [Efficient collision-resistant hashing from worst-case assumptions on cyclic lattices.] Theory of Cryptography. Springer Berlin Heidelberg, 2006. 145–166.
  7. ^Bai, Shi; Ducas, Léo; Kiltz, Eike; Lepoint, Tancrède; Lyubashevsky, Vadim; Schwabe, Peter; Seiler, Grego4; Stehlé, Damien (October 1, 2020)."CRYSTALS-Dilithium:Algorithm Specifications and Supporting Documentation"(PDF).PQ-Crystals.org. RetrievedNovember 13, 2023.{{cite web}}: CS1 maint: numeric names: authors list (link)
  8. ^Fouque, Pierre-Alain; Hoffstein, Jeffrey; Kirchner, Paul; Lyubashevsky, Vadim; Pornin, Thomas; Prest, Thomas; Ricosset, Thomas; Seiler, Gregor; Whyte, William; Zhang, Zhenfei (October 1, 2020)."Falcon: Fast-Fourier Lattice-based Compact Signatures over NTRU". RetrievedNovember 13, 2023.
  9. ^Lyubashevsky, Vadim, et al. [SWIFFT: A modest proposal for FFT hashing.] Fast Software Encryption. Springer Berlin Heidelberg, 2008.
  10. ^abcLanglois, Adeline, and Damien Stehlé. [Worst-case to average-case reductions for module lattices.] Designs, Codes and Cryptography 75.3 (2015): 565–599.
Number theoretic
Group theoretic
Pairings
Lattices
Non-cryptographic
Retrieved from "https://en.wikipedia.org/w/index.php?title=Short_integer_solution_problem&oldid=1324711617"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp