Digital Signatures Are One of the Most Important Inventions/Applications of Modern Cryptography

Digital Signatures Are One of the Most Important Inventions/Applications of Modern Cryptography

CHAPTER 7: DIGITAL SIGNATURES Digital signatures are one of the most important inventions/applications of modern cryptography. The problem is how can a user sign (electronically) Part VII an (electronic) message in such a way that everybody (or the intended addressee only) can Digital signatures verify the signature that should be good enough also for legal purposes. Moreover, a properly implemented digital signature should give the receiver a reason to believe that the received message was created by the claimed sender and was not altered in the transit. In many countries digital signatures have legal significance. prof. Jozef Gruska IV054 7. Digital signatures 2/58 DIGITAL SIGNATURES - OBSERVATION BASIC IDEAS BASIC IDEAS Can we make digital signatures by digitalizing our usual Example: Assume that each user A can use a special public-key cryptosystem (e ,d ). signature and attaching them to the messages A A (documents) that need to be signed? One way to sign a message w by a user A so that any user can verify the signature, is to apply on w (as the signing procedure) the mapping dA : No, because such signatures could be easily signing a message w: dA(w) signature verification: eA(dA(w)) = w removed and attached to some other documents or One way to sign a message w by a user A so that only the user B can verify the messages. signature, is to apply on w (as the signing procedure) at first the mapping dA and then, on the outcome, e : Key observation: Digital signatures have to depend not B only on the signer, but also on the message that is being signing the message w: eB (dA(w)) signature verification: eA(dB (eB (dA(w)))) = w signed. A way to send a message w, and its hash obtained by using a hash function h so that any responder can verifier the signature: (w, dA(h(w))) prof. Jozef Gruska IV054 7. Digital signatures 3/58 prof. Jozef Gruska IV054 7. Digital signatures 4/58 DIGITAL SIGNATURES - BASIC GOALS DIGITAL SIGNATURES - BASIC MODES Basic requirements - I. Digital signatures should be such that each user should be able If only signature (but not the encryption of the message) are of importance, then it to verify signatures of other users, but that should give him/her no information how to suffices that Alice sends to Bob sign a message on behalf of any other user. (w, dA(w)) Caution: Signing a message w by A for B by Basic requirements - II A valid digital signature should give the recipient reasons to believe that the message was created by a known sender and that it was not altered in eB (dA(w)) transit. is O.K., but the symmetric solution, with encoding first: Note An important difference from a handwritten signature is that digital signature of a message is always intimately connected with the message, and for different messages is c = dA(eB (w)) different, whereas the handwritten signature is adjoined to the message and always looks the same. is not good. Technically, a digital signature signing is performed by a signing algorithm and a digital Indeed, an active enemy, the tamperer, can intercept the message, then can compute signature is verified by a verification algorithm. dT (eA(c)) = dT (eB (w)) A copy of a digital (classical) signature is identical (usually distinguishable) to (from) the and can send the outcome to Bob, pretending that it is from him/tamperer (without origin. A care has therefore to be taken that digital signatures are not misused. being able to decrypt/know the message). This chapter contains some of the main techniques for design and verification of digital Any public-key cryptosystem in which the plaintext and cryptotext spaces are the same signatures (as well as some possible attacks on them). can be used for digital signature. prof. Jozef Gruska IV054 7. Digital signatures 5/58 prof. Jozef Gruska IV054 7. Digital signatures 6/58 WHY TO SIGN HASHES of MESSAGES and not MESSAGES A SCHEME of DIGITAL SIGNATURE SYSTEMS – SIMPLIFIED THEMSELVES VERSION A digital signature system (DSS) consists of: P - the space of possible plaintexts (messages). There are several reasons why it is better to sign hashes of messages than messages S - the space of possible signatures. themselves. K - the space of possible keys. For efficiency: Hashes are much shorter and so are their signatures - this is a way to For each k K there is a signing algorithm sigk and a corresponding verification save resources (time,...) ∈ algorithm verk such that For compatibility: Messages are typically bit strings. Digital signature schemes, sigk : P S. such as RSA, operate often on other domains. A hash function can be used to → verk : P S true, false convert an arbitrary input into the proper form. ⊗ → { } For integrity: If hashing is not used, a message has to be often split into blocks and and each block signed separately. However, the receiver may not able to find out true if s = sigk (w); , verk (w, s) = whether all blocks have been signed and in the proper order. (false otherwise. Algorithms sigk and verk should be computable in polynomial time. Verification algorithm can be publicly known; signing algorithm (actually only its key) should be kept secret prof. Jozef Gruska IV054 7. Digital signatures 7/58 prof. Jozef Gruska IV054 7. Digital signatures 8/58 DIGITAL SIGNATURE SCHEMES I DIGITAL SIGNATURES SCHEMES II - conditions Digital signature schemes are basic tools for authentication messages. A digital signature scheme allows anyone to verify signature of any sender S without providing any Correctness: information how to generate signatures of S. For each messagem fromM and public keyk in Kv , it should hold A Digital Signature Scheme (M, S, Ks , Kv ) is given by: verk (m, s) = true M - a set of messages to be signed if there is anr from 0, 1 ∗ such that S - a set of possible signatures { } Ks - a set of private keys for signing - one for each signer s = sigl (r, m) Kv - a set of public keys for verification - one for each signer for a private keyl from Ks corresponding to the public keyk. Moreover, it is required that: Security: For each k from Ks , there exists a single and easy to compute signing mapping For anyw fromM andk in Kv , it should be computationally infeasible, without the sigk : 0, 1 ∗ M S { } × → knowledge of the private key corresponding tok, to find a signatures fromS such that For each k from Kv there exists a single and easy to compute verification mapping verk (w, s) = true. verk : M S true, false × → { } such that the following two conditions are satisfied: prof. Jozef Gruska IV054 7. Digital signatures 9/58 prof. Jozef Gruska IV054 7. Digital signatures 10/58 BREAKING CRYPTOSYSTEMS ATTACKS MODELS on DIGITAL SIGNATURES An encrypton system is considered as broken if Basic attack models one can determine a plaintext from a cryptotext (often). KEY-ONLY ATTACK: The attacker is only given the public verification key. KNOWN SIGNATURES ATTACK: The attacker is given valid signatures for several A digital signature system is considered as broken messages known but not chosen by the attacker. CHOSEN SIGNATURES ATTACK: The attacker is given valid signatures for several if one can (at least sometimes) forge some messages chosen by the attacker. signatures. ADAPTIVE CHOSEN SIGNATURES ATTACKS: The attacker is given valid signatures for several messages chosen by the attacker where messages In both cases, a more ambitious goal is to find chosen may depend on previous signatures given for chosen messages. the private key. prof. Jozef Gruska IV054 7. Digital signatures 11/58 prof. Jozef Gruska IV054 7. Digital signatures 12/58 LEVELS of BREAKING of DIGITAL SIGNATURES A DIGITAL SIGNATURE of one BIT Let us start with a very simple, but much illustrative (though non-practical), example how to sign a single bit. Design of the signature scheme: Total break of a signature scheme: The adversary manages to recover the secret key from the public key. A one-way function f(x) is publically chosen. Universal forgery: The adversary can derive from the public key an algorithm which Two integers k0 and k1 are chosen and kept secret by the signer, and three items allows to forge the signature of any message. f, (0, s0), (1, s1) Selective forgery: The adversary can derive from the public key a method to forge signatures of selected messages (where selection was made a priory the knowledge of are made public, where the public key). s0 = f (k0), s1 = f (k1) Existential forgery: The adversary is able to create from the public key a valid Signature of a bit b: signature of a message m (but has no control for which m). (b, kb). Observe that to forge a signature scheme means to produce a new signature - it is not forgery to obtain from the signer a valid signature. Verification of such a signature sb = f (kb) SECURITY? prof. Jozef Gruska IV054 7. Digital signatures 13/58 prof. Jozef Gruska IV054 7. Digital signatures 14/58 FROM RSA CRYPTOSYSTEM to RSA SIGNATURES RSA SIGNATURES and some ATTACKS on them The idea of RSA cryptosystem is simple. Let us have an RSA cryptosystem with encryption and decryption exponentse andd and Public key: modulus n = pq and encryption exponent e. modulusn. Secret key: decryption exponent d and primes p, q Signing of a message w: e Encryption of a message w: c = w σ = w d mod n Decryption of the cryptotext c: w = cd . Does it has a sense to change the order of these two operations: To do first Verification of the signature s = σ: c = w d w = σe mod n? and then ce ? Possible simple attacks Is this a crazy idea? No, we just ned to interpret outcomes of these operations differently.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    14 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us