Coder Social home page Coder Social logo

gitxchen / aic-prototype Goto Github PK

View Code? Open in Web Editor NEW

This project forked from seemoo-lab/aic-prototype

0.0 0.0 0.0 163 KB

Proof of concept implementation of Acoustic Integrity Codes (AICs) for Android smartphones

License: GNU General Public License v3.0

Kotlin 100.00%

aic-prototype's Introduction

Acoustic Integrity Codes - Android Prototype

Acoustic Integrity Codes (AICs) form a modulation scheme that provides message authentication on the acoustic physical layer. It can be used for Secure Device Pairing (SDP) between nearby devices. This repository contains the Android prototype implementation from our WiSec 2020 publication, which provides more details such as our adversary model, protocol details, and a security evaluation.

Disclaimer

This prototype is experimental software and not production ready. Use this code at your own risk.

Code Structure

Our prototype consists of two components, written in Kotlin:

  • aic_communication: Library for modulating, transmitting, demodulating, and receiving AIC signals.
  • aic_ui: Android module for the user interface, which imports the library.

Configuration

The file Parameters.kt in both modules contains parameters such as the buffer size, sample rate, frequency band, slot duration and transmit power. Since audio hardware varies per device model, speaker and microphone characteristics are not consistent for all smartphones (e.g., the measured noise floor varies per device). For our experiments, we mostly used a OnePlus 3T and a Nexus 5. Some parameters might have to be adjusted for other devices.

Dependencies

This prototype requires a minimum Android API level of 21 (Android 5.0 or higher) for easier access to more API features. We use the audio processing pipeline from TarsosDSP. For visualization of the received signal, we use the PitchView from android-audio-library.

Read Our Paper

  • Florentin Putz, Flor Álvarez, and Jiska Classen. 2020. Acoustic Integrity Codes: Secure Device Pairing Using Short-Range Acoustic Communication. In WiSec ’20: 13th ACM Conference on Security and Privacy in Wireless and Mobile Networks, July 08–10, 2020, Linz, Austria. ACM. pdf

If you use our project in academic research, please cite this paper:

@InProceedings{AcousticIntegrityCodes2020,
  author    = {Putz, Florentin and {\'{A}}lvarez, Flor and Classen, Jiska},
  booktitle = {Proceedings of the 13th Conference on Security and Privacy in Wireless and Mobile Networks},
  date      = {2020},
  title     = {{Acoustic Integrity Codes}: Secure Device Pairing Using Short-Range Acoustic Communication},
  doi       = {10.1145/3395351.3399420},
  publisher = {ACM},
  series    = {WiSec '20},
  url       = {https://doi.org/10.1145/3395351.3399420},
}

aic-prototype's People

Contributors

fput avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.