SlideShare a Scribd company logo
Thwarting The Surveillance in
Online Communication
ADHOKSHAJ MISHRA
Who am I?
●
Contributor to n|u
●
Head of R&D, Skarpsinne Labs, London, UK
●
I am a hobbyist programmer with some interest
in information security domain. My primary
areas of interest are cryptography and malware.
●
Blog: http://adhokshajmishraonline.in
●
Email: me@adhokshajmishraonline.in
Agenda
●
Crooked activities by government
●
Why counter-surveillance?
●
Common surveillance methods
●
Counter -surveillance and cryptography
●
Keeping your data safe
●
Secure authentication
●
Private messages (chats, calls etc...)
●
Countermeasures for counter-surveillance
Crooked Activities
●
PRISM Program from NSA
●
Attempt to backdoor LINUX kernel
●
Backdoor in hard disk firmware
●
SuperFish in recent Lenovo laptops
●
Cryptographic keys for SIM stolen by NSA for
mass spying without warrant or permission
●
Cryptographic backdoor in MS Windows
Why counter-surveillance?
●
Because crooked practices by governments and
companies is unacceptable.
●
To recover from the damage done by gov agencies
under name of surveillance.
●
To make a balance between surveillance efforts
and privacy protection efforts
Common surveillance methods
●
By tapping the wire
●
By exploiting 0-day vulnerabilities (Tailored
Access Operation)
●
By paying the big boys to put backdoor in
software (MS Windows)
●
By weakening the cryptography (Dual EC_DRBG)
●
And many more......
Counter-surveillance & Cryptography
●
Mathematics is our friend. Let us trust it.
●
NSA cannot break good cryptography.
●
Cryptography allows all sorts of cool stuff, like
communicating in such a way that nothing can be
proved :D
●
All you need some cryptography skills and some
programming skills to get the things done.
Keeping The Data Safe
●
Encrypting the files is not enough
●
Encrypted volume is not enough
●
Even “hidden volume” of TrueCrypt is not enough
Keeping The Data Safe (2)
●
Fill entire volume with output of a good
cryptographically secure pseudo-random bit
stream generator.
●
Create multiple encrypted file systems at
different offsets in same volume.
●
Every I/O action should modify slack space at
random locations in all the file systems, as well as
host volume.
Keeping The Data Safe (3)
●
Put some genuine looking data in one of the file
systems, and secret data in other. Keep good
balance between them.
●
Output of a good cryptosystem cannot be
distinguished from output of a good pseudo-
random bit stream generator.
●
Claim the data to be just random stream. Proving
otherwise will be very difficult.
Secure Authentication
●
CA will protect you only from those it is not
willing to take money from.
●
“Secure channel” can be intercepted by
mechanism used by Superfish.
●
You can authenticate yourself without revealing
your password.
●
Time to move to crypto magic ….
Secure Authentication (2)
●
Alice has a secret s which he wants to prove to
Bob.
●
Three values y, g, and p are shared. P is large
prime. Also
g^s mod p = y
●
Alice will generate a random number r, and
calculate C = g^r mod p. C is sent to Bob.
●
Bob will request either r or (s + r) mod (p - 1)
Secure Authentication (3)
●
Verifying the knowledge
in case of r:
C = g^r mod p
in case of (s + r) mod (p -1)
g ^ ((s+r) mod (p-1)) mod p = C.y mod p
●
Repeat the request – verification cycle multiple times.
Select the request randomly each time.
●
In all cases, only a random number is sent, therefore
no knowledge of secret is leaked.
Private Messaging
Desired properties:
●
Encryption
●
Authentication
●
Deniability
●
Perfect Forward Secrecy
Authentication in Private Messaging
●
Shared values: g and p. P is prime.
●
Bob
picks random value r(128 bits)
picks random value x (320 bits minimum)
●
Calculates
v1 = g ^ x mod p; A = AES(key = r, v1); H = Hash (v)
●
Sends A and H to Alice
Authentication in Private Messaging
●
Alice picks random value y (320 bits minimum)
Calculates v2 = g ^ y mod p
Sends v2 to Bob
●
Bob calculates s = v2 ^ x mod p
●
Hashes s in different ways to generate c, c', m1,
m1', m2, m2'. C, c' are AES keys, others are MAC
keys
Authentication in Private Messaging
●
Shared values: g and p. P is prime.
●
Bob
picks random value r(128 bits)
picks random value x (320 bits minimum)
●
Calculates
v1 = g ^ x mod p; A = AES(key = r, v1); H = Hash (v)
●
Sends A and H to Alice
Authentication in Private Messaging
●
Bob picks keyid_B, a serial number for his DH key
g ^ x mod p
●
Calculates
Mb = MAC(m1)(g^x, g^y, pub_B, keyid_B)
Xb = pub_B, keyid_B, sig(B, Mb)
●
Sends to Alice
r, AES(key=c, Xb), MAC(m2)(AES(key=c, Xb))
Authentication in Private Messaging
●
Alice uses r to decrypt A (received from Bob)
●
Verifies H by recalculating it
●
Calculates s = v1 ^ y mod p (s → same as Bob)
●
Calculates AES and MAC keys from s (same as
Bob)
●
Uses m2 to verify MAC(m2)(AES(key=c, Xb))
●
Uses c to decrypt AES(key=c, Xb)
Authentication in Private Messaging
●
Calculates Mb, and verifies sig(B, Mb) using pub_B
●
Picks keyid_A, a serial number for his DH Key
●
Calculates
Ma = MAC(m1')(g^y, g^x, pub_A, keyid_A)
Xa = pub_A, keyid_A, sig(A, Ma)
●
Sends to Bob: AES(key=c', Xa), MAC(m2')
(AES(key=c', Xa))
Authentication in Private Messaging
●
Bob
uses m2' to verify MAC(m2')(AES(key=c', Xa))
uses c' to decrypt AES(key=c', Xa)
calculates Ma = MAC(m1')(g^y, g^x, pub_A,
keyid_A)
uses pub_A to verify sig(A, Ma)
●
Now Alice and Bob have s, pub_A and pub_B
Encryption in Private Messaging
●
Alice is assured that s is known by someone with
access to the private key corresponding to pub_B,
and similarly for Bob.
●
All messages are encrypted using symmetric
cipher with shared DH key as encryption key.
●
DH protocol is re-initiated to generate new key
for next message.
Authentication in Private Messaging
●
Alice and Bob know each others public key
●
Alice and Bob have one more shared secret s1.
●
To detect impersonation or MITM attack, public
key fingerprints as well as shared secret s1 can be
verified using “secure authentication” as
discussed previously.
Thank You
Got any questions?

More Related Content

Similar to Thwarting The Surveillance in Online Communication by Adhokshaj Mishra

AllBits presentation - Security in Theory
AllBits presentation - Security in TheoryAllBits presentation - Security in Theory
AllBits presentation - Security in Theory
AllBits BVBA (freelancer)
 
Technology, Process, and Strategy
Technology, Process, and StrategyTechnology, Process, and Strategy
Technology, Process, and Strategy
ereddick
 
Kleptography
KleptographyKleptography
Kleptography
Erfan Mallick
 
Cryptography Key Management.pptx
Cryptography Key Management.pptxCryptography Key Management.pptx
Cryptography Key Management.pptx
SurendraBasnet6
 
Unit-III_3R-CRYPTO_2021-22_VSM.pptx
Unit-III_3R-CRYPTO_2021-22_VSM.pptxUnit-III_3R-CRYPTO_2021-22_VSM.pptx
Unit-III_3R-CRYPTO_2021-22_VSM.pptx
VishwanathMahalle
 
6.hash mac
6.hash mac6.hash mac
1329 n 9460
1329 n 94601329 n 9460
1329 n 9460
kicknit123
 
crypto1.ppt
crypto1.pptcrypto1.ppt
crypto1.ppt
tommychauhan
 
needed.ppt
needed.pptneeded.ppt
needed.ppt
faizalkhan673954
 
introduction to cryptography (basics of it)
introduction to cryptography (basics of it)introduction to cryptography (basics of it)
introduction to cryptography (basics of it)
neonaveen
 
crypto.ppt
crypto.pptcrypto.ppt
crypto.ppt
Ganesh Chavan
 
Timing Attack paper--pres--v.01
Timing Attack   paper--pres--v.01Timing Attack   paper--pres--v.01
Timing Attack paper--pres--v.01
anasz3z3
 
Cryptography 101
Cryptography 101Cryptography 101
Cryptography 101
Aditya Kamat
 
Cryptography For The Average Developer
Cryptography For The Average DeveloperCryptography For The Average Developer
Cryptography For The Average Developer
Anthony Ferrara
 
introduction to cryptography
introduction to cryptographyintroduction to cryptography
introduction to cryptography
Priyamvada Singh
 
Public Key Cryptography
Public Key CryptographyPublic Key Cryptography
Public Key Cryptography
Gopal Sakarkar
 
Post quantum cryptography - thesis
Post quantum cryptography - thesisPost quantum cryptography - thesis
Post quantum cryptography - thesis
Samy Shehata
 
Cryptography by gaurav singh
Cryptography by gaurav singhCryptography by gaurav singh
Cryptography by gaurav singh
Gaurav Singh
 

Similar to Thwarting The Surveillance in Online Communication by Adhokshaj Mishra (20)

AllBits presentation - Security in Theory
AllBits presentation - Security in TheoryAllBits presentation - Security in Theory
AllBits presentation - Security in Theory
 
Technology, Process, and Strategy
Technology, Process, and StrategyTechnology, Process, and Strategy
Technology, Process, and Strategy
 
Kleptography
KleptographyKleptography
Kleptography
 
Cryptography Key Management.pptx
Cryptography Key Management.pptxCryptography Key Management.pptx
Cryptography Key Management.pptx
 
Unit-III_3R-CRYPTO_2021-22_VSM.pptx
Unit-III_3R-CRYPTO_2021-22_VSM.pptxUnit-III_3R-CRYPTO_2021-22_VSM.pptx
Unit-III_3R-CRYPTO_2021-22_VSM.pptx
 
Introduction to cryptography
Introduction to cryptographyIntroduction to cryptography
Introduction to cryptography
 
6.hash mac
6.hash mac6.hash mac
6.hash mac
 
1329 n 9460
1329 n 94601329 n 9460
1329 n 9460
 
crypto1.ppt
crypto1.pptcrypto1.ppt
crypto1.ppt
 
needed.ppt
needed.pptneeded.ppt
needed.ppt
 
introduction to cryptography (basics of it)
introduction to cryptography (basics of it)introduction to cryptography (basics of it)
introduction to cryptography (basics of it)
 
crypto.ppt
crypto.pptcrypto.ppt
crypto.ppt
 
Timing Attack paper--pres--v.01
Timing Attack   paper--pres--v.01Timing Attack   paper--pres--v.01
Timing Attack paper--pres--v.01
 
Cryptography 101
Cryptography 101Cryptography 101
Cryptography 101
 
Cryptography For The Average Developer
Cryptography For The Average DeveloperCryptography For The Average Developer
Cryptography For The Average Developer
 
Crypt
CryptCrypt
Crypt
 
introduction to cryptography
introduction to cryptographyintroduction to cryptography
introduction to cryptography
 
Public Key Cryptography
Public Key CryptographyPublic Key Cryptography
Public Key Cryptography
 
Post quantum cryptography - thesis
Post quantum cryptography - thesisPost quantum cryptography - thesis
Post quantum cryptography - thesis
 
Cryptography by gaurav singh
Cryptography by gaurav singhCryptography by gaurav singh
Cryptography by gaurav singh
 

More from OWASP Delhi

Getting Started With Hacking Android & iOS Apps? Tools, Techniques and resources
Getting Started With Hacking Android & iOS Apps? Tools, Techniques and resourcesGetting Started With Hacking Android & iOS Apps? Tools, Techniques and resources
Getting Started With Hacking Android & iOS Apps? Tools, Techniques and resources
OWASP Delhi
 
Securing dns records from subdomain takeover
Securing dns records from subdomain takeoverSecuring dns records from subdomain takeover
Securing dns records from subdomain takeover
OWASP Delhi
 
Effective Cyber Security Report Writing
Effective Cyber Security Report WritingEffective Cyber Security Report Writing
Effective Cyber Security Report Writing
OWASP Delhi
 
Data sniffing over Air Gap
Data sniffing over Air GapData sniffing over Air Gap
Data sniffing over Air Gap
OWASP Delhi
 
UDP Hunter
UDP HunterUDP Hunter
UDP Hunter
OWASP Delhi
 
Demystifying Container Escapes
Demystifying Container EscapesDemystifying Container Escapes
Demystifying Container Escapes
OWASP Delhi
 
Automating WAF using Terraform
Automating WAF using TerraformAutomating WAF using Terraform
Automating WAF using Terraform
OWASP Delhi
 
Actionable Threat Intelligence
Actionable Threat IntelligenceActionable Threat Intelligence
Actionable Threat Intelligence
OWASP Delhi
 
Threat hunting 101 by Sandeep Singh
Threat hunting 101 by Sandeep SinghThreat hunting 101 by Sandeep Singh
Threat hunting 101 by Sandeep Singh
OWASP Delhi
 
Owasp top 10 vulnerabilities
Owasp top 10 vulnerabilitiesOwasp top 10 vulnerabilities
Owasp top 10 vulnerabilities
OWASP Delhi
 
Recon with Nmap
Recon with Nmap Recon with Nmap
Recon with Nmap
OWASP Delhi
 
Securing AWS environments by Ankit Giri
Securing AWS environments by Ankit GiriSecuring AWS environments by Ankit Giri
Securing AWS environments by Ankit Giri
OWASP Delhi
 
DMARC Overview
DMARC OverviewDMARC Overview
DMARC Overview
OWASP Delhi
 
Cloud assessments by :- Aakash Goel
Cloud assessments  by :- Aakash GoelCloud assessments  by :- Aakash Goel
Cloud assessments by :- Aakash Goel
OWASP Delhi
 
Pentesting Rest API's by :- Gaurang Bhatnagar
Pentesting Rest API's by :- Gaurang BhatnagarPentesting Rest API's by :- Gaurang Bhatnagar
Pentesting Rest API's by :- Gaurang Bhatnagar
OWASP Delhi
 
Wireless security beyond password cracking by Mohit Ranjan
Wireless security beyond password cracking by Mohit RanjanWireless security beyond password cracking by Mohit Ranjan
Wireless security beyond password cracking by Mohit Ranjan
OWASP Delhi
 
IETF's Role and Mandate in Internet Governance by Mohit Batra
IETF's Role and Mandate in Internet Governance by Mohit BatraIETF's Role and Mandate in Internet Governance by Mohit Batra
IETF's Role and Mandate in Internet Governance by Mohit Batra
OWASP Delhi
 
Malicious Hypervisor - Virtualization in Shellcodes by Adhokshaj Mishra
Malicious Hypervisor - Virtualization in Shellcodes by Adhokshaj MishraMalicious Hypervisor - Virtualization in Shellcodes by Adhokshaj Mishra
Malicious Hypervisor - Virtualization in Shellcodes by Adhokshaj Mishra
OWASP Delhi
 
ICS Security 101 by Sandeep Singh
ICS Security 101 by Sandeep SinghICS Security 101 by Sandeep Singh
ICS Security 101 by Sandeep Singh
OWASP Delhi
 
DFIR using Docker Containers by Deep Shankar Yadav
DFIR using Docker Containers by Deep Shankar YadavDFIR using Docker Containers by Deep Shankar Yadav
DFIR using Docker Containers by Deep Shankar Yadav
OWASP Delhi
 

More from OWASP Delhi (20)

Getting Started With Hacking Android & iOS Apps? Tools, Techniques and resources
Getting Started With Hacking Android & iOS Apps? Tools, Techniques and resourcesGetting Started With Hacking Android & iOS Apps? Tools, Techniques and resources
Getting Started With Hacking Android & iOS Apps? Tools, Techniques and resources
 
Securing dns records from subdomain takeover
Securing dns records from subdomain takeoverSecuring dns records from subdomain takeover
Securing dns records from subdomain takeover
 
Effective Cyber Security Report Writing
Effective Cyber Security Report WritingEffective Cyber Security Report Writing
Effective Cyber Security Report Writing
 
Data sniffing over Air Gap
Data sniffing over Air GapData sniffing over Air Gap
Data sniffing over Air Gap
 
UDP Hunter
UDP HunterUDP Hunter
UDP Hunter
 
Demystifying Container Escapes
Demystifying Container EscapesDemystifying Container Escapes
Demystifying Container Escapes
 
Automating WAF using Terraform
Automating WAF using TerraformAutomating WAF using Terraform
Automating WAF using Terraform
 
Actionable Threat Intelligence
Actionable Threat IntelligenceActionable Threat Intelligence
Actionable Threat Intelligence
 
Threat hunting 101 by Sandeep Singh
Threat hunting 101 by Sandeep SinghThreat hunting 101 by Sandeep Singh
Threat hunting 101 by Sandeep Singh
 
Owasp top 10 vulnerabilities
Owasp top 10 vulnerabilitiesOwasp top 10 vulnerabilities
Owasp top 10 vulnerabilities
 
Recon with Nmap
Recon with Nmap Recon with Nmap
Recon with Nmap
 
Securing AWS environments by Ankit Giri
Securing AWS environments by Ankit GiriSecuring AWS environments by Ankit Giri
Securing AWS environments by Ankit Giri
 
DMARC Overview
DMARC OverviewDMARC Overview
DMARC Overview
 
Cloud assessments by :- Aakash Goel
Cloud assessments  by :- Aakash GoelCloud assessments  by :- Aakash Goel
Cloud assessments by :- Aakash Goel
 
Pentesting Rest API's by :- Gaurang Bhatnagar
Pentesting Rest API's by :- Gaurang BhatnagarPentesting Rest API's by :- Gaurang Bhatnagar
Pentesting Rest API's by :- Gaurang Bhatnagar
 
Wireless security beyond password cracking by Mohit Ranjan
Wireless security beyond password cracking by Mohit RanjanWireless security beyond password cracking by Mohit Ranjan
Wireless security beyond password cracking by Mohit Ranjan
 
IETF's Role and Mandate in Internet Governance by Mohit Batra
IETF's Role and Mandate in Internet Governance by Mohit BatraIETF's Role and Mandate in Internet Governance by Mohit Batra
IETF's Role and Mandate in Internet Governance by Mohit Batra
 
Malicious Hypervisor - Virtualization in Shellcodes by Adhokshaj Mishra
Malicious Hypervisor - Virtualization in Shellcodes by Adhokshaj MishraMalicious Hypervisor - Virtualization in Shellcodes by Adhokshaj Mishra
Malicious Hypervisor - Virtualization in Shellcodes by Adhokshaj Mishra
 
ICS Security 101 by Sandeep Singh
ICS Security 101 by Sandeep SinghICS Security 101 by Sandeep Singh
ICS Security 101 by Sandeep Singh
 
DFIR using Docker Containers by Deep Shankar Yadav
DFIR using Docker Containers by Deep Shankar YadavDFIR using Docker Containers by Deep Shankar Yadav
DFIR using Docker Containers by Deep Shankar Yadav
 

Recently uploaded

Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
Jen Stirrup
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
Globus
 

Recently uploaded (20)

Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
 

Thwarting The Surveillance in Online Communication by Adhokshaj Mishra

  • 1. Thwarting The Surveillance in Online Communication ADHOKSHAJ MISHRA
  • 2. Who am I? ● Contributor to n|u ● Head of R&D, Skarpsinne Labs, London, UK ● I am a hobbyist programmer with some interest in information security domain. My primary areas of interest are cryptography and malware. ● Blog: http://adhokshajmishraonline.in ● Email: me@adhokshajmishraonline.in
  • 3. Agenda ● Crooked activities by government ● Why counter-surveillance? ● Common surveillance methods ● Counter -surveillance and cryptography ● Keeping your data safe ● Secure authentication ● Private messages (chats, calls etc...) ● Countermeasures for counter-surveillance
  • 4. Crooked Activities ● PRISM Program from NSA ● Attempt to backdoor LINUX kernel ● Backdoor in hard disk firmware ● SuperFish in recent Lenovo laptops ● Cryptographic keys for SIM stolen by NSA for mass spying without warrant or permission ● Cryptographic backdoor in MS Windows
  • 5. Why counter-surveillance? ● Because crooked practices by governments and companies is unacceptable. ● To recover from the damage done by gov agencies under name of surveillance. ● To make a balance between surveillance efforts and privacy protection efforts
  • 6. Common surveillance methods ● By tapping the wire ● By exploiting 0-day vulnerabilities (Tailored Access Operation) ● By paying the big boys to put backdoor in software (MS Windows) ● By weakening the cryptography (Dual EC_DRBG) ● And many more......
  • 7. Counter-surveillance & Cryptography ● Mathematics is our friend. Let us trust it. ● NSA cannot break good cryptography. ● Cryptography allows all sorts of cool stuff, like communicating in such a way that nothing can be proved :D ● All you need some cryptography skills and some programming skills to get the things done.
  • 8. Keeping The Data Safe ● Encrypting the files is not enough ● Encrypted volume is not enough ● Even “hidden volume” of TrueCrypt is not enough
  • 9. Keeping The Data Safe (2) ● Fill entire volume with output of a good cryptographically secure pseudo-random bit stream generator. ● Create multiple encrypted file systems at different offsets in same volume. ● Every I/O action should modify slack space at random locations in all the file systems, as well as host volume.
  • 10. Keeping The Data Safe (3) ● Put some genuine looking data in one of the file systems, and secret data in other. Keep good balance between them. ● Output of a good cryptosystem cannot be distinguished from output of a good pseudo- random bit stream generator. ● Claim the data to be just random stream. Proving otherwise will be very difficult.
  • 11. Secure Authentication ● CA will protect you only from those it is not willing to take money from. ● “Secure channel” can be intercepted by mechanism used by Superfish. ● You can authenticate yourself without revealing your password. ● Time to move to crypto magic ….
  • 12. Secure Authentication (2) ● Alice has a secret s which he wants to prove to Bob. ● Three values y, g, and p are shared. P is large prime. Also g^s mod p = y ● Alice will generate a random number r, and calculate C = g^r mod p. C is sent to Bob. ● Bob will request either r or (s + r) mod (p - 1)
  • 13. Secure Authentication (3) ● Verifying the knowledge in case of r: C = g^r mod p in case of (s + r) mod (p -1) g ^ ((s+r) mod (p-1)) mod p = C.y mod p ● Repeat the request – verification cycle multiple times. Select the request randomly each time. ● In all cases, only a random number is sent, therefore no knowledge of secret is leaked.
  • 15. Authentication in Private Messaging ● Shared values: g and p. P is prime. ● Bob picks random value r(128 bits) picks random value x (320 bits minimum) ● Calculates v1 = g ^ x mod p; A = AES(key = r, v1); H = Hash (v) ● Sends A and H to Alice
  • 16. Authentication in Private Messaging ● Alice picks random value y (320 bits minimum) Calculates v2 = g ^ y mod p Sends v2 to Bob ● Bob calculates s = v2 ^ x mod p ● Hashes s in different ways to generate c, c', m1, m1', m2, m2'. C, c' are AES keys, others are MAC keys
  • 17. Authentication in Private Messaging ● Shared values: g and p. P is prime. ● Bob picks random value r(128 bits) picks random value x (320 bits minimum) ● Calculates v1 = g ^ x mod p; A = AES(key = r, v1); H = Hash (v) ● Sends A and H to Alice
  • 18. Authentication in Private Messaging ● Bob picks keyid_B, a serial number for his DH key g ^ x mod p ● Calculates Mb = MAC(m1)(g^x, g^y, pub_B, keyid_B) Xb = pub_B, keyid_B, sig(B, Mb) ● Sends to Alice r, AES(key=c, Xb), MAC(m2)(AES(key=c, Xb))
  • 19. Authentication in Private Messaging ● Alice uses r to decrypt A (received from Bob) ● Verifies H by recalculating it ● Calculates s = v1 ^ y mod p (s → same as Bob) ● Calculates AES and MAC keys from s (same as Bob) ● Uses m2 to verify MAC(m2)(AES(key=c, Xb)) ● Uses c to decrypt AES(key=c, Xb)
  • 20. Authentication in Private Messaging ● Calculates Mb, and verifies sig(B, Mb) using pub_B ● Picks keyid_A, a serial number for his DH Key ● Calculates Ma = MAC(m1')(g^y, g^x, pub_A, keyid_A) Xa = pub_A, keyid_A, sig(A, Ma) ● Sends to Bob: AES(key=c', Xa), MAC(m2') (AES(key=c', Xa))
  • 21. Authentication in Private Messaging ● Bob uses m2' to verify MAC(m2')(AES(key=c', Xa)) uses c' to decrypt AES(key=c', Xa) calculates Ma = MAC(m1')(g^y, g^x, pub_A, keyid_A) uses pub_A to verify sig(A, Ma) ● Now Alice and Bob have s, pub_A and pub_B
  • 22. Encryption in Private Messaging ● Alice is assured that s is known by someone with access to the private key corresponding to pub_B, and similarly for Bob. ● All messages are encrypted using symmetric cipher with shared DH key as encryption key. ● DH protocol is re-initiated to generate new key for next message.
  • 23. Authentication in Private Messaging ● Alice and Bob know each others public key ● Alice and Bob have one more shared secret s1. ● To detect impersonation or MITM attack, public key fingerprints as well as shared secret s1 can be verified using “secure authentication” as discussed previously.
  • 24. Thank You Got any questions?