fork-openpgpjs/doc/cfb.html
2013-12-22 13:01:24 -08:00

830 lines
16 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>JSDoc: Module: crypto/cfb</title>
<script src="scripts/prettify/prettify.js"> </script>
<script src="scripts/prettify/lang-css.js"> </script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>
<div id="main">
<h1 class="page-title">Module: crypto/cfb</h1>
<section>
<header>
<h2>
crypto/cfb
</h2>
</header>
<article>
<div class="container-overview">
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="cfb.js.html">crypto/cfb.js</a>, <a href="cfb.js.html#line18">line 18</a>
</li></ul></dd>
</dl>
</div>
<h3 class="subsection-title">Methods</h3>
<dl>
<dt>
<h4 class="name" id="decrypt"><span class="type-signature">&lt;static> </span>decrypt<span class="signature">(blockcipherfn, block_size, plaintext, key, resync)</span><span class="type-signature"> &rarr; {String}</span></h4>
</dt>
<dd>
<div class="description">
This function decrypts a given plaintext using the specified
blockcipher to decrypt a message
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>blockcipherfn</code></td>
<td class="type">
<span class="param-type"><a href="global.html#openpgp_cipher_block_fn">openpgp_cipher_block_fn</a></span>
</td>
<td class="description last">The algorithm _encrypt_ function to encrypt
data in one block_size encryption.</td>
</tr>
<tr>
<td class="name"><code>block_size</code></td>
<td class="type">
<span class="param-type">Integer</span>
</td>
<td class="description last">the block size in bytes of the algorithm used</td>
</tr>
<tr>
<td class="name"><code>plaintext</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last">ciphertext to be decrypted provided as a string</td>
</tr>
<tr>
<td class="name"><code>key</code></td>
<td class="type">
<span class="param-type"><a href="global.html#openpgp_byte_array">openpgp_byte_array</a></span>
</td>
<td class="description last">key to be used to decrypt the ciphertext. This will be passed to the
blockcipherfn</td>
</tr>
<tr>
<td class="name"><code>resync</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="description last">a boolean value specifying if a resync of the
IV should be used or not. The encrypteddatapacket uses the
"old" style with a resync. Decryption within an
encryptedintegrityprotecteddata packet is not resyncing the IV.</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="cfb.js.html">crypto/cfb.js</a>, <a href="cfb.js.html#line200">line 200</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
a string with the plaintext data
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">String</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="encrypt"><span class="type-signature">&lt;static> </span>encrypt<span class="signature">(prefixrandom, blockcipherfn, block_size, plaintext, key, resync)</span><span class="type-signature"> &rarr; {String}</span></h4>
</dt>
<dd>
<div class="description">
This function encrypts a given with the specified prefixrandom
using the specified blockcipher to encrypt a message
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>prefixrandom</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last">random bytes of block_size length provided
as a string to be used in prefixing the data</td>
</tr>
<tr>
<td class="name"><code>blockcipherfn</code></td>
<td class="type">
<span class="param-type"><a href="global.html#openpgp_cipher_block_fn">openpgp_cipher_block_fn</a></span>
</td>
<td class="description last">the algorithm encrypt function to encrypt
data in one block_size encryption.</td>
</tr>
<tr>
<td class="name"><code>block_size</code></td>
<td class="type">
<span class="param-type">Integer</span>
</td>
<td class="description last">the block size in bytes of the algorithm used</td>
</tr>
<tr>
<td class="name"><code>plaintext</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last">data to be encrypted provided as a string</td>
</tr>
<tr>
<td class="name"><code>key</code></td>
<td class="type">
<span class="param-type"><a href="global.html#openpgp_byte_array">openpgp_byte_array</a></span>
</td>
<td class="description last">key to be used to encrypt the data. This will be passed to the
blockcipherfn</td>
</tr>
<tr>
<td class="name"><code>resync</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="description last">a boolean value specifying if a resync of the
IV should be used or not. The encrypteddatapacket uses the
"old" style with a resync. Encryption within an
encryptedintegrityprotecteddata packet is not resyncing the IV.</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="cfb.js.html">crypto/cfb.js</a>, <a href="cfb.js.html#line57">line 57</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
a string with the encrypted data
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">String</span>
</dd>
</dl>
</dd>
<dt>
<h4 class="name" id="mdc"><span class="type-signature">&lt;static> </span>mdc<span class="signature">(block_size, key, ciphertext)</span><span class="type-signature"> &rarr; {String}</span></h4>
</dt>
<dd>
<div class="description">
Decrypts the prefixed data for the Modification Detection Code (MDC) computation
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>cipherfn.encrypt</code></td>
<td class="type">
<span class="param-type">openpgp_block_cipher_fn</span>
</td>
<td class="description last">Cipher function to use</td>
</tr>
<tr>
<td class="name"><code>block_size</code></td>
<td class="type">
<span class="param-type">Integer</span>
</td>
<td class="description last">Blocksize of the algorithm</td>
</tr>
<tr>
<td class="name"><code>key</code></td>
<td class="type">
<span class="param-type"><a href="global.html#openpgp_byte_array">openpgp_byte_array</a></span>
</td>
<td class="description last">The key for encryption</td>
</tr>
<tr>
<td class="name"><code>ciphertext</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last">The encrypted data</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="cfb.js.html">crypto/cfb.js</a>, <a href="cfb.js.html#line160">line 160</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
plaintext Data of D(ciphertext) with blocksize length +2
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">String</span>
</dd>
</dl>
</dd>
</dl>
</article>
</section>
</div>
<nav>
<h2><a href="index.html">Index</a></h2><h3>Modules</h3><ul><li><a href="module-cleartext.html">cleartext</a></li><li><a href="config.html">config/config</a></li><li><a href="config_localStorage.html">config/config_localStorage</a></li><li><a href="cfb.html">crypto/cfb</a></li><li><a href="aes.html">crypto/cipher/aes</a></li><li><a href="blowfish.html">crypto/cipher/blowfish</a></li><li><a href="cast5.html">crypto/cipher/cast5</a></li><li><a href="des.html">crypto/cipher/des</a></li><li><a href="twofish.html">crypto/cipher/twofish</a></li><li><a href="crypto.html">crypto/crypto</a></li><li><a href="md5.html">crypto/hash/md5</a></li><li><a href="ripe-md.html">crypto/hash/ripe-md</a></li><li><a href="sha.html">crypto/hash/sha</a></li><li><a href="pkcs1.html">crypto/pkcs1</a></li><li><a href="dsa.html">crypto/public_key/dsa</a></li><li><a href="elgamal.html">crypto/public_key/elgamal</a></li><li><a href="jsbn.html">crypto/public_key/jsbn</a></li><li><a href="rsa.html">crypto/public_key/rsa</a></li><li><a href="random.html">crypto/random</a></li><li><a href="signature.html">crypto/signature</a></li><li><a href="armor.html">encoding/armor</a></li><li><a href="base64.html">encoding/base64</a></li><li><a href="module-key.html">key</a></li><li><a href="keyring.html">keyring/keyring</a></li><li><a href="localstore.html">keyring/localstore</a></li><li><a href="module-message.html">message</a></li><li><a href="module-openpgp.html">openpgp</a></li><li><a href="compressed.html">packet/compressed</a></li><li><a href="literal.html">packet/literal</a></li><li><a href="marker.html">packet/marker</a></li><li><a href="one_pass_signature.html">packet/one_pass_signature</a></li><li><a href="packet.html">packet/packet</a></li><li><a href="packetlist.html">packet/packetlist</a></li><li><a href="public_key.html">packet/public_key</a></li><li><a href="public_key_encrypted_session_key.html">packet/public_key_encrypted_session_key</a></li><li><a href="public_subkey.html">packet/public_subkey</a></li><li><a href="secret_key.html">packet/secret_key</a></li><li><a href="secret_subkey.html">packet/secret_subkey</a></li><li><a href="signature_.html">packet/signature</a></li><li><a href="sym_encrypted_integrity_protected.html">packet/sym_encrypted_integrity_protected</a></li><li><a href="sym_encrypted_session_key.html">packet/sym_encrypted_session_key</a></li><li><a href="symmetrically_encrypted.html">packet/symmetrically_encrypted</a></li><li><a href="user_attribute.html">packet/user_attribute</a></li><li><a href="userid.html">packet/userid</a></li><li><a href="keyid.html">type/keyid</a></li><li><a href="mpi.html">type/mpi</a></li><li><a href="s2k.html">type/s2k</a></li><li><a href="util.html">util/util</a></li></ul><h3>Classes</h3><ul><li><a href="JXG.Util.html">Util</a></li><li><a href="module-cleartext-CleartextMessage.html">CleartextMessage</a></li><li><a href="config-config.html">config</a></li><li><a href="module-key-Key.html">Key</a></li><li><a href="module-key-SubKey.html">SubKey</a></li><li><a href="module-key-User.html">User</a></li><li><a href="module-message-Message.html">Message</a></li><li><a href="util-Util.html">Util</a></li></ul><h3><a href="global.html">Global</a></h3>
</nav>
<br clear="both">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-alpha2</a> on Sun Dec 22 2013 12:58:54 GMT-0800 (PST)
</footer>
<script> prettyPrint(); </script>
<script src="scripts/linenumber.js"> </script>
</body>
</html>