CS计算机代考程序代写 Confidentiality, Integrity and Symmetric Key Cryptography

Confidentiality, Integrity and Symmetric Key Cryptography
CS 3IS3
Ryszard Janicki
Department of Computing and Software, McMaster University, Hamilton, Ontario, Canada
Acknowledgments: Material based on Information Security by Mark Stamp (Chapters 1.2, 3.4-3.5)
Ryszard Janicki
Confidentiality, Integrity and Symmetric Key Crypto 1/9

Computer Security: Basic Components
Three main components:
Confidentiality
Integrity
Availability
Ryszard Janicki
Confidentiality, Integrity and Symmetric Key Crypto 2/9

Confidentiality
Definition (Confidentiality)
The concealment of information or resources
Military and civilians institutions in the government often restrict access to their information.
Cryptography supports confidentiality!
Ryszard Janicki
Confidentiality, Integrity and Symmetric Key Crypto 3/9

Integrity
Definition (Integrity)
Trustworthiness of data or resources. Data integrity refers to the the content of the information and the Origin integrity refers to the source of the data, often called authentication.
Integrity mechanism: Two classes Prevention mechanism: Blocking
Any unauthorized attempts to change the data Any attempts to change data in unauthorized ways
Detection mechanism: Analyzing
User or system actions to detect problems
System data to check if the expected constraint still hold
Cryptography is indirectly involved.
Ryszard Janicki
Confidentiality, Integrity and Symmetric Key Crypto 4/9

Availability
Definition (Availability)
The ability to use informations or resources desired.
Someone may deliberately arrange to deny access to data or services by making it unavailable.
Denial of service attack attempts to block the availability of a system and is very difficult to detect.
Nothing to do with cryptography!
Ryszard Janicki
Confidentiality, Integrity and Symmetric Key Crypto 5/9

Data Integrity wrt Cryptography and MAC
Integrity – detect unauthorized writing (i.e., detect unauthorized mod of data)
Example: Inter-bank fund transfers
Confidentiality may be nice, integrity is critical Encryption provides confidentiality (prevents unauthorized
disclosure)
Encryption alone does not provide integrity Message Authentication Code (MAC)
Used for data integrity
Integrity not the same as confidentiality
MAC is computed as CBC residue
That is, compute CBC encryption, saving only final
ciphertextblock, the MAC
The MAC serves as a cryptographic checksum for data
Ryszard Janicki
Confidentiality, Integrity and Symmetric Key Crypto 6/9

MAC Computation
MAC computation (assuming N blocks)
C0 =E(IV ⊕P0,K),C1 =E(C0 ⊕P1,K),C2 =
E(C1 ⊕P2,K),…,CN−1 =E(CN−2 ⊕PN−1,K)=MAC Send IV,P0,P1,…,PN−1 and MAC
Receiver does same computation and verifies that result agrees with MAC
Both sender and receiver must know K
Suppose Alice has 4 plaintext blocks
Alice computes
C0 =E(IV ⊕P0,K),C1 =E(C0 ⊕P1,K),C2 =
E(C1 ⊕P2,K),C3 =E(C2 ⊕P3,K)=MAC
Alice sends IV , P0, P1, P2, P3 and MAC to Bob
Suppose Bad Trudy changes P1 to X
Bob computes C0 = E(IV ⊕P0,K),C1 = E(C0 ⊕X,K),C2 = E(C1 ⊕P2,K),C3 =E(C2 ⊕P3,K)=MAC ̸=MAC
It works since error propagates into MAC
Trudy can not make MAC = MAC without K
Ryszard Janicki
Confidentiality, Integrity and Symmetric Key Crypto 7/9

Confidentiality, Integrity and Cryptography
Encrypt with one key, MAC with another key Why not use the same key?
Send last encrypted block (MAC) twice? This cannot add any security!
Using different keys to encrypt and compute MAC works, even if keys are related
But, twice as much work as encryption alone Can do a little better – about 1.5 “encryptions”
Confidentiality and integrity with same work as one encryption is a research topic
Ryszard Janicki
Confidentiality, Integrity and Symmetric Key Crypto 8/9

Uses for Symmetric Cryptography
Confidentiality
Transmitting data over insecure channel Secure storage on insecure media
Integrity (MAC)
Authentication protocols (later. . . )
Anything you can do with a hash function (later. . . )
Ryszard Janicki
Confidentiality, Integrity and Symmetric Key Crypto 9/9