Skip to main content

SignifyPy: KERI Signing at the Edge

Project description

Signifypy

Signify implementation in Python

Tests codecov Documentation Status

Signify - KERI Signing at the Edge

Of the five functions in a KERI agent,

  1. Key generation
  2. Encrypted key storage
  3. Event generation
  4. Event signing
  5. Event Validation

Signifypy provides key generation and event signing in a library to provide "signing at the edge". It accomplishes this by using libsodium to generate ed25519 key pairs for signing and x25519 key pairs for encrypting the private keys, next public keys, and salts used to generate the private keys. The encrypted private key and salts are then stored on a remote cloud agent that never has access to the decryption keys. New key pair sets (current and next) will be generated for inception and rotation events with only the public keys and blake3 hash of the next keys made available to the agent.

The communication protocol between a Signify client and KERI agent will encode all cryptographic primitives as CESR base64 encoded strings for the initial implementation. Support for binary CESR can be added in the future.

Development

Install uv first, then sync the local environment:

make sync

Run the fast test suite with:

make test

Packaging

make build

Installation

From PyPi

pip install signifypy

Local

make sync

Local Editable Install In An Existing Python Environment

If you already have a Python environment selected and want an editable install inside that environment, uv still supports that flow directly:

uv pip install -e .

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

signifypy-0.4.0.tar.gz (138.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

signifypy-0.4.0-py3-none-any.whl (48.1 kB view details)

Uploaded Python 3

File details

Details for the file signifypy-0.4.0.tar.gz.

File metadata

  • Download URL: signifypy-0.4.0.tar.gz
  • Upload date:
  • Size: 138.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for signifypy-0.4.0.tar.gz
Algorithm Hash digest
SHA256 c8cf3446b2eb7822af29e1148529ee408c56961c0bf7ff224250c5d63cc695f6
MD5 cce2ee3f00d739b7f742bdbe628401fa
BLAKE2b-256 77b9eb28979a36cee28b9cc574622a5993553603a3eeb86d59d80bbfe7a8a3e4

See more details on using hashes here.

File details

Details for the file signifypy-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: signifypy-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 48.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for signifypy-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4b50dc4e614df6b26488573dca6fa7e99c8603aa25eb60a7b575b73ab8f512c5
MD5 145ea6b911d5bb97cfd742f7d73c7e07
BLAKE2b-256 f65284c3c5ed8b20c6bebfbe7ec813a92e71eccbd59f6a259cd01f46f467831d

See more details on using hashes here.

Supported by

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