Cryptography: Hashes, PKI, Digital Signatures, and Trust Models

Verified

Added on  2020/10/09

|5
|1391
|186
Report
AI Summary
This report delves into the core concepts of cryptography, focusing on crypto hashes and Public Key Infrastructure (PKI). It explains cryptographic hash functions, including their properties like pre-image resistance and collision resistance, and their application in Message Authentication Codes (MACs) and digital fingerprints. The report further explores digital signatures, detailing the Digital Signature Algorithm (DSA) and the role of Certificate Authorities (CAs) in verifying identities and issuing certificates. It examines the components of a PKI, including certificate construction, issuance, signing, and revocation. Additionally, the report discusses Pretty Good Privacy (PGP), its trust models, and the concept of a Web of Trust. The report concludes by emphasizing the importance of PKI in establishing secure communication and facilitating trusted transactions, covering topics such as non-repudiation and secrecy, and the role of certificates in building trust relationships.
tabler-icon-diamond-filled.svg

Contribute Materials

Your contribution can guide someone’s learning journey. Share your documents today.
Document Page
Week 2 Lecture 2 - Crypto Hashes and PKI 1
Week 2 Lecture 2 - Crypto
Hashes and PKI
Cryptography Uses
We know that the Diffie Hellman algorithm is primarily used for key exhange
and RSA is used for authentication. However, there are many other algorithms
which can be used for intergrity checks, privacy, authentication or data
exchange.
Cryptography Hashes
A cryptographic hash has function h maps an arbitrary length input x into an
output h(x) of a fixed length n. This is compression and it should be
computationally easy to produce h(x) from x.
Manipulation Detection Codes MDCs) or Message Integrity Codes MICs) can
detect changes to a document.
From a security perspective, we want:
Pre-image Resistance (one way function): for a given y, it is
computationally infeasible to find x such that h(x) = y.
Second Pre-Image Resistance (weak collision resistance): given input x
and h(x) it is computationally infeasible to find another x', x<>x' with h(x)
= h(x').
Collision Resistance (strong collision resistance): it is computationally
infeasible to find any two inputs x and x', x<>x' such that h(x) = h(x').
Message Digest
A One Way Hash Function (a.ka OWHF) has compression, fast computation
and first and second pre-image resistance.
It has functions that are often called Message Digests in security or hash
values or checksums (but not the network checksums).
In a compression function, an input x if broken into blocks or of a
set block size with padding as neccessary in the last block. The hash is then a
repeated application of the compression function.
x , x , ..., x1 2 n
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
Week 2 Lecture 2 - Crypto Hashes and PKI 2
Message Authentication Code
A message Authentication Code gives assurance about the source
(authentication) and integrity of the message.
A MAC is generated from the message and a cryptographic key is essentially a
keyed hash function. Authentication occurs through receiver knowing the
sender's key.
Digital Signature Algorithm
The DSA is a US Federal Information Processing Standard FIPS , later adopted
by NIST as part of the Digital Signature Standard DSS .
The DSS assumes a prime p of 1024 bits, and a q dividing (p-1) (key length)
of 160 bits. The hash funcntion used is SHA 1.
Digital Signatures
A company or person's public key is bound up with their identity into a
certificate, The certificate is then verified or authenticated by a Certificate
Authority or Trusted Third Party TTP . Certifictaes are valid for only a short
time, and can be revoked.
A Digital Certificate maust be shown to be unforgeable, authentic, unalterable
and be non-reusable. So, it is a file:
with a hash known as a message digest, (integrity)
with a sender's private encryption key, (authenticity)
with a label to show the identity of the sender.
A timestamp also helps with non-reputation (where the sender cannot deny or
repudiate it was they who sent the message.
Digital Fingerprint
A hash is made of the original message which validates the integrity of the
message. Hashes can be 128 or 1216 bits, and the algorithms used are the MD
series or the SHA series. Hashes are also called cryptographic checksum, one
way hash functions or message integrity checks MICs).
Digital Signature (Sender)
After a message is hashed (for integrity), it is then encrypted with the user's
Private key to create a digital signature. Expiration dates, serial numbers etc
Document Page
Week 2 Lecture 2 - Crypto Hashes and PKI 3
are added. If the message is combined with the digital signatures then the
message is authenticated before being sent.
Digital Signature (Receiver)
A receiver separates out the digital signature using the sender's public key and
hashes the message to validate that the message sent in the clear was from
the correct sender via their digital fingerprint.
Digital Signature (Confidentiality)
If the sender wants confidentiality as well as integrity then a random key can
be used to encrypt the original message. The key is then encrypted with the
reciever's public key, The random key, the digital figerprint and the encrypted
message are combined and sent via an unsecured network.
Private Good Privacy
In 1991, Pretty Good Privacy (aka PGP) was developed by Phil Zimmerman,
allowing common users to access cryptographic encryption. Originally, PGP
was software that implemented a set of protocols.
Underlining this software were two concepts; That a key is valid only if it is
actualy owned by the person who claims to own it. That trust is the
mechanism used to decide if a key is valid.
Essentially you use PGP to trust someone and give them a key. PGP became
known as the Web of Trust as it used self-signed Certificates and no-one was
trusted to be a high levle authority.
Note that now OpenPGP is a protocol as well as a standard.
Levels of Trust
In PGP, there were four levels of trust:
Implicit Trust - reserved for keys that you own. If you "key ring" contains a
private key that signed a public key you trust the public key.
Full Trust - You trust the user to provide other keys to you without
additional verification.
Marginal Trust - You do not trust or know the user so require at least one
other user to vouch for any new public key before you accept it onto your
"key ring".
Document Page
Week 2 Lecture 2 - Crypto Hashes and PKI 4
Untrusted - You do not trust a user to introduce you to new keys, any new
keys will be disregarded. This is the default setting.
Public Key Infrastructure
A PKI is a set of policies, products and procedures to aid trusted
communication. It is the basis of a pervasive security infrastructure where
services are implemented using public key techniques over untrusted public
networks.
A PKI is a set of procedures enabling users to authenticate, check the integrity
and configuration of messages or files via certificates.
Essentially the message may be in the open but it is authenticated by the
certificate. Data can be encrypted by a PKI exchange session (secret key).
PKI Components
Under the PKI, certficates must undergo:
Construction
Issuance
Signing
Confirmation/Denial
Invalidation
Root authorities at the top of the PKI may be trustworthy domains or
companies such as RSA, Verisign, Visa. A Certificate Authority can issue
certificates, schedule revocation and publish revocation lists.
Certficate Authority
A trustwrothy root is a Certifcate Authority which certifies unique user
identities through registration and binds identities to public keys.
A CA distributes certificates to elements/nodes in a system and each element
registers its public key with a CA. The CA then states that the public key
belongs to an identity after validating the user.
A certificate is therefore (at least) a public key, the name of the owner and a
hash of the name and key.
Certification
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
Week 2 Lecture 2 - Crypto Hashes and PKI 5
Public keys are often used to sign documents or emails.
Commercially, we want to use the trust that is formed from asymmetric key
encryption for non repudiation and secrecy to aid transactions.
Trust relationships can be built up via certificates which allow for certifications
to be built for various users.
Sometimes the chain of certificates is ver long, each verifier adding another
layer or certification.
chevron_up_icon
1 out of 5
circle_padding
hide_on_mobile
zoom_out_icon
logo.png

Your All-in-One AI-Powered Toolkit for Academic Success.

Available 24*7 on WhatsApp / Email

[object Object]