Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Standard view
Full view
of .
Look up keyword
Like this
0 of .
Results for:
No results containing your search query
P. 1
Digital Signature Standard and DSA Algorithm

Digital Signature Standard and DSA Algorithm

Ratings: (0)|Views: 16 |Likes:
Published by Sajendra Kumar
Digital Signature Standard and DSA Algorithm with example
Digital Signature Standard and DSA Algorithm with example

More info:

Published by: Sajendra Kumar on Sep 19, 2012
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less





DSS: Digital Signature Standard and DSA Algorithm
SAJENDRA KUMAR, AP, IIMT IET, MEERUTWhat is a Digital Signature?
Digital signatures are essential in today’s modern
world to verify the
sender of a document’s identity. A digital signature is represented in a
computer as a string of binary digits. The signature is computer using a setof rules and parameters (algorithm) such that the identity of the personsigning the document as well as the originality of the data can be verified.The signature is generated by the use of a private key. A private key isknown only to the user. The signature is verified makes use of a public keywhich corresponds to (but not the same, i.e. mathematically infeasible todeduct private key from public) the private key. With every user having apublic/private key pair, this is an example of public-key cryptography.Public keys, which are known by everyone, can be used to verify thesignature of a user. The private key, which is never shared, is used insignature generation, which can only be done by the user.Digital signatures are used to detect unauthorized modifications todata. Also, the recipient of a digitally signed document in proving to a thirdparty that the document was indeed signed by the person who it is claimedto be signed by. This is known as nonrepudiation, because the person whosigned the document cannot repudiate the signature at a later time. Digital
signature algorithms can be used in e-mails, electronic funds transfer,electronic data interchange, software distribution, data storage, and justabout any application that would need to assure the integrity and originalityof data.
What is in the Standard?
There are three algorithms that are suitable for digital signaturegeneration under the DSS standard. They are the Digital SignatureAlgorithm (DSA, which I will talk about more in depth later), the RSAalgorithm, and the Elliptic Curve Digital Signature Algorithm (ECDSA). Alsoin this standard is a hash function to be used in the signature generationprocess. It is used to obtain a condensed version of the data, which is calleda message digest. This message digest is then put into the digital signaturealgorithm to generate the digitally signed message. The same hash functionis used in the verification process as well. The hash function used in theDSS standard is specified in the Secure Hash Standard (SHS), which are thespecifications for the Secure Hash Algorithm (SHA). The SHA is based onprinciples similar to those used by Professor Ronald L. Rivest of MIT whendesigning the MD4 message digest algorithm and is closely modeled afterthat algorithm. When a message of any length < 2
bits is input, the SHAproduces a 160-bit output (message digest). Signing the message digestrather than the message often improves the efficiency of the process
because the message digest is usually much smaller in size than themessage.
 DSA Parameters:
p = a prime modulus, where 2
< p < 2
for 512 ≤ L ≤ 1024 and L is
a multiple of 64. So L will be one member of the set {512, 576, 640,704, 768, 832, 896, 960, 1024}
q = a prime divisor of p-1, where 2
< q < 2
DSA is a variant on the ElGamal and Schnorr algorithms descriptionof DSA
p = 2
a prime number, where L= 512 to 1024 bits and is a multiple of 64q a 160 bit prime factor of p-1g = h(p-1)/q where h is any number less than p-1 with h(p-1)/q(mod p)> 1x a number less than qy = g
(mod p)To
a message M generate random k, k<qComputer = (g
(mod p))(mod q)s = k-1.SHA(M)+ x.r (mod q)the signature is (r,s)To
a signature:w = s-1(mod q)u1= (SHA(M).w)(mod q)

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->