SlideShare uma empresa Scribd logo
1 de 48
Baixar para ler offline
CNIT 141


Cryptography for Computer Networks
3. Cryptographic Security
Updated 9-7-22
Topics
• Defining the Impossible


• Quantifying Security


• Achieving Security


• Generating Keys


• How Things Can Go Wrong
Defining the Impossible
Two Types of Security
• Informational security


• Theoretical impossibility


• Computational security


• Practical impossibility
Informational Security
• Even an attacker with unlimited computation
time and memory cannot crack it


• If an attack works, even if it requires trillions of
years


• That cipher is informationally insecure


• The one-time pad is informationally secure


• Brute-force attack finds all possible
messages, but there's no way to tell which is
correct
Security in Practice:


Computational Security
• A cipher cannot be broken with a reasonable
amount of time, memory, hardware, power,
money, etc.


• Ex: AES-128 is currently computationally secure


• Because no current system can try 2^128 keys


• But quantum computers can test 2^128 keys with
only 2^64 operations


• So when or if they are developed, AES-128 will
cease being computationally secure
Quantifying Security
• A cipher is (t, ε)-secure if cracking it requres


t -- calculations an attacker will perform


ε -- probability of success


• Ex: if no flaw is found in AES-128, it is


• (t, t/2^128) - secure, for any t between 1
and 2^128
128-Bit Security
• If t is 1, attacker tries one key


• Probability of success is 1/2^128


• If t is 2^64, attacker tries 2^64 keys


• Probability of success is 1/2^64


• If t is 2^128, attacker tries 2^128 keys


• Probability of success is 1
Quantifying Security
Measuring Security in Bits
• Assume we want success probability of 1


• An attack requires t operations


• n bits of security means it will take 2^n
operations to crack


• A perfect cipher with a 128-bit key provides
128 bits of security


• Does not consider the speed of a single
operation; a rough measure
Example: WEP
• Stronger version had a 104-bit key


• Should require 2^104 calculations to crack


• In 2001, the FMS attack cracked it in


1.5 million operations (2^20.5)


• In 2007, the PTW attack worked in 40,000
operations (2^15.3)


• Link Ch 3a
Example: Substitution
Cipher
• Keyspace is


• 26 x 25 x 24 x ... x 3 x 2 x 1 = 26!


• = 4 x 10^26 = 2^88


• But children crack it with no computers for fun
with chosen-ciphertext guessing attacks
"QDHH, ALLI BDWPDKT! C FWK'Z XDHCDPD
ULY JDK. ... C'PD ALZ TLJD SLMD!"
G KGBP, WNQ CZFI...UFY PEFP DNMDASP
HQYP F KGPPKA PNN DNLSKAV, DFZK?
Example: RSA-2048
• Key is 2048 bits long, but provides 112 bits of
security


• Because key is not simply a random number,
but the product of two primes


• Textbook says "< 100 bits", which is a more
conservative estimate
NIST SP 800-57
• Link 3g
Full Attack Cost
• Parallelism


• Memory


• Precomputation


• Number of Targets
Parallelism
• 2^56 sequential steps are much slower than


• 2^56 independent steps


• If you can use many processors
Memory
• Some algorithms take a lot of memory


• Memory is much slower than registers


• Ethereum mining is memory-hard (link Ch 3i)
Precomputation
• Some operations only need to be performed
once


• Can be reused


• Time-memory trade-off attack


• Also called rainbow tables


• After tables are calculated, further attacks
are fast
Example: Windows
Password Hashes
Example: Windows
Password Hashes
• Fast, free cracker


• Link Ch 3j
Number of Targets
• Example: you have 1000 password hashes to
crack


• You will find one of them in 1/1000 the time it
takes to crack them all
Choosing and Evaluating
Security Levels
• Usually only two choices


• 128 bits for normal use


• 256 bits for high security
Achieving Security
Building Confidence
• Provable security


• Mathematical proof


• Heuristic security


• Evidence of failed attempts to break it
Provable Security
• Proof that breaking the crypto scheme is at
least as hard as a known hard problem


• RSA requires factoring a number into its
component primes


• A famously hard problem, studied for
thousands of years


• Note: there's no proof that "hard" math
problems are actually hard. It could be just
that no fast solution has been found yet.
RSA Algorithm
• Choose two random, large prime numbers


p and q


• Calculate n = p x q


• Choose an exponent e (usually 65537)


• Public Key is (n, e)
RSA Algorithm
• To encrypt a plaintext message x


y = x^e mod n


• To decrypt a ciphertext y


x = y^d mod n


• d is the decryption key, and is calculated from p
and q


• n is public, but no one can find p or q


• Because factoring numbers is a hard problem
Proofs Relative to Another
Crypto Problem
• Compare one crypto scheme to another one


• Prove you can only break the new one if you
can break the old one


• This is used to derive new crypto schemes
from old ones


• Such as developing symmetric algorithms,
random bit generators, and hash functions
from the same permutation algorithm
Caveats
• The underlying system might be broken


• The proof might overlook some other attack
against a real implementation


• The proof might contain an error
Examples
• RSA is easy to crack if p and q aren't
sufficiently random


• Knapsack, by Merkle and Hellman, was later
totally broken by lattice reduction


• Side-channel attacks may reveal the key


• Without breaking the math


• By measuring radio waves, power
consumption, timing, etc.
Examples
• Implementation
may use the
cryptography
incorrectly


• True of most
Android apps
I've studied
Heuristic Security
• Most symmetric ciphers don't have a security
proof


• Including AES


• But "skilled people have tried to break it
and failed"
Security Margin
• Cryptanalysts often attack simplified
versions of a cipher, with fewer rounds


• They find how many rounds they can crack


• The difference between the actual number of
rounds in the full cipher and the number of
rounds they can crack is the security
margin
AES Margin of Security
• Link Ch 3k
Generating Keys
Three Ways to Generate
Keys
• Randomly using a pseudorandom number
generator


• From a password using a Key Derivation
Function


• Key agreement protocol using a series of
messages between parties to establish a
shared key
Generating Symmetric
Keys
• They are simple random numbers


• The same length as the security they provide


• For 128-bit security, generate 16-byte number
Generating Asymmetric
Keys
• Feed random numbers into a key generation
algorithm


• It's complex. For RSA


• Must make many guesses to find a prime
number p


• Repeat for q
Demonstration
• In Python


• RSA key generation takes a long time
Protecting Keys
• Key wrapping


• Encrypting the key with a second key


• Second key often generated from a password


• On-the-fly key generation from a password


• No need to store the key at all


• Storing keys on a hardware token


• Like a smartcard or USB dongle


• Password-protected
How Things Can Go
Wrong
Incorrect Security Proof
• RSA-OAEP was "proven"


• Proof shown to be incorrect


• But the actual implementation was secure by
accident (link Ch 3l)
Short Keys for Legacy
Support
• "Export" cryptography was deliberately
weakened by US regulations in the 1990's


• Including 512-bit RSA


• Many servers continued to support these weak
protocols in 2015


• Link Ch 3m
3. Cryptographic Security

Mais conteúdo relacionado

Semelhante a 3. Cryptographic Security

Classical Encryption Techniques in Network Security
Classical Encryption Techniques in Network SecurityClassical Encryption Techniques in Network Security
Classical Encryption Techniques in Network Securitybabak danyal
 
4. Block Ciphers
4. Block Ciphers 4. Block Ciphers
4. Block Ciphers Sam Bowne
 
Chapter 8 cryptography lanjutan
Chapter 8 cryptography lanjutanChapter 8 cryptography lanjutan
Chapter 8 cryptography lanjutannewbie2019
 
Encryption techniques
Encryption techniquesEncryption techniques
Encryption techniquesMohitManna
 
CNIT 141: 4. Block Ciphers
CNIT 141: 4. Block CiphersCNIT 141: 4. Block Ciphers
CNIT 141: 4. Block CiphersSam Bowne
 
CNIT 141: 4. Block Ciphers
CNIT 141: 4. Block CiphersCNIT 141: 4. Block Ciphers
CNIT 141: 4. Block CiphersSam Bowne
 
CNIT 141: 4. Block Ciphers
CNIT 141: 4. Block CiphersCNIT 141: 4. Block Ciphers
CNIT 141: 4. Block CiphersSam Bowne
 
RSA Algorithm - Public Key Cryptography
RSA Algorithm - Public Key CryptographyRSA Algorithm - Public Key Cryptography
RSA Algorithm - Public Key CryptographyMd. Shafiul Alam Sagor
 
Quantum cryptography by Girisha Shankar, Sr. Manager, Cisco
Quantum cryptography by Girisha Shankar, Sr. Manager, CiscoQuantum cryptography by Girisha Shankar, Sr. Manager, Cisco
Quantum cryptography by Girisha Shankar, Sr. Manager, CiscoVishnu Pendyala
 
CISSP Prep: Ch 4. Security Engineering (Part 2)
CISSP Prep: Ch 4. Security Engineering (Part 2)CISSP Prep: Ch 4. Security Engineering (Part 2)
CISSP Prep: Ch 4. Security Engineering (Part 2)Sam Bowne
 
18CS2005 Cryptography and Network Security
18CS2005 Cryptography and Network Security18CS2005 Cryptography and Network Security
18CS2005 Cryptography and Network SecurityKathirvel Ayyaswamy
 
Lecture3a symmetric encryption
Lecture3a symmetric encryptionLecture3a symmetric encryption
Lecture3a symmetric encryptionrajakhurram
 
Cryptography and Network Security
Cryptography and Network SecurityCryptography and Network Security
Cryptography and Network SecurityPa Van Tanku
 

Semelhante a 3. Cryptographic Security (20)

Classical Encryption Techniques in Network Security
Classical Encryption Techniques in Network SecurityClassical Encryption Techniques in Network Security
Classical Encryption Techniques in Network Security
 
Aes jul-upload
Aes jul-uploadAes jul-upload
Aes jul-upload
 
4. Block Ciphers
4. Block Ciphers 4. Block Ciphers
4. Block Ciphers
 
Chapter 8 cryptography lanjutan
Chapter 8 cryptography lanjutanChapter 8 cryptography lanjutan
Chapter 8 cryptography lanjutan
 
Encryption techniques
Encryption techniquesEncryption techniques
Encryption techniques
 
RSA
RSARSA
RSA
 
CNIT 141: 4. Block Ciphers
CNIT 141: 4. Block CiphersCNIT 141: 4. Block Ciphers
CNIT 141: 4. Block Ciphers
 
CNIT 141: 4. Block Ciphers
CNIT 141: 4. Block CiphersCNIT 141: 4. Block Ciphers
CNIT 141: 4. Block Ciphers
 
CNIT 141: 4. Block Ciphers
CNIT 141: 4. Block CiphersCNIT 141: 4. Block Ciphers
CNIT 141: 4. Block Ciphers
 
Cryptology - The practice and study of hiding information
Cryptology - The practice and study of hiding informationCryptology - The practice and study of hiding information
Cryptology - The practice and study of hiding information
 
5967073.ppt
5967073.ppt5967073.ppt
5967073.ppt
 
Network Security Topic 3 cryptography
Network Security Topic 3 cryptographyNetwork Security Topic 3 cryptography
Network Security Topic 3 cryptography
 
Security fundamentals
Security fundamentalsSecurity fundamentals
Security fundamentals
 
Security Fundamentals
Security FundamentalsSecurity Fundamentals
Security Fundamentals
 
RSA Algorithm - Public Key Cryptography
RSA Algorithm - Public Key CryptographyRSA Algorithm - Public Key Cryptography
RSA Algorithm - Public Key Cryptography
 
Quantum cryptography by Girisha Shankar, Sr. Manager, Cisco
Quantum cryptography by Girisha Shankar, Sr. Manager, CiscoQuantum cryptography by Girisha Shankar, Sr. Manager, Cisco
Quantum cryptography by Girisha Shankar, Sr. Manager, Cisco
 
CISSP Prep: Ch 4. Security Engineering (Part 2)
CISSP Prep: Ch 4. Security Engineering (Part 2)CISSP Prep: Ch 4. Security Engineering (Part 2)
CISSP Prep: Ch 4. Security Engineering (Part 2)
 
18CS2005 Cryptography and Network Security
18CS2005 Cryptography and Network Security18CS2005 Cryptography and Network Security
18CS2005 Cryptography and Network Security
 
Lecture3a symmetric encryption
Lecture3a symmetric encryptionLecture3a symmetric encryption
Lecture3a symmetric encryption
 
Cryptography and Network Security
Cryptography and Network SecurityCryptography and Network Security
Cryptography and Network Security
 

Mais de Sam Bowne

3: DNS vulnerabilities
3: DNS vulnerabilities 3: DNS vulnerabilities
3: DNS vulnerabilities Sam Bowne
 
8. Software Development Security
8. Software Development Security8. Software Development Security
8. Software Development SecuritySam Bowne
 
4 Mapping the Application
4 Mapping the Application4 Mapping the Application
4 Mapping the ApplicationSam Bowne
 
3. Attacking iOS Applications (Part 2)
 3. Attacking iOS Applications (Part 2) 3. Attacking iOS Applications (Part 2)
3. Attacking iOS Applications (Part 2)Sam Bowne
 
12 Elliptic Curves
12 Elliptic Curves12 Elliptic Curves
12 Elliptic CurvesSam Bowne
 
11. Diffie-Hellman
11. Diffie-Hellman11. Diffie-Hellman
11. Diffie-HellmanSam Bowne
 
2a Analyzing iOS Apps Part 1
2a Analyzing iOS Apps Part 12a Analyzing iOS Apps Part 1
2a Analyzing iOS Apps Part 1Sam Bowne
 
9 Writing Secure Android Applications
9 Writing Secure Android Applications9 Writing Secure Android Applications
9 Writing Secure Android ApplicationsSam Bowne
 
12 Investigating Windows Systems (Part 2 of 3)
12 Investigating Windows Systems (Part 2 of 3)12 Investigating Windows Systems (Part 2 of 3)
12 Investigating Windows Systems (Part 2 of 3)Sam Bowne
 
12 Investigating Windows Systems (Part 1 of 3
12 Investigating Windows Systems (Part 1 of 312 Investigating Windows Systems (Part 1 of 3
12 Investigating Windows Systems (Part 1 of 3Sam Bowne
 
9. Hard Problems
9. Hard Problems9. Hard Problems
9. Hard ProblemsSam Bowne
 
8 Android Implementation Issues (Part 1)
8 Android Implementation Issues (Part 1)8 Android Implementation Issues (Part 1)
8 Android Implementation Issues (Part 1)Sam Bowne
 
11 Analysis Methodology
11 Analysis Methodology11 Analysis Methodology
11 Analysis MethodologySam Bowne
 
8. Authenticated Encryption
8. Authenticated Encryption8. Authenticated Encryption
8. Authenticated EncryptionSam Bowne
 
7. Attacking Android Applications (Part 2)
7. Attacking Android Applications (Part 2)7. Attacking Android Applications (Part 2)
7. Attacking Android Applications (Part 2)Sam Bowne
 
7. Attacking Android Applications (Part 1)
7. Attacking Android Applications (Part 1)7. Attacking Android Applications (Part 1)
7. Attacking Android Applications (Part 1)Sam Bowne
 
5. Stream Ciphers
5. Stream Ciphers5. Stream Ciphers
5. Stream CiphersSam Bowne
 
6 Scope & 7 Live Data Collection
6 Scope & 7 Live Data Collection6 Scope & 7 Live Data Collection
6 Scope & 7 Live Data CollectionSam Bowne
 

Mais de Sam Bowne (20)

Cyberwar
CyberwarCyberwar
Cyberwar
 
3: DNS vulnerabilities
3: DNS vulnerabilities 3: DNS vulnerabilities
3: DNS vulnerabilities
 
8. Software Development Security
8. Software Development Security8. Software Development Security
8. Software Development Security
 
4 Mapping the Application
4 Mapping the Application4 Mapping the Application
4 Mapping the Application
 
3. Attacking iOS Applications (Part 2)
 3. Attacking iOS Applications (Part 2) 3. Attacking iOS Applications (Part 2)
3. Attacking iOS Applications (Part 2)
 
12 Elliptic Curves
12 Elliptic Curves12 Elliptic Curves
12 Elliptic Curves
 
11. Diffie-Hellman
11. Diffie-Hellman11. Diffie-Hellman
11. Diffie-Hellman
 
2a Analyzing iOS Apps Part 1
2a Analyzing iOS Apps Part 12a Analyzing iOS Apps Part 1
2a Analyzing iOS Apps Part 1
 
9 Writing Secure Android Applications
9 Writing Secure Android Applications9 Writing Secure Android Applications
9 Writing Secure Android Applications
 
12 Investigating Windows Systems (Part 2 of 3)
12 Investigating Windows Systems (Part 2 of 3)12 Investigating Windows Systems (Part 2 of 3)
12 Investigating Windows Systems (Part 2 of 3)
 
10 RSA
10 RSA10 RSA
10 RSA
 
12 Investigating Windows Systems (Part 1 of 3
12 Investigating Windows Systems (Part 1 of 312 Investigating Windows Systems (Part 1 of 3
12 Investigating Windows Systems (Part 1 of 3
 
9. Hard Problems
9. Hard Problems9. Hard Problems
9. Hard Problems
 
8 Android Implementation Issues (Part 1)
8 Android Implementation Issues (Part 1)8 Android Implementation Issues (Part 1)
8 Android Implementation Issues (Part 1)
 
11 Analysis Methodology
11 Analysis Methodology11 Analysis Methodology
11 Analysis Methodology
 
8. Authenticated Encryption
8. Authenticated Encryption8. Authenticated Encryption
8. Authenticated Encryption
 
7. Attacking Android Applications (Part 2)
7. Attacking Android Applications (Part 2)7. Attacking Android Applications (Part 2)
7. Attacking Android Applications (Part 2)
 
7. Attacking Android Applications (Part 1)
7. Attacking Android Applications (Part 1)7. Attacking Android Applications (Part 1)
7. Attacking Android Applications (Part 1)
 
5. Stream Ciphers
5. Stream Ciphers5. Stream Ciphers
5. Stream Ciphers
 
6 Scope & 7 Live Data Collection
6 Scope & 7 Live Data Collection6 Scope & 7 Live Data Collection
6 Scope & 7 Live Data Collection
 

Último

Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSMae Pangan
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptxmary850239
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfErwinPantujan2
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxlancelewisportillo
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4JOYLYNSAMANIEGO
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
TEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docxTEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docxruthvilladarez
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfVanessa Camilleri
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operationalssuser3e220a
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 

Último (20)

Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHS
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
Paradigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTAParadigm shift in nursing research by RS MEHTA
Paradigm shift in nursing research by RS MEHTA
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
TEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docxTEACHER REFLECTION FORM (NEW SET........).docx
TEACHER REFLECTION FORM (NEW SET........).docx
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdf
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operational
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 

3. Cryptographic Security

  • 1. CNIT 141 Cryptography for Computer Networks 3. Cryptographic Security Updated 9-7-22
  • 2. Topics • Defining the Impossible • Quantifying Security • Achieving Security • Generating Keys • How Things Can Go Wrong
  • 4. Two Types of Security • Informational security • Theoretical impossibility • Computational security • Practical impossibility
  • 5. Informational Security • Even an attacker with unlimited computation time and memory cannot crack it • If an attack works, even if it requires trillions of years • That cipher is informationally insecure • The one-time pad is informationally secure • Brute-force attack finds all possible messages, but there's no way to tell which is correct
  • 6. Security in Practice: Computational Security • A cipher cannot be broken with a reasonable amount of time, memory, hardware, power, money, etc. • Ex: AES-128 is currently computationally secure • Because no current system can try 2^128 keys • But quantum computers can test 2^128 keys with only 2^64 operations • So when or if they are developed, AES-128 will cease being computationally secure
  • 7. Quantifying Security • A cipher is (t, ε)-secure if cracking it requres t -- calculations an attacker will perform ε -- probability of success • Ex: if no flaw is found in AES-128, it is • (t, t/2^128) - secure, for any t between 1 and 2^128
  • 8. 128-Bit Security • If t is 1, attacker tries one key • Probability of success is 1/2^128 • If t is 2^64, attacker tries 2^64 keys • Probability of success is 1/2^64 • If t is 2^128, attacker tries 2^128 keys • Probability of success is 1
  • 10. Measuring Security in Bits • Assume we want success probability of 1 • An attack requires t operations • n bits of security means it will take 2^n operations to crack • A perfect cipher with a 128-bit key provides 128 bits of security • Does not consider the speed of a single operation; a rough measure
  • 11. Example: WEP • Stronger version had a 104-bit key • Should require 2^104 calculations to crack • In 2001, the FMS attack cracked it in 
 1.5 million operations (2^20.5) • In 2007, the PTW attack worked in 40,000 operations (2^15.3) • Link Ch 3a
  • 12. Example: Substitution Cipher • Keyspace is • 26 x 25 x 24 x ... x 3 x 2 x 1 = 26! • = 4 x 10^26 = 2^88 • But children crack it with no computers for fun with chosen-ciphertext guessing attacks
  • 13. "QDHH, ALLI BDWPDKT! C FWK'Z XDHCDPD ULY JDK. ... C'PD ALZ TLJD SLMD!"
  • 14. G KGBP, WNQ CZFI...UFY PEFP DNMDASP HQYP F KGPPKA PNN DNLSKAV, DFZK?
  • 15. Example: RSA-2048 • Key is 2048 bits long, but provides 112 bits of security • Because key is not simply a random number, but the product of two primes • Textbook says "< 100 bits", which is a more conservative estimate
  • 16.
  • 18. Full Attack Cost • Parallelism • Memory • Precomputation • Number of Targets
  • 19. Parallelism • 2^56 sequential steps are much slower than • 2^56 independent steps • If you can use many processors
  • 20. Memory • Some algorithms take a lot of memory • Memory is much slower than registers • Ethereum mining is memory-hard (link Ch 3i)
  • 21. Precomputation • Some operations only need to be performed once • Can be reused • Time-memory trade-off attack • Also called rainbow tables • After tables are calculated, further attacks are fast
  • 23. Example: Windows Password Hashes • Fast, free cracker • Link Ch 3j
  • 24. Number of Targets • Example: you have 1000 password hashes to crack • You will find one of them in 1/1000 the time it takes to crack them all
  • 25. Choosing and Evaluating Security Levels • Usually only two choices • 128 bits for normal use • 256 bits for high security
  • 26.
  • 28. Building Confidence • Provable security • Mathematical proof • Heuristic security • Evidence of failed attempts to break it
  • 29. Provable Security • Proof that breaking the crypto scheme is at least as hard as a known hard problem • RSA requires factoring a number into its component primes • A famously hard problem, studied for thousands of years • Note: there's no proof that "hard" math problems are actually hard. It could be just that no fast solution has been found yet.
  • 30. RSA Algorithm • Choose two random, large prime numbers 
 p and q • Calculate n = p x q • Choose an exponent e (usually 65537) • Public Key is (n, e)
  • 31. RSA Algorithm • To encrypt a plaintext message x y = x^e mod n • To decrypt a ciphertext y x = y^d mod n • d is the decryption key, and is calculated from p and q • n is public, but no one can find p or q • Because factoring numbers is a hard problem
  • 32. Proofs Relative to Another Crypto Problem • Compare one crypto scheme to another one • Prove you can only break the new one if you can break the old one • This is used to derive new crypto schemes from old ones • Such as developing symmetric algorithms, random bit generators, and hash functions from the same permutation algorithm
  • 33. Caveats • The underlying system might be broken • The proof might overlook some other attack against a real implementation • The proof might contain an error
  • 34. Examples • RSA is easy to crack if p and q aren't sufficiently random • Knapsack, by Merkle and Hellman, was later totally broken by lattice reduction • Side-channel attacks may reveal the key • Without breaking the math • By measuring radio waves, power consumption, timing, etc.
  • 35. Examples • Implementation may use the cryptography incorrectly • True of most Android apps I've studied
  • 36. Heuristic Security • Most symmetric ciphers don't have a security proof • Including AES • But "skilled people have tried to break it and failed"
  • 37. Security Margin • Cryptanalysts often attack simplified versions of a cipher, with fewer rounds • They find how many rounds they can crack • The difference between the actual number of rounds in the full cipher and the number of rounds they can crack is the security margin
  • 38. AES Margin of Security • Link Ch 3k
  • 40. Three Ways to Generate Keys • Randomly using a pseudorandom number generator • From a password using a Key Derivation Function • Key agreement protocol using a series of messages between parties to establish a shared key
  • 41. Generating Symmetric Keys • They are simple random numbers • The same length as the security they provide • For 128-bit security, generate 16-byte number
  • 42. Generating Asymmetric Keys • Feed random numbers into a key generation algorithm • It's complex. For RSA • Must make many guesses to find a prime number p • Repeat for q
  • 43. Demonstration • In Python • RSA key generation takes a long time
  • 44. Protecting Keys • Key wrapping • Encrypting the key with a second key • Second key often generated from a password • On-the-fly key generation from a password • No need to store the key at all • Storing keys on a hardware token • Like a smartcard or USB dongle • Password-protected
  • 45. How Things Can Go Wrong
  • 46. Incorrect Security Proof • RSA-OAEP was "proven" • Proof shown to be incorrect • But the actual implementation was secure by accident (link Ch 3l)
  • 47. Short Keys for Legacy Support • "Export" cryptography was deliberately weakened by US regulations in the 1990's • Including 512-bit RSA • Many servers continued to support these weak protocols in 2015 • Link Ch 3m