Question
Need phyton code with phycharm Name of the Experiment: Elgamal Digital Signature OBJECTIVES: Develop a program to implement Elgamal Digital Signature. PRELAB DISCUSSION: Digital signatures
Need phyton code with phycharm
Name of the Experiment: Elgamal Digital Signature OBJECTIVES: Develop a program to implement Elgamal Digital Signature. PRELAB DISCUSSION: Digital signatures are based on public key cryptography, also known as asymmetric cryptography. Using a public key algorithm such as RSA, one can generate two keys that are mathematically linked: one private and one public. To create a digital signature, signing software (such as an email program) creates a one-way hash of the electronic data to be signed. The private key is then used to encrypt the hash. The encrypted hash -- along with other information, such as the hashing algorithm -- is the digital signature. The reason for encrypting the hash instead of the entire message or document is that a hash function can convert an arbitrary input into a fixed length value, which is usually much shorter. This saves time since hashing is much faster than signing. The value of the hash is unique to the hashed data. Any change in the data, even changing or deleting a single character, results in a different value. This attribute enables others to validate the integrity of the data by using the signer's public key to decrypt the hash. If the decrypted hash matches a second computed hash of the same data, it proves that the data hasn't changed since it was signed. If the two hashes don't match, the data has either been tampered with in some way (integrity) or the signature was created with a private key that doesn't correspond to the public key presented by the signer (authentication). A digital signature can be used with any kind of message -- whether it is encrypted or not -- simply so the receiver can be sure of the sender's identity and that the message arrived intact. Digital signatures make it difficult for the signer to deny having signed something (non- repudiation) -- assuming their private key has not been compromised -- as the digital signature is unique to both the document and the signer, and it binds them together. A digital certificate, an electronic document that contains the digital signature of the certificate-issuing authority, binds together a public key with an identity and can be used to verify a public key belongs to a particular person or entity. Most modern email programs support the use of digital signatures
and digital certificates, making it easy to sign any outgoing emails and validate digitally signed incoming messages. Digital signatures are also used extensively to provide proof of authenticity, data integrity and nonrepudiation of communications and transactions conducted over the Internet.
Basic Digital Signature Protocol Alice \begin{tabular}{l} \multicolumn{1}{c}{ Bob } \\ generate kpr,B,kpub,B \\ publish public key \\ sign message: \\ s=sigkpr(x) \end{tabular} (x,s) send message + signature verify signature: verkpr,B(x,s)=true/false From this set-up, the core property of digital signatures follows: A signed message can unambiguously be traced back to its originator since a valid signature can only be computed with the unique signer's private key. Only the signer has the ability to generate a signature on his behalf. Hence, we can prove that the signing party has actually generated the message. Such a proof can even have legal meaning, for instance, as in the Electronic Signatures in Global and National Commerce Act (ESIGN) in the USA or in the Signaturgesetz, or Signature Law, in Germany. We note that the basic protocol above does not provide any confidentiality of the message since the message x is being sent in the clear. Of course, the message can be kept confidential by also encrypting it, e.g., with AES or 3DES. ALGORITHM: 1. Choose a prime number q, which is called the prime divisor. 2. Choose another primer number p, such that p1modq=0.p is called the prime modulus. 3. Choose an integer g, such that 1Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started