/usr/share/doc/libbobcat3/man/isymcryptstream.3.html is in libbobcat-dev 3.23.01-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 | <html><head>
<title>FBB::ISymCryptStream</title>
<link rev="made" href="mailto:Frank B. Brokken: f.b.brokken@rug.nl">
</head>
<body text="#27408B" bgcolor="#FFFAF0">
<hr>
<h1>FBB::ISymCryptStream</h1>
<h2>libbobcat-dev_3.23.01-x.tar.gz</h2>
<h2>2005-2014</h2>
<html><head>
<link rev="made" href="mailto:Frank B. Brokken: f.b.brokken@rug.nl">
</head>
<body text="#27408B" bgcolor="#FFFAF0">
<hr>
<h1></h1>
<html><head>
<title>FBB::ISymCryptStream(3bobcat)</title>
<link rev="made" href="mailto:Frank B. Brokken: f.b.brokken@rug.nl">
</head>
<body text="#27408B" bgcolor="#FFFAF0">
<hr>
<h1>FBB::ISymCryptStream(3bobcat)</h1>
<h2>libbobcat-dev_3.23.01-x.tar.gz Symmetric en- and decryption</h2>
<h2>2005-2014</h2>
<p>
<h2>NAME</h2>FBB::ISymCryptStream - Istream performing symmetric encryption
<p>
<h2>SYNOPSIS</h2>
<strong>#include <bobcat/isymcryptstream></strong><br>
Linking option: <em>-lbobcat -lcrypto</em>
<p>
<h2>DESCRIPTION</h2>
<strong>FBB::ISymCryptStream</strong> objects may be used to encrypt or decrypt
information that is available on a separate <em>std::istream</em>.
<p>
The <em>class ISymCryptStream</em> is a class template, using a
<em>FBB::CryptType</em> template non-type parameter. Objects of the class
<em>FBB::ISymCryptStream<FBB::ENCRYPT></em> encrypt the information they receive,
objects of the class <em>FBB::ISymCryptStream<FBB::DECRYPT></em> decrypt the
information they receive.
<p>
All symmetric encryption methods defined by the OpenSSL library that can
be selected by name may be used in combination with <em>EncryptBuf</em> objects. To
select a particular encryption method an identifier is passed to the
constructor. E.g., <em>"aes-128-cbc"</em> indicating the AES (Rijndael) method,
using 128 bit sized keys and blocks using `cbc' mode (see below for an
explanation).
<p>
Refer to the <strong>isymcryptstreambuf</strong>(3bobcat) man-page for a descryption of
available encryption methods.
<p>
<h2>NAMESPACE</h2>
<strong>FBB</strong><br>
All constructors, members, operators and manipulators, mentioned in this
man-page, are defined in the namespace <strong>FBB</strong>.
<p>
<h2>INHERITS FROM</h2>
<strong>FBB::ISymCryptStreambuf</strong> (private), <br>
<strong>std::istream</strong>
<p>
<h2>CONSTRUCTOR</h2>
<ul>
<li> <strong>ISymCryptStream<CryptType>(
std::istream &in, char const *type,
std::string const &key, std::string const &iv,
size_t bufSize = 100, size_t filterBufSize = 1000,
ENGINE *engine = 0)</strong>:<br>
This constructor initializes a <em>std::istream</em> providing it with an
<em>FBB::ISymCryptStreambuf</em> stream buffer. The <em>ISymCryptStreambuf</em>'s
constructor receives all arguments that are passed to this constructor.
<p>
- <em>ISymCryptStream<ENCRYPT></em> objects perform encryption;<br>
<em>ISymCryptStream<DECRYPT></em> objects perform decryption;<br>
- <em>ISymCryptStream<CryptType></em> objects obtain the bytes to encrypt
or decrypt from <em>std::istream &in</em>;<br>
- The encryption method to use is specified by the <em>type</em>
parameter. E.g., <em>"bf-cbc"</em> selects the Blowfish Cipher Block Chaining
method;<br>
- The symmetric key to use is specified by the <em>key</em> parameter;<br>
- The initialization vector is specified by the <em>iv</em> parameter;<br>
- The <em>FBB::ISymCryptStreambuf</em> internally used buffer will contain
<em>bufSize</em> characters. The default value is the smallest value that is
used. When a smaller <em>bufSize</em> value is specified, the default value is
used;<br>
- The internally used <em>IFilterStreambuf</em> is initialized with a buffer of
size <em>filterBufSize</em>, using a lower bound of 100;<br>
- The parameter <em>ENGINE</em> can be used to specify a hardware
accelleration engine, as supported by the used encryption/decryption
method. Its default argument value indicates that no hardware accelleration is
available.
</ul>
<p>
<h2>INHERITED MEMBERS</h2>
<p>
Since the class uses public derivation from <strong>std::istream</strong>, all members
of this class can be used.
<p>
<h2>EXAMPLE</h2>
<pre>
#include "../isymcryptstream"
#include <iostream>
using namespace std;
using namespace FBB;
int main()
{
ISymCryptStream<ENCRYPT> encryptor(cin, "bf-cbc",
"1234567890", "1234567890");
ISymCryptStream<DECRYPT> decryptor(encryptor, "bf-cbc",
"1234567890", "1234567890");
cout << decryptor.rdbuf();
}
</pre>
<p>
<h2>FILES</h2>
<em>bobcat/isymcryptstream</em> - defines the class interface
<p>
<h2>SEE ALSO</h2>
<strong>bobcat</strong>(7), <strong>isymcryptstreambuf</strong>(3bobcat)
<p>
<h2>BUGS</h2>
<p>
Sep/Oct 2013: due to a change in library handling by the linker
(cf. <a href="http://fedoraproject.org/wiki/UnderstandingDSOLinkChange">http://fedoraproject.org/wiki/UnderstandingDSOLinkChange</a> and
<a href="https://wiki.debian.org/ToolChain/DSOLinking">https://wiki.debian.org/ToolChain/DSOLinking</a>) libraries that are
indirectly required are no longer automatically linked to your program. With
<strong>BigInt</strong> this is <em>libcrypto</em>, which requires programs to link to both
<em>bobcat</em> and <em>crypto</em>.
<p>
<h2>DISTRIBUTION FILES</h2>
<ul>
<li> <em>bobcat_3.23.01-x.dsc</em>: detached signature;
<li> <em>bobcat_3.23.01-x.tar.gz</em>: source archive;
<li> <em>bobcat_3.23.01-x_i386.changes</em>: change log;
<li> <em>libbobcat1_3.23.01-x_*.deb</em>: debian package holding the
libraries;
<li> <em>libbobcat1-dev_3.23.01-x_*.deb</em>: debian package holding the
libraries, headers and manual pages;
<li> <em>http://sourceforge.net/projects/bobcat</em>: public archive location;
</ul>
<p>
<h2>BOBCAT</h2>
Bobcat is an acronym of `Brokken's Own Base Classes And Templates'.
<p>
<h2>COPYRIGHT</h2>
This is free software, distributed under the terms of the
GNU General Public License (GPL).
<p>
<h2>AUTHOR</h2>
Frank B. Brokken (<strong>f.b.brokken@rug.nl</strong>).
<p>
|