NL9000593A - Werkwijze voor het modulair reduceren van getallen. - Google Patents

Werkwijze voor het modulair reduceren van getallen. Download PDF

Info

Publication number
NL9000593A
NL9000593A NL9000593A NL9000593A NL9000593A NL 9000593 A NL9000593 A NL 9000593A NL 9000593 A NL9000593 A NL 9000593A NL 9000593 A NL9000593 A NL 9000593A NL 9000593 A NL9000593 A NL 9000593A
Authority
NL
Netherlands
Prior art keywords
rtemp
residue
digit
modular reduction
exponentiation
Prior art date
Application number
NL9000593A
Other languages
English (en)
Original Assignee
Nederland Ptt
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nederland Ptt filed Critical Nederland Ptt
Priority to NL9000593A priority Critical patent/NL9000593A/nl
Priority to NO91910949A priority patent/NO910949L/no
Priority to ES91200523T priority patent/ES2055517T3/es
Priority to DE69101800T priority patent/DE69101800T2/de
Priority to DK91200523.8T priority patent/DK0449349T3/da
Priority to EP91200523A priority patent/EP0449349B1/en
Priority to AT9191200523T priority patent/ATE105097T1/de
Priority to FI911284A priority patent/FI911284A/fi
Publication of NL9000593A publication Critical patent/NL9000593A/nl

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3013Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • Signal Processing (AREA)
  • Electrotherapy Devices (AREA)
  • Complex Calculations (AREA)
  • Storage Device Security (AREA)
  • Spinning Or Twisting Of Yarns (AREA)
  • Control By Computers (AREA)
  • Control Of El Displays (AREA)
  • Mechanical Light Control Or Optical Switches (AREA)
  • Coupling Device And Connection With Printed Circuit (AREA)
  • Body Structure For Vehicles (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Pinball Game Machines (AREA)

Description

Titel: Werkwijze voor het modulair reduceren van getallen.
De uitvinding heeft betrekking op een werkwijze voor het ten behoeve van cryptografische berekeningen die gebaseerd zijn op het algemene discrete logaritme probleem in een b-tallig talstelsel modulair reduceren van een maximaal 2n-cijferig getal x ter verkrijging van een ten hoogste n-cijferig residu r, volgens de formule r = x (mod p), waarin p de gekozen modulus is.
Bij cryptografische technieken kan gebruik worden gemaakt van machtsverheffen modulo een groot priemgetal. Een voorbeeld daarvan is een cryptografische techniek die is gebaseerd op het discrete logaritme probleem dat door W. Diffie en M.E. Hellman werd beschreven in het artikel "New directions in Cryptography" in IEEE Trans. on Information Theory, vol. IT-22, pp 644-654, 1976.
In dit artikel is een discrete machtsverheffing modulo een priemgetal p beschreven om te gebruiken in een publiek sleuteldistributiesysteem. Dit zogenaamde DH-systeem maakt op de volgende wijze gebruik van publiek bekende boodschappen om een geheime gemeenschappelijke sleutel te construeren.
Kies een priemgetal p, waarvoor geldt dat p - 1 ten minste een grote priemfactor bezit, en een geheel getal z uit de verzameling {2,3,.....,p - 1}. Deze twee getallen worden publiek bekend gemaakt. Iedere gebruiker kiest nu willekeurig een getal x uit de verzameling {2,3,.....,p - 2}, houdt dit geheim en berekent het getal y = zx (mod p) . Twee gebruikers a en b sturen hun getallen y, d.w.z. respectievelijk ya en yt, naar elkaar. Gebruiker a kan met behulp van zijn eigen waarde van x, xa, en de ontvangen yb een geheime sleutel ka berekenen volgens: ka = ybXa = zXaXb (mod p) .
Gebruiker b kan met behulp van zijn eigen waarde van x, Xb/ en de ontvangen ya een geheime sleutel berekenen volgens: kb = yaxb = zxbXa (mod p) · Het zal duidelijk zijn dat geldt ka = kb = k en dat de gebruikers op deze wijze een gezamelijke geheime sleutel geconstrueerd hebben.
Omdat het nemen van de discrete logaritme tot op heden als praktisch ondoenlijk wordt beschouwd, is het praktisch ook ondoenlijk om uitgaande van de getallen ya en yb de gehele getallen xa en Xb of de sleutel k te berekenen. Andere methoden dan het nemen van de discrete logaritme om deze waarden te berekenen zijn tot op heden niet bekend.
Machtsverheffen modulo een groot priemgetal, waarbij eerst de machtsverheffing wordt uitgevoerd en het daardoor verkregen resultaat vervolgens wordt gereduceerd, leidt al snel tot onaanvaardbaar lange rekentijden, terwijl dan tevens de benodigde geheugencapaciteit zeer groot wordt.
Door D.E. Knuth is in "The Art of Computer Programming",
Vol. 2: Seminumerical Algorithms, 2nd edition, Addison Wesley, 1981, beschreven dat een machtsverheffing kan worden gedacht opgebouwd te zijn uit herhaald vermenigvuldigen en kwadrateren. Tevens is beschreven dat modulaire machtsverheffing vereenvoudigd kan worden door bij iedere vermenigvuldigingsstap en kwadrateringsstap gebruik te maken van modulaire reductie. Deze modulaire reductie vindt meestal plaats door gebruik te maken van een delingsalgoritme.
Wanneer de modulus p de deler is en het te reduceren getal x is, dan geeft de na deling verkregen rest r het gewenste resultaat; 'oftewel: x = q.p + r waarin q het quotiënt is, dit wordt in de onderhavige beschrijving genoteerd als r = x(mod p).
Wanneer men kans ziet de modulaire reductie te versnellen kan ook de machtsverheffing worden versneld en de uitvinding beoogt dan ook te voorzien in een methode voor het snel modulair reduceren van een groot getal uit een b-tallig talstelsel d.m.v. een iteratief delingsalgoritme. Dergelijke delingsalgoritmen zijn op zich bekend uit bijvoorbeeld het artikel " Fast algorithms for implementing RSA public key cryptosystem" van S.B. Mohan en B.S. Adiga in Electronics Letters, vol. 21, no: 17, August 1985, dat een iteratief delingsalgoritme beschrijft ten gebruike bij het RSA systeem, welk algoritme uitsluitend is uitgewerkt voor het 2-tallig stelsel en voor een samengestelde modulus, die is opgebouwd uit het produkt van twee grote en een aantal kleinere priemgetallen. Verder is uit het artikel " A practical fast exponentiation algorithm for public key" van H.R. Chivers; International Conference on Secure Communications Systems, London, 22-23 February 1984, een versneld delingsalgoritme beschreven ten gebruike bij het vercijfersysteem van Diffy en Hellman. Hierbij wordt echter voorgesteld gebruik te maken van residu-tabellen, hetgeen dikwijls in verband met de voor dergelijke tabellen benodigde geheugenruimte ongewenst is.
De uitvinding beoogt meer in het bijzonder te voorzien in een methode voor snelle modulaire reductie die in software efficiënt is te implementeren, bijvoorkeur met een minimum aan programmaregels, hetgeen in het bijzonder van groot belang is als dit programma aanwezig is in de op een zogenaamde smart card aanwezige processor. Aan deze doelstelling dient daarbij voldaan te worden zonder dat de veiligheid van het cryptografische protocol, ten behoeve waarvan de modulaire reductie wordt uitgevoerd, wordt verzwakt.
Voor een algemene beschrijving van de wijze waarop een cryptografisch systeem in combinatie met een smart card kan worden toegepast, wordt verwezen naar het artikel "The Smart Card: A high security tooi in EDP" van R.C. Ferreira in Philips Telecommunication and Data Review, PTR, Volume 47, no. 3, september 1989, pp 1 -19. Dit artikel beschrijft echter de toepassing bij cryptografische systemen waarin het discrete logaritme probleem niet optreedt.
Om aan bovenstaand beschreven doeleinden te voldoen voorziet de uitvinding in een werkwijze van bovengenoemde soort, waarbij voor de modulus p geldt p = bn - a, waarin 0 < a < b.
Meer in het bijzonder wordt de uitvinding gekenmerkt doordat het 2n-cijferig getal x telkens wordt gesplitst in twee n-cijferige getallen xh en xl volgens de formule x = (xfj . bn) + xl n-1 n-1 met xh = X Xi+n·^1 en xL = X xi.b* met 0 < xi ,xi+n < b; i=0 i=0 dat het residu r wordt bepaald door eerst te berekenen: rtemp — Xl + a · XH; dat vervolgens wordt bepaald of wordt voldaan aan: rtemp < bnr dat, indien dit het geval is, geldt: t = ^temp' dat, indien dit niet het geval is, een geheel getal c wordt berekend, dat bepaald wordt door de naar het dichtstbijzijnde gehele getal naar beneden afgeronde waarde van rtemp / bn, en ttemp wordt berekend volgens: rtemp = rtemp - c. bn en dat deze stap wordt herhaald totdat wordt voldaan aan: rtemp kn waarna geldt: r = rtemp·
De uitvinding kan op de volgende wijze nader worden toegelicht.
Stel dat x, het te reduceren getal, en r, het residu, gehele positieve getallen zijn en dat hun representatie in het b- tallig stelsel gegeven wordt door: 2n-l n-1 (x)b = Σ xi-bi en (r)b = Σ ri*b± met 0 < x± ,r£ <b. i=0 i=0
Voor de modulus p geldt dat n-1 (p)b - Σ Pi-b1 = bn - a met 0 < a < b en n>l.
i=0
De modulaire reductie kan nu als volgt worden uitgevoerd: (r)b Ξ (x)b (mod (p)b) = (x)b ” (OOb*(P)b) = (x)b - (k)b.bn + (k)b.a, waarbij (k)b zo gekozen is, dat aan deze vergelijking is voldaan.
Wanneer wordt aangenomen, dat gebruik gemaakt wordt van registers met een lengte van n cijfers, dan kan het getal (x)b door twee n-cijferige registers (Xü)b en (xi,)b worden weergegeven als: (x)b = ( (xh)b | (xl)b) - (xh)b·hn + (xl)b· n-1 n-1 met (xfi)b = Σ xi+n·bi (xL)b = Σ Xi·^1 i=0 i=0
Hieruit volgt dat indien (xn)b = (k)b wordt gekozen, de gereduceerde (x)b kan worden verkregen door bij (xL)b het getal a. (xH)b °P te tellen en dit, steeds met de na de optelling ontstane (XH)b/ zolang voort te zetten totdat (xH)b = 0 en dus (x)b < bn.
Het in de tekening getoonde stroomdiagram geeft meer gedetailleerd en voor een getal in het b-tallig stelsel de werkwijze volgens de uitvinding weer.
Wanneer voor een getal w in het b-tallig stelsel geldt: w = y.b + x, worden de functies low( ) en high( ) gedefinieerd als: low(w) = x en high(w) = y.
De lengte n = Lb(s) van een getal (s)b in het b-tallig stelsel volgt uit:
Lb(s) = max{i| (s)b ^ b1} + 1.
De modulaire reductie (r)b = (x)b (mod(bn - a)b) verloopt dan op de in het stroomdiagram getoonde wijze.
Blok 1 toont, dat bij de aanvang van de modulaire reductie van een getal (x)b, de lusvariabele i en de variabele CARRY gelijk aan 0 zijn, en dat de residuwaarden (r)b en (r')b gelijk aan (0)b zijn, terwijl n en a de tevoren bepaalde constanten zijn, die de modulus bepalen. Voor (x)b en voor (r)b gelden de bovenstaand reeds gegeven formules: 2n-l n-1 (x)b = Σ xi-b1 en (r)b = Σ ri-b1 met 0 < x± , rj. <b. i=0 i=0
In blok 2 wordt bepaald of de lengte van (x)b/ d.w.z. Lb(x), minus n groter is dan i. Indien dit het geval is, wordt in blok 3 een tijdelijk getal TEMP bepaald volgens TEMP = xi + a.xi+n + CARRY; terwijl vervolgens ri gelijk wordt aan low(TEMP) en de variabele CARRY gelijk aan high(TEMP). Vervolgens wordt in blok 4 de lusvariabele i met 1 opgehoogd, zodat deze gelijk wordt aan i + 1, en wordt teruggegaan naar blok 2. Wanneer op een bepaald moment in blok 2 geldt dat Lb(x) - n < i, dan wordt de modulaire reductie voortgezet in blok 5, waar wordt bepaald of CARRY groter is dan 0, indien dit niet het geval is, is het residu (r)b in principe bekend. Indien CARRY wel groter is dan 0, wordt eerst in blok 6 bepaald of i gelijk is aan n. Indien dit het geval is, wordt in blok 7 de lusvariabele i weer gelijk gesteld aan 0 en wordt de variabele CARRY vermenigvuldigd met de constante a, waarna verder gegaan wordt naar blok 8. Indien in blok 6 wordt vastgesteld dat i ongelijk is aan n, wordt eveneens verder gegaan naar blok 8. In blok 8 wordt TEMP gelijk gesteld aan TEMP = ri + CARRY terwijl dan ri gelijk wordt aan low(TEMP) en de variabele CARRY gelijk wordt aan high(TEMP). Vervolgens wordt in blok 9 de lusvariabele i met 1 opgehoogd, zodat deze gelijk wordt aan i + 1, en wordt opnieuw de lus doorlopen, beginnende met blok 5, totdat uiteindelijk geldt CARRY < 0, waarmee het residu in principe vastligt.
Indien in blok 5 het residu (r)b is bepaald, bestaat de mogelijkheid dat het residu (r)b toch groter is dan de modulus p, de kans hierop is a/bn.
Daarom wordt in blok 10 een hulpresidu (r')b = (r)b + a berekend en wordt in blok 11 gecontroleerd of de lengte van (r')b/ d.w.z. Lb(r'), inderdaad groter is dan n, indien dit niet het geval is was het berekende residu (r)b reeds het zuivere residu. Indien Lb(r') echter wel groter is dan n, wordt in blok 12 het zuivere residu (r)b berekend door de laatste n cijfers van (r')b te nemen. Blok 13 geeft het einde aan van de berekening van het residu rb- Zoals onderstaand nog zal worden toegelicht zijn in veel gevallen de stappen volgens de blokken 10, 11 en 12 overbodig, omdat wanneer in blok 5 is vastgesteld dat de CARRY niet groter is dan nul, reeds een n-cijferig residu is berekend, hetgeen in principe het doel van de werkwijze volgens de uitvinding is.
Met de werkwijze volgens de uitvinding zoals deze bovenstaand is toegelicht, is een modulaire reductie mogelijk met behulp van een beperkt aantal vermenigvuldigingen wanneer a > 1 en zelfs in het geheel geen vermenigvuldigingèn wanneer a = 1. Wanneer a = 1, wordt de lus in het stroomdiagram, die gevormd wordt door de blokken 2, 3 en 4/ ten hoogste n-maal doorlopen, zonder dat vermenigvuldigingen behoeven te worden uitgevoerd en wordt blok 7 ten hoogste eenmaal doorlopen,ook zonder dat daarbij vermenigvuldigingen nodig zijn. Wanneer a > 1, wordt de lus in het stroomdiagram, die gevormd wordt door de blokken 2, 3 en 4, ten hoogste n-maal doorlopen, waarbij in blok 3 ten hoogste n vermenigvuldigingen behoeven te worden uitgevoerd en wordt blok 7 ten hoogste tweemaal doorlopen,waarbij ten hoogste 2 vermenigvuldigingen nodig zijn, zodat, indien a > 1, het maximale aantal benodigde vermenigvuldigingen n + 2 is.
Het bovenstaand beschreven stroomdiagram geeft een toelichting van de werkwijze volgens de uitvinding voor een berekening in software, waarbij de gehele berekening van het n-cijferig residu (r)b van het 2n-cijferige getal (x)b in het b-tallig stelsel cijfer na cijfer wordt uitgevoerd. Het zal deskundigen echter direkt duidelijk zijn dat de werkwijze volgens de uitvinding ook op een uiterst efficiënte wijze in hardware is te implementeren, waarbij direkt vermenigvuldigingen met n-cijferige getallen worden uitgevoerd. De uitvinding zal aan de hand van een tweetal getalvoorbeelden in het tientallig stelsel, waarbij eenvoudigheidshalve gebruik wordt gemaakt van dergelijke vermenigvuldigingen met n-cijferige getallen, verder worden verduidelijkt.
In het tientallig stelsel geldt: b = 10. Verder wordt voor de modulus (p)io het getal 9991 gekozen, zodat n = 4 en a = bn - (p)ίο = 104 - 9991 = 0009.
In het eerste voorbeeld wordt het residu gevraagd van het getal 99980001.
Volgens de eerste stap van het algoritme wordt berekend: (xH)io-a + (xl)io = 9998 x 0009 + 0001 = 00089983 De carry, de nieuw gevormde (xh)i0/ blijkt dus gelijk te zijn aan 0008 en (xl)io = 9983, omdat de carry groter is dan nul wordt vervolgens berekend: carry x a + (xl)io = 0008 x 0009 + 9983 = 00010055. Opnieuw is de carry, de nieuw gevormde (xh)10/ groter dan nul, zodat weer berekend wordt carry x a + (xl)io = 0001 x 0009 + 55 = 0064.
De carry is nu gelijk aan nul en dus is het residu in principe bekend en gelijk aan de laatst berekende (xL)io - 0064. Zoals bovenstaand bij de beschrijving van het stroomdiagram reeds is opgemerkt, bestaat er een geringe kans dat het berekende residu (r)io groter is dan (p)io· Omdat de uitvinding echter in principe gericht is op het snel modulair reduceren van een 2n-cijferig getal naar een n-cijferig getal, is het van minder belang of het gevonden n-cijferig residu ook het zuivere residu is, of dat dit nog eenmaal de modulus teveel bevat. In het bovenstaand gegeven eerste voorbeeld is het duidelijk dat (r)io < (p)ior zodat een toelichting van de stappen volgens de blokken 10 - 12 in het stroomdiagram voor dit voorbeeld triviaal is. Door echter bij het gevonden n-cijferig residu de waarde van a op te tellen en te bepalen of de lengte van het daarmee berekende hulpresidu (r’)io groter is dan n, kan, zoals aan de hand van het volgende voorbeeld zal worden verduidelijkt, altijd het zuivere residu bepaald worden.
In het tweede voorbeeld wordt het residu van 19987 gevraagd. Volgens de eerste stap van het algoritme wordt berekend: (xh) 10 ·a + (xl)i0 = 0001 x 0009 + 9987 = 9996.
De carry is nu gelijk aan nul en het residu (r)io is dus in principe bekend, waarbij het echter niet zeker is of dit het zuivere residu is. Daarom wordt eerst nog berekend : (r')io = (r)io + a = 9996 + 0009 = 10005.
De waarde van (r')io blijkt groter te zijn dan n en het zuivere residu (r)io wordt dus bepaald door de laatste 4 cijfers van (r‘)io te nemen, zodat (r)io = 0005 blijkt te zijn.
De bovenstaand beschreven modulaire reductie is van belang voor het efficiënt en snel uit kunnen voeren van cryptografische methoden waarbij gebruik wordt gemaakt van machtsverheffing modulo een groot priemgetal, zoals het bovenstaand beschreven DH-systeem. Een aantal andere van deze cryptografische methoden zal onderstaand kort worden besproken.
Met het zogenaamde Three-Pass protocol kan met behulp van discrete machtsverheffing modulo een eventueel publiek bekend priemgetal p, een geheim m worden uitgewisseld. Dit geschiedt op de volgende wijze:
De gebruikers a en b kiezen evenals bij het DH-systeem beide een geheim willekeurig getal x, resp.xa en xb, maar berekenen nu beide een geheime x_1, die voldoet aan: x.x-1 = 1 (mod p - 1).
Als gebruiker a de geheime boodschap m naar gebruiker b wil zenden, berekent hij y = mXa (mod p) en stuurt dit naar b. Gebruiker b berekent nu: z = yXb = mXa.Xb (mod p) en stuurt dit terug naar a. Gebruiker a berekent nu: zXa = mXa-xb-Xa = mxb (mod p) en stuurt dit weer terug naar b. Gebruiker b kan hieruit de geheime boodschap berekenen via: -l -l (mxb)Xb = mxb.xb = m (mod p) ,
Een derde cryptografisch systeem staat bekend onder de naam Pohlig-Heliman (PH)-systeem, ook hierbij wordt gebruik gemaakt van een priemgetal p, waarvoor geldt dat p - 1 ten minste een grote priemfactor bezit. In het PH-systeem kiezen de gebruikers a en b geheime getallen xa en xb, zodanig dat geldt xaxb Ξ 1 (mod p - 1).
Een geheime boodschap m kan nu tussen a en b uitgewisseld worden met behulp van de volgende twee functies:
De vercijferfunctie Ea voor a en de ontcijferfunctie Db voor b wordt gegeven door:
Ea(y) = Db(y) = yXa (mod p)
De ontcijferfunctie Da voor a en de vercijferfunctie Eb voor b wordt gegeven door:
Da(y) = Eb(y) — yxb (mod p).

Claims (3)

1. Werkwijze voor het ten behoeve van cryptografische berekeningen die zijn gebaseerd op het algemene discrete logaritme probleem in een b-tallig talstelsel modulair reduceren van een maximaal 2n-cijferig getal x ter verkrijging van een ten hoogste n-cijferig residu r, volgens de formule r = x (mod p), waarin p de gekozen modulus is, met het kenmerk, dat p een n-cijferig getal is waarvoor geldt dat p = bn - a, met 0 < a < b.
2. Werkwijze volgens conclusie 1, met het kenmerk, dat het 2n-cijferig getal x telkens wordt gesplitst in twee n-cijferige getallen xh en xl volgens de formule x = (xn.bn) + xL n-1 n-1 met xh = Σ xi+n-fc>i en xL = ^ xi.b1 met 0 < xi ,xi+n < b; i-0 i=0 dat het residu r wordt bepaald door eerst te berekenen: rtemp = XL + a-xH; dat vervolgens wordt bepaald of wordt voldaan aan: rtemp < bn; dat, indien dit het geval is, geldt: r = rtemp/' dat, indien dit niet het geval is, een geheel getal c wordt berekend, dat bepaald wordt door de naar het dichtstbijzijnde gehele getal naar beneden afgeronde waarde van rtemp / bn en rtemp wordt berekend volgens: rtemp = i'temp ~ c.bn en dat deze stap wordt herhaald totdat wordt voldaan aan: rtemp < bn waarna geldt: r = rtemp·
3. Werkwijze volgens conclusie 2, met het kenmerk, dat berekend wordt r’ = r + a,waarna het zuivere residu gelijk is aan de laatste n cijfers van r’, indien r’ > bn en gelijk is aan r, indien r' < bn.
NL9000593A 1990-03-15 1990-03-15 Werkwijze voor het modulair reduceren van getallen. NL9000593A (nl)

Priority Applications (8)

Application Number Priority Date Filing Date Title
NL9000593A NL9000593A (nl) 1990-03-15 1990-03-15 Werkwijze voor het modulair reduceren van getallen.
NO91910949A NO910949L (no) 1990-03-15 1991-03-11 Fremgangsmaate for modulaer reduksjon av tall.
ES91200523T ES2055517T3 (es) 1990-03-15 1991-03-12 Procedimiento para la reduccion modular de numeros.
DE69101800T DE69101800T2 (de) 1990-03-15 1991-03-12 Verfahren zur modularen Reduktion von Zahlen.
DK91200523.8T DK0449349T3 (da) 1990-03-15 1991-03-12 Fremgangsmåde til modulær reduktion af tal
EP91200523A EP0449349B1 (en) 1990-03-15 1991-03-12 Method for the modular reduction of numbers
AT9191200523T ATE105097T1 (de) 1990-03-15 1991-03-12 Verfahren zur modularen reduktion von zahlen.
FI911284A FI911284A (fi) 1990-03-15 1991-03-15 Foerfarande foer modulaer reduktion av numror.

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NL9000593 1990-03-15
NL9000593A NL9000593A (nl) 1990-03-15 1990-03-15 Werkwijze voor het modulair reduceren van getallen.

Publications (1)

Publication Number Publication Date
NL9000593A true NL9000593A (nl) 1991-10-01

Family

ID=19856745

Family Applications (1)

Application Number Title Priority Date Filing Date
NL9000593A NL9000593A (nl) 1990-03-15 1990-03-15 Werkwijze voor het modulair reduceren van getallen.

Country Status (8)

Country Link
EP (1) EP0449349B1 (nl)
AT (1) ATE105097T1 (nl)
DE (1) DE69101800T2 (nl)
DK (1) DK0449349T3 (nl)
ES (1) ES2055517T3 (nl)
FI (1) FI911284A (nl)
NL (1) NL9000593A (nl)
NO (1) NO910949L (nl)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6963977B2 (en) * 2000-12-19 2005-11-08 International Business Machines Corporation Circuits and methods for modular exponentiation
US7552164B1 (en) 2008-04-24 2009-06-23 International Business Machines Corporation Accelerated prime sieving using architecture-optimized partial prime product table

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4424414A (en) * 1978-05-01 1984-01-03 Board Of Trustees Of The Leland Stanford Junior University Exponentiation cryptographic apparatus and method
GB8815868D0 (en) * 1988-07-04 1988-08-10 British Aerospace Digital signal processing
EP0381523A3 (en) * 1989-02-02 1993-03-03 Kabushiki Kaisha Toshiba Server-aided computation method and distributed information processing unit

Also Published As

Publication number Publication date
NO910949D0 (no) 1991-03-11
FI911284A (fi) 1991-09-16
DE69101800T2 (de) 1994-09-29
DK0449349T3 (da) 1994-09-05
FI911284A0 (fi) 1991-03-15
DE69101800D1 (de) 1994-06-01
EP0449349B1 (en) 1994-04-27
EP0449349A1 (en) 1991-10-02
ATE105097T1 (de) 1994-05-15
NO910949L (no) 1991-09-16
ES2055517T3 (es) 1994-08-16

Similar Documents

Publication Publication Date Title
CA2746830C (en) Acceleration of key agreement protocols
Fiat Batch RSA.
KR101255393B1 (ko) 타원 곡선 점 곱셈
US6266688B1 (en) Scheme for arithmetic operations in finite field and group operations over elliptic curves realizing improved computational speed
CN101099328B (zh) 定制的静态Diffie-Helman群
US6496929B2 (en) Generating RSA moduli including a predetermined portion
US8509426B1 (en) XZ-elliptic curve cryptography system and method
KR100737667B1 (ko) 암호 체계의 개인 키 저장 및 복원 방법과 장치
US7050579B1 (en) Cryptographic methods and apparatus using word-wise montgomery multiplication
JP2004516506A (ja) 鍵ペア決定およびrsa鍵生成のための方法並びに装置
Mukhopadhyay et al. Securing the data in clouds with hyperelliptic curve cryptography
NL9000593A (nl) Werkwijze voor het modulair reduceren van getallen.
JP3615405B2 (ja) 素体上楕円曲線上の点の演算方法およびその装置
JP2000137436A (ja) 素体上楕円曲線上の点の演算方法およびその装置
KR102490702B1 (ko) 유한 필드 디피 헬만에서 보안 소수를 선택하기 위한 방법 및 시스템
KR100363253B1 (ko) 통신에서 비밀키를 생성하는 방법 및 그 장치
EP0577000B1 (en) Method for performing public-key cryptography
JP3518680B2 (ja) 素数生成装置
JP2948605B2 (ja) 暗号鍵共通の暗号通信用端末
Lim et al. Sparse RSA secret keys and their generation
KR102019369B1 (ko) 단일파형공격을 차단하기 위한 타원곡선 암호화 장치 및 방법
JP4676071B2 (ja) べき乗剰余演算方法、逆数演算方法およびそれらの装置
JP4077324B2 (ja) セキュリティ評価装置、セキュリティ装置、セキュリティ評価方法、及びセキュリティプログラム
Huang Investigation of the efficiency of the elliptic curve cryptosystem for multi-applications smart card
JP2510303B2 (ja) べき乗剰余演算装置

Legal Events

Date Code Title Description
A1B A search report has been drawn up
BV The patent application has lapsed