MASHaBLE: Mobile Applications of Secret Handshakes over Bluetooth Low-Energy. Yan Michalevsky, Suman Nath, Jie Liu

Similar documents
MASHaBLE: Mobile Applications of Secret Handshakes over Bluetooth LE

Securing Distributed Computation via Trusted Quorums. Yan Michalevsky, Valeria Nikolaenko, Dan Boneh

Privacy, Discovery, and Authentication for the Internet of Things

UnLinked: Private Proximity-Based Offline OSN Interaction

Privacy, Discovery, and Authentication for the Internet of Things

Oblivious Signature-Based Envelope

Bluetooth low energy security, how good is it? Petter Myhre Bluetooth World, San Jose March 2017

PM0257. BlueNRG-1, BlueNRG-2 BLE stack v2.x programming guidelines. Programming manual. Introduction

Crypto Background & Concepts SGX Software Attestation

WAP Security. Helsinki University of Technology S Security of Communication Protocols

Notes for Lecture 14

Lecture 15 PKI & Authenticated Key Exchange. COSC-260 Codes and Ciphers Adam O Neill Adapted from

Certificateless Public Key Cryptography

OneID An architectural overview

Public-key Cryptography: Theory and Practice

Scalable privacy-enhanced traffic monitoring in vehicular ad hoc networks

Integrating OpenID with proxy re-encryption to enhance privacy in cloud-based identity services

Decentralised Communication: The challenge of balancing interoperability and privacy.

Authentication Technology for a Smart eid Infrastructure.

A SIMPLE INTRODUCTION TO TOR

Key Management and Distribution

Staying Secure and Unprepared: Understanding and Mitigating the Security Risks of Apple ZeroConf

Security Philosophy. Humans have difficulty understanding risk

Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls

Blockchain for Enterprise: A Security & Privacy Perspective through Hyperledger/fabric

The Zentri Secure IoT Platform

Message authentication. Why message authentication. Authentication primitives. and secure hashing. To prevent against:

Cryptography and Network Security

HOST Authentication Overview ECE 525

5G-ENSURE. Privacy Enablers. (Project Number )

Acronis True Image 2018 Mobile Backup to NAS Testing Guide

DECENTRALIZED ATTRIBUTE-BASED ENCRYPTION AND DATA SHARING SCHEME IN CLOUD STORAGE

UNIT - IV Cryptographic Hash Function 31.1

Protocols II. Computer Security Lecture 12. David Aspinall. 17th February School of Informatics University of Edinburgh

Configuring SSL. SSL Overview CHAPTER

CSE 3461/5461: Introduction to Computer Networking and Internet Technologies. Network Security. Presentation L

Privacy-Enhancing Technologies & Applications to ehealth. Dr. Anja Lehmann IBM Research Zurich

Cryptography and Network Security Chapter 10. Fourth Edition by William Stallings

Structure-Preserving Certificateless Encryption and Its Application

Wireless LAN Security. Gabriel Clothier

Advanced Computer Systems 2018 Final project

TOWARD PRIVACY PRESERVING AND COLLUSION RESISTANCE IN A LOCATION PROOF UPDATING SYSTEM

Privacy based Public Key Infrastructure (PKI) using Smart Contract in Blockchain Technology

PROTECTING CONVERSATIONS

SECURITY ON PUBLIC WI-FI New Zealand. A guide to help you stay safe online while using public Wi-Fi

Authentication. Overview of Authentication systems. IT352 Network Security Najwa AlGhamdi

DEEP ARMOR. Hands-on Exploitation & Hardening of Wearable and IoT Platforms. Sumanth Naropanth & Sunil Kumar

CPSC 467b: Cryptography and Computer Security

Key Protection for Endpoint, Cloud and Data Center

Security Protections for Mobile Agents

Auth. Key Exchange. Dan Boneh

ENEE 459-C Computer Security. Message authentication

APPLICATIONS AND PROTOCOLS. Mihir Bellare UCSD 1

Cisco Desktop Collaboration Experience DX650 Security Overview

Wi-Fi Security for Next Generation Connectivity. Perry Correll Aerohive, Wi-Fi Alliance member October 2018

A privacy-preserving authentication service using mobile devices

Lecture 7 - Applied Cryptography

TI SimpleLink dual-band CC1350 wireless MCU

Configuring SSL. SSL Overview CHAPTER

Encryption. INST 346, Section 0201 April 3, 2018

Privacy-ABC Technologies on Mobile Phones

White Paper for Wacom: Cryptography in the STU-541 Tablet

Lecture 9a: Secure Sockets Layer (SSL) March, 2004

Cryptographic Concepts

Distributed Systems. 26. Cryptographic Systems: An Introduction. Paul Krzyzanowski. Rutgers University. Fall 2015

Bluetooth Low Energy Protocol Stack

Attribute-based Credentials on Smart Cards

CSC/ECE 774 Advanced Network Security

Authentication for Paranoids: Multi-Party Secret Handshakes

On the Internet, nobody knows you re a dog.

CS /29/17. Paul Krzyzanowski 1. Fall 2016: Question 2. Distributed Systems. Fall 2016: Question 2 (cont.) Fall 2016: Question 3

Zimperium Global Threat Data

IEEE networking projects

PKI Credentialing Handbook

Alice in Cyber world

Configuring SSL CHAPTER

Public Key Cryptography

Garantía y Seguridad en Sistemas y Redes

Operating Systems. Week 13 Recitation: Exam 3 Preview Review of Exam 3, Spring Paul Krzyzanowski. Rutgers University.

CPSC 467: Cryptography and Computer Security

Cryptographic Execution Time for WTLS Handshakes on Palm OS Devices. Abstract

CS 416: Operating Systems Design April 22, 2015

Challenges for a quantum-safe Internet of Things

Web Tap Payment Authentication and Encryption With Zero Customer Effort

Frequently Asked Questions WPA2 Vulnerability (KRACK)

Information Security. message M. fingerprint f = H(M) one-way hash. 4/19/2006 Information Security 1

Computer Security. 08. Cryptography Part II. Paul Krzyzanowski. Rutgers University. Spring 2018

An Overview of Secure Multiparty Computation

CS3235 Seventh set of lecture slides

Key Agreement. Guilin Wang. School of Computer Science, University of Birmingham

Secure Multiparty Computation

ENEE 459-C Computer Security. Security protocols

S. Erfani, ECE Dept., University of Windsor Network Security

CSE 127: Computer Security Cryptography. Kirill Levchenko

SSL/TLS. How to send your credit card number securely over the internet

Cryptographic Systems

Lecture Secure, Trusted and Trustworthy Computing Trusted Platform Module

0x1A Great Papers in Computer Security

Bitcoin, Security for Cloud & Big Data

Firmware Updates for Internet of Things Devices

Transcription:

MASHaBLE: Mobile Applications of Secret Handshakes over Bluetooth Low-Energy Yan Michalevsky, Suman Nath, Jie Liu

Motivation Private communication Anonymous messaging Secret communities Location-based messaging Privacy preserving IoT applications

Messaging Applications After School

Yak Server knows everything about the users

Secret communities Members want identify each other Do not want to be discovered by anyone not in the community Geo-location privacy Anonymous messaging and notifications dissemination

Trusted Central Server The server becomes a target for attacks Communicating with the server can reveal affiliation

Trusted Central Server Internet connectivity is not always available

Trusted Central Server Also GPS and cellular consume a lot of energy GPS Suspended state Idle state

We want to Avoid interaction with a server Use physical proximity Minimize energy consumption Bluetooth Low-Energy (LE) sounds like a promising solution

Bluetooth LE But first, the devices need to trust each other

The problem with negotiating trust Alice is willing to reveal its credentials only to another party with certain clearance (needs to verify Bob s identity first) Bob is also willing to reveal its credentials only to another party with certain clearance (needs to verify Alice s identity first) No party is willing to reveal its credentials and provide a proof of their authenticity first

Properties of a Secret Handshake Parties do no know each other They perform a procedure that establishes trust If it fails no information is gained by either party If it succeeds parties reveal membership in a group In addition, they can establish respective roles in that group (cryptographic secret handshakes)

More applications of secret handshakes Using ibeacon for headcounting Like Currently exposes users and event to tracking

Headcounting Exposes users to tracking Reveals information about the event/gathering How do we support private/secret events and provide privacy to attendants?

Secret handshake from pairings Based on Balfanz et al. [1] If handshake succeeds both parties have established an authenticated and encrypted communication channel If handshake fails no information is disclosed Collusion resistant Corrupted group members cannot collude to perform a handshake of a non-corrupted member Compact credentials important for embedding into small packets

Pairings We have elements X G $ and Y G & where G $, G & are groups over Elliptic Curves A pairing e has the following property e ax, by = e X, Y,- Where e X, Y G 0

Secret handshake from pairings Master secret t Z : P < = "p93849", T < T < = t H(P < ) P C = "p12465", T C T C = t H(P C )

Secret handshake from pairings P C = "p12465" P < = "p93849" K < = e H P C, T < = e H P C, H(P < ) F K C = e T C, H P < = e (H(P C ), H P < ) F Enc JK (challenge < ) response <, Enc JS challenge C response C

Unlinkable Handshakes By tracking the pseudonym an attacker can track the user Naïve solution: Obtain multiple pseudonyms from master party Use a different pseudonym for each handshake

Unlinkable Secret Handshake Master secret t Z : P < G, T < = t P < P C G, T C = t P C

Unlinkable Secret Handshake s P C r P < K < = e s P C, r T < = e P C, P < TUF K C = e s T C, r P < = e P C, P < TUF Enc JK (challenge < ) response <, Enc JS challenge C response C

Some details Need to hash arbitrary strings onto G & Supported by Type 1 or Type 3 pairings Group element sizes 128-bit security: 256-bit group element size = 32 bytes 80-bit security: 160-bit element size = 20 bytes

Tracking prevention Random device address for Bluetooth source address field Set dynamically and changed across different connections

Pairing methods Just Works Basically no MITM protection during pairing phase Passkey entry Proven to be quite weak [7] Out-of-Band (OOB) credentials provided by some other method

Proposal: New pairing mode A B Selection of pairing method Pairing Confirm (Mconfirm) - P V Pairing Confirm (Sconfirm) - P W, Challenge W Parties calculate shared key using pairings serves as STK Pairing Random (Mrand) Response W, Challenge V Pairing Random (Srand) Response V

Bluetooth LE Advertisements Scanning is supported by Windows phone Android ios Publishing advertisements is supported on Windows phone 10 Android: Google Nexus 5x and on Kits such as Cypress and Dialog

Bluetooth LE advertisements Bluetooth LE supports broadcasting advertisements Clients can scan and filter advertisements of specific types A little custom data can be squeezed in 32 bytes On Windows BTLE stack we currently can only control the Manufacturer Specific Data (AD type 0xFF) 20 bytes

Choice of platform Easy implementation of pairings JPBC Java port of Stanford PBC library Support for BLE advertisement publishing Android exposed the API but did not support advertising in practice at the time (but Nexus 5S and on do) Windows Phone Supports scanning and advertising Possible to scan and advertise at the same time

Implementation Windows Phone OS 10 Failed attempt: porting JPBC to.net Pairings and group operations using Stanford PBC library Ported to ARM +.NET wrapper (PbcProxy) Used MPIR library (Multi-Precision Integers and Rationals, compatible with GMP) Adapted random number generation Communication between two phones is based on alternation between advertising and scanning

Evaluation: Functionality Two mobile phones running our app and performing handshakes Experiment duration: 8296 sec = 2 hours 18 sec 1 handshakes every 8 seconds Total 1068 handshakes 1025 succeeded, 43 failed. Success rate: 96%

Evaluation: Energy Consumption Nokia Lumia 920 running Windows Phone OS Starting with 100% charge, Wi-Fi and GPS off Modes: Baseline Advertising Scanning Advertising + handshake Scanning + handshake Experiment duration: 3 hours

Evaluation: energy consumption Percentage of battery drain/hour. Enables >12 hours of operation.

Communication overhead Advertisement packet: 47 bytes Each party sends 2 packets: 94 bytes

Future work Implementation for Android New Nexus devices have sufficient BLE support Pairing preprocessing For each handshake using the same credentials preprocessing can be applied Supported by PBC library Use BLE specific identifiers as handshake pseudonyms Set a custom source device address Would provide additional usable space for longer pseudonyms More Windows Universal applications using PbcProxy

Black Hat Sound Bytes Secret Handshakes a provably secure primitive with useful applications We can easily achieve better security and privacy for mobile and IoT Evaluation shows the application is fit for practical use in mobile devices

Thanks for attending! Questions?

Related work Automatic Trust Negotiation (ATN) Attribute-Based Encryption (ABE) Decryption is possible if party is certified as possessing certain attributes by an authority Secret handshakes [1] Each party receives a certificate from a central authority Hidden credentials [2] Protect the messages using policies that require possession of multiple credentials Oblivious Signature-Based Envelope (OSBE) [8] Allows certificates issued by different authorities Secret handshakes from CA-oblivious encryption [9] Unlinkable secret handshakes and key-private group key management schemes [10]

References 1. Secret handshakes from pairing-based key agreements [Balfanz et al. 2003] 2. Hidden credentials [Holt et al. 2003] 3. Authenticated Identity-Based Encryption [Lynn 2002] 4. How tracking customers in stores will soon be norm 5. How retail stores track you using your smartphone (and how to stop it) 6. Apple is quietly making its move to own in-store digital tracking 7. Bluetooth: With Low Energy comes Low Security [Ryan 2013] 8. Oblivious Signature-Based Envelope [Li et al. 2003] 9. Secret handshakes from CA-oblivious encryption [Casteluccia et al. 2004] 10. Unlinkable secret handshakes and key-private group key management schemes [Jarecki et al. 2007]