Description
Research space to find ontologies that could be used for the Http Signatures proposal.
There is the 13 year old Cert Ontology from 2008 that has enough info to encode RSA keys. It could be developed further.
There is the security vocabulary by @msporny, @OR13 and @mattcollier.
We will need an ontology to express keys + extra data for the keyId
Document. See the thread on the Credentials Mailing List. The keyId
URL could be its own document but it could also be a pointer into a larger RDF document, e.g. a WebID profile, a document containing any number of keys, etc... It could have extra information about expiry dates, encryption functions, etc...
The minimum required by the "Signing Http Messages" IETF HttpBis spec hs2019
protocol is that the keyId
point not just to a cryptographic key, but to a key + metadata info. Something like this:
<#kh> a :Sha512SigningKey;
:with [ a cert:RSAPublicKey;
cert:modulus "00cb24ed85d64d794b..."^^xsd:hexBinary;
cert:exponent 65537
] .
This could then be referred to in an HTTP request like this:
GET /comments/ HTTP/1.1
Authorization: HttpSig signed=”sig1"
Signature-Input: sig1=(); keyId="</keys#kh>"; created=1402170695
Signature: sig1=:cxieW5ZKV9R9A70+Ua1A/1FCvVayuE6Z77wDGNVFSiluSzR9TYFV
vwUjeU6CTYUdbOByGMCee5q1eWWUOM8BIH04Si6VndEHjQVdHqshAtNJk2Quzs6WC
2DkV0vysOhBSvFZuLZvtCmXRQfYGTGhZqGwq/AAmFbt5WNLQtDrEe0ErveEKBfaz+
IJ35zhaj+dun71YZ82b/CRfO6fSSt8VXeJuvdqUuVPWqjgJD4n9mgZpZFGBaDdPiw
pfbVZHzcHrumFJeFHWXH64a+c5GN+TWlP8NPg2zFdEc/joMymBiRelq236WGm5VvV
9a22RW2/yLmaU/uwf9v40yGR/I1NRA==: