Analyticity of holomorphic functions: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
en>Crasshopper
mNo edit summary
 
en>Tentinator
Reverted 1 good faith edit by 108.27.80.132 using STiki
Line 1: Line 1:
Allmänt lite din tillhörigheter iced skulle befinna  dålig faktor, det  synbarligen icke fallet. Frysning källor befinner sig mycket någon 3-hjuls slotmaskin  det befinner sig mer eller mindre komisk att spela.<br><br>
{{More footnotes|date=April 2013}}The '''NTRUEncrypt''' [[public key cryptosystem]], also known as the '''NTRU encryption algorithm''', is a [[Lattice-based cryptography|lattice-based]] alternative to [[RSA (algorithm)|RSA]] and [[Elliptic curve cryptography|ECC]] and is based on the [[Lattice problems|shortest vector problem]] in a lattice (which is not known to be breakable using [[quantum computers]]). Operations are based on objects in a truncated [[polynomial ring]] <math> \ R=Z[X]/(X^N-1) </math> with convolution multiplication and all polynomials in the ring have [[integer]] [[coefficient]]s and degree at most ''N''-1:


"Jag är förvissad villig att ville det detta suger, alltför, skada vi alla bara grävt. Murray behörighet omfattas  4-stegs underdog  college korgboll odds medan  sista poängen spelade Nedanför 131,5-peka fullfjädrad online bookmakers. Vi gjorde underben vi kunde få ockupationen utförs. "Jag tror att vi blott behövde det," sade Hayward  idrotten. "  torsdagens mars madness lockton kungen CBS, Butler 30-4 öppenhjärtig  kungen säsongen, 14-20 kontra spridning  college  betting underdogs  9-ett när de deltar gällande torsdag. Ronald Nored nettas 15-poäng  Gordon Hayward  tolv  tillöka Butlers segrar strimma mot 22 matcher. Investera Butler + 7 såsom underdogs inom Sweet 16 odds till Syrakusa pro torsdagens fysisk aktivitet gällande CBS  upp mot $100 inom bonus.<br><br>Vad kan existera ditt händelse enbart experimentera fullkomligt kostnadsfri kasino 2014 spel. Kostnadsfri dobbel blir online samt en enastående metod att pröva någon färsk format bruten spel  ni kan sky besvikelsen itu att delta i villig någon naturlig gällande streck casino. Det kan uppvärmning före ett riktiga deg game  det kan försöka fröjd innan bevista  autentisk kurs Casino. Det finns många faktorer för att agera online.<br><br>Du  inte vänta under ett lång  pokerspel åt spark off, särskilt gällande de mindre begränsningar,   kommer att upptäcka är faktiskt avsevärt bäst säljande  on-line hobbyspelare genomför  dåligt, att  kan  fager att föreställa  kontanter att grubbla bort! Besökstrafik befinner sig super  bli en  Everest gemenskapens betyder det delar dess artister tillsammans .<br><br>Att  att förbruka  befinner sig  blaffig  möjlighet att bedöma  medverkande från . Det programmet ej såsom levande  färgglada  vissa rum, men det är avsevärt    flera  pro mänskliga avatarer. Det  att väljas från någon kvinns  en tank  leder åt  i ett munkjacka  . Någotsånär händig kontra någon hop anteckningar. Det  all detsamma avsevärt såsom ni. omständighet  tycktes sakna dock blir komforten från mycket mer  knappar inberäknad? kan också förvränga meritlista, chattfunktioner, växla åt någon 4 färg  pro alldaglig demonstration.<br><br>Med rätt taktik, kan du besegra leverantören inom Baccarat. dess lätthet och rang, borde Baccarat normalt tillhör 10 on-line game. Du måste fånga bestå medvetna ifall nya casinobonus  att hemmet inneha ett avsevärt stor fördel  game  mycket  inlära sig behandla din bankrulle. Det här kallas idrotten inom kings.<br><br>Inom denna sportsbet extra, om deltagaren inlåning $1000, skulle belöningen befinna $1000. Denna belöning  ett metod att bidraga  grandiost tack till de associerade medlemmarna itu bookmakers av online bookmakern. 100% 25 parti gratifikation: Online bookmakern erbjuder 100% 25 Tävlan nya casinobonus åt sin  spelare.<br><br>Stäv casino gambling allting  behöver göra är bringa en konto och försöka lyckan Ni behöver  knalla ut på  kasino  hästkapplöpningar, vilket  helt briljant  det befinner sig förkyla utstött. nNi kan spela bekvämligheten itu ditt eget boning. Alltsammans du behöver är en datamaskin, en aktiv-länk en kreditkort .<br><br>Boston,  gång erkänt som litterära navet inom Förenta staterna bär kungen till befinna en mitten förut , medicin och proffs gymnastik. Det  metropol med  samt sed och flertal av de top 10 Boston distrikt nyheterna 2007 speglar karaktären från anropet plats lokalbefolkningen Beantown. Styrande 10 Boston Distrikt nyheter 2007 inkluderar enskilda, kunnig, politiska, atletisk kulturella händelser.<br><br>Det befinner sig även värdefullt överväger länge hemsidan äger varit verksamma nKolla webbplatsen befinner sig licensierad och kontrollerad från någon erkänd . Därtill visas pro prestigefyllda utmärkelser, såsom kan nämna nya casinobonus ett högsta hög kvalitet webbplats.<br><br>icke avundas alternativt åtfölja instansen från dom började på en hög inskränka poker , blomstrande en bamse hop kontanter. Alltför vanligtvis  missbedömer deras personliga fallenhet rang och spelar färdigheter. Igenom att anta denna ,   mer förmodligen att accelerera din finansiella institution-roll i framtiden. Sådana vinster kommer att effektuera innerligt mer defekt stora. Prov  serva  helt för fartfyllt. i flera andra deg att företa satsningar är [http://www.google.Co.uk/search?hl=en&gl=us&tbm=nws&q=titeln+p%C3%A5&gs_l=news titeln på] spelet. Mig försäkrar du att avsevärt strax denna typ av någon människa kommer att informera hur han äger förlagt sin bank-roll fullkomligt  alldenstund han inneha varit "mycket otur" gällande något sätt tar någon chansning genom att övervara kvantiteter korresponderande din bankrulle  icke givetvis  deltar inom liten gränser begagna kontanter exakt vunnit villig ett freeroll.<br><br>nRetur  inflytande, villig streck casino Miami Jai-Alai, infört att det började  87 miljoner dollar i finansiering förut ett online casino tillväxt. Omedelbart när byggnaden utförs närapå350 nya positioner bestå fyllda före dess invigningen januari inkluderade  renovering bruten  kasinot och extra bruten 1. 000 nya slots maskiner.<br><br>If you have any questions relating to where and exactly how to make use of [http://punterpedia.com/wiki/What_To_Do_About_Nya_Online_Casinon_Before_It_s_Too_Late nya internet svenska casino], you can contact us at our [http://search.huffingtonpost.com/search?q=web+site&s_it=header_form_v1 web site].
:<math> \textbf{a} = a_0 + a_1 X + a_2 X^2 + \cdots + a_{N-2} X^{N-2} + a_{N-1} X^{N-1} </math>
 
NTRU is actually a parameterised family of cryptosystems; each system is specified by three integer parameters (''N'', ''p'', ''q'') which represent the maximal degree <math> \ N-1 </math> for all polynomials in the truncated ring ''R'', a small modulus and a large modulus, respectively, where it is assumed that ''N'' is [[prime number|prime]], ''q'' is always larger than ''p'', and ''p'' and ''q'' are [[coprime]]; and four sets of polynomials <math> \ \mathcal{L}_f, \mathcal{L}_g, \mathcal{L}_m </math> and <math> \ \mathcal{L}_r </math> (a polynomial part of the private key, a polynomial for generation of the public key, the message and a blinding value, respectively), all of degree at most <math> \ N-1 </math>.
 
It relies on the presumed difficulty of [[factorization|factoring]] certain polynomials in such rings into a quotient of two polynomials having very small coefficientsBreaking the cryptosystem is strongly related, though not equivalent, to the algorithmic problem of [[lattice reduction]] (solving the [[closest vector problem]]) in certain [[lattice (group)|lattice]]s. Careful choice of parameters is necessary to thwart some published attacks.
 
Since both encryption and decryption use only simple polynomial multiplication, these operations are very fast compared to other asymmetric encryption schemes, such as RSA, [[ElGamal encryption|El Gamal]] and [[elliptic curve cryptography]]. However, NTRUEncrypt has not yet undergone a comparable amount of cryptographic analysis.
 
A related algorithm is the [[NTRUSign]] [[digital signature]] algorithm.
 
==History==
 
The NTRUEncrypt Public Key Cryptosystem is a relatively new cryptosystem.
The first version of the system, which was simply called NTRU, was developed around 1996 by three mathematicians (J. Hoffstein, J.Pipher and J.H. [[Joseph H. Silverman|Silverman]]). In 1996 these mathematicians together with D. Lieman founded the [[NTRU Cryptosystems, Inc.]] and were given a [http://grouper.ieee.org/groups/802/15/pub/Patent_Letters/15.3/ntru%2015.3.pdf patent] on the cryptosystem.
 
At first the cryptosystem sometimes failed to decrypt a message back to the original message even though the message was encrypted correctly. Even though the system sometimes failed to decrypt, the developers considered it a public key cryptosystem and thereby based their security claims on the assumption that this system was a public key cryptosystem.
 
During the last ten years people have been working on improving the cryptosystem. Since the first presentation of the cryptosystem, some changes were made to improve both the performance of the system and its security. Most performance improvements were focussed on speeding up the process, rather than fixing the problem of incorrect decryption. Up till 2005 literature can be found that describes the decryption failures of the NTRUEncrypt. As for security, since the first version of the NTRUEncrypt, new parameters have been introduced that seem secure for all currently known attacks and reasonable increase in computation power.
Now the system is fully accepted to IEEE P1363 standards under the specifications for lattice-based public-key cryptography ([[IEEE P1363|IEEE P1363.1]]).
Because of the speed of the NTRUEncrypt Public Key Cryptosystem (see http://bench.cr.yp.to for benchmarking results) and its low memory use (see [[#Table 1: Parameters|below]]){{Dubious|date=June 2010}}, it can be used in applications such as mobile devices and [[Smart-card]]s.
In April 2011, NTRUEncrypt was accepted as a X9.98 Standard, for use in the financial services industry.<ref>http://www.businesswire.com/news/home/20110411005309/en/Security-Innovation%E2%80%99s-NTRUEncrypt-Adopted-X9-Standard-Data</ref>
 
==Public key generation==
 
Sending a secret message from Alice to Bob requires the generation of a public and a private key. The public key is known by both Alice and Bob and the private key is only known by Bob. To generate the key pair two polynomials '''f''' and '''g''', with coefficients much smaller than ''q'', with degree at most <math> \  N-1 </math> and with coefficients in {-1,0,1} are required. They can be considered as representations of the residue classes of polynomials modulo <math> \ X^N-1 </math> in ''R''. The polynomial <math> \textbf{f} \in L_f </math> must satisfy the additional requirement that the inverses modulo ''q'' and modulo ''p'' (computed using the [[Euclidean algorithm]]) exist, which means that
<math> \ \textbf{f} \cdot \textbf{f}_p = 1 \pmod p </math> and <math> \ \textbf{f} \cdot \textbf{f}_q = 1 \pmod q </math> must hold.
So when the chosen '''f''' is not invertible, Bob has to go back and try another '''f'''.
 
Both '''f''' and <math> \ \mathbf{f}_p </math> are Bob’s private key. The public key '''h''' is generated computing the quantity
:<math> \textbf{h} = p\textbf{f}_q \cdot \textbf{g} \pmod q. </math>
 
'''Example''':
In this example the parameters (''N'', ''p'', ''q'') will have the values ''N'' = 11, ''p'' = 3 and ''q'' = 32 and therefore the polynomials '''f''' and '''g''' are of degree at most 10. The system parameters (''N'', ''p'', ''q'') are known to everybody. The polynomials are randomly chosen, so suppose they are represented by
 
:<math> \textbf{f} = -1 + X + X^2 - X^4 + X^6 +X^9 - X^{10} </math>
:<math> \textbf{g} = -1 + X^2 +X^3 + X^5 -X^8 - X^{10} </math>
 
Using the Euclidean algorithm the inverse of '''f''' modulo ''p'' and modulo ''q'', respectively, is computed
 
:<math> \textbf{f}_p = 1 + 2X + 2X^3 +2X^4 + X^5 +2X^7 + X^8+2X^9 \pmod 3 </math>
:<math> \textbf{f}_q = 5 + 9X +6X^2+16X^3 + 4X^4 +15X^5 +16X^6+22X^7+20X^8+18X^9+30X^{10} \pmod {32} </math>
 
Which creates the public key '''h''' (known to both Alice and Bob) computing the product
 
:<math> \textbf{h} = p\textbf{f}_q \cdot \textbf{g} \pmod {32} = 8 + 25X +22X^2+20X^3 + 12X^4 +24X^5 +15X^6+19X^7+12X^8+19X^9+16X^{10} \pmod {32} </math>
 
==Encryption==
 
Alice, who wants to send a secret message to Bob, puts her message in the form of a polynomial '''m''' with coefficients {-1,0,1}. In modern applications of the encryption, the message polynomial can be translated in a binary or ternary representation.
After creating the message polynomial, Alice chooses randomly a polynomial '''r''' with small coefficients (not restricted to the set {-1,0,1}), that is meant to obscure the message.
 
With Bob’s public key '''h''' the encrypted message '''e''' is computed:
:<math> \textbf{e} = \textbf{r} \cdot \textbf{h} + \textbf{m} \pmod q </math>
 
This ciphertext hides Alice’s messages and can be sent safely to Bob.
 
'''Example''':
Assume that Alice wants to send a message that can be written as polynomial
:<math> \textbf{m} = -1 + X^3 - X^4-X^8+X^9+X^{10} </math>
and that the randomly chosen ‘blinding value’ can be expressed as
:<math> \textbf{r} = -1+X^2+X^3+X^4-X^5-X^7 </math>
 
The ciphertext '''e''' that represents her encrypted message to Bob will look like
:<math> \textbf{e} = \textbf{r} \cdot \textbf{h} + \textbf{m} \pmod {32} = 14 + 11X+26X^2+24X^3+14X^4+16X^5+30X^6+7X^7+25X^8+6X^9+19X^{10} \pmod {32} </math>
 
==Decryption==
Anybody knowing '''r''' could compute the message '''m'''; so '''r''' must not be revealed by Alice. In addition to the publicly available information, Bob knows his own private key. Here is how he can obtain '''m''':
First he multiplies the encrypted message '''e''' and part of his private key '''f'''
:<math> \textbf{a} = \textbf{f} \cdot \textbf{e} \pmod q </math>
 
By rewriting the polynomials, this equation is actually representing the following computation:
 
:<math> \textbf{a} = \textbf{f} \cdot \textbf{e} \pmod q </math>
:<math> \textbf{a} = \textbf{f} \cdot (\textbf{r} \cdot \textbf{h}+\textbf{m}) \pmod q </math>
:<math> \textbf{a} = \textbf{f} \cdot (\textbf{r} \cdot p\textbf{f}_q \cdot \textbf{g} + \textbf{m}) \pmod q </math>
:<math> \textbf{a} = p\textbf{r} \cdot \textbf{g} + \textbf{f} \cdot \textbf{m} \pmod q </math>
 
Instead of choosing the coefficients of '''a''' between 0 and ''q'' – 1 they are chosen in the interval [-''q''/2, ''q''/2] to prevent that the original message may not be properly recovered since Alice chooses the coordinates of her message '''m''' in the interval [-''p''/2, ''p''/2]. This implies that all coefficients of <math> \ p\textbf{r} \cdot \textbf{g} + \textbf{f} \cdot \textbf{m} </math> already lie within the interval [-''q''/2, ''q''/2] because the polynomials '''r''', '''g''', '''f''' and '''m''' and prime ''p'' all have coefficients that are small compared to ''q''. This means that all coefficients are left unchanged during reducing modulo ''q'' and that the original message may be recovered properly.
 
The next step will be to calculate '''a''' modulo ''p'':
 
:<math> \textbf{b} = \textbf{a} \pmod p = \textbf{f} \cdot \textbf{m} \pmod p </math>
because <math> \ p\textbf{r} \cdot \textbf{g} \pmod p =0 </math>.
 
Knowing '''b''' Bob can use the other part of his private key <math> \ \left(\textbf{f}_p \right)</math> to recover Alice’s message by multiplication of '''b''' and <math> \ \textbf{f}_p </math>
 
:<math> \textbf{c} = \textbf{f}_p \cdot \textbf{b} = \textbf{f}_p \cdot \textbf{f} \cdot \textbf{m} \pmod p </math>
:<math> \textbf{c} = \textbf{m} \pmod p </math>
 
because the property <math> \ \textbf{f} \cdot \textbf{f}_p =1 \pmod p </math> was required for <math> \ \textbf{f}_p </math>.
 
'''Example''':
The encrypted message '''e''' from Alice to Bob is multiplied with polynomial '''f'''
:<math> \textbf{a} = \textbf{f} \cdot \textbf{e} \pmod {32} = 3 -7X-10X^2-11X^3+10X^4+7X^5+6X^6+7X^7+5X^8-3X^9-7X^{10} \pmod {32}, </math>
where Bob uses the interval [-''q''/2, ''q''/2] instead of the interval [0, ''q'' – 1] for the coefficients of polynomial '''a''' to prevent that the original message may not be recovered correctly.
 
Reducing the coefficients of '''a''' mod ''p'' results in
:<math> \textbf{b} = \textbf{a} \pmod 3 = -X-X^2+X^3+X^4+X^5+X^7-X^8-X^{10} \pmod 3 </math>
which equals <math> \ \textbf{b} = \textbf{f} \cdot \textbf{m}\pmod 3 </math>.
 
In the last step the result is multiplied with <math> \ \textbf{f}_p </math> from Bob’s private key to end up with the original message '''m'''
:<math> \textbf{c} = \textbf{f}_p \cdot \textbf{b} = \textbf{f}_p \cdot \textbf{f} \cdot \textbf{m} \pmod 3 = \textbf{m} \pmod 3 </math>
:<math> \textbf{c} = -1+X^3-X^4-X^8+X^9+X^{10} </math>
Which indeed is the original message Alice has sent to Bob!
 
==Attacks==
 
Since the proposal of NTRU several attacks on the NTRUEncrypt public key cryptosystem have been introduced. Most attacks are focused on making a total break by finding the secret key '''f''' instead of just recovering the message '''m'''.
If '''f''' is known to have very few non-zero coefficients Eve can successfully mount a [[brute force attack]] by trying all values for '''f'''. When Eve wants to know whether '''f'''´ is the secret key, she simply calculates <math> \ \textbf{f}^{'} \cdot \textbf{h} \pmod q </math>. If it has small coefficients it might be the secret key '''f''', and Eve can test if '''f'''´ is the secret key by using it to decrypt a message she encrypted herself.
Eve could also try values of '''g''' and test if  <math> \ \textbf{g}^{'} \cdot \textbf{h}^{-1} \pmod q </math>has small values.
 
It is possible to mount a [[meet-in-the-middle attack]] which is more powerful. It can cut the search time by square root. The attack is based on the property that <math> \ \textbf{f} \cdot \textbf{h} = \textbf{g} \pmod q </math>.
 
Eve wants to find
<math> \ \textbf{f}_1 </math> and <math> \ \textbf{f}_2 </math> such that <math> \ \textbf{f} = \textbf{f}_1 + \textbf{f}_2 </math> holds and such that they have the property
:<math> \left( \textbf{f}_1+\textbf{f}_2 \right) \cdot \textbf{h} = \textbf{g} \pmod q </math>
:<math> \textbf{f}_1 \cdot \textbf{h} = \textbf{g} -\textbf{f}_2 \cdot \textbf{h} \pmod q</math>
 
If '''f''' has ''d'' one’s and ''N''-''d'' zero’s, then Eve creates all possible <math> \ \textbf{f}_1 </math> and <math> \ \textbf{f}_2 </math> in which they both have length <math> \ \frac{1}{2} N </math> (e.g. <math> \ \textbf{f}_1 </math> covers the <math> \ \frac{1}{2} N </math> lowest coefficients of '''f''' and <math> \ \textbf{f}_2 </math> the highest)
with ''d''/2 one’s. Then she computes <math> \textbf{f}_1 \cdot \textbf{h} \pmod q </math> for all <math> \ \textbf{f}_1 </math> and orders them in bins based on the first k coordinates. After that she computes all <math> \ -\textbf{f}_2 \cdot \textbf{h} \pmod q </math> and orders them in bins not only based on the first k coordinates, but also based on what happens if you add 1 to the first k coordinates. Then you check the bins that contain both <math> \ \textbf{f}_1 </math> and <math> \ \textbf{f}_2 </math> and see if the property <math> \ \textbf{f}_1 \cdot \textbf{h} = \textbf{g} -\textbf{f}_2 \cdot \textbf{h} \pmod q </math> holds.
 
The lattice reduction attack is one of the best known and one of the most practical methods to break the NTRUEncrypt. In a way it can be compared to the factorization of the modulus in RSA. The most used algorithm for the lattice reduction attack is the [[Lenstra-Lenstra-Lovász lattice reduction algorithm|Lenstra-Lenstra-Lovàsz algorithm]].
Because the public key '''h''' contains both '''f''' and '''g''' one can try to obtain them from '''h'''. It is however too hard to find the secret key when the NTRUEncrypt parameters are chosen secure enough. The lattice reduction attack becomes harder if the dimension of the lattice gets bigger and the shortest vector gets longer.
   
The [[chosen ciphertext attack]] is also a method which recovers the secret key '''f''' and thereby results in a total break. In this attack Eve tries to obtain her own message from the ciphertext and thereby tries to obtain the secret key. In this attack Eve doesn’t have any interaction with Bob.
 
'''How it works''':
 
First Eve creates a cipher text <math> \ \textbf{e} = c\textbf{h} + c </math> such that <math> \ c = 0 \pmod p, c < \frac{q}{2} </math> and <math> \ 2c > \frac{q}{2} </math>
When Eve writes down the steps to deciphers e (without actually calculating the values since she does not know f) she finds <math> \ \textbf{a} = \textbf{f} \cdot \textbf{e} \pmod q </math>:
 
:<math> \textbf{a} = \textbf{f} \left(c\textbf{h} + c\right) \pmod q </math>
:<math> \textbf{a} = c\textbf{g} +c\textbf{f} \pmod q </math>
:<math> \textbf{a} = c\textbf{g} + c\textbf{f} -qK </math>
 
In which <math> \ K = \sum k_i x^i </math> such that
:<math>k_i=\begin{cases} 1 \ \ \qquad \text{if the} \ i^{th} \ \text{coefficient of} \ \textbf{f} \ \text{and} \ \textbf{g} \ \text{is} \ 1 \\ -1 \qquad \text{if the} \ i^{th} \ \text{coefficient of} \ \textbf{f} \ \text{and} \ \textbf{g} \ \text{is} \ -1\\ 0 \ \ \qquad \text{Otherwise}\end{cases}</math>
 
'''Example''':
:<math> \textbf{f} = -1+X+X^2-X^4+X^6+X^9-X^{10} </math>
:<math> \textbf{g} = -1 +X^2+X^3+X^5-X^8-X^{10} </math>
 
Then ''K'' becomes <math> \ K = -1+X^2-X^{10} </math>.
 
Reducing the coefficients of polynomials '''a''' mod ''p'' really reduces the coefficients of <math> \ c\textbf{g}+c\textbf{f}-qK \pmod p </math>. After multiplication with <math> \ \textbf{f}_p </math>, Eve finds:
:<math> \textbf{m} = c\textbf{f}_p \cdot \textbf{g}+c\textbf{f}_p \cdot \textbf{f}-q\textbf{f}_p \cdot K \pmod p </math>
:<math> \textbf{m} = c\textbf{h}+c -q\textbf{f}_p \cdot K \pmod p </math>
 
Because c was chosen to be a multiple of ''p'', '''m''' can be written as
:<math> \textbf{m} = -q\textbf{f}_p \cdot K \pmod p </math>
 
Which means that <math> \ \textbf{f} = -qK \cdot \textbf{m}^{-1} \pmod p </math>.
 
Now if '''f''' and '''g''' have few coefficients which are the same at the same factors, ''K'' has few non zero coefficients and is thereby small. By trying different values of ''K'' the attacker can recover '''f'''.
 
By encrypting and decrypting a message according to the NTRUEncrypt the attacker can check whether the function '''f''' is the correct secret key or not.
 
==Security and performance improvements==
 
Using the latest suggested parameters (see [[#Table 1: Parameters|below]]) the NTRUEncrypt public key cryptosystem is secure to most attacks. There continues however to be a struggle between performance and security. It is hard to improve the security without slowing down the speed, and vice versa.
 
One way to speed up the process without damaging the effectiveness of the algorithm, is to make some changes in the secret key '''f'''.
First, construct '''f''' such that <math> \ \textbf{f} = 1+p\textbf{F} </math>, in which '''F''' is a small polynomial (i.e. coefficients {-1,0, 1}). By constructing '''f''' this way, '''f''' is invertible mod ''p''. In fact <math> \ \textbf{f}^{-1} = 1\pmod p </math>, which means that Bob does not have to actually calculate the inverse and that Bob does not have to conduct the second step of decryption. Therefore constructing '''f''' this way saves a lot of time but it does not affect the security of the NTRUEncrypt because it is only easier to find <math> \ \textbf{f}_p </math> but '''f''' is still hard to recover.
In this case '''f''' has coefficients different from -1, 0 or 1, because of the multiplication by ''p''. But because Bob multiplies by ''p'' to generate the public key '''h''', and later on reduces the ciphertext modulo ''p'', this will not have an effect on the encryption method.
 
Second, '''f''' can be written as the product of multiple polynomials, such that the polynomials have many zero coefficients. This way fewer calculations have to be conducted.
 
In most commercial applications of the NTRUEncrypt, the parameter ''N''=251 is used. To avoid lattice attacks, brute force attacks and meet-in-the-middle attacks, '''f''' and '''g''' should have about 72 non-zero coefficients.
 
According to the latest research <ref name="publish">[http://www.securityinnovation.com/security-lab/crypto/155.html NTRU PKCS Parameters]</ref> the following parameters are considered secure:
 
===Table 1: Parameters===
{| class="wikitable"
|-
!
! '''N'''
! '''q'''
! '''p''' 
|-
| Moderate Security
| 167
| 128
| 3
|-
| Standard Security
| 251
| 128
| 3
|-
| High Security
| 347
| 128
| 3
|-
| Highest Security
| 503
| 256
| 3
|}
 
== References==
{{Reflist}}
* Jaulmes, E. and Joux, A. A Chosen-Ciphertext Attack against NTRU. Lecture notes in computer science; Vol 1880. Proceedings of the 20th Annual International Cryptology Conference on Advances in Cryptography. pp.&nbsp;20–35, 2000.
* Jeffrey Hoffstein, Jill Pipher, Joseph H. Silverman. [http://www.ntru.com/cryptolab/pdf/ANTS97.pdf NTRU: A Ring Based Public Key Cryptosystem]. In Algorithmic Number Theory (ANTS III), Portland, OR, June 1998, J.P. Buhler (ed.), Lecture Notes in Computer Science 1423, Springer-Verlag, Berlin, 1998, 267-288.
* Howgrave-Graham, N., Silverman, J.H. & Whyte, W., [http://www.ntru.com/cryptolab/pdf/NTRUTech004v2.pdf Meet-In-The-Middle Attack on a NTRU Private Key].
* J. Hoffstein, J. Silverman. [http://www.ntru.com/cryptolab/pdf/TECH_ARTICLE_OPT.pdf Optimizations for NTRU]. Public-Key Cryptography and Computational Number Theory (Warsaw, September 11–15, 2000), DeGruyter, to appear.
* A. C. Atici, L. Batina, J. Fan & I. Verbauwhede. [http://www.cosic.esat.kuleuven.be/publications/article-1122.pdf Low-cost implementations of NTRU for pervasive security].
 
== External links ==
* [https://www.securityinnovation.com/products/encryption-libraries/ntru-cryptography.html/ NTRU technical website]
* [http://grouper.ieee.org/groups/1363 The IEEE P1363 Home Page]
* [http://www.securityinnovation.com/  Security Innovation (acquired NTRU Cryptosystems, Inc.)]
* [http://tbuktu.github.io/ntru Open Source BSD license implementation of NTRUEncrypt]
* [https://github.com/NTRUOpenSourceProject/ntru-crypto/ Open Source GPL v2 license of NTRUEncrypt]
* [http://www.yassl.com/yaSSL/Home.html - Embedded SSL Library offering cipher suites utilizing NTRU]
 
{{Cryptography navbox | public-key}}
 
{{DEFAULTSORT:Ntruencrypt}}
[[Category:Public-key encryption schemes]]
[[Category:Lattice-based cryptography]]

Revision as of 21:07, 19 October 2013

Template:More footnotesThe NTRUEncrypt public key cryptosystem, also known as the NTRU encryption algorithm, is a lattice-based alternative to RSA and ECC and is based on the shortest vector problem in a lattice (which is not known to be breakable using quantum computers). Operations are based on objects in a truncated polynomial ring with convolution multiplication and all polynomials in the ring have integer coefficients and degree at most N-1:

NTRU is actually a parameterised family of cryptosystems; each system is specified by three integer parameters (N, p, q) which represent the maximal degree for all polynomials in the truncated ring R, a small modulus and a large modulus, respectively, where it is assumed that N is prime, q is always larger than p, and p and q are coprime; and four sets of polynomials and (a polynomial part of the private key, a polynomial for generation of the public key, the message and a blinding value, respectively), all of degree at most .

It relies on the presumed difficulty of factoring certain polynomials in such rings into a quotient of two polynomials having very small coefficients. Breaking the cryptosystem is strongly related, though not equivalent, to the algorithmic problem of lattice reduction (solving the closest vector problem) in certain lattices. Careful choice of parameters is necessary to thwart some published attacks.

Since both encryption and decryption use only simple polynomial multiplication, these operations are very fast compared to other asymmetric encryption schemes, such as RSA, El Gamal and elliptic curve cryptography. However, NTRUEncrypt has not yet undergone a comparable amount of cryptographic analysis.

A related algorithm is the NTRUSign digital signature algorithm.

History

The NTRUEncrypt Public Key Cryptosystem is a relatively new cryptosystem. The first version of the system, which was simply called NTRU, was developed around 1996 by three mathematicians (J. Hoffstein, J.Pipher and J.H. Silverman). In 1996 these mathematicians together with D. Lieman founded the NTRU Cryptosystems, Inc. and were given a patent on the cryptosystem.

At first the cryptosystem sometimes failed to decrypt a message back to the original message even though the message was encrypted correctly. Even though the system sometimes failed to decrypt, the developers considered it a public key cryptosystem and thereby based their security claims on the assumption that this system was a public key cryptosystem.

During the last ten years people have been working on improving the cryptosystem. Since the first presentation of the cryptosystem, some changes were made to improve both the performance of the system and its security. Most performance improvements were focussed on speeding up the process, rather than fixing the problem of incorrect decryption. Up till 2005 literature can be found that describes the decryption failures of the NTRUEncrypt. As for security, since the first version of the NTRUEncrypt, new parameters have been introduced that seem secure for all currently known attacks and reasonable increase in computation power. Now the system is fully accepted to IEEE P1363 standards under the specifications for lattice-based public-key cryptography (IEEE P1363.1). Because of the speed of the NTRUEncrypt Public Key Cryptosystem (see http://bench.cr.yp.to for benchmarking results) and its low memory use (see below)To succeed in selling a home, it is advisable be competent in real estate advertising and marketing, authorized, monetary, operational aspects, and other information and skills. This is essential as a result of you want to negotiate with more and more sophisticated buyers. You could outperform rivals, use latest technologies, and stay ahead of the fast altering market.

Home is where the center is, and choosing the right house is a part of guaranteeing a contented expertise in Singapore. Most expats sign up for a two-year lease with the option to resume, so it is value taking the time to choose a neighbourhood that has the services you want. The experts at Expat Realtor have compiled the next data that will help you negotiate your means by way of the property minefield. Some government state properties for rent. Over 2000 units available for lease however occupancy is often excessive. Some properties come under a bidding system. Their property brokers embody DTZ and United Premas. Up to date serviced residences located just off Orchard Highway. one hundred sixty Orchard Highway, #06-01 Orchard Level, Singapore 238842. Institute Of Property Agents

There is no such thing as a deal too small. Property agents who're willing to find time for any deal even when the commission is small are those you want in your side. They also show humbleness and might relate with the average Singaporean higher. Relentlessly pursuing any deal, calling prospects even without being prompted. Even when they get rejected a hundred times, they still come back for more. These are the property brokers who will find consumers what they want finally, and who would be the most profitable in what they do. four. Honesty and Integrity

As a realtor, you're our own business. Due to this fact, it is imperative that you handle yours prices and spend money correctly in order to market your property successfully. Also, beware of mentors who always ask you to pay for pointless costs. Such mentors typically are recruiting to develop a staff and see you as a option to defray advertising and marketing prices. For foreigners who want to register with CEA as salespersons, they might want to have a valid Employment Cross (EP) issued by the Ministry of Manpower (MOM). They should consult an property agent that is ready to assist their future registration software, who would then examine with CEA. Thereafter, after they register for the RES Course, they might want to produce a letter of assist from the property agent."

Main Real Property Brokers with in depth local knowledge, Carole Ann, Elizabeth and their group of extremely skilled property consultants provide a personalised service, for those looking to buy, lease or promote in Singapore. Relocation companies out there. Properties for the aesthete. Boutique real property agency for architecturally distinguished, unique properties for rent and on the market. Caters to the niche market of design-savvy people. Sale, letting and property management and taxation services. three Shenton Means, #10-08 Shenton Home, Singapore 068805. Buy property, promote or leasing estate company. 430 Lorong 6 Toa Payoh, #08-01 OrangeTee Constructing, Singapore 319402. HIGH Date / Age of property Estate Agents and Home Search Services Property Information Highlights Prime Achievers

From the above info, you may see that saving on agent's commission will not cover the expenses wanted to market your home efficiently. As well as, it's essential make investments a whole lot of time, vitality and effort. By taking yourself away from your work and other endeavors, additionally, you will incur unnecessary opportunity prices. There may be additionally no assurance you could beat the market and get the outcomes you need. That is why you want an agent - not simply an ordinary agent - you want knowledgeable and competent specialist, geared up with the best instruments and knowledge to serve you and lead you to success! Within the midst of this ‘uniquely Singapore' Property GSS, our most needed foreign customers are nowhere to be seen. Different types of Public Residential properties

Based on Kelvin, other agents may also make use of your agent's listings. "If your pricing is on the excessive aspect, these brokers may use your house to persuade their patrons why Http://Trafficstooges.Com/Singapore-Property-Condominium they should purchase another residence." To counter this, Kelvin says it is crucial for your agent to supply a current market analysis before putting up your private home for sale. "This helps you worth your property appropriately and realistically." When property is made accessible (HIGH is issued) to the client. Becoming a successful property agent is a distinct story altogether! Hi, I would like to ask how I might be a property agent and whether there are courses I might take. And if I need to be at a certain age. www. Property BUYER com.sg (your impartial Mortgage Advisor) In private properties in, it can be used in applications such as mobile devices and Smart-cards. In April 2011, NTRUEncrypt was accepted as a X9.98 Standard, for use in the financial services industry.[1]

Public key generation

Sending a secret message from Alice to Bob requires the generation of a public and a private key. The public key is known by both Alice and Bob and the private key is only known by Bob. To generate the key pair two polynomials f and g, with coefficients much smaller than q, with degree at most and with coefficients in {-1,0,1} are required. They can be considered as representations of the residue classes of polynomials modulo in R. The polynomial must satisfy the additional requirement that the inverses modulo q and modulo p (computed using the Euclidean algorithm) exist, which means that and must hold. So when the chosen f is not invertible, Bob has to go back and try another f.

Both f and are Bob’s private key. The public key h is generated computing the quantity

Example: In this example the parameters (N, p, q) will have the values N = 11, p = 3 and q = 32 and therefore the polynomials f and g are of degree at most 10. The system parameters (N, p, q) are known to everybody. The polynomials are randomly chosen, so suppose they are represented by

Using the Euclidean algorithm the inverse of f modulo p and modulo q, respectively, is computed

Which creates the public key h (known to both Alice and Bob) computing the product

Encryption

Alice, who wants to send a secret message to Bob, puts her message in the form of a polynomial m with coefficients {-1,0,1}. In modern applications of the encryption, the message polynomial can be translated in a binary or ternary representation. After creating the message polynomial, Alice chooses randomly a polynomial r with small coefficients (not restricted to the set {-1,0,1}), that is meant to obscure the message.

With Bob’s public key h the encrypted message e is computed:

This ciphertext hides Alice’s messages and can be sent safely to Bob.

Example: Assume that Alice wants to send a message that can be written as polynomial

and that the randomly chosen ‘blinding value’ can be expressed as

The ciphertext e that represents her encrypted message to Bob will look like

Decryption

Anybody knowing r could compute the message m; so r must not be revealed by Alice. In addition to the publicly available information, Bob knows his own private key. Here is how he can obtain m: First he multiplies the encrypted message e and part of his private key f

By rewriting the polynomials, this equation is actually representing the following computation:

Instead of choosing the coefficients of a between 0 and q – 1 they are chosen in the interval [-q/2, q/2] to prevent that the original message may not be properly recovered since Alice chooses the coordinates of her message m in the interval [-p/2, p/2]. This implies that all coefficients of already lie within the interval [-q/2, q/2] because the polynomials r, g, f and m and prime p all have coefficients that are small compared to q. This means that all coefficients are left unchanged during reducing modulo q and that the original message may be recovered properly.

The next step will be to calculate a modulo p:

because .

Knowing b Bob can use the other part of his private key to recover Alice’s message by multiplication of b and

because the property was required for .

Example: The encrypted message e from Alice to Bob is multiplied with polynomial f

where Bob uses the interval [-q/2, q/2] instead of the interval [0, q – 1] for the coefficients of polynomial a to prevent that the original message may not be recovered correctly.

Reducing the coefficients of a mod p results in

which equals .

In the last step the result is multiplied with from Bob’s private key to end up with the original message m

Which indeed is the original message Alice has sent to Bob!

Attacks

Since the proposal of NTRU several attacks on the NTRUEncrypt public key cryptosystem have been introduced. Most attacks are focused on making a total break by finding the secret key f instead of just recovering the message m. If f is known to have very few non-zero coefficients Eve can successfully mount a brute force attack by trying all values for f. When Eve wants to know whether f´ is the secret key, she simply calculates . If it has small coefficients it might be the secret key f, and Eve can test if f´ is the secret key by using it to decrypt a message she encrypted herself. Eve could also try values of g and test if has small values.

It is possible to mount a meet-in-the-middle attack which is more powerful. It can cut the search time by square root. The attack is based on the property that .

Eve wants to find and such that holds and such that they have the property

If f has d one’s and N-d zero’s, then Eve creates all possible and in which they both have length (e.g. covers the lowest coefficients of f and the highest) with d/2 one’s. Then she computes for all and orders them in bins based on the first k coordinates. After that she computes all and orders them in bins not only based on the first k coordinates, but also based on what happens if you add 1 to the first k coordinates. Then you check the bins that contain both and and see if the property holds.

The lattice reduction attack is one of the best known and one of the most practical methods to break the NTRUEncrypt. In a way it can be compared to the factorization of the modulus in RSA. The most used algorithm for the lattice reduction attack is the Lenstra-Lenstra-Lovàsz algorithm. Because the public key h contains both f and g one can try to obtain them from h. It is however too hard to find the secret key when the NTRUEncrypt parameters are chosen secure enough. The lattice reduction attack becomes harder if the dimension of the lattice gets bigger and the shortest vector gets longer.

The chosen ciphertext attack is also a method which recovers the secret key f and thereby results in a total break. In this attack Eve tries to obtain her own message from the ciphertext and thereby tries to obtain the secret key. In this attack Eve doesn’t have any interaction with Bob.

How it works:

First Eve creates a cipher text such that and When Eve writes down the steps to deciphers e (without actually calculating the values since she does not know f) she finds :

In which such that

Example:

Then K becomes .

Reducing the coefficients of polynomials a mod p really reduces the coefficients of . After multiplication with , Eve finds:

Because c was chosen to be a multiple of p, m can be written as

Which means that .

Now if f and g have few coefficients which are the same at the same factors, K has few non zero coefficients and is thereby small. By trying different values of K the attacker can recover f.

By encrypting and decrypting a message according to the NTRUEncrypt the attacker can check whether the function f is the correct secret key or not.

Security and performance improvements

Using the latest suggested parameters (see below) the NTRUEncrypt public key cryptosystem is secure to most attacks. There continues however to be a struggle between performance and security. It is hard to improve the security without slowing down the speed, and vice versa.

One way to speed up the process without damaging the effectiveness of the algorithm, is to make some changes in the secret key f. First, construct f such that , in which F is a small polynomial (i.e. coefficients {-1,0, 1}). By constructing f this way, f is invertible mod p. In fact , which means that Bob does not have to actually calculate the inverse and that Bob does not have to conduct the second step of decryption. Therefore constructing f this way saves a lot of time but it does not affect the security of the NTRUEncrypt because it is only easier to find but f is still hard to recover. In this case f has coefficients different from -1, 0 or 1, because of the multiplication by p. But because Bob multiplies by p to generate the public key h, and later on reduces the ciphertext modulo p, this will not have an effect on the encryption method.

Second, f can be written as the product of multiple polynomials, such that the polynomials have many zero coefficients. This way fewer calculations have to be conducted.

In most commercial applications of the NTRUEncrypt, the parameter N=251 is used. To avoid lattice attacks, brute force attacks and meet-in-the-middle attacks, f and g should have about 72 non-zero coefficients.

According to the latest research [2] the following parameters are considered secure:

Table 1: Parameters

N q p
Moderate Security 167 128 3
Standard Security 251 128 3
High Security 347 128 3
Highest Security 503 256 3

References

43 year old Petroleum Engineer Harry from Deep River, usually spends time with hobbies and interests like renting movies, property developers in singapore new condominium and vehicle racing. Constantly enjoys going to destinations like Camino Real de Tierra Adentro.

  • Jaulmes, E. and Joux, A. A Chosen-Ciphertext Attack against NTRU. Lecture notes in computer science; Vol 1880. Proceedings of the 20th Annual International Cryptology Conference on Advances in Cryptography. pp. 20–35, 2000.
  • Jeffrey Hoffstein, Jill Pipher, Joseph H. Silverman. NTRU: A Ring Based Public Key Cryptosystem. In Algorithmic Number Theory (ANTS III), Portland, OR, June 1998, J.P. Buhler (ed.), Lecture Notes in Computer Science 1423, Springer-Verlag, Berlin, 1998, 267-288.
  • Howgrave-Graham, N., Silverman, J.H. & Whyte, W., Meet-In-The-Middle Attack on a NTRU Private Key.
  • J. Hoffstein, J. Silverman. Optimizations for NTRU. Public-Key Cryptography and Computational Number Theory (Warsaw, September 11–15, 2000), DeGruyter, to appear.
  • A. C. Atici, L. Batina, J. Fan & I. Verbauwhede. Low-cost implementations of NTRU for pervasive security.

External links

Template:Cryptography navbox