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
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Class Poco::Crypto::CipherKeyImpl</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<meta name="author" content="Applied Informatics Software Engineering GmbH and Contributors"/>
<meta name="publisher" content="Applied Informatics Software Engineering GmbH and Contributors"/>
<meta name="copyright" content="Copyright (c) 2009, Applied Informatics Software Engineering GmbH and Contributors"/>
<meta name="language" content="en"/>
<meta name="date" content="2009-11-24"/>
<meta name="generator" content="PocoDoc"/>
<link rel="stylesheet" href="css/styles.css" type="text/css"/>
</head>
<body bgcolor="#ffffff" leftmargin="0" topmargin="0">
<div class="header">
<h1 class="namespace"><a href="Poco.Crypto.html" class="namespace">Poco::Crypto</a></h1>
<h1 class="symbol">class CipherKeyImpl</h1>
</div>
<div class="body">
<p>
<b>Library:</b> Crypto<br />
<b>Package:</b> Cipher<br />
<b>Header:</b> Poco/Crypto/CipherKeyImpl.h</p>
<h2>Description</h2>
<div class="description">
<p>An implementation of the <a href="Poco.Crypto.CipherKey.html" title="class Poco::Crypto::CipherKey">CipherKey</a> class for OpenSSL's crypto library. </p>
</div>
<h2>Inheritance</h2>
<p><b>Direct Base Classes: </b><a href="Poco.RefCountedObject.html" title="class Poco::RefCountedObject">Poco::RefCountedObject</a></p>
<p><b>All Base Classes: </b><a href="Poco.RefCountedObject.html" title="class Poco::RefCountedObject">Poco::RefCountedObject</a></p>
<h2>Member Summary</h2>
<p><b>Member Functions: </b><a href="Poco.Crypto.CipherKeyImpl.html#109" title="Poco::Crypto::CipherKeyImpl::blockSize()">blockSize</a>, <a href="Poco.Crypto.CipherKeyImpl.html#118" title="Poco::Crypto::CipherKeyImpl::cipher()">cipher</a>, <a href="Poco.Crypto.CipherKeyImpl.html#115" title="Poco::Crypto::CipherKeyImpl::getIV()">getIV</a>, <a href="Poco.Crypto.CipherKeyImpl.html#112" title="Poco::Crypto::CipherKeyImpl::getKey()">getKey</a>, <a href="Poco.Crypto.CipherKeyImpl.html#110" title="Poco::Crypto::CipherKeyImpl::ivSize()">ivSize</a>, <a href="Poco.Crypto.CipherKeyImpl.html#108" title="Poco::Crypto::CipherKeyImpl::keySize()">keySize</a>, <a href="Poco.Crypto.CipherKeyImpl.html#111" title="Poco::Crypto::CipherKeyImpl::mode()">mode</a>, <a href="Poco.Crypto.CipherKeyImpl.html#107" title="Poco::Crypto::CipherKeyImpl::name()">name</a>, <a href="Poco.Crypto.CipherKeyImpl.html#116" title="Poco::Crypto::CipherKeyImpl::setIV()">setIV</a>, <a href="Poco.Crypto.CipherKeyImpl.html#113" title="Poco::Crypto::CipherKeyImpl::setKey()">setKey</a></p>
<p><b>Inherited Functions: </b><a href="Poco.RefCountedObject.html#9659" title="Poco::RefCountedObject::duplicate()">duplicate</a>, <a href="Poco.RefCountedObject.html#9661" title="Poco::RefCountedObject::referenceCount()">referenceCount</a>, <a href="Poco.RefCountedObject.html#9660" title="Poco::RefCountedObject::release()">release</a></p>
<h2>Types</h2>
<h3><a name="87">ByteVec</a></h3>
<p class="decl">typedef std::vector < unsigned char > <a href="Poco.Crypto.CipherKeyImpl.html#87" title="Poco::Crypto::CipherKeyImpl::ByteVec">ByteVec</a>;</p>
<div class="description">
<p></p>
</div>
<h3><a name="88">Ptr</a></h3>
<p class="decl">typedef <a href="Poco.AutoPtr.html" title="class Poco::AutoPtr">Poco::AutoPtr</a> < <a href="Poco.Crypto.CipherKeyImpl.html" title="class Poco::Crypto::CipherKeyImpl">CipherKeyImpl</a> > <a href="Poco.Crypto.CipherKeyImpl.html#88" title="Poco::Crypto::CipherKeyImpl::Ptr">Ptr</a>;</p>
<div class="description">
<p></p>
</div>
<h2>Enumerations</h2>
<h3><a name="89">Mode</a></h3>
<div class="description">
<p><a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a> mode of operation. This mode determines how multiple blocks are connected; this is essential to improve security. </p>
</div>
<p class="decl"><a name="90">MODE_STREAM_CIPHER</a></p>
<div class="description">
<p>Stream cipher </p>
</div>
<p class="decl"><a name="91">MODE_ECB</a></p>
<div class="description">
<p>Electronic codebook (plain concatenation) </p>
</div>
<p class="decl"><a name="92">MODE_CBC</a></p>
<div class="description">
<p><a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a> block chaining (default) </p>
</div>
<p class="decl"><a name="93">MODE_CFB</a></p>
<div class="description">
<p><a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a> feedback </p>
</div>
<p class="decl"><a name="94">MODE_OFB</a></p>
<div class="description">
<p>Output feedback </p>
</div>
<h2>Constructors</h2>
<h3><a name="104">CipherKeyImpl</a></h3>
<p class="decl"><a href="Poco.Crypto.CipherKeyImpl.html" title="class Poco::Crypto::CipherKeyImpl">CipherKeyImpl</a>(<br /> const std::string & name<br />);</p>
<div class="description">
<p>Creates a new <a href="Poco.Crypto.CipherKeyImpl.html" title="class Poco::Crypto::CipherKeyImpl">CipherKeyImpl</a> object. Autoinitializes key and initialization vector. </p>
</div>
<h3><a name="100">CipherKeyImpl</a></h3>
<p class="decl"><a href="Poco.Crypto.CipherKeyImpl.html" title="class Poco::Crypto::CipherKeyImpl">CipherKeyImpl</a>(<br /> const std::string & name,<br /> const <a href="Poco.Crypto.CipherKeyImpl.html#87" title="Poco::Crypto::CipherKeyImpl::ByteVec">ByteVec</a> & key,<br /> const <a href="Poco.Crypto.CipherKeyImpl.html#87" title="Poco::Crypto::CipherKeyImpl::ByteVec">ByteVec</a> & iv<br />);</p>
<div class="description">
<p>Creates a new <a href="Poco.Crypto.CipherKeyImpl.html" title="class Poco::Crypto::CipherKeyImpl">CipherKeyImpl</a> object, using the given cipher name, key and initialization vector. </p>
</div>
<h3><a name="95">CipherKeyImpl</a></h3>
<p class="decl"><a href="Poco.Crypto.CipherKeyImpl.html" title="class Poco::Crypto::CipherKeyImpl">CipherKeyImpl</a>(<br /> const std::string & name,<br /> const std::string & passphrase,<br /> const std::string & salt,<br /> int iterationCount<br />);</p>
<div class="description">
<p>Creates a new <a href="Poco.Crypto.CipherKeyImpl.html" title="class Poco::Crypto::CipherKeyImpl">CipherKeyImpl</a> object, using the given cipher name, passphrase, salt value and iteration count. </p>
</div>
<h2>Destructor</h2>
<h3><a name="106">~CipherKeyImpl</a> <img src="images/virtual.gif" alt="virtual" title="virtual" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">virtual ~<a href="Poco.Crypto.CipherKeyImpl.html" title="class Poco::Crypto::CipherKeyImpl">CipherKeyImpl</a>();</p>
<div class="description">
<p>Destroys the <a href="Poco.Crypto.CipherKeyImpl.html" title="class Poco::Crypto::CipherKeyImpl">CipherKeyImpl</a>. </p>
</div>
<h2>Member Functions</h2>
<h3><a name="109">blockSize</a></h3>
<p class="decl">int blockSize() const;</p>
<div class="description">
<p>Returns the block size of the <a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a>. </p>
</div>
<h3><a name="118">cipher</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">const <a href="#85" title="EVP_CIPHER">EVP_CIPHER</a> * cipher();</p>
<div class="description">
<p>Returns the cipher object </p>
</div>
<h3><a name="115">getIV</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">const <a href="Poco.Crypto.CipherKeyImpl.html#87" title="Poco::Crypto::CipherKeyImpl::ByteVec">ByteVec</a> & getIV() const;</p>
<div class="description">
<p>Returns the initialization vector (IV) for the <a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a>. </p>
</div>
<h3><a name="112">getKey</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">const <a href="Poco.Crypto.CipherKeyImpl.html#87" title="Poco::Crypto::CipherKeyImpl::ByteVec">ByteVec</a> & getKey() const;</p>
<div class="description">
<p>Returns the key for the <a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a>. </p>
</div>
<h3><a name="110">ivSize</a></h3>
<p class="decl">int ivSize() const;</p>
<div class="description">
<p>Returns the IV size of the <a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a>. </p>
</div>
<h3><a name="108">keySize</a></h3>
<p class="decl">int keySize() const;</p>
<div class="description">
<p>Returns the key size of the <a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a>. </p>
</div>
<h3><a name="111">mode</a></h3>
<p class="decl"><a href="Poco.Crypto.CipherKeyImpl.html#89" title="enum Poco::Crypto::CipherKeyImpl::Mode">Mode</a> mode() const;</p>
<div class="description">
<p>Returns the <a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a>'s mode of operation. </p>
</div>
<h3><a name="107">name</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">const std::string & name() const;</p>
<div class="description">
<p>Returns the name of the <a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a>. </p>
</div>
<h3><a name="116">setIV</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">void setIV(<br /> const <a href="Poco.Crypto.CipherKeyImpl.html#87" title="Poco::Crypto::CipherKeyImpl::ByteVec">ByteVec</a> & iv<br />);</p>
<div class="description">
<p>Sets the initialization vector (IV) for the <a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a>. </p>
</div>
<h3><a name="113">setKey</a> <img src="images/inline.gif" alt="inline" title="inline" style="vertical-align:baseline;" border="0" /> </h3>
<p class="decl">void setKey(<br /> const <a href="Poco.Crypto.CipherKeyImpl.html#87" title="Poco::Crypto::CipherKeyImpl::ByteVec">ByteVec</a> & key<br />);</p>
<div class="description">
<p>Sets the key for the <a href="Poco.Crypto.Cipher.html" title="class Poco::Crypto::Cipher">Cipher</a>. </p>
</div>
<p class="footer">POCO C++ Libraries 1.3.6-all<br />
Copyright © 2009, <a href="http://pocoproject.org/" target="_blank">Applied Informatics Software Engineering GmbH and Contributors</a></p>
</div>
</body>
</html>
|