pub fn signing_key<'a>(
hostname: &str,
document: &'a DidDocument,
) -> Result<&'a str, SigningKeyError>Expand description
The document’s #atproto signing key, checked to be a public key
atproto actually verifies commits with.
The document is the server’s own answer, so the string in
publicKeyMultibase is attacker-supplied in the sense that matters
here: nothing above this point constrains it, and
[didbot_identity::document::DidDocument] carries it as an ordinary
String.
Both of atproto’s curves are accepted, and only those: didbot-key
mints secp256k1 alone, but the server being claimed is not this crate’s
to constrain and half the network signs with P-256. Nothing here is
implemented in this module – both readers are didbot-key’s, which is
where the multibase, multicodec and point-encoding rules already live.