JEDI: Many-to-Many End-to-End Encryption and Key Delegation for IoT

Sam Kumar, Yuncong Hu, Michael P Andersen, Raluca Ada Popa, David E. Culler
5/31/2019
cs.CR

Official code: ucbrise/jedi-pairing (38 stars, BSD-3-Clause, last commit 2023-01-28). 1 more implementation below.

Abstract

As the Internet of Things (IoT) emerges over the next decade, developing secure communication for IoT devices is of paramount importance. Achieving end-to-end encryption for large-scale IoT systems, like smart buildings or smart cities, is challenging because multiple principals typically interact indirectly via intermediaries, meaning that the recipient of a message is not known in advance. This paper proposes JEDI (Joining Encryption and Delegation for IoT), a many-to-many end-to-end encryption protocol for IoT. JEDI encrypts and signs messages end-to-end, while conforming to the decoupled communication model typical of IoT systems. JEDI's keys support expiry and fine-grained access to data, common in IoT. Furthermore, JEDI allows principals to delegate their keys, restricted in expiry or scope, to other principals, thereby granting access to data and managing access control in a scalable, distributed way. Through careful protocol design and implementation, JEDI can run across the spectrum of IoT devices, including ultra low-power deeply embedded sensors severely constrained in CPU, memory, and energy consumption. We apply JEDI to an existing IoT messaging system and demonstrate that its overhead is modest.

View on arXivView PDF

Code Implementations(2)

BSD-3-Clause

Go, C++, and C implementation of a bilinear group and pairing-based cryptography for both embedded and non-embedded systems

3811C, GoOct 25, 20183 years agoBSD-3-Clause
BSD-3-Clause

Golang implementation of JEDI: Many-to-Many End-to-End Encryption and Key Delegation for IoT

155GoJul 25, 20197 years agoBSD-3-Clause

Similar Papers

Cite this paper

@article{kumar2019jedi,
  title  = {JEDI: Many-to-Many End-to-End Encryption and Key Delegation for IoT},
  author = {Sam Kumar and Yuncong Hu and Michael P Andersen and Raluca Ada Popa and David E. Culler},
  year   = {2019},
  eprint = {1905.13369},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/1905.13369}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/1905.13369.svg)](https://codeofpaper.com/paper/1905.13369)

Discussion