Two keys
Idea
Exponentiation cipher
Relies on the difficulty of determining the number of numbers relatively prime to a large integer n.
Totient function Φ(n)
Example: φ(10) = 4
Example: Φ(21) = 12
Choose two large prime numbers p, q
Public key: (e, n); private key: d
Encipher: c = me mod n
Decipher: m = cd mod n
Take p = 7, q = 11, so n = 77 and φ(n) = 60
Alice chooses e = 17, making d = 53
Bob wants to send Alice secret message HELLO (07 04 11 11 14)
Bob sends 28 16 44 44 42.
Alice receives 28 16 44 44 42
Alice uses private key, d = 53, to decrypt message:
Alice translates message to letters to read HELLO.
No one else could read it, as only Alice knows her private key and that is needed for decryption.
Take p = 7, q = 11, so n = 77 and φ(n) = 60
Alice chooses e = 17, making d = 53
Alice wants to send Bob message HELLO (07 04 11 11 14) so Bob knows it is what Alice sent (no changes in transit, and authenticated)
Alice sends 35 09 44 44 49.
Bob receives 35 09 44 44 49
Bob uses Alice’s public key, e = 17, n = 77, to decrypt message:
Bob translates message to letters to read HELLO
Alice wants to send Bob message HELLO both enciphered and authenticated (integrity-checked)
Alice’s keys: public (17, 77); private: 53
Bob’s keys: public: (37, 77); private: 13
Alice enciphers HELLO (07 04 11 11 14):
Alice sends 07 37 44 44 14.
Secure E-mail and other communications
Secure WWW transactions
Business-to-business transactions
Other e-commerce solutions.
Confidentiality
Integrity
Authenticity
Non-repudiation
Confidentiality
Integrity
Authenticity
Availability
Integrity: attacker cannot tamper with message.
Encryption may not guarantee integrity!
Intuition: attacker may able to modify message under encryption without learning what it is.
Given one-time key K, be encrypt M as MK… Perfect secrecy, but can easily change M under encryption to MM’ for any M’.
“RSA encryption is intended primarily to provide confidentiality… It is not intended to provide integrity”.
Some encryption schemes provide secrecy AND integrity.
Software manufacturer wants to ensure that the executable file is received by users without modification…
Sends out the file to users and publishes its hash in NY Times.
The goal is integrity, not secrecy.
Idea: given goodFile and hash(goodFile), very hard to find badFile such that hash(goodFile)=hash(badFile).
H is a lossy compression function
Cryptographic hash function needs a few properties…
Intuition: hash should be hard to invert
Given y, it should be hard to find any x such that h(x)=y
How much hard?
MD5
RIPEMD-160
SHA-1 (Secure Hash Algorithm)
“Electronic Signature” and “Digital Signature” do not mean the same thing.
The term ”electronic signature” means an electronic sound, symbol, or process, attached to or logically associated with a contract or other record and executed or adopted by a person with the intent to sign the record.
(Electronic Signatures in Global and National Commerce Act, E-Sign)
Both are “electronic”, but Electronic Signature, as it is defined in US law, does not involve any cryptographic technique ensuring identity, integrity, etc…
Type of Electronic Signature
Characteristics:
1. Course Introduction: Security basic concepts
2. Access Control models: Authentication and authorization mechanisms
6. Role Based Access Control standard (v3)
7. XACML: extensible Access Control Markup Language
8. Authentication Protocols in distributed system
10. Java Authentication and Authorization Service (JAAS)
11. Network security
12. Network security, security protocols: PGP, SSL
M. Bishop, Standards: DES and RSA, Cap. 9
T. Cormen et al, Mc Graw Hill, Teoria dei numeri: Introduzione agli algoritmi e strutture dati, Cap. 31