OpenAgentID documentation
Source referencesRust module referenceaegis-auth

aegis-auth · provider

Declared module signatures, types, configuration, and source documentation.

Source: aegis/aegis-auth/src/provider.rs. SHA-256: 446ccd58e86eaa6fd49ff6546b97b563275cd301d2b9206efc9d7aabc0b7571e.

This source reference follows declared modules and preserves feature attributes. It includes public declarations and implementation methods in those modules. Private-module exports and trait resolution still require the compiler; not every declaration is a crate-root import. Function bodies and constant values are omitted. Source comments describe their implementation context and are not a production deployment claim.

provider::ChallengeResponseProvider

Auth provider implementing the AEGIS challenge-response protocol.

Validates AuthCredential::SignedChallenge credentials by:

  1. Resolving the DID to obtain the OAS Identity Document.
  2. Extracting the authentication public key from the document.
  3. Reconstructing the challenge and verifying the Ed25519 signature.

Requires a DID resolver to look up the entity's public key from their DID document.

pub struct ChallengeResponseProvider {

}

Source line: 35.

provider::ChallengeResponseProvider::new

Create a new challenge-response provider.

Arguments

  • resolver - A DID resolver for looking up entity public keys.
pub fn new(resolver: Arc<dyn DidResolver>) -> Self;

Source line: 46.

provider::ChallengeResponseProvider::verifier

Returns a reference to the inner challenge verifier.

Useful for generating challenges via Challenge::generate() and managing nonce state.

pub fn verifier(&self) -> &ChallengeVerifier;

Source line: 57.

provider::ApiKeyProvider

Simple API key auth provider for service-to-service communication.

Maps opaque API keys to DIDs. Suitable for internal services that authenticate via pre-shared keys rather than challenge-response.

pub struct ApiKeyProvider {

}

Source line: 185.

provider::ApiKeyProvider::new

Create a new API key provider.

Arguments

  • keys - Map from API key strings to DID strings.
pub fn new(keys: HashMap<String, String>) -> Self;

Source line: 196.

provider::ApiKeyProvider::register_key

Register an API key for a DID.

pub fn register_key(&mut self, key: String, did: String);

Source line: 201.

provider::ApiKeyProvider::revoke_key

Remove an API key.

pub fn revoke_key(&mut self, key: &str) -> bool;

Source line: 206.

On this page