Skip to content

Commit

Permalink
Merge branch 'release-0.1.0-rc.1'
Browse files Browse the repository at this point in the history
  • Loading branch information
pfeairheller committed Feb 13, 2024
2 parents af3d225 + 07b40e1 commit 8fabc08
Show file tree
Hide file tree
Showing 71 changed files with 6,189 additions and 3,103 deletions.
17 changes: 17 additions & 0 deletions .codecov.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
coverage:
status:
project:
default:
target: 85
paths: ["src"]
patch:
default:
target: 75
paths: ["src"]

ignore:
- "setup.py"
- "integration"
- "tests"
- "scripts"
- "src/signify/app/cli/*"
8 changes: 8 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
[run]
omit =
scripts/*
integration/*
docs/*
tests/*
setup.py
src/signify/app/cli/*
32 changes: 32 additions & 0 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Tests
on:
push:
branches:
- 'main'
- 'development'
pull_request:
workflow_dispatch:

jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ macos-latest, ubuntu-latest ]

steps:
- uses: actions/checkout@v3
- name: Set up Python 3.10.4
uses: actions/setup-python@v2
with:
python-version: 3.10.4
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pytest mockito pytest-cov codecov
pip install -r requirements.txt
- name: Run tests
run: |
pytest --cov=./ --cov-report=xml
codecov
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -130,4 +130,7 @@ dmypy.json


# Intellij specific
.idea
.idea

# vscode specific
.vscode
33 changes: 32 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,33 @@
# signifypy
# Signifypy
Signify implementation in Python

[![Tests](https://github.com/WebOfTrust/signifypy/actions/workflows/test.yaml/badge.svg?branch=development)](https://github.com/WebOfTrust/signifypy/actions/workflows/test.yaml)
[![codecov](https://codecov.io/gh/WebOfTrust/signifypy/graph/badge.svg?token=E9VS4PNKTD)](https://codecov.io/gh/WebOfTrust/signifypy)
[![Documentation Status](https://readthedocs.org/projects/signifypy/badge/?version=latest)](https://signifypy.readthedocs.io/en/latest/?badge=latest)

## 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](https://doc.libsodium.org/) 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](https://github.com/WebOfTrust/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

```
pip install pytest mockito
```

`pytest` to run tests.
5 changes: 0 additions & 5 deletions integration/__init__.py

This file was deleted.

Loading

0 comments on commit 8fabc08

Please sign in to comment.