@prefix this: . @prefix sub: . @prefix schema: . @prefix gen: . @prefix np: . @prefix dct: . @prefix nt: . @prefix npx: . @prefix xsd: . @prefix rdfs: . @prefix prov: . sub:Head { this: a np:Nanopublication; np:hasAssertion sub:assertion; np:hasProvenance sub:provenance; np:hasPublicationInfo sub:pubinfo . } sub:assertion { sub:paragraph a gen:Paragraph; schema:about np:Nanopublication; schema:title "Signatures"; gen:hasContent """

A nanopublication is signed with a private key, and the signature is stored in the publication info together with the matching public key and the identity of the signer. The signature covers the whole content, so it proves that the nanopublication was made by the holder of that key and has not been altered since.

Keys belong to people and to software agents. A person links a key to their identity by publishing an introduction nanopublication, and once the network has accepted that introduction, everything signed with the key counts as theirs. Signatures are what the network uses to decide whose word counts for what — which nanopublications a person may retract, which spaces they belong to, and so on.

"""; gen:hasPositionString "070" . } sub:provenance { sub:assertion prov:wasAttributedTo . } sub:pubinfo { this: dct:created "2026-09-10T11:17:58Z"^^xsd:dateTime; dct:creator ; dct:license ; npx:introduces sub:paragraph; rdfs:label "Signatures"; nt:wasCreatedFromProvenanceTemplate ; nt:wasCreatedFromPubinfoTemplate , ; nt:wasCreatedFromTemplate . sub:sig npx:hasAlgorithm "RSA"; npx:hasPublicKey "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAl8cMusqtNyKA6UIsi3f7BAcZmHQXWxU0qk0PLsboMWQxYrGBfGgHTgRHJrBRxL+Zn9kJHKVmz2smDcjCBptXi/OwWy80gjsx+Pbe6IWz3zFPWF1UoFIKfPnC0slV67CQgdM853zW7Bmk9/uflCtK4EtZKmPdRGtUHVC7DTVvDBMDzLRGdE2KCBVN29EbM5GGVNvijYbaZQ9OFQPBkQshayqSIyGRr6rreJdkrRVLIzu3uuAjKYydaeXZWSN2JLnVBwrClKUxaEdCwhb5nXpMtKOMD+R+LgaXLeJUWM8BdRSYnta9ZqI5pHY4y3v+eW7J+HHeTvRbHvlik+Z4hFUXmQIDAQAB"; npx:hasSignature "IFu6UyS7y0a3p2kJGPSS+iQ26/LRC0sK9G+c26HFOE+xXa9rvr9l3daQw0fD+fBG2FXh3FcD/iBCw0cu3JOk9Vl/eqqzDh/lzUp5qcDyWN/cEeSwq6CKa3e/vMEo94+i8U7vO98k+eyYRA+UaiW+q3+aM8UdA+YTeha1EmJBPnQDzE2oFw/xsSPCneSLrEiGbupdmV5xx0QAHKBHtOQpsHVftXED69QMFk9Xs8s8fYdUw6CVqD0j91J7VUNKW9wHbs9mszeMgeoXqIAHI1ROkq0WhpxKLkNxoKUZTyTMPjoe6yvbdkBuS9OsBO2GpLhg34pFBXwcqPzHV7hz7xhKrQ=="; npx:hasSignatureTarget this:; npx:signedBy . }