Final ss2-digital-signature-group5

Post on 12-Apr-2017

127 Views

Category:

Education

0 Downloads

Preview:

Click to see full reader

Transcript

Digital SignatureGroup 5Chu Huu Thanh 4C13Phan The Minh 4C13Tran Thi Thu 4C13Nguyen Thi Thuy Ngan 4C13

Definition: A digital signature for an electronic message is

equivalent to a personal signature on a written document.

It is created by using a form of cryptography. A unique electronic binding of the identity of the

signer to the origin of the message is provided by the digital signature on a message.

It make the proof of the message origin and a method to verify the integrity of the message.

Model of Digital Signature

- Signer feeds data to the hash function and generates hash of data.

- Signature is appended to the data and then both are sent to the verifier.

- The verification algorithm gives some value as output.

- This hash value and output of verification algorithm are compared. Based on the comparison result, verifier decides whether the digital signature is valid.

- digital signature is created by ‘private’ key of signer.

RSA is a public-key cryptosystem, it was invented in 1977 by Ronald L. Rivest .Public-key cryptography, also known as asymmetric cryptography. It uses that key pair for encryption and decryption.

•Public key:key to encrypt Private key:key to decryptPlaintext: original formatCiphertext: data encrypted Encryption:is the process of converting the original data into data encryptionDecryption: is the reverse process of coding , data transformation is encoded into the original format .

II.RSA

Processsing: The data will be encrypted with the recipient’s public key in order to just only he/she can read it by hash function, which creates X.Then the recipient use his/her private key which only he/she know to decrypt X to see the content of sender’s message.

Advantages Security and convenience

Key distribution much easier

Disadvantages Low speed Easy fake

No repudiation.

ADVANTAGES AND DISADVANTAGES OF RSA ALGORITHM

RSA variants:The objectives behind these variants are either to improve RSA decryption time, to accelerate RSA encryption time or to rebalance RSA encryption and decryption time: Rebalanced RSA-CRT variant Rebalance RSA-CRT scheme A Rebalance RSA-CRT scheme B Mprime RSA variant Rprime RSA RAM-RSA RBM-RSA

The Elliptic Curve

The Elliptic Curve

An elliptic curve E is the graph of points of the plane curve defined by the Weierstrass-equation: y^2 = x^3 + ax + b (mod p),(i, j)

A Geometric Approach

Adding two points on an ellipse

Adding two points reflected across the x-axis

A Geometric Approach

Doubling the point PDoubling P when y-coordinate is zero

The Elliptic Curve in a picture

Why Signing with ECC? Key pair generation:

Randomly select d∈ [1, n-1]. Compute Q=dP, P, Q is a point on the curve (Public key is Q, private key is d) The naive algorithm to draw the d from Q is the computation of a sequence of points P, 2P, 3P, 4P, until Q=dP.

If we know d and P, finding Q is an easy work. But if we know Q and GP, finding the PK is hard because it requires us to solve the discrete logarithm problem.

III.

The Elliptic Curve Digital Signature Algorithm (ECDSA) is the elliptic curve analogue of the Digital Signature Algorithm (DSA). A digital signature scheme should be existentially non-forgeable under chosen message attack. The ECDSA have a smaller key size, which makes faster computation time and reduction in processing power, storage space and bandwidth. This makes the ECDSA ideal for constrained devices such as pagers and smart cards.

ECDSA in Bitcoin

Algorithm

In ECDSA, the signature generation and verification is similar to DSA, but the key generation is based on ECC algorithm. A digital signature scheme typically includes three algorithms: A key generation algorithm that selects a private key uniformly at random from a set of possible private keys. The algorithm outputs the private key and a corresponding public key. A signing algorithm that, given a message and a private key, produces a signature. A signature verifying algorithm that, given a message, public key and a signature, either accepts or rejects the message’s claim to authenticity.

Implementation

Result - ECC

Result - RSA

DEMOBy Mr. Silver

top related