Skip to main content

ISCC - Crypto

Project description

ISCC - Crypto

Tests

iscc-crypto is the cryptographic signing and verification module for the ISCC (International Standard Content Code) Framework.

Features

  • Ed25519 key generation and management
  • JSON canonicalization and signing
  • W3C Verifiable Credentials Data Integrity proofs
  • Multibase and multikey support
  • Minimal external dependencies for core cryptographic operations

Installation

Use the package manager pip to install iscc-crypto:

pip install iscc-crypto

Quick Start

import iscc_crypto as ic

# Generate new Ed25519 keypair
keypair = ic.key_generate()
print(f"Public Key: {keypair.public_key}")
print(f"Secret Key: {keypair.secret_key}")

# Sign a JSON document
doc = {"hello": "world"}
signed = ic.sign_json(doc, keypair)
print(f"Signed Doc: {signed}")

# Verify signature
verified = ic.verify_json(signed)
print(f"Verified Doc: {verified}")

# Create W3C Data Integrity Proof
vc = {"type": "VerifiableCredential", "issuer": "did:web:example.com"}
signed_vc = ic.sign_vc(vc, keypair)
print(f"Signed VC: {signed_vc}")

# Verify W3C Data Integrity Proof
verified, doc = ic.verify_vc(signed_vc, keypair.pk_obj)
print(f"VC Verified: {verified}")

Documentation

Documentation is published at https://crypto.iscc.codes

Development

Requirements

Development Setup

git clone https://github.com/iscc/iscc-crypto.git
cd iscc-crypto
poetry install

Testing

Run the test suite:

poetry run pytest

Maintainers

@titusz

Contributing

Pull requests are welcome. For significant changes, please open an issue first to discuss your plans. Please make sure to update tests as appropriate.

You may also want join our developer chat on Telegram at https://t.me/iscc_dev.

License

iscc-crypto is licensed under the Apache License, Version 2.0

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

iscc_crypto-0.1.0.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

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

iscc_crypto-0.1.0-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file iscc_crypto-0.1.0.tar.gz.

File metadata

  • Download URL: iscc_crypto-0.1.0.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.0 Windows/10

File hashes

Hashes for iscc_crypto-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9b696a853449ba8b9cf29dd448115dbbd78e934bad9e7c0e8bc6e1c2778ef648
MD5 8aa28fa61b67649f2c3961899cb28e11
BLAKE2b-256 a48b654f368948a47d19f170f9c3b675f88a3b0db7a7694d89926574404037ed

See more details on using hashes here.

File details

Details for the file iscc_crypto-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iscc_crypto-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.0 Windows/10

File hashes

Hashes for iscc_crypto-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7b576ab9ee21790fdb122dd04b17194922921dd95174319fc9610a7ad7a8e82f
MD5 1bc94ab978bcffed9827d939be4a96d1
BLAKE2b-256 b18f0bc908e8b612717d22117fc894db69a750f94ac21e355256fd17772fee54

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