Semantron 21 Summer 2021

Cryptography

The same can be carried out by multiplying point P on the graph to get the points 2P or 3P. This is the same as adding P to itself multiple times (P + P + P…). This is known as point multiplication, where R = k*P. There is no way to find the value of k, since you can’t do k = P/R , as there is no point subtraction or division involved and similarly since there are millions of point addition operations being carried out, if you were to try and resolve k = P/R, it would place you on another point

on the graph. For the actual algorithm, a public and private key are needed, thus the public key can be defined as Qa, which is calculated using dA * G, where dA is the private key and G is a point on the curve. The message can now be signed to ensure it is coming from the actual sender. The signature is 40 bytes, and is split into two 20-byte chunks, R and S. In order to calculate R and S, a value k needs to be generated, and then using point multiplication P is calculated using P = k * G. The x coordinate of R (graph above) is only needed for the signature, which is now referred to as R. To calculate the S value, the message needs to be hashed using the SHA1 algorithm, which gives a very large integer, and we refer to it now as z. S is now calculated using the equation S = k -1 (z + dA * R) mod p. Since k is such a large integer, it’s necessary that (k -1 * k) mod p is equal to 1. We nowhave the digital signature; however, the signature will need to be verified. This is done using the equation P = (S -1 * z * G) + (S -1 * R * Qa), and, if the x coordinate of point P is equal to the x coordinate of point R, then the signature is valid, otherwise it’s not. The question posed is now the security of ECDSA. Since both k (random integer) and dA (private key) is needed to calculate S, but R and Qa (public key) to verify the signature, and since R = k*G and Qa = dA * G and the trap door function, dA or k cannot be calculated from knowing Qa and R which makes it secure and no way to fake the signature if the private key is not known.

Quantum computing

In ordinary computers, the bits can only be in two possible states, 0 or 1. However, qubits in quantum computers have a probability of being 0, or 1, but, until you measure them, they are in an indefinite state. This state, known as the superposition, is a combination of the values along all three axes on a sphere. This reduces the time complexity of a problem exponentially.

184

Made with FlippingBook Digital Publishing Software