Expand description
§APx core primitives
- URIs
- DIDs
- Keys and signatures (Ed25519 and RSA)
- HTTP signatures (Draft-Cavage and RFC-9421)
- Data integrity proofs (FEP-8b32)
§Examples
Create an HTTP signature:
use apx_core::{
crypto::rsa::generate_rsa_key,
http_signatures::create::{create_http_signature_cavage, HttpSigner},
http_types::Method,
};
let request_uri = "https://verifier.example/inbox";
let request_body = r#"{"type":"Note"}"#;
let signer_key = generate_rsa_key().expect("should generate secret key");
let signer_key_id = "https://signer.example/actor#main-key";
let signer = HttpSigner::new_rsa(signer_key, signer_key_id.to_owned());
let signed_headers = create_http_signature_cavage(
Method::POST,
request_uri,
Some(request_body.as_bytes()),
&signer,
).expect("should create signature");
assert_eq!(signed_headers.host, "verifier.example");Modules§
- base64
- crypto
- Cryptographic primitives
- did
- DIDs
- did_key
- did:key method
- did_url
- DID URLs
- hashlink
- Hashlinks
- http_
digest - HTTP content digest
- http_
signatures - HTTP signatures
- http_
types - Re-exported
httpv1.0 types and adapters forhttpv0.2 types. - http_
utils - jcs
- JSON Canonicalization Scheme (JCS)
- json_
signatures - JSON signatures (integrity proofs)
- media_
type - multibase
- Multibase
- multicodec
- Multicodecs
- multihash
- Multihashes
- url
- URL types