• 沒有找到結果。

The Proof

N/A
N/A
Protected

Academic year: 2022

Share "The Proof"

Copied!
78
0
0

加載中.... (立即查看全文)

全文

(1)

Large Deviations

• Suppose you have a biased coin.

• One side has probability 0.5 +  to appear and the other 0.5 − , for some 0 <  < 0.5.

• But you do not know which is which.

• How to decide which side is the more likely side—with high confidence?

• Answer: Flip the coin many times and pick the side that appeared the most times.

• Question: Can you quantify your confidence?

(2)

The (Improved) Chernoff Bound

a

Theorem 75 (Chernoff, 1952) Suppose x1, x2, . . . , xn are independent random variables taking the values 1 and 0 with probabilities p and 1 − p, respectively. Let X = n

i=1 xi. Then for all 0 ≤ θ ≤ 1,

prob[ X ≥ (1 + θ) pn ] ≤ e−θ2pn/3.

• The probability that the deviate of a binomial random variable from its expected value

E[ X ] = E [n

i=1 xi ] = pn decreases exponentially with the deviation.

aHerman Chernoff (1923–). This bound is asymptotically optimal.

−2θ2p2n

(3)

The Proof

• Let t be any positive real number.

• Then

prob[ X ≥ (1 + θ) pn ] = prob[ etX ≥ et(1+θ) pn ].

• Markov’s inequality (p. 536) generalized to real-valued random variables says that

prob

etX ≥ kE[ etX ]

≤ 1/k.

• With k = et(1+θ) pn/E[ etX ], we havea

prob[ X ≥ (1 + θ) pn ] ≤ e−t(1+θ) pnE[ etX ].

aNote that X does not appear in k. Contributed by Mr. Ao Sun

(4)

The Proof (continued)

• Because X = n

i=1 xi and xi’s are independent, E[ etX ] = (E[ etx1 ])n = [ 1 + p(et − 1) ]n.

• Substituting, we obtain

prob[ X ≥ (1 + θ) pn ] ≤ e−t(1+θ) pn[ 1 + p(et − 1) ]n

≤ e−t(1+θ) pnepn(et−1) as (1 + a)n ≤ ean for all a > 0.

(5)

The Proof (concluded)

• With the choice of t = ln(1 + θ), the above becomes prob[ X ≥ (1 + θ) pn ] ≤ epn[ θ−(1+θ) ln(1+θ) ].

• The exponent expands toa

−θ2

2 + θ3

6 θ4

12 + · · · for 0 ≤ θ ≤ 1.

• But it is less than

−θ2

2 + θ3

6 ≤ θ2



1

2 + θ 6



≤ θ2



1

2 + 1 6



= −θ2 3 .

aOr McDiarmid (1998): x − (1 + x) ln(1 + x) ≤ −3x2/(6 + 2x) for all

(6)

Other Variations of the Chernoff Bound

The following can be proved similarly (prove it).

Theorem 76 Given the same terms as Theorem 75 (p. 599),

prob[ X ≤ (1 − θ) pn ] ≤ e−θ2pn/2.

The following slightly looser inequalities achieve symmetry.

Theorem 77 (Karp, Luby, & Madras, 1989) Given the same terms as Theorem 75 (p. 599) except with 0 ≤ θ ≤ 2,

prob[ X ≥ (1 + θ) pn ] ≤ e−θ2pn/4, prob[ X ≤ (1 − θ) pn ] ≤ e−θ2pn/4.

(7)

Power of the Majority Rule

The next result follows from Theorem 76 (p. 603).

Corollary 78 If p = (1/2) +  for some 0 ≤  ≤ 1/2, then prob

 n



i=1

xi ≤ n/2

≤ e−2n/2.

• The textbook’s corollary to Lemma 11.9 seems too loose, at e−2n/6.a

• Our original problem (p. 598) hence demands, e.g.,

n ≈ 1.4k/2 independent coin flips to guarantee making an error with probability ≤ 2−k with the majority rule.

a

(8)

BPP

a

(Bounded Probabilistic Polynomial)

• The class BPP contains all languages L for which there is a precise polynomial-time NTM N such that:

– If x ∈ L, then at least 3/4 of the computation paths of N on x lead to “yes.”

– If x ∈ L, then at least 3/4 of the computation paths of N on x lead to “no.”

• So N accepts or rejects by a clear majority.

aGill (1977).

(9)

Magic 3/4?

• The number 3/4 bounds the probability (ratio) of a right answer away from 1/2.

• Any constant strictly between 1/2 and 1 can be used without affecting the class BPP.

• In fact, as with RP,

1

2 + 1 q(n)

for any polynomial q(n) can replace 3/4.

• The next algorithm shows why.

(10)

The Majority Vote Algorithm

Suppose L is decided by N by majority (1/2) + .

1: for i = 1, 2, . . . , 2k + 1 do

2: Run N on input x;

3: end for

4: if “yes” is the majority answer then

5: “yes”;

6: else

7: “no”;

8: end if

(11)

Analysis

• By Corollary 78 (p. 604), the probability of a false answer is at most e−2k.

• By taking k =  2/2 , the error probability is at most 1/4.

• Even if  is any inverse polynomial, k remains a polynomial in n.

• The running time remains polynomial: 2k + 1 times N’s running time.

(12)

Aspects of BPP

• BPP is the most comprehensive yet plausible notion of efficient computation.

– If a problem is in BPP, we take it to mean that the problem can be solved efficiently.

– In this aspect, BPP has effectively replaced P.

• (RP ∪ coRP) ⊆ (NP ∪ coNP).

• (RP ∪ coRP) ⊆ BPP.

• Whether BPP ⊆ (NP ∪ coNP) is unknown.

• But it is unlikely that NP ⊆ BPP.a

a

(13)

coBPP

• The definition of BPP is symmetric: acceptance by clear majority and rejection by clear majority.

• An algorithm for L ∈ BPP becomes one for ¯L by reversing the answer.

• So ¯L ∈ BPP and BPP ⊆ coBPP.

• Similarly coBPP ⊆ BPP.

• Hence BPP = coBPP.

• This approach does not work for RP.a

aIt did not work for NP either.

(14)

BPP and coBPP

Ø\HVÙ ØQRÙ ØQRÙ Ø\HVÙ

(15)

“The Good, the Bad, and the Ugly”

P BPP ZPP

RP coRP

NP coNP

(16)

Circuit Complexity

• Circuit complexity is based on boolean circuits instead of Turing machines.

• A boolean circuit with n inputs computes a boolean function of n variables.

• Now, identify true/1 with “yes” and false/0 with “no.”

• Then a boolean circuit with n inputs accepts certain strings in { 0, 1 }n.

• To relate circuits with an arbitrary language, we need one circuit for each possible input length n.

(17)

Formal Definitions

• The size of a circuit is the number of gates in it.

• A family of circuits is an infinite sequence

C = (C0, C1, . . .) of boolean circuits, where Cn has n boolean inputs.

• For input x ∈ { 0, 1 }, C| x | outputs 1 if and only if x ∈ L.

• In other words,

Cn accepts L ∩ { 0, 1 }n.

(18)

Formal Definitions (concluded)

• L ⊆ { 0, 1 } has polynomial circuits if there is a family of circuits C such that:

– The size of Cn is at most p(n) for some fixed polynomial p.

– Cn accepts L ∩ { 0, 1 }n.

(19)

Exponential Circuits Suffice for All Languages

• Theorem 16 (p. 209) implies that there are languages that cannot be solved by circuits of size 2n/(2n).

• But surprisingly, circuits of size 2n+2 can solve all problems, decidable or otherwise!

(20)

Exponential Circuits Suffice for All Languages (continued)

Proposition 79 All decision problems (decidable or otherwise) can be solved by a circuit of size 2n+2.

• We will show that for any language L ⊆ { 0, 1 }, L ∩ { 0, 1 }n can be decided by a circuit of size 2n+2.

• Define boolean function f : { 0, 1 }n → { 0, 1 }, where

f (x1x2 · · · xn) =

⎧⎨

1, x1x2 · · · xn ∈ L, 0, x1x2 · · · xn ∈ L.

(21)

The Proof (concluded)

• Clearly, any circuit that implements f decides L ∩ { 0, 1 }n.

• Now,

f (x1x2 · · · xn) = (x1 ∧ f(1x2 · · · xn)) ∨ (¬x1 ∧ f(0x2 · · · xn)).

• The circuit size s(n) for f(x1x2 · · · xn) hence satisfies s(n) = 4 + 2s(n − 1)

with s(1) = 1.

• Solve it to obtain s(n) = 5 × 2n−1 − 4 ≤ 2n+2.

(22)

The Circuit Complexity of P

Proposition 80 All languages in P have polynomial circuits.

• Let L ∈ P be decided by a TM in time p(n).

• By Corollary 35 (p. 315), there is a circuit with O(p(n)2) gates that accepts L ∩ { 0, 1 }n.

• The size of that circuit depends only on L and the length of the input.

• The size of that circuit is polynomial in n.

(23)

Polynomial Circuits vs. P

• Is the converse of Proposition 80 true?

– Do polynomial circuits accept only languages in P?

• No.

• Polynomial circuits can accept undecidable languages!a

aSee p. 268 of the textbook.

(24)

BPP’s Circuit Complexity: Adleman’s Theorem

Theorem 81 (Adleman, 1978) All languages in BPP have polynomial circuits.

• Our proof will be nonconstructive in that only the existence of the desired circuits is shown.

– Recall our proof of Theorem 16 (p. 209).

– Something exists if its probability of existence is nonzero.

• It is not known how to efficiently generate circuit Cn. – If the construction of Cn can be made efficient, then

P = BPP, an unlikely result.

(25)

The Proof

• Let L ∈ BPP be decided by a precise polynomial-time NTM N by clear majority.

• We shall prove that L has polynomial circuits C0, C1, . . ..

– These deterministic circuits do not err.

• Suppose N runs in time p(n), where p(n) is a polynomial.

• Let An = { a1, a2, . . . , am }, where ai ∈ { 0, 1 }p(n).

• Each ai ∈ An represents a sequence of nondeterministic choices (i.e., a computation path) for N .

• Pick m = 12(n + 1).

(26)

The Proof (continued)

• Let x be an input with | x | = n.

• Circuit Cn simulates N on x with all sequences of choices in An and then takes the majority of the m outcomes.a

– Note that each An yields a circuit.

• As N with ai is a polynomial-time deterministic TM, it can be simulated by polynomial circuits of size O(p(n)2).

– See the proof of Proposition 80 (p. 619).

aAs m is even, there may be no clear majority. Still, the probability of that happening is very small and does not materially affect our general

(27)

The Circuit

,2 ,

, ,

  

(28)

The Proof (continued)

• The size of Cn is therefore O(mp(n)2) = O(np(n)2).

– This is a polynomial.

• We now confirm the existence of an An making Cn correct on all n-bit inputs.

• Call ai bad if it leads N to an error (a false positive or a false negative) for x.

• Select An uniformly randomly.

(29)

The Proof (continued)

• For each x ∈ { 0, 1 }n, 1/4 of the computations of N are erroneous.

• Because the sequences in An are chosen randomly and independently, the expected number of bad ai’s is m/4.a

• Also note after fixing the input x, the circuit is a function of the random bits.

aSo the proof will not work for NP. Contributed by Mr. Ching-Hua Yu (D00921025) on December 11, 2012.

(30)

The Proof (continued)

• By the Chernoff bound (p. 599), the probability that the number of bad ai’s is m/2 or more is at most

e−m/12 < 2−(n+1).

• The error probability of using the majority rule is thus

< 2−(n+1) for each x ∈ { 0, 1 }n.

(31)

The Proof (continued)

• The probability that there is an x such that An results in an incorrect answer is

< 2n2−(n+1) = 2−1.

– Recall the union bound (Boole’s inequality):

prob[ A ∪ B ∪ · · · ] ≤ prob[ A ] + prob[ B ] + · · · .

• We just showed that at least half of them are correct.

• So with probability ≥ 0.5, a random An produces a correct Cn for all inputs of length n.

– Of course, verifying this fact may take a long time.

(32)

The Proof (concluded)

• Because this probability exceeds 0, an An that makes majority vote work for all inputs of length n exists.

• Hence a correct Cn exists.a

• We have used the probabilistic methodb popularized by Erd˝os (1947).c

• This result answers the question on p. 531 with a “yes.”

aQuine (1948), “To be is to be the value of a bound variable.”

bA counting argument in the probabilistic language.

cSzele (1943) and Tur´an (1934) were earlier.

(33)

Leonard Adleman

a

(1945–)

(34)

Paul Erd˝ os (1913–1996)

(35)

Cryptography

(36)

Whoever wishes to keep a secret must hide the fact that he possesses one.

— Johann Wolfgang von Goethe (1749–1832)

(37)

Cryptography

• Alice (A) wants to send a message to Bob (B) over a channel monitored by Eve (eavesdropper).

• The protocol should be such that the message is known only to Alice and Bob.

• The art and science of keeping messages secure is cryptography.

Alice Eve -

Bob

(38)

Encryption and Decryption

• Alice and Bob agree on two algorithms E and D—the encryption and the decryption algorithms.

• Both E and D are known to the public in the analysis.

• Alice runs E and wants to send a message x to Bob.

• Bob operates D.

(39)

Encryption and Decryption (concluded)

• Privacy is assured in terms of two numbers e, d, the encryption and decryption keys.

• Alice sends y = E(e, x) to Bob, who then performs D(d, y) = x to recover x.

• x is called plaintext, and y is called ciphertext.a

aBoth “zero” and “cipher” come from the same Arab word.

(40)

Some Requirements

• D should be an inverse of E given e and d.

• D and E must both run in (probabilistic) polynomial time.

• Eve should not be able to recover x from y without knowing d.

– As D is public, d must be kept secret.

– e may or may not be a secret.

(41)

Degree of Security

• Perfect secrecy: After a ciphertext is intercepted by the enemy, the a posteriori probabilities of the plaintext that this ciphertext represents are identical to the a

priori probabilities of the same plaintext before the interception.

– The probability that plaintext P occurs is

independent of the ciphertext C being observed.

– So knowing C yields no advantage in recovering P.

(42)

Degree of Security (concluded)

• Such systems are said to be informationally secure.

• A system is computationally secure if breaking it is theoretically possible but computationally infeasible.

(43)

Conditions for Perfect Secrecy

a

• Consider a cryptosystem where:

– The space of ciphertext is as large as that of keys.

– Every plaintext has a nonzero probability of being used.

• It is perfectly secure if and only if the following hold.

– A key is chosen with uniform distribution.

– For each plaintext x and ciphertext y, there exists a unique key e such that E(e, x) = y.

aShannon (1949).

(44)

The One-Time Pad

a

1: Alice generates a random string r as long as x;

2: Alice sends r to Bob over a secret channel;

3: Alice sends x ⊕ r to Bob over a public channel;

4: Bob receives y;

5: Bob recovers x := y ⊕ r;

aMauborgne & Vernam (1917); Shannon (1949). It was allegedly used for the hotline between Russia and U.S.

(45)

Analysis

• The one-time pad uses e = d = r.

• This is said to be a private-key cryptosystem.

• Knowing x and knowing r are equivalent.

• Because r is random and private, the one-time pad achieves perfect secrecy.a

• The random bit string must be new for each round of communication.

• But the assumption of a private channel is problematic.

aSee p. 640.

(46)

Public-Key Cryptography

a

• Suppose only d is private to Bob, whereas e is public knowledge.

• Bob generates the (e, d) pair and publishes e.

• Anybody like Alice can send E(e, x) to Bob.

• Knowing d, Bob can recover x via D(d, E(e, x)) = x.

aDiffie & Hellman (1976).

(47)

Public-Key Cryptography (concluded)

• The assumptions are complexity-theoretic.

– It is computationally difficult to compute d from e.

– It is computationally difficult to compute x from y without knowing d.

(48)

Whitfield Diffie

a

(1944–)

aTuring Award (2016).

(49)

Martin Hellman

a

(1945–)

aTuring Award (2016).

(50)

Complexity Issues

• Given y and x, it is easy to verify whether E(e, x) = y.

• Hence one can always guess an x and verify.

• Cracking a public-key cryptosystem is thus in NP.

• A necessary condition for the existence of secure public-key cryptosystems is P = NP.

• But more is needed than P = NP.

• For instance, it is not sufficient that D is hard to compute in the worst case.

• It should be hard in “most” or “average” cases.

(51)

One-Way Functions

A function f is a one-way function if the following hold.a 1. f is one-to-one.

2. For all x ∈ Σ, | x |1/k ≤ |f(x)| ≤ | x |k for some k > 0.

• f is said to be honest.

3. f can be computed in polynomial time.

4. f−1 cannot be computed in polynomial time.

• Exhaustive search works, but it must be slow.

aDiffie & Hellman (1976); Boppana & Lagarias (1986); Grollmann &

Selman (1988); Ko (1985); Ko, Long, & Du (1986); Watanabe (1985);

Young (1983).

(52)

Existence of One-Way Functions (OWFs)

• Even if P = NP, there is no guarantee that one-way functions exist.

• No functions have been proved to be one-way.

• Is breaking glass a one-way function?

(53)

Candidates of One-Way Functions

• Modular exponentiation f(x) = gx mod p, where g is a primitive root of p.

– Discrete logarithm is hard.a

• The RSAb function f (x) = xe mod pq for an odd e relatively prime to φ(pq).

– Breaking the RSA function is hard.

aConjectured to be 2n for some  > 0 in both the worst-case sense and average sense. Doable in time nO(log n) for finite fields of small char- acteristic (Barbulescu, et al., 2013). It is in NP in some sense (Grollmann

& Selman, 1988).

bRivest, Shamir, & Adleman (1978).

(54)

Candidates of One-Way Functions (concluded)

• Modular squaring f(x) = x2 mod pq.

– Determining if a number with a Jacobi symbol 1 is a quadratic residue is hard—the quadratic

residuacity assumption (QRA).a

– Breaking it is as hard as factorization when p ≡ q ≡ 3 mod 4.b

aDue to Gauss.

bRabin (1979).

(55)

The Secret-Key Agreement Problem

• Exchanging messages securely using a private-key cryptosystem requires Alice and Bob have the same key.a

– An example is the r in the one-time pad.b

• How can they agree on the same secret key when the channel is insecure?

• This is called the secret-key agreement problem.

• It was solved by Diffie and Hellman (1976) using one-way functions.

aSee p. 642.

b

(56)

The Diffie-Hellman Secret-Key Agreement Protocol

1: Alice and Bob agree on a large prime p and a primitive root g of p; {p and g are public.}

2: Alice chooses a large number a at random;

3: Alice computes α = ga mod p;

4: Bob chooses a large number b at random;

5: Bob computes β = gb mod p;

6: Alice sends α to Bob, and Bob sends β to Alice;

7: Alice computes her key βa mod p;

8: Bob computes his key αb mod p;

(57)

Analysis

• The keys computed by Alice and Bob are identical as βa = gba = gab = αb mod p.

• To compute the common key from p, g, α, β is known as the Diffie-Hellman problem.

• It is conjectured to be hard.a

• If discrete logarithm is easy, then one can solve the Diffie-Hellman problem.

– Because a and b can then be obtained by Eve.

• But the other direction is still open.

(58)

The RSA Function

• Let p, q be two distinct primes.

• The RSA function is xe mod pq for an odd e relatively prime to φ(pq).

– By Lemma 59 (p. 484),

φ(pq) = pq



1 1 p

 

1 1 q



= pq − p − q + 1. (15)

• As gcd(e, φ(pq)) = 1, there is a d such that ed ≡ 1 mod φ(pq),

which can be found by the Euclidean algorithm.a

(59)

A Public-Key Cryptosystem Based on RSA

• Bob generates p and q.

• Bob publishes pq and the encryption key e, a number relatively prime to φ(pq).

– The encryption function is

y = xe mod pq.

– Bob calculates φ(pq) by Eq. (15) (p. 655).

– Bob then calculates d such that ed = 1 + kφ(pq) for some k ∈ Z.

(60)

A Public-Key Cryptosystem Based on RSA (continued)

• The decryption function is

yd mod pq.

• It works because

yd = xed = x1+kφ(pq) = x mod pq

by the Fermat-Euler theorem when gcd(x, pq) = 1 (p. 489).

(61)

A Public-Key Cryptosystem Based on RSA (continued)

• What if x is not relatively prime to pq?a

• As φ(pq) = (p − 1)(q − 1),

ed = 1 + k(p − 1)(q − 1).

• Say x ≡ 0 mod p.

• Then

yd ≡ xed ≡ 0 ≡ x mod p.

aOf course, one would be unlucky here.

(62)

A Public-Key Cryptosystem Based on RSA (continued)

• On the other hand, either x ≡ 0 mod q or x ≡ 0 mod q.

• If x ≡ 0 mod q, then

yd ≡ xed ≡ xed−1x ≡ xk(p−1)(q−1)x

xq−1k(p−1) x

≡ x mod q.

by Fermat’s “little” theorem (p. 487).

• If x ≡ 0 mod q, then

yd ≡ xed ≡ 0 ≡ x mod q.

(63)

A Public-Key Cryptosystem Based on RSA (concluded)

• By the Chinese remainder theorem (p. 486), yd ≡ xed ≡ 0 ≡ x mod pq, even when x is not relatively prime to p.

• When x is not relatively prime to q, the same conclusion holds.

(64)

The “Security” of the RSA Function

• Factoring pq or calculating d from (e, pq) seems hard.

• Breaking the last bit of RSA is as hard as breaking the RSA.a

• Recommended RSA key sizes:b – 1024 bits up to 2010.

– 2048 bits up to 2030.

– 3072 bits up to 2031 and beyond.

aAlexi, Chor, Goldreich, & Schnorr (1988).

bRSA (2003). RSA was acquired by EMC in 2006 for 2.1 billion US dollars.

(65)

The “Security” of the RSA Function (continued)

• Recall that problem A is “harder than” problem B if solving A results in solving B.

– Factorization is “harder than” breaking the RSA.

– It is not hard to show that calculating Euler’s phi functiona is “harder than” breaking the RSA.

– Factorization is “harder than” calculating Euler’s phi function (see Lemma 59 on p. 484).

– So factorization is harder than calculating Euler’s phi function, which is harder than breaking the RSA.

aWhen the input is not factorized!

(66)

The “Security” of the RSA Function (concluded)

• Factorization cannot be NP-hard unless NP = coNP.a

• So breaking the RSA is unlikely to imply P = NP.

• But numbers can be factorized efficiently by quantum computers.b

• RSA was alleged to have received 10 million US dollars from the government to promote unsecure p and q.c

aBrassard (1979).

bShor (1994).

cMenn (2013).

(67)

Adi Shamir, Ron Rivest, and Leonard Adleman

(68)

Ron Rivest

a

(1947–)

(69)

Adi Shamir

a

(1952–)

aTuring Award (2002).

(70)

A Parallel History

• Diffie and Hellman’s solution to the secret-key

agreement problem led to public-key cryptography.

• In 1973, the RSA public-key cryptosystem was invented in Britain before the Diffie-Hellman secret-key

agreement scheme.a

aEllis, Cocks, and Williamson of the Communications Electronics Se- curity Group of the British Government Communications Head Quarters (GCHQ).

(71)

Is a forged signature the same sort of thing as a genuine signature, or is it a different sort of thing?

— Gilbert Ryle (1900–1976), The Concept of Mind (1949)

“Katherine, I gave him the code.

He verified the code.”

“But did you verify him?”

— The Numbers Station (2013)

(72)

Digital Signatures

a

• Alice wants to send Bob a signed document x.

• The signature must unmistakably identifies the sender.

• Both Alice and Bob have public and private keys eAlice, eBob, dAlice, dBob.

• Every cryptosystem guarantees D(d, E(e, x)) = x.

• Assume the cryptosystem also satisfies the commutative property

E(e, D(d, x)) = D(d, E(e, x)). (16) – E.g., the RSA system satisfies it as (xd)e = (xe)d.

a

(73)

Digital Signatures Based on Public-Key Systems

• Alice signs x as

(x, D(dAlice, x)).

• Bob receives (x, y) and verifies the signature by checking E(eAlice, y) = E(eAlice, D(dAlice, x)) = x

based on Eq. (16).

• The claim of authenticity is founded on the difficulty of inverting EAlice without knowing the key dAlice.

(74)

Blind Signatures

a

• There are applications where the document author (Alice) and the signer (Bob) are different parties.

• Sender privacy: We do not want Bob to see the document.

– Anonymous electronic voting systems, digital cash schemes, anonymous payments, etc.

• Idea: The document is blinded by Alice before it is signed by Bob.

• The resulting blind signature can be publicly verified against the original, unblinded document x as before.

(75)

Blind Signatures Based on RSA

Blinding by Alice:

1: Pick r ∈ Zn randomly;

2: Send

x = xre mod n to Bob; {x is blinded by re.}

• Note that r → re mod n is a one-to-one correspondence.

• Hence re mod n is a random number, too.

• As a result, x is random and leaks no information, even if x has any structure.

(76)

Blind Signatures Based on RSA (continued)

Signing by Bob with his private decryption key d:

1: Send the blinded signature

s = (x)d mod n to Alice;

(77)

Blind Signatures Based on RSA (continued)

The RSA signature of Alice:

1: Alice obtains the signature s = sr−1 mod n;

• This works because

s ≡ sr−1 ≡ (x)dr−1 ≡ (xre)dr−1 ≡ xdred−1 ≡ xd mod n by the properties of the RSA function.

• Note that only Alice knows r.

(78)

Blind Signatures Based on RSA (concluded)

• Anyone can verify the document was signed by Bob by checking with Bob’s encryption key e the following:

se ≡ x mod n.

• But Bob does not know s is related to x (thus Alice).

參考文獻

相關文件

– Factorization is “harder than” calculating Euler’s phi function (see Lemma 51 on p. 404).. – So factorization is harder than calculating Euler’s phi function, which is

• Adding restrictions on the allowable solutions (the solution space) may make a problem harder, equally hard, or easier.. • It is

• Adding restrictions on the allowable solutions (the solution space) may make a problem harder, equally hard, or easier.. • It is

• Adding restrictions on the allowable solutions (the solution space) may make a problem harder, equally hard, or easier.. • It is

• Adding restrictions on the allowable solutions (the solution space) may make a problem harder, equally hard, or easier.. • It is

Sometimes called integer linear programming (ILP), in which the objective function and the constraints (other than the integer constraints) are linear.. Note that integer programming

Now, nearly all of the current flows through wire S since it has a much lower resistance than the light bulb. The light bulb does not glow because the current flowing through it

Courtesy: Ned Wright’s Cosmology Page Burles, Nolette &amp; Turner, 1999?. Total Mass Density