NL9220020A - Algoritme voor een digitale handtekening. - Google Patents
Algoritme voor een digitale handtekening.Info
- Publication number
- NL9220020A NL9220020A NL929220020A NL9220020A NL9220020A NL 9220020 A NL9220020 A NL 9220020A NL 929220020 A NL929220020 A NL 929220020A NL 9220020 A NL9220020 A NL 9220020A NL 9220020 A NL9220020 A NL 9220020A
- Authority
- NL
- Netherlands
- Prior art keywords
- value
- digital signature
- message
- mod
- generating
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public 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/3013—Public 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)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
Description
Algoritme voor een digitale handtekening.
ACHTERGROND VAN DE UITVINDING
1) Gebied van de uitvinding
Het gebied van deze uitvinding is gegevensintegriteit en in het bijzonder het genereren en verifiëren van een digitale handtekening voor een boodschap of gegevensbestand.
2) Achtergrond van de techniek
Wanneer een boodschap van de ene partij naar een andere wordt verzonden, kan het voor de ontvangende partij gewenst zijn vast te stellen of de boodschap onderweg is gewijzigd. Voorts kan de ontvangende partij zeker willen zijn van de bron van de boodschap. Het is in de stand van de techniek bekend om deze beide functies te verschaffen door middel van algoritmen voor digitale handtekeningen. Verschillende bekende algoritmen voor digitale handtekeningen zijn beschikbaar voor het verifiëren van de integriteit van een boodschap. Deze bekende algoritmen voor digitale handtekeningen kunnen ook worden gebruikt om aan een derde te bewijzen dat de boodschap werd ondertekend door de werkelijke voortbrenger.
Het gebruik van publieke-sleutelcryptografie om concretiseringen van deze algoritmen voor digitale handtekeningen te bereiken is ook in de techniek bekend. Diffie en Hellman beschrijven bijvoorbeeld het gebruik van publieke-sleutelcryptografie om een algoritme voor een digitale handtekening te krijgen in "New Directions in Cryptography", IEEE Transactions on Information Theory, vol. IT-22, blz. 472-492, 1976. Zie ook het Amerikaanse octrooischrift 4.200.770. Sindsdien zijn verschillende pogingen ondernomen om praktische publieke-sleutel-handtekeningtechnieken te vinden die berusten op de moeilijkheid bij het oplossen van bepaalde mathematische problemen om het wijzigen of vervalsen van een boodschap door niet daartoe gemachtigde partijen moeilijk te maken. Het Rivest-Shamir-Adleman-systeem berust bijvoorbeeld op de moeilijkheid bij het in factoren ontbinden van grote gehele getallen. Zie R.
Rivest, A. Shamir, en L. Adleman, "A Method for Obtaining Digital Signatures and Public Key Cryptosystems", Communications of the ACM, februari 1978, vol. 21, nr. 2, blz. 120-126, en het Amerikaanse octrooischrift nr. 4.405.829.
Taher ElGamal beschrijft een handtekeningschema in "A Public Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms" in IEEE Transactions on Information Theory, vol. IT-31, nr. 4, juli 1985. Gemeend wordt dat dit systeem berust op de moeilijkheid bij het berekenen van discrete logaritmen over eindige velden. In het door Elgamal beschreven systeem betekent m een te ondertekenen document, waarbij 0 < m < p-1, waarin p een groot priemgetal is en a een primitief element mod p, beide bekend. In elk cryptografisch systeem gebaseerd op discrete logaritmen moet p zodanig worden gekozen dat p-1 ten minste één grote priemgetalfactor heeft. Indien p-1 slechts kleine priemgetalfactoren heeft, is het berekenen van de discrete logaritmen gemakkelijk. Het publieke bestand bestaat uit een publieke sleutel y = a- mod p (x = x) voor elke gebruiker, waarbij elke gebruiker een geheime x heeft, een groot priemgetal p en een primitief element a. Voor het ondertekenen van een document gebruikt gebruiker A een geheime sleutel voor het vinden van een handtekening voor m zodanig dat alle gebruikers de authenticiteit van de handtekening kunnen verifiëren door gebruik te maken van de publieke sleutel yA tezamen met α en p en niemand kan een handtekening vervalsen zonder de geheime xA te kennen.
De handtekening voor m is het paar (r,s), 0 < r,s < p-1, zodanig gekozen dat aan α- = y-r5· mod p Vergelijking (1) wordt voldaan (m = m; r = r; s = s).
Bij vele toepassingen is het gemakkelijk of noodzakelijk de boodschap online te ondertekenen. Het Rivest-Shamir-Adleman-systeem is echter duur voor ondertekening online. Het systeem volgens Elgamal maakt het echter mogelijk veel van de berekeningen uit te voeren voordat een koppeling tot stand wordt gebracht, aangezien gebruik wordt gemaakt van waarden die niet afhankelijk zijn van de boodschap m. Het online of gekoppeld genereren van een handtekening is derhalve zeer eenvoudig bij het systeem volgens Elgamal.
De ondertekeningsprocedure van de werkwijze volgens Elgamal omvat drie stappen. In de eerste stap wordt een willekeurig getal k gekozen zodanig dat k uniform tussen 0 en p-1 ligt en gcd(k,p-l) = 1. Vervolgens wordt r bepaald door de relatie
Vergelijking (2)
Gezien vergelijking (2) kan de relatie waaraan moet worden voldaan voor het bepalen van de handtekening voor de boodschap m, zoals weergegeven in vergelijking (1), worden geschreven als
Vergelijking (3)
Vergelijking (3) kan voor s worden opgelost door gebruik te maken van
Vergelijking (4)
Vergelijking 4 heeft een oplossing voor s mits k zodanig wordt gekozen dat gcd(k,p-l) = 1.
Bij de werkwijze volgens EIGamal is het gemakkelijk de authenticiteit van de handtekening (r,s) te verifiëren door beide zijden van vergelijking (1) te berekenen en vast te stellen dat zij gelijk zijn. De gekozen waarde van k mag nooit meer dan eenmaal worden gebruikt. Dit kan bijvoorbeeld worden gewaarborgd door een Data Encryption Standard-chip in de tel-lermodus te gebruiken als een cijferstroom voor het genereren van waarden van k.
Het is mogelijk twee typen pogingen tot kraken van het handtekeningschema volgens EIGamal te ondernemen. Het eerste type kraakpoging omvat pogingen die zijn ontworpen voor het terugwinnen van de geheime sleutel x. Het tweede type kraakpogingen omvat pogingen die zijn ontworpen voor het vervalsen van handtekeningen zonder het terugwinnen van x. Voor sommige van deze ondernomen kraakpogingen kan gemakkelijk worden aangetoond dat zij equivalent zijn aan het berekenen van discrete logaritmen over GF(p).
Bij het eerste type kraakpoging kan een indringer trachten t vergelijkingen van de vorm van vergelijking (4) op te lossen bij gegeven documenten {mi = 1, 2, ..., t} (i = i) tezamen met de bijbehorende handtekeningen {(ri,si): i = 1, 2, t). Er zijn echter t + 1 onbekenden bij dit systeem van vergelijkingen aangezien elke handtekening een andere waarde voor k gebruikt. Dit systeem van vergelijkingen is derhalve onderbepaald en het aantal oplossingen is groot. De reden is dat elke waarde van x een oplossing voor de ki oplevert, aangezien een systeem van lineaire vergelijkingen met een diagonale matrix van coëfficiënten wordt verkregen. Aangezien p-1 zo is gekozen dat ten minste één grote priem-getalfactor q aanwezig is, zou een mogelijk terugwinnen van x mod q een exponentieel aantal boodschap-handtekeningparen vereisen. Indien elke waarde voor k tweemaal wordt gebruikt bij het ondertekenen, dan is het systeem van vergelijkingen uniek bepaald en kan x worden teruggewonnen. Opdat het systeem volgens EIGamal veilig is, mag derhalve geen waarde voor k meer dan eenmaal worden gebruikt, zoals eerder werd opgemerkt.
Bij een andere kraakpoging van dit eerste type kan een indringer trachten vergelijkingen van de vorm van vergelijking (3) op te lossen. Dit is altijd equivalent met het berekenen van discrete logaritmen over GF(p), aangezien beide onbekenden x en k in de exponent verschijnen. Bij weer een andere kraakpoging van dit type kan een indringer trachten bepaalde lineaire afhankelijkheden tussen de onbekenden {k± = 1, 2, ..., t} te ontwikkelen. Dit is ook equivalent aan het berekenen van discrete logaritmen aangezien, indien ki = ck^ mod (p-1), dan geldt r± = mod p, en indien c kan worden berekend dan is het berekenen van discrete logaritmen gemakkelijk.
Bij het tweede type kraakpoging, het trachten handtekeningen te vervalsen zonder kennis van x, kan een vervalser ' trachten r en s te vinden, zodat aan vergelijking (1) wordt voldaan voor een document m. Indien r = a1 mod p is bepaald voor een willekeurig gekozen j dan is het berekenen van s equivalent aan het oplossen van een discreet logaritmeprobleem over GF(p).
Indien de vervalser eerst s bepaalt, dan kan r als volgt worden berekend:
Vergelijking (5)
Het oplossen van vergelijking (5) voor r kan minder moeilijk zijn dan het berekenen van discrete logaritmen. Gemeend wordt echter dat het oplossen van vergelijking (5) in polynome tijd niet uitvoerbaar is. Bij een andere mogelijke kraakpoging van het tweede type kan een vervalser trachten vergelijking (1) gelijktijdig voor r en s beide op te lossen. Gemeend wordt echter dat een doelmatig algoritme voor het uitvoeren daarvan niet bekend is.
Het handtekeningschema volgens EIGamal maakt ook een kraakpoging mogelijk, waarbij de indringer, die één echte handtekening (r,s) voor één boodschap m kent, andere echte handtekeningen (r,s) en boodschappen m kan genereren. Deze mogelijke kraakpoging, hoewel uitvoerbaar, maakt het echter niet mogelijk dat de indringer een willekeurige boodschap m ondertekent en breekt derhalve het systeem niet. Deze beperkte mogelijkheid tot het creëren van aanvaardbare boodschap-hand-tekeningparen kan worden vermeden door te vereisen dat m een bepaalde structuur heeft. Als alternatief kan dit worden vermeden door een eenrichtingsfunctie H op de boodschap m toe te passen voordat deze wordt ondertekend. Dit heeft tot gevolg dat een mogelijke vervalser onmogelijk een waarde van m kan bepalen welke overeenkomt met de H(m) welke werd ondertekend met behulp van de hierna beschreven methode. De vervalser moet in staat zijn een dergelijke m naar de controleur te verzenden indien de vervalsing als succesvol moet worden beschouwd.
Gegeven een handtekening (r,s) voor de echt ondertekende boodschap m, dan geldt
Gehele getallen A, B, en C worden door de vervalser willekeurig gekozen zodat (Ar - Cs) relatief primitief is voor p-1. De waarden van r', s', m· worden zo gekozen dat
Vervolgens wordt gesteld dat (r',s') de ondertekening van de boodschap m' vormt: Aan de verificatievergelijking zal wordei voldaan, aangezien
waarbij alle berekeningen mod p worden uitgevoerd.
In een bijzonder geval, waarbij wordt gesteld dat A = 0, kunnen verifieerbare handtekeningen (r'-s') worden gegenereerd met bijbehorende boodschappen m· zonder toegang tot enige handtekening:
Voor de deskundige zal derhalve duidelijk zijn dat het toe-passen van een eenrichtingsfunctie H op de boodschap m voorafgaande aan de ondertekening de algemene kraakpoging en kraakpogingen voor bijzondere gevallen dwarsboomt. Ook zal duidelijk zijn dat de functie H kan worden gebruikt voor het vormen van een samemvatting van lange boodschappen zodat de handtekeningfunctie niet herhaald behoeft te worden toegepast op segmenten van de volledige boodschap m. Dit leidt tot een verdere doelmatigheid.
Het Amerikaanse octrooischrift 4.995.082 van Schnorr, verleend op 19 februari 1991, getiteld "Method for Identifying Subscribers and for Generating and Verifying Electronic Signatures in a Data Exchange System”, verschaft een systeem waarbij communicatie en verificatie efficiënter is ten opzichte van ElGamal. Bovendien handhaaft het systeem volgens Schnorr de bijzonder doelmatige mogelijkheid tot online ondertekening. Bepaalde gewenste eigenschappen van ElGamal alsmede de uitgebreide ervaring en literatuur over het EIGamal-model zijn echter niet toepasbaar op het Schnorr-model.
Het is derhalve gewenst een systeem te verschaffen met doelmatige eigenschappen van Online ondertekening, communicatie en verificatie die vergelijkbaar zijn met het systeem volgens Schnorr, waarbij de compatibiliteit met het ElGamal-model en zijn analytische gereedschappen wordt gehandhaafd.
Het is in het bijzonder gewenst de complexe aard van de EIGamal-handtekeningvergelijking te behouden, welke een veilig gebruik van de eenvoudige uitdrukking H(m) mogelijk maakt in plaats van het vereenvoudigen van de handtekeningvergelijking ten koste van het vervangen van H(m) door H(a~ mod p,m).
SAMENVATTING VAN DE UITVINDING Een werkwijze wordt verschaft voor het genereren en verifiëren van een digitale handtekening van een boodschap m. Deze werkwijze vereist een paar bij elkaar behorende publieke en geheime sleutels (y en x) voor elke ondertekenaar, alsmede een paar publieke en geheime waarden (r en k) die voor elke boodschap worden gegenereerd door de ondertekenaar. De publieke waarde r wordt berekend volgens de regel r = (g^ mod p) mod q. Een waarde s wordt dan gekozen volgens de regel s = k_1(H(m) + xr) mod q, waarbij H een bekende conventionele hash-functie is. De boodschap m wordt vervolgens tezamen met de handtekening (r,s) verzonden. Wanneer het verzonden signaal wordt ontvangen, wordt een verificatieproces uitgevoerd. De ontvangen waarden van r en s worden beproefd om vast te stellen of zij congruent zijn met 0 mod q. Voorts wordt r beproefd om vast te stellen of deze gelijk is aan v mod q, waarbij v wordt berekend uit r, s, m en y. Voor echte handtekeningen geldt v - g- mod p.
KORTE BESCHRIJVING VAN DE TEKENING Fig. 1 en 2 tonen het algoritme voor een digitale handtekening volgens de onderhavige uitvinding.
Fig. 3 toont een algoritme voor hash-bewerking dat geschikt is voor toepassing in het algoritme voor een digitale handtekening volgens de fig. 1 en 2.
GEDETAILLEERDE BESCHRIJVING VAN DE UITVINDING In de fig. 1 en 2 is een algoritme 10 voor een digitale handtekening weergegeven. Bij het algoritme 10 voor een digitale handtekening worden de twee sleutels van een paar privé- en publieke sleutels respectievelijk gebruikt voor het genereren en verifiëren van digitale handtekeningen (r, s), die elk overeenkomen met een verzonden boodschap m. Bij gebruik van het algoritme 10 voor een digitale handtekening kan de houder van een privé-sleutel een digitale handtekening voor de boodschap m genereren, waarbij de boodschap m elke hoeveelheid gegevens kan bevatten. Een houder van de bijbehorende publieke sleutel kan dan de boodschap m ontvangen en de handtekening (r,s) verifiëren. Een indringer die de privé-sleutel niet kent, kan niet de handtekening (r, s) van de houder van de privé-sleutel voor een boodschap m genereren en handtekeningen (r, s) kunnen derhalve niet worden vervalst.
Een indringer kan derhalve ook niet een ondertekende boodschap m veranderen zonder de handtekening r, s ongeldig te maken.
Indien het algoritme 10 voor een digitale handtekening doelmatig moet worden gebruikt, zijn middelen vereist voor het verenigen van een publieke- en privé-sleutelpaar met elke ondertekenaar. Er moet een informatieverbinding zijn die de ondertekenaar met de bijbehorende publieke sleutel identificeert. Teneinde te waarborgen dat elke privé-sleutel of geheime sleutel wordt gehouden door het individu waarvan de identiteit is gebonden aan de bijbehorende publieke sleutel, moet deze verbinding worden gewaarmerkt door een wederzijds vertrouwde derde partij. Een waarmerkende autoriteit kan bijvoorbeeld papieren ondertekenen die de publieke sleutel van een gebruiker van het algoritme 10 voor een digitale handtekening bevat alsmede de identiteit van de gebruiker, teneinde een certificaat te vormen.
Het uitvoeren van het algoritme 10 voor een digitale handtekening volgens de onderhavige uitvinding begint in het startpunt 5. Een gebruiker van het algoritme 10 voor een digitale handtekening kiest eerst een geheime waarde van k zoals in blok 15 is getoond. De gekozen k is een geheim geheel getal dat wordt gegenereerd door de ondertekenaar voor elke boodschap m. De waarde van k wordt zo gekozen dat 0<k<q. De k van het algoritme 10 voor een digitale handtekening kan op willekeurige of pseudo-willekeurige wijze worden gegenereerd. Voor de deskundige zal duidelijk zijn dat het pseudo-willekeurig genereren van het gehele getal k op elke conventionele wijze kan plaatsvinden.
In blok 20 van het algoritme 10 voor een digitale handtekening wordt een bepaling uitgevoerd van gr- mod p. Het is in de techniek bekend de hoeveelheid van blok 20 te bepalen en deze hoeveelheid te verzenden. Deze hoeveelheid kan echter behoorlijk groot zijn. Derhalve wordt in blok 25 de hoeveelheid van blok 20 beperkt door een afbeelding van honderdzestig bits door een beperking met mod q als volgt
Teneinde r volgens vergelijking (6) te genereren, wordt de waarde g als volgt bepaald:
waarbij h een niet-nul zijnd geheel getal mod p is, zodat 22 (E-1)/3 niet congruent is aan 1 mod p. De waarde g kan gemeenschappelijk zijn voor alle gebruikers van het algoritme voor een 10 digitale handtekening. In vergelijking (6) is p een primitieve modulus, waarbij 2511<p<2512. De primitieve modulus p kan gemeenschappelijk zijn voor alle gebruikers van het algoritme 10 voor een digitale handtekening. De waarde q is een primitieve deler van (p-1), waarbij 2159«j<2160. q kan ook gemeenschappelijk zijn voor alle gebruikers van het algoritme 10 voor een digitale handtekening.
De uitvoering van het algoritme 10 voor een digitale handtekening gaat vervolgens naar blok 30 waar de hoeveelheid k_1 mod q wordt bepaald. Deze waarde zal nuttig zijn bij het bepalen van de handtekening voor transmissie binnen het systeem van het algoritme 10 voor een digitale handtekening. Voor de deskundige zal duidelijk zijn dat alle bewerkingen die binnen het algoritme 10 voor een digitale handtekening zijn uitgevoerd inclusief de berekening volgens blok 30 onafhankelijk zijn van de boodschap m. Deze berekeningen kunnen derhalve offline worden uitgevoerd, waardoor een aanmerkelijk verkorte online ondertekeningsprocedure mogelijk wordt gemaakt.
De uitvoering van het algoritme 10 voor een digitale handtekening gaat vervolgens naar blok 35, waarbij de boodschap m aan een hash-bewerking wordt onderworpen. Deze hash-bewerking van boodschap m uitgevoerd in blok 35 levert een uitvoer op van honderdzestig bits of minder, aangeduid door H(m). Er zijn vele conventionele algoritmen voor hash-bewerking in de stand van de techniek bekend, die geschikt zijn voor uitvoering van de hash-bewerking van de boodschap m volgens blok 35 van het algoritme 10. Voorts zal duidelijk zijn dat de boodschap waarop het algoritme voor hash-bewerking wordt uitgevoerd, zich in onversleutelde vorm kan bevinden.
Wanneer r en k”1 mod q worden bepaald volgens de vergelijkingen (6) en (7), kan de waarde van s voor de boodschap m worden bepaald volgens blok 40 van het algoritme 10 voor een digitale handtekening:
Vergelijking (8)
De oplossing van vergelijking (8) van blok 40 van het algoritme 10 voor een digitale handtekening leidt ook tot een geheel getal van 160 bits. De waarden r en s die aldus zijn bepaald in respectievelijk de blokken 25 en 40, vormen de handtekening (r,s) van de boodschap m. Zij worden tezamen met de boodschap m verzonden naar de ontvanger zoals in blok 45 is weergegeven. Het zal duidelijk zijn, dat m in onversleutelde vorm kan worden gevonden. De uitvoering van het algoritme 10 gaat dan verder via de van de bladzijde af wijzende verbinding 50.
Binnen het algoritme 10 voor een digitale handtekening wordt elke ondertekenaar voorzien van een geheime sleutel x, waarbij 0 < x < q. Een geheime sleutel x wordt vastgesteld voor alle boodschappen m die door een individuele gebruiker van het algoritme 10 worden verzonden. Voorts wordt een publieke sleutel y aan de gebruiker verstrekt die de geheime sleutel of geheime waarde x heeft, waarbij y = g- mod p. Voorafgaande aan het verifiëren van een handtekening (r,s) moeten de publieke sleutel y en de identiteit van de ondertekenaar die de bijbehorende geheime sleutel x bezit, op een geverifieerde wijze beschikbaar zijn aan de ontvanger, waarbij het uiteindelijke verificatiedoel is het kunnen bewijzen dat (r,s) oorspronkelijk werd gecreëerd door iemand die kennis had van de waarde van x welke overeenkomt met de bijzondere waarde van y. Indien x niet gecompromitteerd is, is deze ondertekenaar bekend als degene waarvan de identiteit is verbonden met de bijzondere y op een geverifieerde wijze. Voorts moet de ontvanger de globale waarden g, p en q kennen.
De uitvoering van het algoritme 10 gaat dan verder via verbinding 55 naar het startpunt 60. Na het ontvangen van de boodschap m volgens blok 65 tezamen met de beweerdelijke handtekening (r,s), moet de ontvanger in het systeem volgens de onderhavige uitvinding zowel de ontvangen r als de ontvangen s verifiëren. Het zal derhalve duidelijk zijn dat binnen het algoritme 10 voor een digitale handtekening de kernei g-mod p volgens de stand van de techniek gereduceerd mod q wordt en wordt verzonden, g- mod p wordt vervolgens teruggewonnen en geverifieerd binnen het algoritme 10. Bij het systeem volgens de onderhavige uitvinding kan g- mod p derhalve aan de ontvan-gerzijde worden gereconstrueerd in plaats van door de zender worden verzonden.
In de beslissingsruit 70 van algoritme 10 wordt derhalve bepaald of hetzij s hetzij r congruent aan 0 mod q is. Indien hetzij r hetzij s congruent is aan 0 mod q, dan gaat de uitvoering naar blok 115 en wordt de ontvangen handtekening (r,s) afgewezen door het algoritme 10 voor een digitale handtekening. Indien r en s niet congruent zijn aan 0 mod q, gaat de ontvanger door met verificatie van de ontvangen handtekening (r, s) zoals is weergegeven in het door een streeplijn aangeduide verificatiedeel 75.
Bij het binnentreden van het met een streeplijn aangeduide verificatieblok 75 wint het algoritme 10 voor een digitale handtekening g- mod p terug, zoals is aangegeven in het met een streeplijn aangeduide terugwinningsblok 80. Het is in de techniek bekend g- mod p terug te winnen na de ontvangst van een verzonden boodschap, omdat vele methoden volgens de stand van de techniek g- mod p uitzonden zonder enige reduce-ring voor de transmissie. Binnen het terugwinningsblok 80 worden de waarden u^ en u2 bepaald volgens blok 85. De waarden in blok 85 worden bepaald volgens ux = (H(m)) (s)"1 mod q en u2 = (r)(s)-1 mod g. Het bepalen van de waarden u^ en u2 maakt het mogelijk g- mod p te bepalen uit ux, u2 en y zoals in vergelijking (9) is aangegeven. Deze bepaling is weergegeven in blok 90. Voor de deskundige zal duidelijk zijn dat het op dit punt niet bekend is of de hoeveelheid die in blok 90 is teruggewonnen een echte cfi mod p is. De uitvoering van het algoritme 10 voor een digitale handtekening gaat echter verder op basis van de veronderstelling dat deze echt is en controleert deze veronderstelling .
Vergelijking (9)
Binnen het met een streeplijn aangeduide controleblok 95 wordt de teruggewonnen hoeveelheid g- mod p van vergelijking (9) gecontroleerd door eerst de waarde van w te bepalen zoals in blok 100 is aangegeven. De waarde van blok 100 wordt bepaald volgens w = v mod q. In de beslissingsruit 105 wordt bepaald of de ontvangen waarde van r gelijk is aan de mod q gereduceerde waarde van g- mod p, waarbij m, k, r en s voldoen aan de relatie volgens vergelijking (8) voor de gegeven waarde van y. Indien de bepaling van beslissing 105 bevestigend is, gaat de uitvoering naar verifieerblok 110 waar de handtekening (r,s) die in blok 65 is ontvangen, als geverifieerd wordt beschouwd door het algoritme 10 voor een digitale handtekening. Indien de bepaling van de beslissingsruit 105 negatief is, gaat de uitvoering naar het afwijsblok 115 waar de ontvangen handtekening (r,s) wordt afgewezen.
De veiligheid van het algoritme 10 voor een digitale handtekening is afhankelijk van het handhaven van de geheimhouding van privé-sleutels. Gebruikers van het algoritme 10 voor een digitale handtekening moeten derhalve maatregelen nemen tegen de onbevoegde openbaarmaking van hun privé-sleutels. Voorts moet de hash-functie H van blok 35, die wordt gebruikt voor het bepalen van de waarde van s, zo worden gekozen dat het rekenkundig onuitvoerbaar is een boodschap m te vinden, welke een bepaalde hash-waarde heeft. Op dezelfde wijze dient het rekenkundig onuitvoerbaar te zijn een paar verschillende boodschappen m te vinden die door de hash-functie op dezelfde waarde uitkomen.
In fig. 3 is het algoritme 150 voor hashbewerking weergegeven. Een conventioneel algoritme zoals het algoritme 150, kan bijvoorbeeld worden gevonden in R.L. Rivest, "The MD4 Message Digest Algorithm", Abstracts Crypto '90, blz. 281-291. Zoals eerder werd opgemerkt, vereisen de handtekening- en verificatieprocessen binnen het algoritme 10 voor een digitale handtekening een veilig algoritme voor hash-bewerking, dat een boodschap van willekeurige lengte als invoer ontvangt en een hash-waarde afgeeft met een lengte van honderzestig bits of minder. Het algoritme 150 voor hash-bewerking is geschikt voor het uitvoeren van de hash-functie van het algoritme 10 voor een digitale handtekening volgens blok 35. Voor de deskundige zal duidelijk zijn, dat ook andere conventionele hash-functies dan het algoritme 150 voor hash-bewerking kunnen worden gebruikt voor het uitvoeren van de hash-functie van blok 35 in het algoritme 10 voor een digitale handtekening.
De uitvoering van het algoritme 150 voor hash-bewerking gaat uit van blok 30 van het algoritme 10 voor een digitale handtekening en begint bij het startpunt 152. Het algoritme 150 voor hash-bewerking ontvangt dan als invoer een boodschap m van b bits waarop de hash-bewerking moet worden uitgevoerd, zoals in blok 153 is weergegeven en zorgt voor een boodschapoverzicht A, B, C, D als uitvoer. Het aantal bits b in de boodschap m die in het blok 153 wordt ontvangen, is een willekeurig niet-negatief geheel getal. De waarde b kan nul zijn en behoeft geen veelvoud van acht te zijn. Voorts kan b willekeurig groot zijn. De bits van de boodschap m kunnen als volgt worden beschreven:
De volgende stap van het algoritme 150 voor hash-bewerking is het aanvullen of verlengen van de boodschap m, zodat zijn lengte in bits congruent is met 448, mod 415, zoals aangegeven in het met een streeplijn aangeduide aanvulblok 155. De boodschap m wordt derhalve verlengd, zodat deze slechts vierenzestig bits korter is dan een veelvoud van vijf-honderdtwaalf bits lang. Het aanvullen van de boodschap m moet altijd worden uitgevoerd binnen het algoritme 150 voor hash-bewerking, zelfs indien de lengte van de boodschap m reeds congruent is aan 448 mod 512. In het geval dat de lengte van de boodschap m reeds congruent is aan 448 mod 512, worden vijfhonderdtwaalf bits toegevoegd aan het met een streeplijn aangeduide aanvulblok 155.
Bij het aanvullen van de boodschap m volgens aanvulblok 155 wordt een enkel bit met een waarde 1 toegevoegd aan de boodschap m zoals in blok 160 binnen aanvulblok 155 is aangegeven. Vervolgens worden voldoende nul-bits toegevoegd aan de boodschap m om de lengte in bits van de aangevulde boodschap m congruent te maken aan 448 mod 512, zoals in blok 165 is aangegeven. De aanvulbewerking volgens aanvulblok 155 is derhalve omkeerbaar, zodat verschillende invoeren verschillende uitvoeren opleveren. De aanvulbewerking van het met een streeplijn aangeduide aanvulblok 155 zou niet omkeerbaar zijn indien alleen nullen werden toegevoegd.
De uitvoering van het algoritme 150 voor hash-bewer-king gaat vervolgens naar blok 170, waar een voorstelling van b van vierenzestig bits wordt toegevoegd aan het resultaat van de toevoegbewerkingen van de blokken 160 tot 165. Het zal duidelijk zijn dat b de lengte van de boodschap m is voordat de aanvullende bits zijn toegevoegd volgens blokken 160, 165. Deze voorstelling van vierenzestig bits wordt als twee woorden van tweeëndertig bits, eerst het woord van de lage orde, toegevoegd. In het onwaarschijnlijke geval dat b groter is 264, worden alleen de vierenzestig bits van de lage orde toegevoegd in blok 170. In deze fase van de uitvoering van het algoritme 150 voor hash-bewerking, heeft de resulterende aangevulde boodschap een lengte welke een exact veelvoud is van vijfhonderdtwaalf bits. Dienovereenkomstig heeft deze aangevulde boodschap een lengte welke een exact veelvoud is van zestien woorden waarbij het duidelijk is dat elk woord tweeëndertig bits heeft. Laat M[u], 0 < u < N-1, de woorden van de boodschap aangeven, die het resultaat is van de bewerking in blok 170, waarbij N een veelvoud van zestien is.
De uitvoering van het algoritme 150 voor hash-bewerking gaat vervolgens naar het met een streeplijn aangeduide boodschapoverzichtblok 175 waarbij een buffer van vier woorden wordt gebruikt voor het berekenen van het boodschapoverzicht A, B, C, D. Elk van de vier woorden van het boodschapoverzicht A, B, C, D is een register van tweeëndertig bits. In blok 180 van het boodschapoverzichtblok 175 worden deze registers geïnitialiseerd op de hexadecimale waarden volgens tabel I, eerst de bytes van de lage orde.
Tabel I
Woord A: 01 23 45 67 Woord B: 89 ab cd ef Woord C: fe dc ba 98 Woord D: 76 54 32 10
Drie hulpfuncties, f^, f2, f3, worden vervolgens gedefinieerd volgens blok 185. De hulpfuncties f1# f2, f3 zijn weergegeven in tabel II. Elke hulpfunctie f2, f3 van tabel II ontvangt als invoer drie woorden X, Y, Z van tweeëndertig bits en levert als uitvoer één woord van tweeëndertig bits f1(X,Y,Z), f2(X,Y,Z) respectievelijk f3(X,Y,Z).
Tabel II
ί^Χ,Υ,Ζ) = XY V (-X)Z £2(X,Y,Z) = xyW xz V xz f3(X,Y,Z) = ΧΦΥ 0Z
Op elke bitpositie van de ingangswoorden X, Y, Z werkt de hulpfunctie f1 voorwaardelijk voor het toepassen van de voorwaarde: if X then Y else Z. Op elke bitpositie werkt de hulpfunctie f2 als een meerderheidsfunctie: indien ten minste twee van X, Y, Z een waarde één hebben, dan heeft f2 de waarde één op die bitpositie. De hulpfunctie f3 past per bit de exclusieve OF of pariteitsfunctie toe op elke bitpositie. Indien de bits van X, Y en Z onafhankelijk zijn en geen asymmetrische fout vertonen, dan is elke bit van (X, Y, Z) onafhankelijk en heeft geen asymmetrie. Op overeenkomstige wijze zijn de hulpfuncties f2 (X, Y, Z) en f3 (X, Y, Z) onafhankelijk en hebben geen asymmetrie indien de bits van X, Y en Z onafhankelijk zijn en geen asymmetrie vertonen.
Het algoritme 150 voor hash-bewerking initialiseert de lusinductievariabele n op nul in blok 186 en stelt vervol gens de huidige waarden van de reeks X[j] voor 0 < j < 15 in in blok 187 en voert een groep van drie ronden van hash-bewerkingen uit, zoals in de blokken 190, 195, 197 is weergegeven, waarbij reeks X[j] wordt bijgewerkt en drie ronden van hash-bewerkingen in totaal N/16 maal worden uitgevoerd. In de ronden twee en drie gebruikt het algoritme 150 voor hash-bewerking constanten. De constante van ronde twee is de vierkantswortel van twee en de constante van ronde drie is de vierkantswortel van drie. De waarden van deze constanten zijn met de cijfers van hoge order eerst in tabel III weergegeven.
Tabel III
Octaal Hex
Ronde 2 constante (f2) 013240474631 5A827999
Ronde 3 constante (f3) 015666365641 6ED9EBA1
Elk van de N/16 groepen van drie ronden begint met de uitvoering van de instructiereeks uit tabel IV volgens blok 185, waarbij de waarde van n de huidige uitgevoerde groep aangeeft. De groepen zijn met de index 0 tot (N/16)-l aangeduid.
Tabel IV
Stel X[J] op M[n*16+], voor j = 0, 1, ..., 15.
Bewaar A als AA, B als BB, C als CC, en D als DD.
Wanneer de uitvoering van het algoritme 150 voor hash-bewerking naar blok 190 gaat en ronde één van de hash-bewerking begint, geeft [A B C D i t] de bewerking A = (A + ^(Β,ΰ,ϋ) + X[i]) «< t. Voor de deskundige zal duidelijk zijn dat (A<«t) de waarde van tweeëndertig bits aangeeft die wordt verkregen door het circulair schuiven of roteren van A naar links over t bitposities. De bewerking die hierboven in het algemeen is aangeduid met [A B C D i t], vindt zestien maal plaats gedurende ronde één, waarbij de waarden die achtereenvolgens worden aangenomen door de operands A, B, C, D, i respectievelijk t in tabel V zijn gegeven.
Tabel V
[A B C D 0 3] [D A B C 1 7] [C D A B 2 11] [B C D A 3 19] [A B C D 4 3] [D A B C 5 7] [C D A B 6 11] [B C D A 7 19] [A B C D 8 3] [D A B C 9 7] [C D A B 10 11] [B C D A 11 19] [A B C D 12 3] [D A B C 13 7] [C D A B 14 11] [B C D A 15 19]
Wanneer de uitvoering naar blok 195 gaat, begint ronde twee van het algoritme 150 voor hash-bewerking. In ronde twee geeft [A B C D i t] de bewerking A = (A + f2(B,c,D) + X[i] + 5A827999) «< t aan. De direct hierboven met [A B C D i t] aangeduide bewerking vindt zestien maal plaats gedurende ronde twee, waarbij de waarden die achtereenvolgens worden aangenomen door de operands A, B, C, D, i respectievelijk t in tabel VI zijn gegeven.
Tabel VI [A B C D 0 3] [D A B C 4 5] [C D A B 8 9] [B C D A 12 13] [A B C D 1 3] [D A B C 5 5] [C D A B 9 9] [B C D A 13 13] [A B C D 2 3] [D A B C 6 5] [C D A B 10 9] [B C D A 14 13] [A B C D 3 3] [D A B C 7 5] [C D A B 11 9] [B C D A 15 13]
Wanneer de uitvoering naar blok 197 gaat, begint ronde drie van het algoritme 150 voor hash-bewerking. In ronde drie geeft [A B C D i t] de bewerking A = (A + f2(B,C,D) + X[i] + 6ED9EBA1) «< t aan. De direct hierboven met [A B C D i t] aangeduide bewerking vindt zestien maal plaats gedurende ronde drie, waarbij de waarden die achtereenvolgens worden aangenomen door de operands A, B, C, D, i respectievelijk t in tabel VII zijn gegeven.
Tabel VI [A B C D 0 3] [D A B C 8 9] [C D A B 4 11] [B C D A 12 15] [A B C D 2 3] [D A B C 10 9] [C D A B 6 11] [B C D A 14 15] [A B C D 1 3] [D A B C 9 9] [C D A B 5 11] [B C D A 13 15] [A B C D 3 3] [D A B C 11 9] [C D A B 7 11] [B C D A 15 15]
Nadat ronde drie is voltooid, gaat de uitvoering van het algoritme 150 voor hash-bewerking binnen blok 35 van het algoritme 10 voor een digitale handtekening naar blok 199, waar de volgende toevoegingen worden uitgevoerd:
A = A + AA
B = B + BB
C = C + CC
D = D + DD
Elk van de vier registers A, B, C, D welke tezamen uiteindelijk het overzicht van de ontvangende boodschap vormen, wordt geïncrementeerd met de waarde welke het had voordat de bepaalde groep werd gestart.
Het boodschapoverzicht dat wordt geproduceerd als de uitvoer van het algoritme 150 voor hash-bewerking binnen het algoritme 10 voor een digitale handtekening is derhalve het viervoud van waarden van A, B, C, D, verkregen in blok 199 na het bewerken van de laatste groep. De lusinductievariabele wordt geïncrementeerd in blok 201 en onderzocht in de beslis-singsruit 202. Indien de uitvoering niet voltooid is, wordt blok 187 opnieuw uitgevoerd. Anders gaat de uitvoering van het algoritme 150 naar het uitgangspunt 203.
Het zal voor de deskundige duidelijk zijn, dat bij bepaalde toepassingen meer dan honderdachtentwintig bits uitvoer vereist kan zijn. Dit kan bijvoorbeeld worden bewerkstelligd door twee systemen parallel te verschaffen, waarbij elk van de parallelle systemen het algoritme 150 voor hash-bewer-king uitvoert met geschikt gekozen constanten en geïnitiali-seerde registers, teneinde ten hoogste tweehonderdzesenvijftig bits totale uitvoer te geven.
Hoewel een uitvoeringsvoorbeeld dat een specificatie van parameterbereikbeperkingen omvat, voor het uitvoeren van de onderhavige uitvinding is beschreven en weergegeven, zal duidelijk zijn dat aanpassingen en wijzigingen kunnen worden aangebracht zonder buiten het kader van het wezen van de uitvinding te treden.
Claims (45)
1. Werkwijze voor het genereren van een digitale handtekening (r,s) van een boodschap m in een systeem, waarbij informatie wordt verzonden en ontvangen door gebruikers van het systeem, omvattende de volgende stappen: (a) het verschaffen van een geheime waarde k die uniek is voor de boodschap m; (b) het verschaffen van een publieke waarde g; (c) het berekenen van de waarde r uitgaande van een primitieve modulus p en een waarde q die is gekozen als een primitieve deler van p-1 volgens de regel r = (gr- mod p) mod q; (d) het toepassen van een hash-transformatie H alleen op de boodschap m voor het genereren van een getransformeerde boodschap H(m); (e) het berekenen van de waarde s volgens de regel s = f(H{m)) waarbij de waarde s een functie is van m alleen via de getransformeerde boodschap H(m); en (f) het genereren van een signaal dat representatief is voor de digitale handtekening (r,s) in overeenstemming met de waarde r en de waarde s en het verzenden van het gegenereerde signaal.
2. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 1, waarbij stap (a) het willekeurig kiezen van de geheime waarde k omvat.
3. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 1, waarbij stap (b) het berekenen van de waarde g omvat uitgaande van een waarde h die elk niet-nul zijnde gehele getal kan zijn, zodanig dat h^"1^3· niet congruent is aan 1 mod p volgens de regel g = E mocj
4. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 1, waarbij stap (d) het transformeren van de boodschap m omvat door het toepassen van ppn ροητΗ nhti ncrstTansfm-mati p> u nn dp hnodsnhan m.
5. Geschrapt.
6. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 1, waarbij stap (e) voorts het berekenen van de waarde s omvat volgens de regel s = k_1 (H(m) + xr mod q waarbij de waarde x een geheime waarde is.
7. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 1, waarbij de stappen (a)-(c) worden uitgevoerd voorafgaande aan het bekend zijn van de boodschap m.
8. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 1, omvattende de stap van verzenden van een ondertekende boodschap die is gevormd uit de boodschap m en de digitale handtekening (r,s).
9. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 8, voorts omvattende de stappen: (g) het ontvangen van de verzonden ondertekende boodschap voorzien van een ontvangen digitale handtekening (r,s) met een ontvangen waarde r en een ontvangen waarde s; en (h) het verifiëren van de ontvangen digitale handtekening (r,s).
10. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 9, waarbij de stap (h) het reconstrueren van g- mod p uit stap (c) omvat voor het I. verschaffen van een teruggewonnen g- mod p.
11. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 10, omvattende de stap van het bepalen van een waarde v uitgaande van een waarde ux = (H(m)) (s)-1 mod q en een waarde u2 = (r) (s)”1 mod q volgens de regel v = (g)~ (y) — mod p waarbij de waarde y congruent is aan g- mod p en de waarde x een geheime waarde is.
12. Werkwijze voor het genereren van een digitale handtekening (r, s) volgens conclusie 11, omvattende de stap van het bepalen of de vastgestelde waarde v na reductie mod g hetzelfde is als de ontvangen waarde r.
13. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 12, voorts omvattende de stap van het bepalen dat de ontvangen digitale handtekening (r,s) is geverifieerd in responsie op het bepalen dat de vastgestelde waarde v na reductie mod q hetzelfde is als de ontvangen waarde r.
14. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 9, waarbij stap h voorts omvat het bepalen of de ontvangen waarde r congruent is aan 0 mod g.
15. Werkwijze voor het genereren van een digitale handtekening (r,s) volgens conclusie 9, waarbij de stap (a) voorts omvat het bepalen of de ontvangen waarde s congruent is aan 0 mod g.
16. Systeem voor het genereren van een digitale handtekening (r,s) van een boodschap m, waarbij informatie wordt verzonden en ontvangen door gebruikers van het systeem, voorzien van: een geheime waarde k die uniek is voor de boodschap m; een publieke waarde g; transformatiemiddelen voor het toepassen van een hash-transformatie op alleen de boodschap m voor het genereren van een getransformeerde boodschap H(m), middelen voor het berekenen van de waarde r uitgaande van een primitieve modulus p en een waarde g die is gekozen als een primitieve deler van p-1 volgens de regel r = (g- mod p) mod g; middelen voor het berekenen van de waarde s volgens de regel s = f(H(m)) waarbij de waarde s alleen via H(m) een functie is van de boodschap m; genereermiddelen voor het ontvangen van de berekende waarden van r en s en het genereren van een ondertekende bood- schap die is gevormd uit de boodschap m en de digitale handtekening (r,s) ,· en verzendmiddelen voor het verzenden van het gegenereerde signaal.
17. Systeem voor het genereren van een digitale handtekening (r,s) volgens conclusie 16, waarbij de geheime waarde k willekeurig is gekozen.
19. Systeem voor het genereren van een digitale handtekening (r,s) volgens conclusie 16, waarbij de transformatiemiddelen in één richting werkzame transformatiemiddelen omvatten voor het transformeren van de boodschap m door het toepassen van een eenrichtingshash-transformatie op de boodschap m.
21. Systeem voor het genereren van een digitale handtekening (r,s) volgens conclusie 16, waarbij de waarden k, g en r worden bepaald onafhankelijk van de boodschap m.
22. Systeem voor het genereren van een digitale handtekening (r,s) volgens conclusie 16, voorts voorzien van: middelen voor het ontvangen van de verzonden ondertekende boodschap; en verifleermiddelen voor het verifiëren van de digitale handtekening (r,s).
23. Systeem voor het genereren van een digitale handtekening (r,s) volgens conclusie 22, waarbij de verifleermiddelen voorts zijn voorzien van middelen voor het reconstrueren k k van de g- mod p voor het verschaffen van een teruggewonnen g- mod p in de verifleermiddelen.
24. Systeem voor het genereren van een digitale handtekening (r#s) volgens conclusie 23, voorts voorzien van middelen voor het bepalen van een waarde v uitgaande van een waarde ux = (H(m)) (s)-1 mod q en een waarde u2 = (r) (s)-1 mod q volgens de regel
waarbij de waarde y congruent is aan g^ mod p en de waarde x een geheime waarde is.
25. Systeem voor het genereren van een digitale handtekening (r,s) volgens conclusie 24, voorts voorzien van middelen voor het bepalen of de vastgestelde waarde van v na reductie mod q hetzelfde is als de ontvangen waarde r.
26. Systeem voor het genereren van een digitale handtekening (r,s) volgens conclusie 25, voorts voorzien van middelen voor het bepalen of de handtekening (r,s) is geverifieerd in responsie op het bepalen dat de waarde v na reductie mod q hetzelfde is als de ontvangen waarde r.
27. Systeem voor het genereren van een digitale handtekening (r,s) volgens conclusie 22, waarbij de verifieer-middelen middelen omvatten voor het bepalen of de waarde r congruent is aan 0 mod q.
28. Systeem voor het genereren van een digitale handtekening (r,s) volgens conclusie 22, waarbij de verifleermiddelen middelen omvatten voor het bepalen of de waarde s congruent is aan 0 mod q.
29. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) van een boodschap m in een systeem waarbij informatie wordt verzonden en ontvangen door gebruikers van het systeem, omvattende de stappen van: (a) het verschaffen van een geheime waarde k die uniek is voor de boodschap m; (b) het verschaffen van een publieke waarde g; (c) het bepalen van een waarde uitgaande van een primitieve modulus p volgens de regel r = F(g- mod p) waarbij F een reductiefunctie is die onafhankelijk is van de boodschap ra; (d) het ontvangen van een ondertekende boodschap die is gevormd uit de boodschap m en de digitale handtekening (r,s); (e) het terugwinnen en isoleren van g- mod p in overeenstemming met de boodschap m; (f) het bepalen of de geïsoleerde g- mod p na reductie volgens de reductiefunctie F hetzelfde is als de ontvangen waarde r; (g) het bepalen of de handtekening (r,s) is geverifieerd in overeenstemming met de bepaling volgens stap (f) ; en (h) het genereren van een verificatiesignaal in overeenstemming met stap (g) en het verzenden van het veri-ficatiesignaal,
30. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 29, waarbij stap (b) het berekenen van de waarde g omvat, uitgaande van een waarde h die elk niet-nul zijnde gehele getal kan zijn, zodat hiE_1)/,a niet congruent is aan 1 mod p volgens de regel
waarbij de waarde q is gekozen als een primitieve deler van P-l·
31. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 29, waarbij stap a het willekeurig kiezen van de geheime waarde k omvat.
32. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 30, waarbij de reductiefunctie F reductie mod q omvat.
33. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 30, voorts omvattende de stap van het bepalen van een waarde v uitgaande van een waarde ux = (H(m)) (s)-1 mod q en een waarde u2 = (r)(s)”1 mod g volgens de regel
waarbij de waarde y congruent is aan g- mod p en de waarde x een geheime waarde is.
35. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 29, voorts omvattende de stap van het berekenen van de waarde s volgens de regel s = f(H(m)) waarbij H een hash-transformatie is voor het produceren van een getransformeerde boodschap H(m) en de waarde s alleen een functie van m is via de getransformeerde boodschap H(m).
36. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 35, omvattende de stap van het transformeren van de boodschap m door toepassing van een eenrichtingstransformatie H op de boodschap m.
38. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 37, omvattende de stap van het bepalen van k”1 voorafgaande aan het bekend zijn van de boodschap m.
39. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 29, waarbij de stappen (a)-(c) worden uitgevoerd voorafgaande aan het bekend zijn van de boodschap m.
40. Werkwijze voor het genereren en verifiëren van een digitale handtekening volgens conclusie 37, omvattende de verdere stap van het verzenden van een ondertekende boodschap die is gevormd uit een boodschap m en de digitale handtekening (r,s) uitgaande van de berekende waarde van s.
41. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 30, waarbij de stap (g) voorts omvat de stap van het bepalen van een verificatie in overeenstemming met het bepalen of de ontvangen waarde r congruent is aan 0 mod q.
42. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 30, waarbij stap (g) voorts omvat de stap van het bepalen van een verificatie in overeenstemming met het bepalen of de ontvangen waarde s congruent is aan 0 mod q.
43. Werkwijze voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 6, waarbij k-1 wordt bepaald voorafgaande aan het bekend zijn van de boodschap m.
44. Systeem voor het genereren en verifiëren van een digitale handtekening (r,s) volgens conclusie 20, waarbij k-1 wordt bepaald voorafgaande aan het bekend zijn van de boodschap m.
45. Systeem voor het genereren en verifiëren van een digitale handtekening (r,s) van een boodschap m, waarbij informatie wordt verzonden en ontvangen door gebruikers van het systeem, voorzien van een geheime waarde k die uniek is voor de boodschap m; een publieke waarde g; middelen voor het bepalen van de waarde r uitgaande 1. van een primitieve modulus p volgens de regel r = F(g- mod p) waarbij F een reductiefunctie is onafhankelijk van de boodschap m, middelen voor het ontvangen van een ondertekende boodschap die is gevormd uit de boodschap m en de digitale handtekening (r,s), middelen voor het terugwinnen en isoleren van g- mod p in overeenstemming met de boodschap m; vergelijkingsmiddelen voor het bepalen of de geïsoleerde g- mod p na reductie volgens de reductiefunctie F hetzelfde is als de ontvangen waarde r; verificatiemiddelen voor het bepalen of de handtekening r, s is geverifieerd in overeenstemming met de bepaling door de vergelijkingsmiddelen ; middelen voor het genereren van een verificatie-signaal in overeenstemming met de verificatie door de verifi-catiemiddelen; en middelen voor het verzenden van het verificatie- signaal.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/736,451 US5231668A (en) | 1991-07-26 | 1991-07-26 | Digital signature algorithm |
US73645191 | 1991-07-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
NL9220020A true NL9220020A (nl) | 1994-06-01 |
Family
ID=24959914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
NL929220020A NL9220020A (nl) | 1991-07-26 | 1992-07-24 | Algoritme voor een digitale handtekening. |
Country Status (12)
Country | Link |
---|---|
US (1) | US5231668A (nl) |
EP (1) | EP0596945A1 (nl) |
JP (1) | JPH07502346A (nl) |
AU (1) | AU2394492A (nl) |
BR (1) | BR9206315A (nl) |
CA (1) | CA2111572C (nl) |
FI (1) | FI940364A0 (nl) |
HU (1) | HUT68148A (nl) |
NL (1) | NL9220020A (nl) |
NO (1) | NO940258L (nl) |
SE (1) | SE9400103L (nl) |
WO (1) | WO1993003562A1 (nl) |
Families Citing this family (204)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5271061A (en) * | 1991-09-17 | 1993-12-14 | Next Computer, Inc. | Method and apparatus for public key exchange in a cryptographic system |
ES2101124T3 (es) * | 1991-11-05 | 1997-07-01 | Thomson Multimedia Sa | Metodo, aparatos emisor y receptor para explotacion por modulo. |
US5373560A (en) * | 1991-12-06 | 1994-12-13 | Schlafly; Roger | Partial modular reduction method |
DE4142964C2 (de) * | 1991-12-24 | 2003-05-08 | Gao Ges Automation Org | Datenaustauschsystem mit Überprüfung der Vorrichtung auf Authentisierungsstatus |
US5414771A (en) * | 1993-07-13 | 1995-05-09 | Mrj, Inc. | System and method for the creation of random sequences and for the cryptographic protection of communications |
US5347581A (en) * | 1993-09-15 | 1994-09-13 | Gemplus Developpement | Verification process for a communication system |
US5432852A (en) * | 1993-09-29 | 1995-07-11 | Leighton; Frank T. | Large provably fast and secure digital signature schemes based on secure hash functions |
US5343527A (en) * | 1993-10-27 | 1994-08-30 | International Business Machines Corporation | Hybrid encryption method and system for protecting reusable software components |
FR2713420B1 (fr) * | 1993-12-02 | 1996-01-19 | Gemplus Card Int | Procédé de génération de signatures DSA avec des appareils portables à bas coûts. |
FR2713419B1 (fr) * | 1993-12-02 | 1996-07-05 | Gemplus Card Int | Procédé de génération de signatures DSA avec des appareils portables à bas coûts. |
US5588060A (en) * | 1994-06-10 | 1996-12-24 | Sun Microsystems, Inc. | Method and apparatus for a key-management scheme for internet protocols |
EP0693836A1 (en) * | 1994-06-10 | 1996-01-24 | Sun Microsystems, Inc. | Method and apparatus for a key-management scheme for internet protocols. |
US7743248B2 (en) * | 1995-01-17 | 2010-06-22 | Eoriginal, Inc. | System and method for a remote access service enabling trust and interoperability when retrieving certificate status from multiple certification authority reporting components |
US5748738A (en) * | 1995-01-17 | 1998-05-05 | Document Authentication Systems, Inc. | System and method for electronic transmission, storage and retrieval of authenticated documents |
US5615268A (en) * | 1995-01-17 | 1997-03-25 | Document Authentication Systems, Inc. | System and method for electronic transmission storage and retrieval of authenticated documents |
US6237096B1 (en) | 1995-01-17 | 2001-05-22 | Eoriginal Inc. | System and method for electronic transmission storage and retrieval of authenticated documents |
US7162635B2 (en) * | 1995-01-17 | 2007-01-09 | Eoriginal, Inc. | System and method for electronic transmission, storage, and retrieval of authenticated electronic original documents |
SE512279C2 (sv) * | 1995-02-24 | 2000-02-21 | Telia Ab | Elektroniskt transaktionssystem |
DE19513896A1 (de) * | 1995-04-12 | 1996-10-17 | Deutsche Telekom Ag | Verfahren zum Signieren einer Nachricht |
FR2733379B1 (fr) * | 1995-04-20 | 1997-06-20 | Gemplus Card Int | Procede de generation de signatures electroniques, notamment pour cartes a puces |
EP0743603B1 (en) * | 1995-05-18 | 2002-10-02 | Hewlett-Packard Company, A Delaware Corporation | Integrated circuit device for use in the protection of multiple resources in an electronic assembly |
DE69527773T2 (de) * | 1995-05-18 | 2002-11-28 | Hewlett-Packard Co. (N.D.Ges.D.Staates Delaware), Palo Alto | Schaltungsanordnung zur Überwachung der Benutzung von Funktionen in einem integrierten Schaltungkreis |
US5633931A (en) * | 1995-06-30 | 1997-05-27 | Novell, Inc. | Method and apparatus for calculating message signatures in advance |
US5625693A (en) * | 1995-07-07 | 1997-04-29 | Thomson Consumer Electronics, Inc. | Apparatus and method for authenticating transmitting applications in an interactive TV system |
AU758834B2 (en) * | 1995-09-15 | 2003-04-03 | Eoriginal, Inc. | Document authentication system and method |
US5822738A (en) | 1995-11-22 | 1998-10-13 | F.M.E. Corporation | Method and apparatus for a modular postage accounting system |
US5754659A (en) * | 1995-12-22 | 1998-05-19 | General Instrument Corporation Of Delaware | Generation of cryptographic signatures using hash keys |
US5926551A (en) * | 1995-12-28 | 1999-07-20 | International Business Machines Corporation | System and method for certifying content of hard-copy documents |
US5999626A (en) * | 1996-04-16 | 1999-12-07 | Certicom Corp. | Digital signatures on a smartcard |
US5737425A (en) * | 1996-05-21 | 1998-04-07 | International Business Machines Corporation | Cryptosystem employing worst-case difficult-to solve lattice problem |
KR100397601B1 (ko) * | 1996-07-31 | 2003-10-23 | 삼성전자주식회사 | 메시지 부가형 디지털서명 방법 및 그에 대한 검증 방법 |
IL128552A (en) * | 1996-08-19 | 2004-06-01 | Ntru Cryptosystems Inc | Method and device of a public key in a crypto system |
US6724893B1 (en) | 1996-10-11 | 2004-04-20 | The United States Of America As Represented By The National Security Agency | Method of passing a cryptographic key that allows third party access to the key |
GB9621274D0 (en) * | 1996-10-11 | 1996-11-27 | Certicom Corp | Signature protocol for mail delivery |
US5881226A (en) * | 1996-10-28 | 1999-03-09 | Veneklase; Brian J. | Computer security system |
JPH10133576A (ja) * | 1996-10-31 | 1998-05-22 | Hitachi Ltd | 公開鍵暗号方法および装置 |
US5903652A (en) * | 1996-11-25 | 1999-05-11 | Microsoft Corporation | System and apparatus for monitoring secure information in a computer network |
US6078593A (en) | 1997-02-04 | 2000-06-20 | Next Level Communications | Method and apparatus for reliable operation of universal voice grade cards |
US6058187A (en) * | 1997-04-17 | 2000-05-02 | At&T Corp. | Secure telecommunications data transmission |
US6243466B1 (en) | 1997-08-29 | 2001-06-05 | Adam Lucas Young | Auto-escrowable and auto-certifiable cryptosystems with fast key generation |
US6282295B1 (en) | 1997-10-28 | 2001-08-28 | Adam Lucas Young | Auto-recoverable and auto-certifiable cryptostem using zero-knowledge proofs for key escrow in general exponential ciphers |
US6202150B1 (en) | 1997-05-28 | 2001-03-13 | Adam Lucas Young | Auto-escrowable and auto-certifiable cryptosystems |
US6389136B1 (en) | 1997-05-28 | 2002-05-14 | Adam Lucas Young | Auto-Recoverable and Auto-certifiable cryptosystems with RSA or factoring based keys |
US6122742A (en) * | 1997-06-18 | 2000-09-19 | Young; Adam Lucas | Auto-recoverable and auto-certifiable cryptosystem with unescrowed signing keys |
US6212637B1 (en) * | 1997-07-04 | 2001-04-03 | Nippon Telegraph And Telephone Corporation | Method and apparatus for en-bloc verification of plural digital signatures and recording medium with the method recorded thereon |
DE19731304B4 (de) * | 1997-07-14 | 2005-02-24 | Francotyp-Postalia Ag & Co. Kg | Verfahren zur Statistikmodusnachladung und zur statistischen Erfassung nach Statistikklassen bei der Speicherung eines Datensatzes |
US6708273B1 (en) * | 1997-09-16 | 2004-03-16 | Safenet, Inc. | Apparatus and method for implementing IPSEC transforms within an integrated circuit |
EP0944878A4 (en) * | 1997-09-22 | 2002-09-04 | Ascom Hasler Mailing Sys Inc | TECHNOLOGY FOR THE EFFECTIVE PRODUCTION OF MULTI-DIMENSIONAL SYMBOLS REPRESENTING POST INFORMATION |
US20030004900A1 (en) * | 1999-05-19 | 2003-01-02 | Robert G. Schwartz | Technique for effectively generating multi-dimensional symbols representing postal information |
US6076163A (en) * | 1997-10-20 | 2000-06-13 | Rsa Security Inc. | Secure user identification based on constrained polynomials |
DE19748954A1 (de) | 1997-10-29 | 1999-05-06 | Francotyp Postalia Gmbh | Verfahren für eine digital druckende Frankiermaschine zur Erzeugung und Überprüfung eines Sicherheitsabdruckes |
JP4307589B2 (ja) * | 1997-10-31 | 2009-08-05 | サーティコム コーポレーション | 認証プロトコル |
US6424954B1 (en) | 1998-02-17 | 2002-07-23 | Neopost Inc. | Postage metering system |
US6269350B1 (en) | 1998-07-24 | 2001-07-31 | Neopost Inc. | Method and apparatus for placing automated service calls for postage meter and base |
DE69832535D1 (de) * | 1998-03-18 | 2005-12-29 | Kent Ridge Digital Labs Singap | Verfahren zum austausch digitaler daten |
US6505773B1 (en) * | 1998-04-03 | 2003-01-14 | International Business Machines Corporation | Authenticated electronic coupon issuing and redemption |
US7236610B1 (en) * | 1998-04-30 | 2007-06-26 | Fraunhofer Gesellschaft | Authenticating executable code and executions thereof |
US6504941B2 (en) * | 1998-04-30 | 2003-01-07 | Hewlett-Packard Company | Method and apparatus for digital watermarking of images |
US7039805B1 (en) | 1998-05-20 | 2006-05-02 | Messing John H | Electronic signature method |
US6591251B1 (en) | 1998-07-22 | 2003-07-08 | Neopost Inc. | Method, apparatus, and code for maintaining secure postage data |
US6243467B1 (en) | 1998-07-23 | 2001-06-05 | The United States Of America As Represented By The National Security Agency | Method of elliptic curve cryptographic digital signature generation and verification using reduced base tau expansion in non-adjacent form |
US6523013B2 (en) | 1998-07-24 | 2003-02-18 | Neopost, Inc. | Method and apparatus for performing automated fraud reporting |
US6085321A (en) * | 1998-08-14 | 2000-07-04 | Omnipoint Corporation | Unique digital signature |
US6615348B1 (en) | 1999-04-16 | 2003-09-02 | Intel Corporation | Method and apparatus for an adapted digital signature |
US6356935B1 (en) | 1998-08-14 | 2002-03-12 | Xircom Wireless, Inc. | Apparatus and method for an authenticated electronic userid |
US6820202B1 (en) * | 1998-11-09 | 2004-11-16 | First Data Corporation | Account authority digital signature (AADS) system |
US7047416B2 (en) * | 1998-11-09 | 2006-05-16 | First Data Corporation | Account-based digital signature (ABDS) system |
US6473508B1 (en) | 1998-12-22 | 2002-10-29 | Adam Lucas Young | Auto-recoverable auto-certifiable cryptosystems with unescrowed signature-only keys |
US6381589B1 (en) | 1999-02-16 | 2002-04-30 | Neopost Inc. | Method and apparatus for performing secure processing of postal data |
US6971027B1 (en) * | 1999-04-01 | 2005-11-29 | Veneklase Brian J | Computer security system |
US6178412B1 (en) * | 1999-04-19 | 2001-01-23 | Pitney Bowes Inc. | Postage metering system having separable modules with multiple currency capability and synchronization |
CA2285770A1 (en) * | 1999-05-26 | 2000-11-26 | Certicom Corp. | Efficient digital signatures for mail systems |
US7058817B1 (en) | 1999-07-02 | 2006-06-06 | The Chase Manhattan Bank | System and method for single sign on process for websites with multiple applications and services |
US20080082446A1 (en) * | 1999-10-01 | 2008-04-03 | Hicks Christian B | Remote Authorization for Unlocking Electronic Data System and Method |
US20020046195A1 (en) * | 1999-11-10 | 2002-04-18 | Neopost Inc. | Method and system for providing stamps by kiosk |
US20020040353A1 (en) * | 1999-11-10 | 2002-04-04 | Neopost Inc. | Method and system for a user obtaining stamps over a communication network |
AU1475901A (en) | 1999-11-10 | 2001-06-06 | Neopost, Inc. | System and method of printing labels |
ATE280418T1 (de) * | 1999-11-16 | 2004-11-15 | Neopost Inc | System und verfahren zum verwalten von mehreren postalischen funktionen in einem einzigen konto |
US7237116B1 (en) | 2000-01-19 | 2007-06-26 | International Business Machines Corporation | Digital signature system and method based on hard lattice problem |
US7076061B1 (en) | 2000-02-07 | 2006-07-11 | Citibank, N.A. | Efficient and compact subgroup trace representation (“XTR”) |
US20050213758A1 (en) * | 2000-02-07 | 2005-09-29 | Lenstra Arjen K | Efficient and compact subgroup trace representation ("XTR") |
US20040186996A1 (en) * | 2000-03-29 | 2004-09-23 | Gibbs Benjamin K. | Unique digital signature |
US20020016726A1 (en) * | 2000-05-15 | 2002-02-07 | Ross Kenneth J. | Package delivery systems and methods |
US7152047B1 (en) | 2000-05-24 | 2006-12-19 | Esecure.Biz, Inc. | System and method for production and authentication of original documents |
US7162035B1 (en) | 2000-05-24 | 2007-01-09 | Tracer Detection Technology Corp. | Authentication method and system |
US7089420B1 (en) | 2000-05-24 | 2006-08-08 | Tracer Detection Technology Corp. | Authentication method and system |
US7085725B1 (en) | 2000-07-07 | 2006-08-01 | Neopost Inc. | Methods of distributing postage label sheets with security features |
US7558965B2 (en) * | 2000-08-04 | 2009-07-07 | First Data Corporation | Entity authentication in electronic communications by providing verification status of device |
US6789189B2 (en) * | 2000-08-04 | 2004-09-07 | First Data Corporation | Managing account database in ABDS system |
US6978369B2 (en) * | 2000-08-04 | 2005-12-20 | First Data Corporation | Person-centric account-based digital signature system |
US7096354B2 (en) * | 2000-08-04 | 2006-08-22 | First Data Corporation | Central key authority database in an ABDS system |
US7552333B2 (en) * | 2000-08-04 | 2009-06-23 | First Data Corporation | Trusted authentication digital signature (tads) system |
US6983368B2 (en) * | 2000-08-04 | 2006-01-03 | First Data Corporation | Linking public key of device to information during manufacture |
US7010691B2 (en) * | 2000-08-04 | 2006-03-07 | First Data Corporation | ABDS system utilizing security information in authenticating entity access |
US7082533B2 (en) * | 2000-08-04 | 2006-07-25 | First Data Corporation | Gauging risk in electronic communications regarding accounts in ABDS system |
CA2417922C (en) * | 2000-08-04 | 2013-03-12 | Lynn Henry Wheeler | Person-centric account-based digital signature system |
US20020083020A1 (en) * | 2000-11-07 | 2002-06-27 | Neopost Inc. | Method and apparatus for providing postage over a data communication network |
KR20010008248A (ko) * | 2000-11-17 | 2001-02-05 | 김태선 | 입증자료의 저장을 통한 인증 서비스 방법 및 시스템 |
FI111491B (fi) * | 2000-11-28 | 2003-07-31 | Setec Oy | Avainparin generointi |
DE10061665A1 (de) | 2000-12-11 | 2002-06-20 | Francotyp Postalia Gmbh | Verfahren zur Ermittlung eines Erfordernis zum Austausch eines Bauteils und Anordnung zur Durchführung des Verfahrens |
US20020073010A1 (en) * | 2000-12-11 | 2002-06-13 | Charles Tresser | Secure electronic stocks and other titles and instruments |
US20020124170A1 (en) * | 2001-03-02 | 2002-09-05 | Johnson William S. | Secure content system and method |
US20020138732A1 (en) * | 2001-03-23 | 2002-09-26 | Irvin David R. | Methods, systems and computer program products for providing digital signatures in a network environment |
DE10116703A1 (de) * | 2001-03-29 | 2002-10-10 | Francotyp Postalia Ag | Verfahren zur Aufzeichnung eines Verbrauchswertes und Verbrauchszähler mit einem Meßwertgeber |
US8849716B1 (en) | 2001-04-20 | 2014-09-30 | Jpmorgan Chase Bank, N.A. | System and method for preventing identity theft or misuse by restricting access |
EP1410289A4 (en) * | 2001-04-27 | 2004-12-22 | Massachusetts Inst Technology | MICROPAYMENT TRANSACTION METHOD AND SYSTEM |
US20020172363A1 (en) * | 2001-05-15 | 2002-11-21 | Dierks Timothy M. | Data security on a mobile device |
US7689506B2 (en) | 2001-06-07 | 2010-03-30 | Jpmorgan Chase Bank, N.A. | System and method for rapid updating of credit information |
US7266839B2 (en) | 2001-07-12 | 2007-09-04 | J P Morgan Chase Bank | System and method for providing discriminated content to network users |
DE10136608B4 (de) | 2001-07-16 | 2005-12-08 | Francotyp-Postalia Ag & Co. Kg | Verfahren und System zur Echtzeitaufzeichnung mit Sicherheitsmodul |
US20040128508A1 (en) * | 2001-08-06 | 2004-07-01 | Wheeler Lynn Henry | Method and apparatus for access authentication entity |
US7987501B2 (en) | 2001-12-04 | 2011-07-26 | Jpmorgan Chase Bank, N.A. | System and method for single session sign-on |
JP3709373B2 (ja) * | 2001-12-19 | 2005-10-26 | 株式会社日立製作所 | 流量計測装置 |
CN1331095C (zh) * | 2001-12-21 | 2007-08-08 | 皇家飞利浦电子股份有限公司 | 利用健壮特征增加水印的完整性 |
US20180165441A1 (en) | 2002-03-25 | 2018-06-14 | Glenn Cobourn Everhart | Systems and methods for multifactor authentication |
US8226473B2 (en) | 2002-04-10 | 2012-07-24 | Wms Gaming Inc. | Gaming software authentication |
US7151829B2 (en) * | 2002-04-22 | 2006-12-19 | International Business Machines Corporation | System and method for implementing a hash algorithm |
JP2004030102A (ja) * | 2002-06-25 | 2004-01-29 | Sony Corp | 情報記憶装置、およびメモリアクセス制御システム、および方法、並びにコンピュータ・プログラム |
JP4016741B2 (ja) * | 2002-06-25 | 2007-12-05 | ソニー株式会社 | 情報記憶装置、メモリアクセス制御システム、および方法、並びにコンピュータ・プログラム |
US7024559B1 (en) | 2002-06-28 | 2006-04-04 | The United States Of America As Represented By The National Security Agency | Method of elliptic curve digital signature using expansion in joint sparse form |
US7062043B1 (en) | 2002-06-28 | 2006-06-13 | The United States Of America As Represented By The National Security Agency | Method of elliptic curve digital signature using coefficient splitting |
US8171567B1 (en) | 2002-09-04 | 2012-05-01 | Tracer Detection Technology Corp. | Authentication method and system |
US7320642B2 (en) * | 2002-09-06 | 2008-01-22 | Wms Gaming Inc. | Security of gaming software |
US20040064422A1 (en) * | 2002-09-26 | 2004-04-01 | Neopost Inc. | Method for tracking and accounting for reply mailpieces and mailpiece supporting the method |
US7069253B2 (en) | 2002-09-26 | 2006-06-27 | Neopost Inc. | Techniques for tracking mailpieces and accounting for postage payment |
US7058660B2 (en) | 2002-10-02 | 2006-06-06 | Bank One Corporation | System and method for network-based project management |
US8301493B2 (en) | 2002-11-05 | 2012-10-30 | Jpmorgan Chase Bank, N.A. | System and method for providing incentives to consumers to share information |
DE10260406B4 (de) * | 2002-12-16 | 2007-03-08 | Francotyp-Postalia Gmbh | Verfahren und Anordnung zur unterschiedlichen Erzeugung kryptographischer Sicherungen von Mitteilungen in einem Hostgerät |
US20040249765A1 (en) * | 2003-06-06 | 2004-12-09 | Neopost Inc. | Use of a kiosk to provide verifiable identification using cryptographic identifiers |
US7367889B2 (en) * | 2003-06-09 | 2008-05-06 | Wms Gaming Inc. | Gaming machine having hardware-accelerated software authentication |
US7600108B2 (en) * | 2003-06-17 | 2009-10-06 | Wms Gaming Inc. | Gaming machine having reduced-read software authentication |
US7491122B2 (en) * | 2003-07-09 | 2009-02-17 | Wms Gaming Inc. | Gaming machine having targeted run-time software authentication |
US7424706B2 (en) * | 2003-07-16 | 2008-09-09 | Microsoft Corporation | Automatic detection and patching of vulnerable files |
US20050143171A1 (en) * | 2003-12-30 | 2005-06-30 | Loose Timothy C. | Gaming machine having sampled software verification |
US7526643B2 (en) * | 2004-01-08 | 2009-04-28 | Encryption Solutions, Inc. | System for transmitting encrypted data |
US8031865B2 (en) * | 2004-01-08 | 2011-10-04 | Encryption Solutions, Inc. | Multiple level security system and method for encrypting data within documents |
US7752453B2 (en) * | 2004-01-08 | 2010-07-06 | Encryption Solutions, Inc. | Method of encrypting and transmitting data and system for transmitting encrypted data |
US7289629B2 (en) * | 2004-02-09 | 2007-10-30 | Microsoft Corporation | Primitives for fast secure hash functions and stream ciphers |
US20050183142A1 (en) * | 2004-02-18 | 2005-08-18 | Michael Podanoffsky | Identification of Trusted Relationships in Electronic Documents |
US7562052B2 (en) * | 2004-06-07 | 2009-07-14 | Tony Dezonno | Secure customer communication method and system |
US7490239B2 (en) * | 2005-01-07 | 2009-02-10 | First Data Corporation | Facilitating digital signature based on ephemeral private key |
US7593527B2 (en) * | 2005-01-07 | 2009-09-22 | First Data Corporation | Providing digital signature and public key based on shared knowledge |
US20060153364A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Asymmetric key cryptosystem based on shared knowledge |
US20060153370A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Generating public-private key pair based on user input data |
US20060153369A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Providing cryptographic key based on user input data |
US20060153367A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Digital signature system based on shared knowledge |
US20060156013A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Digital signature software using ephemeral private key and system |
US7869593B2 (en) * | 2005-01-07 | 2011-01-11 | First Data Corporation | Software for providing based on shared knowledge public keys having same private key |
US7693277B2 (en) * | 2005-01-07 | 2010-04-06 | First Data Corporation | Generating digital signatures using ephemeral cryptographic key |
US7936869B2 (en) * | 2005-01-07 | 2011-05-03 | First Data Corporation | Verifying digital signature based on shared knowledge |
US8038530B2 (en) | 2005-02-28 | 2011-10-18 | Wms Gaming Inc. | Method and apparatus for filtering wagering game content |
KR100659607B1 (ko) * | 2005-03-05 | 2006-12-21 | 삼성전자주식회사 | 디지털서명 생성 및 확인 방법 및 그 장치 |
US7869590B2 (en) * | 2005-04-12 | 2011-01-11 | Broadcom Corporation | Method and system for hardware accelerator for implementing f9 integrity algorithm in WCDMA compliant handsets |
WO2007027427A2 (en) * | 2005-08-29 | 2007-03-08 | Wms Gaming Inc. | On-the-fly encryption on a gaming machine |
US7651593B2 (en) | 2005-12-19 | 2010-01-26 | Commvault Systems, Inc. | Systems and methods for performing data replication |
ES2582364T3 (es) | 2005-12-19 | 2016-09-12 | Commvault Systems, Inc. | Sistemas y métodos para realizar replicación de datos |
US7606844B2 (en) | 2005-12-19 | 2009-10-20 | Commvault Systems, Inc. | System and method for performing replication copy storage operations |
US8655850B2 (en) | 2005-12-19 | 2014-02-18 | Commvault Systems, Inc. | Systems and methods for resynchronizing information |
US7805479B2 (en) * | 2006-03-28 | 2010-09-28 | Michael Andrew Moshier | Scalable, faster method and apparatus for montgomery multiplication |
US8341416B2 (en) * | 2006-05-21 | 2012-12-25 | International Business Machines Corporation | Assertion message signatures |
US8726242B2 (en) * | 2006-07-27 | 2014-05-13 | Commvault Systems, Inc. | Systems and methods for continuous data replication |
US20090132813A1 (en) * | 2007-11-08 | 2009-05-21 | Suridx, Inc. | Apparatus and Methods for Providing Scalable, Dynamic, Individualized Credential Services Using Mobile Telephones |
US7995196B1 (en) | 2008-04-23 | 2011-08-09 | Tracer Detection Technology Corp. | Authentication method and system |
GB0811210D0 (en) * | 2008-06-18 | 2008-07-23 | Isis Innovation | Improvements related to the authentication of messages |
WO2009158538A1 (en) | 2008-06-27 | 2009-12-30 | Wms Gaming, Inc. | Authenticating components in wagering game systems |
US9495382B2 (en) | 2008-12-10 | 2016-11-15 | Commvault Systems, Inc. | Systems and methods for performing discrete data replication |
US8204859B2 (en) | 2008-12-10 | 2012-06-19 | Commvault Systems, Inc. | Systems and methods for managing replicated database data |
WO2011017099A2 (en) * | 2009-07-27 | 2011-02-10 | Suridx, Inc. | Secure communication using asymmetric cryptography and light-weight certificates |
US20110167258A1 (en) * | 2009-12-30 | 2011-07-07 | Suridx, Inc. | Efficient Secure Cloud-Based Processing of Certificate Status Information |
US8504517B2 (en) | 2010-03-29 | 2013-08-06 | Commvault Systems, Inc. | Systems and methods for selective data replication |
US8504515B2 (en) | 2010-03-30 | 2013-08-06 | Commvault Systems, Inc. | Stubbing systems and methods in a data replication environment |
US8725698B2 (en) | 2010-03-30 | 2014-05-13 | Commvault Systems, Inc. | Stub file prioritization in a data replication system |
WO2011150391A1 (en) | 2010-05-28 | 2011-12-01 | Commvault Systems, Inc. | Systems and methods for performing data replication |
JP5578553B2 (ja) * | 2010-06-02 | 2014-08-27 | 独立行政法人産業技術総合研究所 | 公開鍵暗号技術におけるドメインパラメータの生成 |
US10375107B2 (en) * | 2010-07-22 | 2019-08-06 | International Business Machines Corporation | Method and apparatus for dynamic content marking to facilitate context-aware output escaping |
US8775794B2 (en) | 2010-11-15 | 2014-07-08 | Jpmorgan Chase Bank, N.A. | System and method for end to end encryption |
US8782397B2 (en) * | 2011-01-06 | 2014-07-15 | International Business Machines Corporation | Compact attribute for cryptographically protected messages |
FR2974916A1 (fr) | 2011-05-05 | 2012-11-09 | Altis Semiconductor Snc | Dispositif et procede de multiplication rapide |
JP5734095B2 (ja) * | 2011-05-30 | 2015-06-10 | 三菱電機株式会社 | 端末装置およびサーバ装置および電子証明書発行システムおよび電子証明書受信方法および電子証明書送信方法およびプログラム |
GB2491896A (en) | 2011-06-17 | 2012-12-19 | Univ Bruxelles | Secret key generation |
US8949954B2 (en) | 2011-12-08 | 2015-02-03 | Uniloc Luxembourg, S.A. | Customer notification program alerting customer-specified network address of unauthorized access attempts to customer account |
AU2012100460B4 (en) | 2012-01-04 | 2012-11-08 | Uniloc Usa, Inc. | Method and system implementing zone-restricted behavior of a computing device |
AU2012100462B4 (en) | 2012-02-06 | 2012-11-08 | Uniloc Usa, Inc. | Near field authentication through communication of enclosed content sound waves |
US8627097B2 (en) | 2012-03-27 | 2014-01-07 | Igt | System and method enabling parallel processing of hash functions using authentication checkpoint hashes |
US9673983B2 (en) * | 2012-09-14 | 2017-06-06 | Qualcomm Incorporated | Apparatus and method for protecting message data |
AU2013100355B4 (en) | 2013-02-28 | 2013-10-31 | Netauthority, Inc | Device-specific content delivery |
EP3087771B1 (en) | 2013-12-27 | 2020-06-17 | Abbott Diabetes Care, Inc. | Systems, devices, and methods for authentication in an analyte monitoring environment |
US9621525B2 (en) * | 2014-06-02 | 2017-04-11 | Qualcomm Incorporated | Semi-deterministic digital signature generation |
CN104243456B (zh) * | 2014-08-29 | 2017-11-03 | 中国科学院信息工程研究所 | 适用于云计算的基于sm2算法的签名及解密方法和系统 |
WO2016155565A1 (en) | 2015-03-30 | 2016-10-06 | Jintai Ding | Improvements on multivariate digital signature schemes based on hfev- and new applications of multivariate digital signature schemes for white-box encryption |
US20160355043A1 (en) * | 2015-06-03 | 2016-12-08 | Yxcorp14 Inc. | System and method for production and verification of counterfeit-protected banknotes |
JP6527090B2 (ja) | 2016-02-01 | 2019-06-05 | 株式会社日立製作所 | ユーザ許可の確認システム |
EP3214567B1 (en) * | 2016-03-01 | 2020-02-19 | Siemens Aktiengesellschaft | Secure external update of memory content for a certain system on chip |
US10788229B2 (en) | 2017-05-10 | 2020-09-29 | Johnson Controls Technology Company | Building management system with a distributed blockchain database |
US20190026749A1 (en) | 2017-07-18 | 2019-01-24 | Eaton Corporation | Security tag and electronic system usable with molded case circuit breakers |
WO2019089269A1 (en) | 2017-10-31 | 2019-05-09 | Carbon, Inc. | Efficient surface texturing of objects produced by additive manufacturing |
US11562073B2 (en) | 2018-11-28 | 2023-01-24 | The Boeing Company | Systems and methods of software load verification |
US10826598B1 (en) * | 2019-07-10 | 2020-11-03 | Eagle Technology, Llc | Satellite communication system having mitigation action for rain fade and associated method |
US11042318B2 (en) | 2019-07-29 | 2021-06-22 | Commvault Systems, Inc. | Block-level data replication |
CN110517147B (zh) * | 2019-08-30 | 2023-04-14 | 深圳市迅雷网络技术有限公司 | 交易数据处理方法、装置、系统及计算机可读存储介质 |
CN113442597B (zh) | 2019-12-31 | 2022-12-23 | 极海微电子股份有限公司 | 耗材芯片和耗材芯片的响应方法、耗材盒及存储介质 |
US12045351B2 (en) | 2020-04-24 | 2024-07-23 | Dell Products L.P. | System and method of authenticating firmware |
US11809285B2 (en) | 2022-02-09 | 2023-11-07 | Commvault Systems, Inc. | Protecting a management database of a data storage management system to meet a recovery point objective (RPO) |
US12056018B2 (en) | 2022-06-17 | 2024-08-06 | Commvault Systems, Inc. | Systems and methods for enforcing a recovery point objective (RPO) for a production database without generating secondary copies of the production database |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4200770A (en) * | 1977-09-06 | 1980-04-29 | Stanford University | Cryptographic apparatus and method |
US4218582A (en) * | 1977-10-06 | 1980-08-19 | The Board Of Trustees Of The Leland Stanford Junior University | Public key cryptographic apparatus and method |
US4405829A (en) * | 1977-12-14 | 1983-09-20 | Massachusetts Institute Of Technology | Cryptographic communications system and method |
US4424414A (en) * | 1978-05-01 | 1984-01-03 | Board Of Trustees Of The Leland Stanford Junior University | Exponentiation cryptographic apparatus and method |
US4641346A (en) * | 1983-07-21 | 1987-02-03 | Pitney Bowes Inc. | System for the printing and reading of encrypted messages |
FR2596177B1 (fr) * | 1986-03-19 | 1992-01-17 | Infoscript | Procede et dispositif de sauvegarde qualitative de donnees numerisees |
US4748668A (en) * | 1986-07-09 | 1988-05-31 | Yeda Research And Development Company Limited | Method, apparatus and article for identification and signature |
US4881264A (en) * | 1987-07-30 | 1989-11-14 | Merkle Ralph C | Digital signature system and method based on a conventional encryption function |
US4933970A (en) * | 1988-01-19 | 1990-06-12 | Yeda Research And Development Company Limited | Variants of the fiat-shamir identification and signature scheme |
US5005200A (en) * | 1988-02-12 | 1991-04-02 | Fischer Addison M | Public key/signature cryptosystem with enhanced digital signature certification |
EP0383985A1 (de) * | 1989-02-24 | 1990-08-29 | Claus Peter Prof. Dr. Schnorr | Verfahren zur Identifikation von Teilnehmern sowie zur Generierung und Verifikation von elektronischen Unterschriften in einem Datenaustauschsystem |
-
1991
- 1991-07-26 US US07/736,451 patent/US5231668A/en not_active Expired - Lifetime
-
1992
- 1992-07-24 HU HU9400228A patent/HUT68148A/hu active IP Right Revival
- 1992-07-24 CA CA002111572A patent/CA2111572C/en not_active Expired - Fee Related
- 1992-07-24 EP EP92916102A patent/EP0596945A1/en not_active Withdrawn
- 1992-07-24 NL NL929220020A patent/NL9220020A/nl not_active Application Discontinuation
- 1992-07-24 BR BR9206315A patent/BR9206315A/pt not_active Application Discontinuation
- 1992-07-24 WO PCT/US1992/006184 patent/WO1993003562A1/en not_active Application Discontinuation
- 1992-07-24 JP JP5503644A patent/JPH07502346A/ja active Pending
- 1992-07-24 AU AU23944/92A patent/AU2394492A/en not_active Abandoned
-
1994
- 1994-01-17 SE SE9400103A patent/SE9400103L/sv not_active Application Discontinuation
- 1994-01-25 NO NO940258A patent/NO940258L/no unknown
- 1994-01-25 FI FI940364A patent/FI940364A0/fi not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
WO1993003562A1 (en) | 1993-02-18 |
US5231668A (en) | 1993-07-27 |
EP0596945A1 (en) | 1994-05-18 |
CA2111572A1 (en) | 1993-02-18 |
BR9206315A (pt) | 1995-04-04 |
SE9400103D0 (sv) | 1994-01-17 |
JPH07502346A (ja) | 1995-03-09 |
AU2394492A (en) | 1993-03-02 |
CA2111572C (en) | 1999-01-05 |
FI940364A (fi) | 1994-01-25 |
SE9400103L (sv) | 1994-03-17 |
FI940364A0 (fi) | 1994-01-25 |
HUT68148A (en) | 1995-05-29 |
NO940258D0 (no) | 1994-01-25 |
NO940258L (no) | 1994-01-25 |
HU9400228D0 (en) | 1994-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
NL9220020A (nl) | Algoritme voor een digitale handtekening. | |
US11895231B2 (en) | Adaptive attack resistant distributed symmetric encryption | |
CA2228958C (en) | Data card verification system | |
EP0786178B1 (en) | Secret-key certificates | |
JP2666191B2 (ja) | データ交換システムにおける加入者相互のアイデンテイフイケーシヨンならびに署名の発生および確認のための方法 | |
CN110545279A (zh) | 兼具隐私和监管功能的区块链交易方法、装置及系统 | |
US6122742A (en) | Auto-recoverable and auto-certifiable cryptosystem with unescrowed signing keys | |
TW201320700A (zh) | 署名驗證裝置、署名驗證方法、程式及記錄媒體 | |
US6345098B1 (en) | Method, system and apparatus for improved reliability in generating secret cryptographic variables | |
EP4136800A1 (en) | Generating secret shares | |
US20150006900A1 (en) | Signature protocol | |
Huang et al. | Partially blind ECDSA scheme and its application to bitcoin | |
KR20230002941A (ko) | 비밀 공유를 갖는 (ec)dsa 임계값 서명 | |
EP4423961A1 (en) | Generating shared keys | |
WO2016187689A1 (en) | Signature protocol | |
US7519178B1 (en) | Method, system and apparatus for ensuring a uniform distribution in key generation | |
Khovratovich et al. | Tornado Privacy Solution. Cryptographic Review. Version 1.1 | |
Ergezer et al. | A Survey on Threshold Signature Schemes | |
Zahhafi et al. | A DSA-like digital signature protocol | |
Longmate et al. | Signing information in the quantum era | |
Farsi | Digital Cash | |
Feng | Cryptography and Its Role in Blockchain | |
Itoh et al. | Proposal of a fast public key cryptosystem | |
GB2606169A (en) | Nested threshold signatures | |
CA2892318C (en) | Signature protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
BV | The patent application has lapsed |