Skip to main content

Ephemeral Diffie-Hellman Over COSE (EDHOC)

Project description

py-edhoc:snake: -- Ephemeral Diffie-Hellman Over COSE

Python package Python 3.6+

This project provides a Python implementation of the EDHOC key exchange protocol for constrained devices. Currently the protocol is still in draft status at the IETF.

The repository provides an implementation of:

Installation

$ pip install edhoc

Running the test suite

The py-edhoc test suite is based on the official test vectors provided by the LAKE working group.

To run the test suite you'll need pytest:

$ pip install pytest

When you move to the root of the py-edhoc project you can run the test by simply typing:

$ pytest

Supported Cipher Suites

Cipher Suites COSE algorithms Support
SUITE 0 (AES-CCM-16-64-128, SHA-256, X25519, EdDSA, Ed25519, AES-CCM-16-64-128, SHA-256) :heavy_check_mark:
SUITE 1 (AES-CCM-16-128-128, SHA-256, X25519, EdDSA, Ed25519, AES-CCM-16-64-128, SHA-256) :heavy_check_mark:
SUITE 2 (AES-CCM-16-64-128, SHA-256, P-256, ES256, P-256, AES-CCM-16-64-128, SHA-256) :x:
SUITE 3 (AES-CCM-16-128-128, SHA-256, P-256, ES256, P-256, AES-CCM-16-64-128, SHA-256) :x:

Authentication Methods

Method Support
SIGN-SIGN :heavy_check_mark:
STATIC-SIGN :heavy_check_mark:
SIGN-STATIC :heavy_check_mark:
STATIC-STATIC :heavy_check_mark:

Cryptography

The project depends on the python cose package. cose uses pyca/cryptography for all cryptographic operations, except the deterministic ECDSA algorithm. For deterministic ECDSA cose uses python-ecdsa.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

edhoc-0.2.dev3.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

edhoc-0.2.dev3-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

File details

Details for the file edhoc-0.2.dev3.tar.gz.

File metadata

  • Download URL: edhoc-0.2.dev3.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/1.5.0 pkginfo/1.5.0.1 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.9

File hashes

Hashes for edhoc-0.2.dev3.tar.gz
Algorithm Hash digest
SHA256 6f444a15d83069f8885b7d9a19d61c28d23c06c0956a67aa18782a77c707d042
MD5 1bd6bfc788ae23d250b01e7aa5e1e48a
BLAKE2b-256 3881250c5b77d0414a58a508f7a05399c1d7f2a178a1b7e8e560a18e6159362d

See more details on using hashes here.

File details

Details for the file edhoc-0.2.dev3-py3-none-any.whl.

File metadata

  • Download URL: edhoc-0.2.dev3-py3-none-any.whl
  • Upload date:
  • Size: 18.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/1.5.0 pkginfo/1.5.0.1 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.9

File hashes

Hashes for edhoc-0.2.dev3-py3-none-any.whl
Algorithm Hash digest
SHA256 95799c7ec03096d0110dd6de42fceb84808059bddb862c675210aada41a579dd
MD5 c3208b2ded8ace8bfcaf31062844131f
BLAKE2b-256 8a94b105e503bb8d475408f14b1dfcb39054e670a7259acdebe35d00a041bcfb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page