Hallpass SDK for Elixir
Elixir SDK for the Hallpass agent identity and message proof protocol.
Installation
Add to your mix.exs:
def deps do
[{:hallpass_sdk, "~> 0.1.0"}]
endQuick start
km = HallpassSdk.Keys.generate_agent_key_material()
bundle = HallpassSdk.Messages.create_proof_bundle(%{
principal_username: "alice",
body: "Invoice #1234 approved",
author_label: "Billing Agent",
key_material: km
})
{:ok, result} = HallpassSdk.Client.verify_message(bundle)Modules
| Module | Description |
|---|---|
HallpassSdk.Keys | Key generation, loading, DID derivation |
HallpassSdk.Jwt | ES256 JWT signing and verification |
HallpassSdk.Messages | Message proof bundle creation and local verification |
HallpassSdk.Challenges | Agent challenge-response signing |
HallpassSdk.Delegation | Delegation JWT signing |
HallpassSdk.Client | Typed HTTP client for the Hallpass API |
Environment variables
| Variable | Description |
|---|---|
HALLPASS_BASE_URL |
API base URL (default: https://hallpass.org/api/v1) |
License
MIT