Lect 18 Cryptographic Protocols Contents 1 2 3

  • Slides: 19
Download presentation
Lect. 18: Cryptographic Protocols

Lect. 18: Cryptographic Protocols

Contents 1. 2. 3. 4. 5. 6. Cryptographic Protocols Special Signatures Secret Sharing and

Contents 1. 2. 3. 4. 5. 6. Cryptographic Protocols Special Signatures Secret Sharing and Threshold Cryptography Zero-knowledge Proofs Identification, Authentication Protecting your Privacy 2

1. Cryptographic Protocols 3

1. Cryptographic Protocols 3

Cryptographic Protocols Ø Cryptographic algorithms ü Algorithm executed by a single entity ü Algorithms

Cryptographic Protocols Ø Cryptographic algorithms ü Algorithm executed by a single entity ü Algorithms performing cryptographic functions ü Encryption, Hash, digital signature, etc… Ø Cryptographic protocols ü Protocols executed between multiple entities through pre-defined steps of communication performing security-related functions ü Perform more complicated functions than what the primitive algorithms can provide ü Primitives: Key agreement, secret sharing, blind signature, coin toss, secure multiparty computations, etc … ü Complex application protocols: e-commerce, e-voting, e-auction, etc … 4

Cryptographic Protocols Ø Protocols ü Designed to accomplish a task through a series of

Cryptographic Protocols Ø Protocols ü Designed to accomplish a task through a series of communication steps, involving two or more entities Ø Cryptographic Protocols ü Protocols that use cryptography ü Non-face-to-face interaction over an open network ü Cannot trust other entities Threat Entity A Internet Entity B 5

Security Requirements in Protocols ü Confidentiality ü Integrity ü Authentication ü Non-repudiation ü Correctness

Security Requirements in Protocols ü Confidentiality ü Integrity ü Authentication ü Non-repudiation ü Correctness ü Verifiability ü Fairness Combinations of these requirements according to applications ü Anonymity ü Privacy ü Robustness ü Efficiency ü Etc…… 6

Protocol Primitives Ø Coin Toss game over Communication Network ü Two parties play coin

Protocol Primitives Ø Coin Toss game over Communication Network ü Two parties play coin toss game over the communication network ü Can it be made fair? Ø Blind Signatures ü Signer signs a document without knowledge of the document and the resulting signature ü Message and the resulting signature are hidden from the signer ü Many applications which require anonymity or privacy ü Digital cash, e-voting Ø Key Agreements ü Two or more parties agree on a secret key over communication network in such a way that both influence the outcome. ü Do not require any trusted third party (TTP) 7

Protocol Primitives Ø Secret Sharing ü Distribute a secret amongst a group of participants

Protocol Primitives Ø Secret Sharing ü Distribute a secret amongst a group of participants ü Each participant is allocated a share of the secret ü Secret can be reconstructed only when the shares are combined together ü Individual shares are of no use on their own. Ø Threshold Cryptography ü A message is encrypted using a public key and the corresponding private key is shared among multiple parties. ü In order to decrypt a ciphertext, a number of parties exceeding a threshold is required to cooperate in the decryption protocol. 8

Protocol Primitives Ø Zero-knowledge Proofs ü An interactive method for one party to prove

Protocol Primitives Ø Zero-knowledge Proofs ü An interactive method for one party to prove to another that a (usually mathematical) statement is true, without revealing anything other than the validity of the statement. Ø Identification, Authentication ü Over the communication network, one party, Alice, shows to another party, Bob, that she is the real Alice. ü Allows one party, Alice, to prove to another party, Bob, that she possesses secret information without revealing to Bob what that secret information is. 9

Application Protocols Ø Electronic Commerce ü SET (Secure Electronic Transaction) – Credit card transaction

Application Protocols Ø Electronic Commerce ü SET (Secure Electronic Transaction) – Credit card transaction ü Digital cash, micropayment, e-check, e-money ü e-auction ü e-banking Ø e-government Ø e-voting Ø Fair exchange of digital signature (for contract signing) Ø Application Scenarios Ø Traditional applications transfer to electronic versions Ø New applications appear with the help of crypto 10

2. Special Signatures - Blind Signature - Proxy Signature 11

2. Special Signatures - Blind Signature - Proxy Signature 11

Special Signatures v Special Signatures ü Digital signatures with additional features (anonymity, privacy, efficiency,

Special Signatures v Special Signatures ü Digital signatures with additional features (anonymity, privacy, efficiency, delegation, …) ü Digital signature variants considering various business application scenarios v Blind signature ü A user can receive a signature of a signer without revealing the message and the resulting signature to the signer v Proxy signature ü An original signer delegate his/her signing capability to a proxy signer, and then the proxy signer signs documents on behalf of the original signer v Self-certified signature ü Signature verification and certificate verification are done efficiently in a single logical step. 12

Blind Signature Signing without seeing the message - We should not reveal the content

Blind Signature Signing without seeing the message - We should not reveal the content of the letter to the signer. - For example, using a carbon-enveloped message User 1) Send an carbon-enveloped message Signer Signature 2) Sign on the envelop 3) Take off the envelop and get the signed message Signature

Motivation of Blind Signature v One interesting question of public key cryptosystem is whether

Motivation of Blind Signature v One interesting question of public key cryptosystem is whether we can use digital signature to create some form of digital currency. The scenario is described as follows: 1) A bank published his public key. 2) When one of his customer makes a withdrawal from his account, the bank provides it with a digitally signed note that specifies the amount withdrawn. 3) The customer can present it to a merchant, who can then verify the bank’s signature. 4) Upon completing a transaction, the vender can then remit the note to the bank, which will then credit the vendor the amount specified in the note. 5) This note is, in effect, a digital monetary instrument, we called it as “Electronic Cash or E-Cash”. v Privacy issue of digital cash? ? ? ü The bank can easily trace a cash to a specific user. 14

E-Cash Scenario Bank Withdrawal Request E-cash Issuing Public Key Deposit Payment Customer Shop 15

E-Cash Scenario Bank Withdrawal Request E-cash Issuing Public Key Deposit Payment Customer Shop 15

David Chaum’s Blind Signature v David Chaum proposed a very elegant solution to this

David Chaum’s Blind Signature v David Chaum proposed a very elegant solution to this problem, known as blind signature. He is also named as the “father of E-cash” 16

Blind Signature Blind signature scheme is a protocol that allows the provider to obtain

Blind Signature Blind signature scheme is a protocol that allows the provider to obtain a valid signature for a message m from the signer without him seeing the message and its signature. If the signer sees message m and its signature later, he can verify that the signature is genuine, but he is unable to link the message-signature pair to the particular instance of the signing protocol which has led to this pair. Many applications ü Useful when values need to be certified, yet anonymity should be preserved ü e-cash, e-voting 17

Blind Signature Protocol Steps 1) Alice takes the document and uses a “blinding factor”

Blind Signature Protocol Steps 1) Alice takes the document and uses a “blinding factor” to blind the document. (Blinding Phase) 2) Alice sends the blinded document to Bob and Bob signs the blinded document. (Signing Phase) 3) Alice can remove the blinding factor and obtain the signature on the original document. (Unblinding Phase) 18

RSA-based Blind Signature User Get a signature for a message m. Signer (1) Blinding

RSA-based Blind Signature User Get a signature for a message m. Signer (1) Blinding r Z N* m’ = H(m) re mod N m’ (2) Signing σ’ σ’ = m’d mod N (3) Unblinding σ = σ’ r-1 mod N = (H(m) re)d r-1 mod N = H(m)d mod N σ is a valid signature of the signer The signer cannot have any information on m and σ. 19