Python client SDK for Oasis ROFL.
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
oasis-rofl-client
Python client SDK for Oasis ROFL.
Installation
pip install oasis-rofl-client
Or using uv:
uv add install oasis-rofl-client
The package requires Python 3.9+ and depends on httpx for async HTTP operations.
Quickstart
The RoflClient provides async methods for interacting with ROFL services:
import asyncio
from oasis_rofl_client import RoflClient
async def main():
client = RoflClient()
key = await client.generate_key("my-key-id")
print(f"Generated SECP256K1 key: {key}")
asyncio.run(main())
API Reference
RoflClient
The main client class for interacting with ROFL runtime services.
Constructor
RoflClient(url: str = '')
url: Optional URL or Unix socket path- If empty (default): Uses Unix socket at
/run/rofl-appd.sock - If starts with
http://orhttps://: Uses HTTP transport - Otherwise: Treats as Unix socket path
- If empty (default): Uses Unix socket at
Methods
async generate_key(key_id: str, kind: KeyKind = KeyKind.SECP256K1) -> str
Fetches or generates a cryptographic key from ROFL.
- Parameters:
key_id: Identifier for the keykind: Type of key to generate (default:KeyKind.SECP256K1). Available options:KeyKind.RAW_256: Generate 256 bits of entropyKeyKind.RAW_384: Generate 384 bits of entropyKeyKind.ED25519: Generate an Ed25519 private keyKeyKind.SECP256K1: Generate a Secp256k1 private key
- Returns: The private key as a hex string
- Raises:
httpx.HTTPStatusErrorif the request fails
Examples
For a complete working example, see examples/basic_usage.py.
Release Process
Publishing to PyPI is fully automated via GitHub Actions.
License
Licensed under the Apache License, Version 2.0. See LICENSE for details or visit http://www.apache.org/licenses/LICENSE-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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file oasis_rofl_client_rube-0.0.4.tar.gz.
File metadata
- Download URL: oasis_rofl_client_rube-0.0.4.tar.gz
- Upload date:
- Size: 17.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.8.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0e0e622815622a46c79b2b25be4a80e3c658b98c13b841a5722d06d8a9fb7e6a
|
|
| MD5 |
b317b7701f14d6ae566ef8ebe933f3e5
|
|
| BLAKE2b-256 |
c390ba5bdb63939def7e80816471b89333f7b9c9fec7e0f64fe655aefe84f58c
|
File details
Details for the file oasis_rofl_client_rube-0.0.4-py3-none-any.whl.
File metadata
- Download URL: oasis_rofl_client_rube-0.0.4-py3-none-any.whl
- Upload date:
- Size: 4.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.8.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1f8772fec5242eff169901c872a8f24c4eb690dd3d7961c1298c698f35f7b4f1
|
|
| MD5 |
b86d626138b3ff96d30bbfb6bfc5e5ee
|
|
| BLAKE2b-256 |
b0801c9b70a9fdfdf7c22ce880b53554d62791f80f36219fb57b54706fc566a0
|