RDF::Crypt::Role::DoesSign(3pm)

RDF::Crypt::Role::DoesSign3pm

Signing methods

Overview

Object Methods

"sign_model($model)"

Given an RDF::Trine::Model, returns a signature as a string.

The model is converted to a canonicalised N-Triples representation (see RDF::Trine::Serializer::NTriples::Canonical) with any triples that cannot be canonicalised being truncated. This representation is then signed using an MD5 digest, and the resulting binary signature encoded using base64.

"generate_manifest($webid, \@urls)"

Given a WebID that people can use to recover your public key, and a list of URLs that need signing, signs each and returns an RDF::Trine::Model containing the results of processing. This can be serialised as, say, Turtle to act as an endorsement for a bunch of RDF graphs.

"sign_embed_turtle($turtle, $baseuri)"

Parses the given Turtle into a model, generates a signature for that and then returns the original Turtle with the signature embedded as a comment. This allows the signature to sit in the same file as the data itself.

The base URI is used to resolve any relative URI references. Note that if a different base URI is provided when verifying the signature, this may cause verification to fail. The base URI is optional.

"sign_embed_rdfxml($xml, $baseuri)"

As per "sign_embed_turtle", but RDF/XML.

"sign_embed_rdfa($html, $baseuri, \%config)"

Similar to "sign_embed_turtle" and "sign_embed_rdfxml". The base URI is required. A set of configuration options may be provided, which will be passed along to RDF::RDFa::Parser's constructor.

Rather than storing the signature as an XML/HTML comment, the signature is stored on the root element as an attribute.

"sign_text($str)"

Signs a literal string which may or may not have anything to do with RDF.

Required Methods

This role does not implement these methods, but requires classes to implement them instead:

"sign_bytes($str)"

Generates a signature for an octet string.

"SIG_MARK"

Returns a string used as a marker for signatures within serialised RDF.

Disclaimer of warranties

THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.

Releases

3 releases since Debian 7 (Wheezy); the text changed 1 time.

  1. 7–8
  2. 9

Bugs

Please report any bugs to <http://rt.cpan.org/>.

Author

Toby Inkster <[email protected]>.

From librdf-crypt-perl 0.002-3 in Debian 9 (Stretch). Parsed by carta from the page's man source.