NAME¶
RDF::Crypt::Role::DoesEncrypt - scrambling methods
DESCRIPTION¶
Object Methods¶
- "encrypt_model($model)"
- Returns an encrypted serialisation of the data.
The encryption works by serialising the data as RDF/XML, then encrypting it
with "encrypt_text".
- "send_model_by_email($model, \%opts)"
- This method only works on objects that were constructed using
"new_from_webid". Encrypts the model for the holder of the
WebID, and sends it to an address specified in the WebID profile using
foaf:mbox.
Options:
- •
- sendmail - hashref of options for Mail::Transport::Sendmail. The
mere presence of this hashref will trigger Mail::Transport::Sendmail to be
used as the delivery method.
- •
- smtp - hashref of options for Mail::Transport::SMTP. The mere
presence of this hashref will trigger Mail::Transport::SMTP to be used as
the delivery method.
- •
- from - email address for the message to come from.
- •
- subject - message subject.
- •
- filename - filename for encrypted attachment.
- •
- headers - hashref of additional mail headers.
Returns a the message's Message-ID, or undef if unsuccessful.
- "encrypt_text($str)"
- Encrypts a literal string which may or may not have anything to do with
RDF.
The return value is a base64-encoded string. The base64-decoded value
consists of: (1) an initialisation vector, sixteen bytes shorter than the
size of the key; (2) a 16-bit big-endian signed integer indicating the
length of padding which was added to the payload of the message during
encryption; (3) the payload, encrypted using cipher-block chaining with
OAEP, with block length sixteen bytes shorter than the key size. These
three parts are concatenated together in that order.
Required Methods¶
This role does not implement these methods, but requires classes to implement
them instead:
- "encrypt_bytes($str)"
- Scrambles an octet string.
SEE ALSO¶
RDF::Crypt, RDF::Crypt::Encrypter, RDF::Crypt::Decrypter.
BUGS¶
Please report any bugs to <
http://rt.cpan.org/>.
AUTHOR¶
Toby Inkster <tobyink@cpan.org>.
COPYRIGHT¶
Copyright 2010, 2012 Toby Inkster
This library is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.
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.