Cryptography: Private vs Public Key Systems

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Listen to an AI-generated conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

In a private key cryptosystem, what must be true of the encryption and decryption functions, $e_k$ and $d_k$, for a given key $k$?

  • $e_k(d_k(m)) = d_k(e_k(m))$ for all messages $m$
  • $e_k(d_k(m)) = m$ for all messages $m$
  • $d_k(e_k(m)) = m$ for all messages $m$ (correct)
  • Both A and B

In a public key cryptosystem, encryption functions depend on both the public and private keys.

False (B)

What is the primary advantage of public key cryptosystems over private key cryptosystems regarding key exchange?

No need to exchange a key beforehand or exchange any information in secret.

The inverse of a one-way function is ______ to compute without knowledge of the corresponding trapdoor information, but is easy to compute with the trapdoor.

<p>hard</p>
Signup and view all the answers

Match the properties to the type of cryptosystem that exhibits them:

<p>Faster encryption/decryption speeds = Private Key Cryptosystem Eliminates the need for secure key exchange = Public Key Cryptosystem Requires a pre-shared secret key = Private Key Cryptosystem Both parties have symmetric encryption/decryption capabilities = Private Key Cryptosystem</p>
Signup and view all the answers

What is the worst-case number of division steps required by the Euclidean algorithm to compute $gcd(a, b)$ where $a > b > 1$?

<p>$2 + 2log_2(b)$ (A)</p>
Signup and view all the answers

The Euclidean algorithm needs at least $log_2(b)$ division steps for ALL pairs of integers a, and b.

<p>False (B)</p>
Signup and view all the answers

According to the provided text, what sequence is used to prove that the Euclidean algorithm needs at least $log_2(b)$ division steps for infinitely many integers?

<p>Fibonacci sequence</p>
Signup and view all the answers

In each step of the Euclidean algorithm, the remainders $r_i$ decrease by a factor of at least 2 every ______ steps.

<p>two</p>
Signup and view all the answers

If applying the Euclidean algorithm to compute gcd(a, b) results in the following divisions with remainders: $a = q_1b + r_2$ $b = q_2r_2 + r_3$ $r_2 = q_3r_3 + r_4$ $r_3 = q_4r_4 + 0$, what is the value of gcd(a, b)?

<p>$r_4$ (C)</p>
Signup and view all the answers

Given that 151 is prime and $5^{601} \equiv 5 \pmod{151}$, according to Fermat's Little Theorem, what is the result of $a^{k} \equiv \pmod{151}$?

<p>a (C)</p>
Signup and view all the answers

If p is a prime number, then for all integers $a$, where $a$ is not divisible by $p$, $a^{p} = a(mod p)$

<p>False (B)</p>
Signup and view all the answers

Assuming a system of congruences leads to the equation $12 + k \equiv 2 \pmod{15}$, what is the equivalent value of k?

<p>5</p>
Signup and view all the answers

If 2 is a primitive root modulo 53, then $ord(4) =$ ______

<p>26</p>
Signup and view all the answers

Match the congruence relation with its solutions if 2 is a primitive root in $F_{53}$ and $4^x \equiv 11 \pmod{53}$:

<p>$4^x \equiv 11 \pmod{53}$ = $x \equiv 3 \pmod{26}$</p>
Signup and view all the answers

In the context of a discrete logarithm problem (DLP) to the base g in group G, what are you trying to find given an element h G?

<p>An integer x such that gx = h. (D)</p>
Signup and view all the answers

Shank's Babystep-Giantstep algorithm does NOT require precomputation of any values.

<p>False (B)</p>
Signup and view all the answers

If the group is (Z/NZ, +) with addition as the group operation, and g is relatively prime to N, how can the DLP to base g be solved very quickly?

<p>By finding the multiplicative inverse of g modulo N</p>
Signup and view all the answers

Pollard's rho method has O(1) requirement for ______

<p>storage</p>
Signup and view all the answers

Match these DLP algorithms with its complexities

<p>Shank's Babystep-Giantstep = O(N log N) steps Pollard's rho = O(N) steps</p>
Signup and view all the answers

In digital signature schemes, what is a practical use case?

<p>Verifying software updates are from the original authors. (D)</p>
Signup and view all the answers

Larger documents are easier to sign directly without using hashes for digital signature algorithms.

<p>False (B)</p>
Signup and view all the answers

What makes it hard for attackers to claim any documents have been signed with a known signature?

<p>It is hard for attackers to map the same hash.</p>
Signup and view all the answers

Instead of signing a message, you sign the ______

<p>hash</p>
Signup and view all the answers

In the Pohlig-Hellman theorem, when does it allow one to solve DLPs quickly in Fp?

<p>when p-1 only has small prime factors (D)</p>
Signup and view all the answers

The Pohlig-Hellman theorem applies only when the base g has PRIME order.

<p>False (B)</p>
Signup and view all the answers

What implications does the Pohlig-Hellman theorem have for choices of primes to use when picking a prime p and a primitive root in Fp for use as a base for a DLP if you want the DLP to be secure?

<p>One should pick p so that p-1 has at least one large prime factor</p>
Signup and view all the answers

The Pohlig-Hellman theorem allows one to solve DLPs quickly in $F_p$ if $p - 1$ only has ______ prime factors.

<p>small</p>
Signup and view all the answers

Match each step to the correct phase of RSA usage by Alice wanting to receive secure messages:

<p>Others encrypt messages using Alice's setup. = Encryption Alice sets up what is needed to receive others' encrypted message. = Setup Alice can decrypt received messages = Decryption</p>
Signup and view all the answers

According to the best approaches known, what mathematical problem underpins the security of RSA?

<p>Factoring large numbers (B)</p>
Signup and view all the answers

The quadratic sieve method has polynomial running time

<p>False (B)</p>
Signup and view all the answers

What is one of the best attack methods for breaking RSA?

<p>Factoring n</p>
Signup and view all the answers

The Miller-Rabin test is used to help generate large ______ needed for RSA.

<p>primes</p>
Signup and view all the answers

Given p=503, g=53 and h=204, which of these equations uses table data to compute logg(h)?

<p>logg(h) = 88 + 2logg(2) + logg(3) + logg(5) (C)</p>
Signup and view all the answers

Index calculus is likely to succeed in generating a table using smoothness since enough smooth numbers are likely to be hit.

<p>True (A)</p>
Signup and view all the answers

What does the number of the number of solutions the Hasse bound say about the number of points of $E(F_p)$

<p>That the number of points of E(Fp) is p + 1 + tp where |tp| 2p.</p>
Signup and view all the answers

Elliptic curves have DLP algorithms performing at ______ that of O(p)

<p>better</p>
Signup and view all the answers

If computing square roots mod p is quick if p \equiv 3 mod 4, then, is that for fast powering Alice and Bob for the Elliptic curve Diffie Helman is required to ?

<p>True (B)</p>
Signup and view all the answers

Pollard's and lenstra's equation method algorithms work in

<p>The same way</p>
Signup and view all the answers

What does lenstra do if N = pq a product of two primes p<Q?

<p>factorization method (A)</p>
Signup and view all the answers

If lenstra is run to try to invert N for elliptisic curve but it is not invertible in Z/NZ what is its equivalent equation according to the text

<p>111 P = 0 over 743 (A)</p>
Signup and view all the answers

Flashcards

Private Key Cryptosystem

A cryptosystem using the same key for encryption and decryption.

Public Key Cryptosystem

A cryptosystem using separate keys for encryption (public) and decryption (private).

One-Way Function with Trapdoor

An easily computed invertible function whose inverse is hard to compute without specific 'trapdoor' knowledge.

Advantage of Public Key

Public Key Cryptosystem does not need secure pre-exchange and changes keys easy

Signup and view all the flashcards

Advantage of Private Key

Private key systems are more faster computationally and have symmetric capabilities

Signup and view all the flashcards

Practical Cryptosystem

Fast Encryption, fast decryption with key, slow decryption without.

Signup and view all the flashcards

Secure Against Known Plaintext Attack

Knowing a ciphertext/plaintext pair doesn't help decrypt others.

Signup and view all the flashcards

Secure Against Chosen Plaintext Attack

Picking a plaintext and getting the ciphertext doesn't help decrypt others.

Signup and view all the flashcards

Euclidean Algorithm

Successively perform division with remainder until a remainder of 0 is found.

Signup and view all the flashcards

Euclidean Algorithm Termination

The Euclidean Algorithm is guaranteed to terminate in a limited number of steps.

Signup and view all the flashcards

Discrete Logarithm Problem

Problem of finding x: g^x = h in group G.

Signup and view all the flashcards

Shanks's Babystep-Giantstep Algorithm

Algorithm for solving DLP by collision finding.

Signup and view all the flashcards

Shanks's Steps

Baby-step Giant-step needs less steps and O(√N) .

Signup and view all the flashcards

Pollard's rho Storage

Pollard's rho Algorithm needs small storage requirements.

Signup and view all the flashcards

DLP in (Z/NZ, +)

DLP converted to basic algebra because it's easy.

Signup and view all the flashcards

Use for Digital Signature

Verifies document approval by a specific party.

Signup and view all the flashcards

Hashing Function

Outputs a short, unique 'fingerprint' of a document.

Signup and view all the flashcards

Pohlig–Hellman Theorem

Reduces DLP difficulty if the group order has only small prime factors

Signup and view all the flashcards

RSA Parameter Implications

Ensures RSA security by selecting primes with at least one big prime factor

Signup and view all the flashcards

Generate Large Primes for RSA

Pick random integers and test if primes until we have found two

Signup and view all the flashcards

Index Calculus

Algorithm to solve DLP to compute factorisation.

Signup and view all the flashcards

Pollard's p-1

Based on multiplication over Fp

Signup and view all the flashcards

Lenstra Elliptic Curve

Based on addition on elliptic curve over Z/NZ.

Signup and view all the flashcards

If 11P=O

There exist one more point after calculation.

Signup and view all the flashcards

Study Notes

Private Key Cryptosystem Framework

  • A private key cryptosystem consists of a set M of allowable plaintexts and a set C of ciphertexts
  • It also has a set K of keys
  • For each key k ∈ K, there's a pair of functions: encryption ek: M → C and decryption dk: C → M
  • These functions ensure that dk(ek(m)) = m for all m ∈ M
  • ek are called encryption functions, and dk are decryption functions

Public Key Cryptosystem Framework

  • Public key systems' keys consist of private (kpriv) and public (kpub) key pairs
  • Encryption functions only depend on the public key: ek = ekpub
  • Decryption depends on the private key
  • ekpub should be a one-way function: easily invertible with kpriv knowledge but hard without it
  • kpriv, the private key, is trapdoor information

Public Key Cryptosystem Advantages

  • Public key systems eliminate the need for prior key exchange or secret information sharing
  • They also facilitate frequent key changes

Private Key Cryptosystem Advantages

  • Private key systems are generally faster
  • Communicating parties possess symmetric encryption and decryption capabilities

Practical Cryptosystem Requirements

  • Practical cryptosystems should encrypt and decrypt fast using respective keys
  • Decrypting without the decryption key should be computationally slow

Security Against Plaintext Attacks

  • A system secure against known plaintext attacks means knowing ciphertext/plaintext pairs (c, m) or knowing a number of such pairs doesn't help decrypt other ciphertexts
  • Systems secure against chosen plaintext attacks mean being able to pick a plaintext 'm' and getting its corresponding ciphertext 'c' shouldn't make decrypting other ciphertexts easier

Euclidean Algorithm Description

  • The Euclidean Algorithm involves performing successive division with remainder
  • Continue succeeding divisions until a remainder of 0 is hit
  • At the end, gcd(a, b) = rn, where 'rn' is the last non-zero remainder

Euclidean Algorithm Termination Proof

  • The remainders ri decrease by a factor of at least 2 every two steps
  • Provided that 2k + 1 < n, b = r1 > 2r3 > 2^2r5 > ... > 2^kr2k+1 ≥ 2^k
  • Taking k = floor((n-1)/2), it's shown that k < log2(b) which implies n ≤ 2 + 2log2(b)

Euclidean Algorithm Minimum Steps for Fibonacci Sequence

  • Using Fibonacci sequence ak+1 = ak + ak-1, set a = an+1 and b = an
  • The described algorithm then outputs: an+1 = an + an-1, an = an-1 + an-2... a3 = a2 + a1, a2 = 2a1 + 0
  • This takes n steps to complete

Minimum Step Bound on Fibonacci Sequence

  • Since an ≤ 2n (shown via ak+1 ≤ 2ak and a1 = 1), it algorithm takes: n > log2(an) = log2(b) steps to complete
  • Infinitely many choices of n result in infinitely many different integers b

Fermat's Little Theorem Application

  • Since 151 is prime, a^k ≡ a (mod 151) when k ≡ 1 (mod 150)
  • Since 601 ≡ 1 (mod 150), 5^601 ≡ 5 (mod 151)

Solving Congruences

  • Convert first congruence to x, plug into second congruence, and find all solutions to the coefficient
  • Use coefficient to formulate all solutions in Z

Discrete Logarithm Problem (DLP)

  • Given h ∈ G, a DLP seeks an integer x such that g^x = h, if it exists

Shank's Babystep-Giantstep Algorithm

  • Assume g has order N and you want to solve g^x= h
  • Compute n= ceil(sqrt(N)) + 1
  • Compute two lists: L1 = 1, g, g^2,..., g^n and L2 = h, hg^-n, hg^-2n,...,hg^-n^2
  • Find a collision: g^j = hg^-kn; then g^(j+kn) = h so x = j+kn

Shank's Babystep-Giantstep Steps and Storage

  • The algorithm needs O(√N log N) steps, which is the size of the lists to compute them (including sorting and searching).
  • Needs storage of O(√N) in general to store the two lists

Pollard's Rho Method Advantages and Disadvantages

  • Pollard's rho has a storage requirement of O(1)
  • Main disadvantage is that its analysis relies on probabilistic reasoning with a function not known to be sufficiently 'mixing', with an expected running time of O(√N) otherwise

DLP with Addition as Operation

  • In the group (Z/NZ, +), the DLP g^x = h (multiplicative notation) becomes gx = h (additive notation)
  • Find g^-1 quickly using the Extended Euclidean Algorithm, and then compute x = g^-1h (mod N)
  • Running time is then O(log N)

Digital Signature Schemes

  • Digital signature schemes are used practically in verifying software updates from original authors and proving approvals by a particular party for presented documents

Steps in Digital Signature Scheme

  • Compute a hash of the document and feeds it to a hashing functions which outputs and short interger
  • One signs the shortened hash instead

Hashing

  • Signatures are usually the same size or bigger compared to documents needing to be signed, feeding the document to a specific hashing function outputs a short integer h
  • Make it computationally infeasible to come up with any other documents/attack vectors mapping to the same hash

Pohlig-Hellman Theorem

  • The Pohlig-Hellman theorem applies to solving a DLP to a base g, when the order N of g is known to factor as N = (q1^e1)(q2^e2)...(qt^et), where the qi are distinct primes

Picking a Prime P for DLP

  • Select a prime p so that p - 1 has at least one large prime factor
  • Pohlig-Hellman can solve DLPs quickly in Fp if P - 1 only has small prime factors

Miller-Rabin Test in RSA Parameter generation

  • Miller-Rabin test can help generate large primes for RSA, by picking large integers at random and testing primality until 2 likely primes are hit
  • Prime number theorem ensures success after not too many attempts since a proportion 1/log N of all integers below N are prime
  • Miller-Rabin test effectively ID's primes since at least 75% of numbers below and odd composite n, are Miller-Rabin witnesses for n's composite numbers

Pollard's Rho vs Lenstra's Elliptic Curve Factorization

  • While Pollard's algorithm works in multiplication over Fp, Lenstra's elliptic curve factorization uses addition on an elliptic curve over Z/NZ

Lenstra's Elliptic Curve Factorization Running Time

  • It has ~O(e^(sqrt2((log p) (log log p))) - average time
  • It's better than quadratic sieve if N = pq is a product of two primes with p < q (N having relatively small prime factor will make it better)

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

More Like This

Hybrid Cryptosystems
38 questions

Hybrid Cryptosystems

GoodlySloth8585 avatar
GoodlySloth8585
Historical Cryptographic Systems Quiz
5 questions
Use Quizgecko on...
Browser
Browser