Anda di halaman 1dari 3

NATIONAL AVIATION UNIVERSITY

Educational and Research Institute of Computer Information Technologies

Computer Systems and Network Department

Homework
on Information Protection in Computer Systems

Created by student
Of CS – 422 ERICIT
Milchakov Georgiy

Kyiv 2019
Questions

1. What are the roles of the public and private key?

Public key is accessible for everyone and used to decrypt messages encrypted by
private key and vice versa. For example: first party encrypts message with own
private key and sends to another, since access to private key has only owner it proves
authenticity of sender, in its turn, second party encrypts own message (for example
key for symmetric encryption) by public key of other party, and by own private key,
as result first party will get message that only it can decrypt and authenticity of
second party will be proven.

2. What is a trap-door one-way function?

Trapdoor one-way functions are types of one-way functions that contain a kind
of "back door" (trapdoor). As in the case of ordinary one-way functions it is easy
to compute their values for given data but it is very difficult to compute their inverse
functions. However, if one has some additional secret information, he can easily
compute the inverse function as well.

An example of such trapdoor one-way functions may be finding the prime


factors of large numbers. Nowadays, this task is practically infeasible. On the other
hand, knowing one of the factors, it is easy to compute the other ones.

Problems

6. Suppose we have a set of blocks encoded with the RSA algorithm and we don’t
have the private key.Assume n = pq, e is the public key. Suppose also someone tells
us they know one of the plaintext blocks has a common factor with n. Does this help
us in any way?

The fact that one of the blocks have a common factor with n gives us that n and the
block has a common divisor. Then we can assume that if the gcd of n and a block is
larger than 1, then the gcd is also a factor of n. This means that we can factor n in the
time it takes to find the gcd of n and each of the blocks. If n is a number represented
by 1024 bits, then the gcd of n and a block can be found in O(10242 ) (page 169). So
the decryption exponent can easily be computed and the plaintext found.

7. In the RSA public-key encryption scheme, each user has a public key, e, and a
private key d. Assume Bob leaks his p-key. Rather than generating a new modulus, he
decides to generate a new public and a new private key. Is it safe?

It is not safe. The procedure of the RSA encryption and decryption is as followings:
1. Choose two prime numbers p and q.
2. Computer n=p*q.
3. Choose a public key e, where e>1 and coprime to j(n) = (p-1)*(q-1).
4. Computer the private key. Where e*d = 1(mod j(n)).
5. The public key is (e, n) and the private key is (d, n).
6. The ciphertext is ci=mi^e (mod n).
7. The plaintext is mi=ci^d (mod n).

When we know the private key d1, the public key e1 and the other public e2, we can
computer the private key d2 related to e2 in the same modulus. First we assume that
k=y j(n), where y is an integer. Since j(n) = (p-1)*(q-1), and the p, q are the prime
number, so the result of j(n) is an even number. Hence, we can denote k=2t *r, where r
is odd number and t>=1.

Then we choose a random number g from the Zn*, where gk≡ 1 (mod n). gk/2 is result
of gk to the power of 1/2. That is to say gk/2 is result of 1(mod n) to the power of 1/2.
According to the Chinese remainder theorem, we know that there are 4 results for that
calculation, two of which are +1 and -1. We denoted the other two as +x and –x.
Hence, x satisfies: x≡ 1 mod p and
x≡ -1 mod q. so p=gcd (x-1, n), q= gcd(x+1, n).

After knowing the p and q, we can compute j(n), then d2. And then we will know the
ciphertext and plaintext. Thereby, it is not safe if Bob generate a new public and a
new private key based on the old modulus.

Anda mungkin juga menyukai