Professional Documents
Culture Documents
BACHELOR OF TECHNOLOGY
In
COMPUTER SCIENCE AND ENGINEERING
BY
DEPT. OF CSE
Page 1 of 23
SPHOORTHY ENGINEERING COLLEGE
(Approved by AICTE, Affiliated to JNTU, Hyderabad NAAC Accredited)
Nadergul Village, Near Vanasthalipuram,Sagar Ring Road, Balapur Mandal,
Hyderabad,
Rangareddy-501510
CERTIFICATE
This is to certify that the project report entitled “DIGITAL SIGNATURE” submitted
by bearing H.T.No: , Department of Computer Science and Engineering in the partial
fulfilment of the requirement for the award of degree of Bachelor of Technology in CSE as a
specialization in SPHOORTHY ENGINEERING COLLEGE, Jawaharlal Nehru
Technological University Hyderabad is a record of bonafied work carried by them, under our
guidance and supervision from 2021-2022
Page 2 of 23
ACKNOWLEDGEMENT
I express my deep sense gratitude to P. Ram Mohan Rao, Head of the Department
of COMPUTER SCIENCE AND ENGINEERING, who encouraged
me to select the topic and setting deadlines for completing the technical report well ahead of
time.
I take the opportunity to express my gratitude to the Management, Teaching and Non
Teaching Staff of Sphoorthy Engineering College for their kind co-operation during the
period of my study.
Finally, I would like to thank my parents and my friends for their continuous
encouragement and support during entire course of this Technical Seminar.
Page 3 of 23
ABSTRACT
People have traditionally used signatures as a means of informing others that the signature
has read and understood a document. Digital signature in a document is bound to that
document in such a way that altering the signed document or moving the signature to a
different document invalidates the signature. This security eliminates the need for paper
copies of documents and can speed the processes involving documents that require
signatures. Digital Signatures are messages that identify and authenticate a particular person
as the source of the electronic message, and indicate such persons approval of the
information contained in the electronic message. Emerging applications like electronic
commerce and secure communications over open networks have made clear the fundamental
role of public key cryp tosystem as unique security solutions. On the other hand, these
solutions clearly expose the fact, that the protection of private keys is a security bottleneck
in these sensitive applications. This problem is further worsened in the cases where a single
and unchanged private key must be kept secret for very long time (such is the case of
certification authority keys, and e-cash keys). They help users to achieve basic security
building blocks such as identification, authentication, and integrity.
Page 4 of 23
INDEX
1. INTRODUCTION………………………………………………………………………7
2. DIGITAL SIGNATURE………………………………………………………………..8
3. SECURITY SERVICES………………………………………………………………..11
4. ATTACKS………………………………………………………………………………13
6. APPLICATIONS………………………………………………………………………...19
7. CONCLUSION…………………………………………………………………………..22
8. REFERENCES…………………………………………………………………………..23
9.
Page 5 of 23
1.Introduction
The Digital Signature Standard, created by the NIST, specifies DSA as the algorithm for digital
signa tures and SHA-1 for hashing. DSA is for signatures only and is not an encryption
algorithm, although Schneier describes encryption mechanisms (ElGamel encryption and RSA
encryption) based on DSA. DSA is a public key algorithm; the secret key operates on the
message hash generated by SHA-1; to verify a signature, one recomputed the hash of the
message, uses the public key to decrypt the signature and then compare the results.
The key size is variable from 512 to 1024 bits which is adequate for current computing
capabilities as long as you use more than 768 bits. Signature creation is roughly the same speed
as with RSA, but is 10 to 40 times (Schneier) as slow for verification. However, these numbers
depend partially on the assumptions made by the bench marker. Since verification is more
frequently done than creation, this is an issue worth noting.
The only known cracks (forgery) areeasily circumvented by avoiding the particularmodule
(prime factor of p - 1 where p is the publickey) that lead to weak signatures. Schneier states that
DSS is less susceptible to attacks than RSA; the difference is that RSA depends on a secret prime
while DSA de pends on a public prime – the verifier can check that the prime number is not a
fake chosen to allow forgery. It is possible to implement the DSA algorithm such that a
”subliminal channel” is created that can expose key data and lead to forgeable signatures so one
is warned not to used unexamined code. A Digital Signature is a checksum which depends on the
time period during which it was produced. It depends on all the bits of a transmitted message,
and also on a secret key, but which can be checked without knowledge of the secret key. A major
difference between handwritten and digital signatures is that a digital signature cannot be a
constant; it must be a function of the document that it signs. If this were not the case then a
signature, could be attached to any document. Furthermore, asignature must be a function of the
entire document; changing even a single bit should produce a different signature. Adig ital
signature algorithm authenticates the integrity of the signed data and the identity of the signatory.
A digital signaturealgorithm may also be used in proving to a third party that data was actually
signed by the generator of the signature. Is intended for use in electronic mail, electronic data
interchange, software distribution, and other applications that require data integrity assurance
and data origin authen tication.The wireless protocols, like HiperLAN and WAP have specified
security layers and the digital signature algorithm have been applied for the authentication
purposes.
Page 6 of 23
Page 7 of 23
2.DIGITAL SIGNATURE
The term digital signature encompasses a great many variety of ”signatures”. Electronic
signatures are simply an electronic confirmation of identity. This definition is deliberately
broad enough to encompass all forms of electronic identification, from biometric signatures
such as iris scans and fingerprints to non-biometric signatures, such asdigital signatures.
Electronic signatures can be further subdivided into the highly secure and the insecure.
Digital sig nature must serve the same essential functions that we expect of documents
signed by handwritten signatures, namely integrity, non repudiation, authentication and
confidentiality. In the digital realm, integrity means ensuring that a communication has not
been altered in the course of transmission. It is concerned with the accuracy and
completeness of the communication. The recipient of an electronic communication must be
confident of a communication’s integrity before she can rely on and act on the
communication. Integrity is critical to ecommerce transactions, especially where contracts
are formed electronically. The process of digitally signing starts by taking a mathematical
summary (called a hash code) of the check. This hash code is a uniquely-identifying digital
fingerprint of the check. If even a single bit of the check changes, the hash code will
dramatically change. The next step in creating a digital signature is to sign the hash code
with your private key. This signed hash code is then appended to the check.
Page 8 of 23
Figure 2.1: Digital signature process
Digital signatures enable people to sign digital documents by providing the properties of
a hand written signature. They must fulfill the five compelling attributes of handwritten
signatures as listed by (Schneier, 1996). He stated that the handwritten signatures are
authentic, unforgivable, not reusable, unalterable, and cannot be repudiated. In the case of
handwritten signatures, both the signature and the document are physical things, which
makes it difficult for the signer to claim the signature is not their own. In order to provide a
secure electronic signature scheme, these attributes must be satisfied.
Electronic signature technologies include PINs, user identifications and passwords,
digital signa tures, digitized signatures, and hardware and biometric tokens. Therefore, it is
important to distinguish between electronic and digital signatures. Digital signatures are a
subset of electronic signature tech nologies that utilize keys and cryptographic algorithms
for signing documents. Digital signatures can be generated using various techniques;
however, the only digital signature standard approved by Na tional Institute for Standards
and Technology (NIST) employs public key cryptography combined with a one-way hash
function. This infrastructure, commonly referred to as the Public Key Infrastructure (PKI),
requires each user to have a public-private key pair where the public key is available to the
world while the private key is only known by the user. Figure 1 illustrates the use of PKI for
generating digital signatures. The following is an example of a digital signature scenario.
Bob (sender) wants to send Alice (receiver) a text message with a digital signature. First,
Bobreates the text message to be signed and generates a hashed message using a message
digest function (e.g., MD5, SHA1, etc.). A message digest function is a mathematical
function that generates a 162-bit hash of the original message; this hash cannot be used to
regenerate the original message. Therefore, thehashed message is secure and unique. Once
Bob has the hashed message, he uses the public key digital signature algorithm and his
private key to sign the hash to generate a digital signature for the specific document.
Once Alice receives the digital signature, and the corresponding text message, she will
need to cal culate two separate values. First the hashed message of the received text is
calculated using the same hashing algorithm. Then, once she has the hash value, she can
now use the decryption algorithm with Bobs public key and digital signature to retrieve the
signed hash. If she can decrypt the digital signature, this implies that Bobs private key was
used to encrypt the hashed message. The final step for Alice is to compare thehash she
calculated with the hash she retrieved from the decryption process. If these two hashed
messages match, this implies that she received the original message Bob signed (thus
preserving message integrity).Key generation and distribution are the biggest challenges in
deploying PKI. The so lution is to use a trusted central authority called a Certification
Page 9 of 23
Authority (CA) in PKI. CA is a trusted entity that accepts certificate applications from
entities, authenticates applications, issues certificates to users and devices in a PKI, and
maintains and provides status information about the certificates. If a CA is managing a
large, geographically dispersed population, it may use Local Registration Authorities
(LRAs), who provide direct physical contacts with subjects. These LRAs are especially
required if the CA is issuing a high level of assurance for its certificates. Currently, there are
four levels of assurance defined in the evolving government standard (PEC Solutions,
2000): Rudimentary; Basic; Medium; and High. Traditionally, PKI architectures fall into
one of three configurations: a single CA, a hierarchy of CAs, or a mesh of CAs. Each of the
configurationsis determined by the fundamental attributes of the PKI: the number of CAs in
the PKI, where users of the PKI place their trust (known as a users trust point), and the trust
relationships between CAs within a multi-CA PKI (Polk and Hastings, 2000). The most
basic PKI architecture is one that contains a single CA, which provides the PKI services
(certifi cates, certificate status information, etc.) for all the users of the PKI. All the users of
the PKI place their trust in the sole CA of the architecture. Isolated CAs can be combined to
form larger PKIs in two basic ways: using superior-subordinate relationships, or peer-to-
peer relationships. In the former, which is called a hierarchical PKI, all users trust a root
CA. There is single point of trust. The latter, a mesh PKI, connects CAs with a peer-to-peer
relationship. A PKI constructed of peer-to-peer CA relationships is called a web of trust.
The Bridge Certification Authority (BCA) architecture was designed to address the
shortcomings of the two basic PKI architectures, and to link PKIs that implement different
architectures. Unlike a mesh PKI CA, the BCA does not issue certificates directly to users.
Page 10 of 23
3.SECURITY SERVICES PROVIDED BY A
DIGITAL SIGNATURE
Page 11 of 23
3.3 Nonrepudiation
• Regarding digital security, the cryptological meaning and application of non-repudiation
shifts to mean:
• A service that provides proof of the integrity and origin of data.
• An authentication that can be asserted to be genuine with high assurance.
Nonrepudiation can be provided using a trusted party. The ways in which a party may
attempt to repudiate a signature present a challenge to the trustworthiness of the signatures
themselves. The standard approach to mitigating these risks is to involve a trusted third
party.
3.4 confidentiality
• A digital signature does not provide privacy.
• If there is a need for privacy, another layer of encryption/decryption must be applied.
When we talk about confidentiality of information, we are talking about protecting the
informa tion from disclosure to unauthorized parties. Information has value, especially in
todays world. Bank account statements, personal information, credit card numbers, trade
secrets, government documents. Everyone has information they wish to keep a secret.
Protecting such information is a very major part of information security.
A very key component of protecting information confidentiality would be encryption.
Encryption ensures that only the right people (people who knows the key) can read the
information. Encryption is VERY widespread in todays environment and can be found in
almost every major protocol in use. A very prominent example will be SSL/TLS, a security
protocol for communications over the internet that has been used in conjunction with a large
number of internet protocols to ensure security.
Page 12 of 23
4.Attacks on digital signature
If the digital signing process is not secure, attackers can create fake signatures or misuse
authentic sig natures, bringing the systemand potentially the organizationinto disrepute. Failure
to maintain adequate documentation and certification for policies and practices associated with
digital signing and key man agement could result in signatures failing to be accepted in any
given jurisdiction, thereby negating their value to the organization. Some digital signing
processes can be computationally intensive, slowing down business processes and limiting their
ability to scale.
Page 13 of 23
An interesting variant of this attack for hand-written signatures arises if you steal
someone elses mail when a new credit card is sent out to them if you just sign this blank
card then you can easily mas querade as them. There are other possible abuses to zero-
knowledge proofs of identity, also discussed in [485,120]. In some implementations, there is
no check when an individual registers a public key. Hence, Alice can have several private
keys and, therefore, several identities. This can be a great help if she wants to commit tax
fraud. Alice can also commit a crime and disappear. First, she creates and publishes several
identities. One of them she doesnt use. Then, she uses that identity once and commits a
crime so that the person who identifies her is the witness. Then, she immediately stops using
that identity. The witness knows the identity of the person who committed the crime, but if
Alice never uses that identity againshes untraceable.
Page 14 of 23
5.DIGITAL SIGNATURE ALGORITHM
A digital signature is computed using a set of parameters and authenticates the integrity of
the signed data and the identity of the signatory. An algorithm provides the capability to
generate and verify signature. Signature generation makes use of a private key to generate a
digital signature. Signature verification makes use of a public key, which corresponds to,
but is not the same as, the private key. Each user possesses a private and public key pair.
Public keys are assumed to be known to the public in general. Private keys are never shared.
Anyone canverify the signature of a user by employing that user public key. Only the
possessor of the user private key can perform signature generation.
A hash function is used in the signature generation process to obtain a condensed version
of data, called a message digest. The message digest is then input to the digital signature
algorithm to generate the digital signature. The digital signature is sent to the intended
verifier along with the message. The verifier of the message and signature verifies the
signature by using the sender’s public key.
• CHOOSE two distinct prime numbers p and q. For security purposes, the integers p and q
should be chosen at random, and should be of similar bit-length. Prime integers can be
efficiently found using a primarily test.
• COMPUTE n = pq. n is used as the modulus for both the public and private keys. Its
length, usually expressed in bits, is the key length.
• COMPUTE (n) = (p)(q) = (p 1)(q 1) = n - (p + q -1), where is Euler’s totient function.
• CHOOSE an integer e such that 1 ¡ e ¡(n) and gcd(e, (n)) = 1; i.e., e and (n) are co-prime.
e is released as the public key exponent. e having a short bit-length and small Hamming
weight results in more efficient encryption most commonly 216 + 1 = 65,537. However,
much smaller values of e (such as 3) have been shown to be less secure in some settings.
[5]
• Determine d as d e1 (mod (n)); i.e., d is the multiplicative inverse of e (modulo (n)). This
is more clearly stated as: solve for d given de 1 (mod (n)) This is often computed using
Page 15 of 23
the extended Euclidean algorithm. Using the pseudo code in the Modular integers
section, inputs a and n correspond to e and (n), respectively. d is kept as the private key
exponent.
5.1.2 Encryption:
Alice transmits her public key (n, e) to Bob and keeps the private key secret. Bob then wishes to
send message M to Alice. He first turns M into an integer m, such that 0 m ¡ n by using an
agreed-upon reversible protocol known as a padding scheme. He then computes the cipher text c
corresponding to
This can be done quickly using the method of exponentiation by squaring. Bob then transmits c
to Alice. Note that at least nine values of m will yield a cipher text c equal to but this is very
unlikely to occur in practice.
5.1.3 Decryption
Alice can recover m from c by using her private key exponent d via computing
Given m, she can recover the original message M by reversing the padding scheme. Example:
As a trivial example, suppose that Alice chooses p = 823 and q = 953, and calculates n = 784319.
The value of f(n) is 782544. Now she chooses e = 313 and calculates d = 160009. At this point
key generation is complete. Now imagine that Alice wants to send a message with the value of M
= 19070 to Bob. She uses her private exponent, 160009, to sign the message:
Alice sends the message and the signature to Bob. Bob receives the message and the signature.
Page 16 of 23
DIGITAL SIGNATURE ALGORITHM
When the digest is signed instead of the message itself, the susceptibility of the RSA
digital signature scheme depends on the strength of the hash algorithm.
5.2.2 Encryption
• The encryption algorithm works as follows: to encrypt a message to Alice under her public
key(G,q,g,h), • Bob chooses a random x from1..,q-1, then calculates c1=gy.
• Bob calculates the shared secret s=hy.
• Bob converts his secret message m into an element m of G.
• Bob calculates c2=m.s.
• Bob sends the cipher text (c1,c2)= (gy,m.hy)= (gy,m.(gx)y) to Alice.
Note that one can easily find hyif one knows m. Therefore, a new y is generated for
every message to improve security. For this reason, is also called an ephemeral key.
5.2.3 Decryption
Page 17 of 23
The decryption algorithm works as follows: to decrypt a cipher text with her private key x,
Alice cal culates the shared secret s=c1xand then computes m=c2.s−1 which she then
converts back into the plaintext message m, wheres−1 is the inverse of s in the group G. (E.g.
modular multiplicative inverse
Page 18 of 23
6.APPLICATIONS OF DIGITAL
SIGNATURES
6.1 APPLICATIONS
Digital Signature is a process that guarantees that the contents of a message have not been
altered in transit. When you, the server, digitally sign a document, you add a one-way hash
(encryption) of the message content using your public and private key pair.Your client can
still read it, but the process creates a ”signature” that only the server’s public key can
decrypt. The client, using the server’s public key, can then validate the sender as well as the
integrity of message contents.
Whether it’s
• an email
• an online order
• or a watermarked photograph on eBay
if the transmission arrives but the digital signature does not match the public key in the
digital certifi cate, then the client knows that the message has not been altered.
Page 19 of 23
they may have their own encryption keys. They might be able to sign documents, or unlock
applications on a computer. Some smart cards are assumed to be tamperproof; this often
protects the institution that issues the cards. A bank wouldnt want you to be able to hack
their smart card to give yourself more money.
6.1.2 MITRENET
One of the earliest implementations of public-key cryptography was the experimental
system MEMO (MITRE Encrypted Mail Office). MITRE is a DoD contractor, a
government think tank, and an all around bunch of smart guys. MEMO was a secure
electronic mail system for users in the MITRENET network, using public-key cryptography
for key exchange and DES for file encryption. In the MEMO system, all public keys are
stored in a Public Key Distribution Center, which is a separate node on the network. They
are stored in an EPROM to prevent anyone from changing them. Private keys are generated
by users or by the system. For a user to send secure messages, the system first establishes a
secure communications path with the Public Key Distribution Center. The user requestsa
file of all public keys from the Center. If the user passes an identification test using his
private key, the Center sends this list to the users workstation. The list is encrypted using
DES to ensure file integrity.
6.1.3 ISDN
Bell-Northern Research developed a prototype secure Integrated Services Digital Network
(ISDN) tele phone terminal [499, 1192, 493, 500]. As a telephone, it was never developed
beyond prototype. The resulting product was the Packet Data Security Overlay. The
terminal uses Diffie-Hellman key exchange, RSA digital signatures, and DES data
encryption; it can transmit and receive voice and data at 64 kilobits per second.
Page 21 of 23
7.Conclusion
Digital signatures are in some senses a complimentary technology to public key encryption,
offering data origin authentication and non-repudiation of digital messages. Digital
signatures have different properties and offer different guarantees to hand-written
signatures. The security of digital signatures critically relies on the security of the keys that
are used to create and verify them. the digital signa ture technology vastly used in modern
life and technology. the digital signature algorithm are used in various purposes such as
internet protocols, business deals, software certification, mobile phones, and internet
websites etc. Digital signatures utilizing the public key cryptography system have every
potential to achieve the same level of legal recognition as handwritten signatures. However,
the main obstacle at present is in the functional element of non-repudiation. This element,
unlike the other three elements ofhandwrittensignatures discussed, cannot be achieved by
technology alone. Assistance is re quired from the law to help it attain the functional
element of nonrepudiation. Once non-repudiation has been achieved, then and only then,
can electronic commerce be expected to be successfully taken up. A certification authority
in turn can be validated by higher certification authorities, thus creating a certificate chain.
Hence, the trustworthiness of a certification authority may depend on its reputation in
traditional business transactions, or, it may be a subscriber of a higher certification
authority, and use the certificate of the higher certification authority to reassure subscribers
and relying parties that it is not a bogus certification authority. The certification authority
atthe pinnacle of the certification authority hierarchy is known as a root certification
authority and it issues root certificates. The root certification authority selfauthenticates for
purposes of determining the validity of the certificates.
Page 22 of 23
8.REFERENCES
[1] Digital Signature Algorithm Based on Hash Round Function and Self-Certified Public Key
Sys tem;Chen Hai-peng, Education Technology and Computer Science, 7-8 March 2009
[2] Comparison Research on Digital Signature Algorithms in Mobile Web Services; Zuguang
Zuan, Management and Service Science,20-22 Sept. 2009
[3] Somitra Kumar Sanadhya and Palash Sarkar. New collision attacks against up to 24-step
SHA-2. In Dipanwita Roy Chowdhury, Vincent Rijmen, and Abhijit Das, editors, IN-
DOCRYPT, volume 5365 of Lecture Notes in Computer Science, pages 91103. Springer,
2008
[4] Dike, W., and Hellman, M. New directions in cryptography. IEEE Trans. Inform. Theory
IT-22, (Nov. 1976), 644-654.
[5] ISO/IEC 29192-3. Information technology Security techniques Lightweight cryptography
Part 3: Stream ciphers. International Organization for Standardization, 2012.
[6] Digital Signature Algorithm Based on Hash Round Function and Self-Certified Public Key
System Education Technology and Computer Science, 2009. ETCS ’09. First International
Workshop on (Volume:2 ) Date of Conference:7-8 March 2009
Page 23 of 23