Blind Signatures
Sam Goto
This is an open study of RSA Signatures from here and here.
Signatures
Alice wants to send a m = to Bob and prove that the message came from her
- Alice constructs her public and private keys (how and why?):
- Alice starts by picking two large prime numbers
p= andq= - Alice then computes
n=n - Alice selects an
e= . - Alice finally
d=d.
- Alice starts by picking two large prime numbers
- Alice has then a public key
e= e,n= = n and private keyd=d. - If Alice wants to send a
publicmessagem= m- Alice computes
swith herprivatekey by computingm ^ d % n=m ^ d % n= s - Alice sends both
m= m ands= s to Bob
- Alice computes
- Bob verifies it by:
- Bob computes
r=s ^ e % n= s ^ e % n = r. - Correctness: because encryption and decryption on RSA is invertable this is guaranteed to be correct
- Confidentiality: because only someone that possesses
dcould create the encryption, its provenance is guaranteed. - If
check=m==r= m = r = check, thenmis guaranteed to have been signed byd.
- Bob computes
In practice,
mtends to be large, so we typically hash it before signing.
Blind Signatures
Bob wants Alice to sign a message m = m without revealing the it to Alice.
A Blind Signature works as follows (from here):
- Bob computes a random number
k= k (must be relatively prime ton=n). - Bob computes
t=m * (k ^ e) % n=m* (k^e) %n=t. - Bob sends
tto Alice and asks her to sign it - Alice computes the signature using her private key
d= .- Alice calculates
b=t ^ d % n=t^d%n=band sends that back to Bob
- Alice calculates
- Bob gets
band remembers thatb=t ^ d % n=(m * (k ^ e) % n) ^ d % n=(m ^ d) * (k ^ e ^ d) % n - Bob knows that
k ^ e ^ d=kbecause encryption and decryption cancel each other out, so it is equal to 1, so we get(m ^ d) * k % n - Bob computes
s2=b/k=b/k=s2. - The blind signature
s2= s2 is exactly the same (check2) of the unblinded signatures1= s - Bob can use the traditional non-blinded verification of the signature:
- Bob computes
r2 = s2 ^ e % n= s2 ^ e % n = r2 and checks that it matchesm= m. mis guaranteed to have been signed byd.Alicenever learnsm.
- Bob computes