fork-openpgpjs/docs/PublicKeyEncryptedSessionKeyPacket.html
Daniel Huigens 365a5efb63 5.0.0-0
2021-02-27 01:25:52 +01:00

828 lines
13 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>JSDoc: Class: PublicKeyEncryptedSessionKeyPacket</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">Class: PublicKeyEncryptedSessionKeyPacket</h1>
<section>
<header>
<h2><span class="attribs"><span class="type-signature"></span></span>PublicKeyEncryptedSessionKeyPacket<span class="signature">()</span><span class="type-signature"></span></h2>
<div class="class-description"><p>Public-Key Encrypted Session Key Packets (Tag 1)</p>
<p><a href="https://tools.ietf.org/html/rfc4880#section-5.1">RFC4880 5.1</a>:
A Public-Key Encrypted Session Key packet holds the session key
used to encrypt a message. Zero or more Public-Key Encrypted Session Key
packets and/or Symmetric-Key Encrypted Session Key packets may precede a
Symmetrically Encrypted Data Packet, which holds an encrypted message. The
message is encrypted with the session key, and the session key is itself
encrypted and stored in the Encrypted Session Key packet(s). The
Symmetrically Encrypted Data Packet is preceded by one Public-Key Encrypted
Session Key packet for each OpenPGP key to which the message is encrypted.
The recipient of the message finds a session key that is encrypted to their
public key, decrypts the session key, and then uses the session key to
decrypt the message.</p></div>
</header>
<article>
<div class="container-overview">
<h2>Constructor</h2>
<h4 class="name" id="PublicKeyEncryptedSessionKeyPacket"><span class="type-signature"></span>new PublicKeyEncryptedSessionKeyPacket<span class="signature">()</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js">packet/public_key_encrypted_session_key.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js#L40">line 40</a>
</li></ul></dd>
</dl>
</div>
<h3 class="subsection-title">Members</h3>
<h4 class="name" id="encrypted"><span class="type-signature"></span>encrypted<span class="type-signature"> :Object</span></h4>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Object</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js">packet/public_key_encrypted_session_key.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js#L51">line 51</a>
</li></ul></dd>
</dl>
<h3 class="subsection-title">Methods</h3>
<h4 class="name" id="decrypt"><span class="type-signature">(async) </span>decrypt<span class="signature">(key)</span><span class="type-signature"> &rarr; {Promise.&lt;Boolean>}</span></h4>
<div class="description">
<p>Decrypts the session key (only for public key encrypted session key
packets (tag 1)</p>
</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>key</code></td>
<td class="type">
<span class="param-type"><a href="SecretKeyPacket.html">SecretKeyPacket</a></span>
</td>
<td class="description last"><p>Private key with secret params unlocked</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js">packet/public_key_encrypted_session_key.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js#L113">line 113</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.&lt;Boolean></span>
</dd>
</dl>
<h4 class="name" id="encrypt"><span class="type-signature">(async) </span>encrypt<span class="signature">(key)</span><span class="type-signature"> &rarr; {Promise.&lt;Boolean>}</span></h4>
<div class="description">
<p>Encrypt session key packet</p>
</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>key</code></td>
<td class="type">
<span class="param-type"><a href="PublicKeyPacket.html">PublicKeyPacket</a></span>
</td>
<td class="description last"><p>Public key</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js">packet/public_key_encrypted_session_key.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js#L92">line 92</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.&lt;Boolean></span>
</dd>
</dl>
<h4 class="name" id="read"><span class="type-signature"></span>read<span class="signature">(bytes)</span><span class="type-signature"></span></h4>
<div class="description">
<p>Parsing function for a publickey encrypted session key packet (tag 1).</p>
</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>bytes</code></td>
<td class="type">
<span class="param-type">Uint8Array</span>
</td>
<td class="description last"><p>Payload of a tag 1 packet</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js">packet/public_key_encrypted_session_key.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js#L59">line 59</a>
</li></ul></dd>
</dl>
<h4 class="name" id="write"><span class="type-signature"></span>write<span class="signature">()</span><span class="type-signature"> &rarr; {Uint8Array}</span></h4>
<div class="description">
<p>Create a binary representation of a tag 1 packet</p>
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js">packet/public_key_encrypted_session_key.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v5.0.0-0/src/packet/public_key_encrypted_session_key.js#L73">line 73</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>The Uint8Array representation</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Uint8Array</span>
</dd>
</dl>
</article>
</section>
</div>
<nav>
<h2><a href="index.html">Home</a></h2><h3>Functions</h3><ul><li><a href="global.html#armor">armor</a></li><li><a href="global.html#decrypt">decrypt</a></li><li><a href="global.html#decryptKey">decryptKey</a></li><li><a href="global.html#decryptSessionKeys">decryptSessionKeys</a></li><li><a href="global.html#encrypt">encrypt</a></li><li><a href="global.html#encryptKey">encryptKey</a></li><li><a href="global.html#encryptSessionKey">encryptSessionKey</a></li><li><a href="global.html#generateKey">generateKey</a></li><li><a href="global.html#generateSessionKey">generateSessionKey</a></li><li><a href="global.html#readCleartextMessage">readCleartextMessage</a></li><li><a href="global.html#readKey">readKey</a></li><li><a href="global.html#readKeys">readKeys</a></li><li><a href="global.html#readMessage">readMessage</a></li><li><a href="global.html#readSignature">readSignature</a></li><li><a href="global.html#reformatKey">reformatKey</a></li><li><a href="global.html#revokeKey">revokeKey</a></li><li><a href="global.html#sign">sign</a></li><li><a href="global.html#unarmor">unarmor</a></li><li><a href="global.html#verify">verify</a></li></ul><h3>Modules</h3><ul><li><a href="module-config.html">config</a></li><li><a href="module-enums.html">enums</a></li></ul><h3>Classes</h3><ul><li><a href="AEADEncryptedDataPacket.html">AEADEncryptedDataPacket</a></li><li><a href="CleartextMessage.html">CleartextMessage</a></li><li><a href="CompressedDataPacket.html">CompressedDataPacket</a></li><li><a href="HKP.html">HKP</a></li><li><a href="Key.html">Key</a></li><li><a href="KeyArray.html">KeyArray</a></li><li><a href="Keyring.html">Keyring</a></li><li><a href="LiteralDataPacket.html">LiteralDataPacket</a></li><li><a href="MarkerPacket.html">MarkerPacket</a></li><li><a href="Message.html">Message</a></li><li><a href="module-crypto_random-RandomBuffer.html">RandomBuffer</a></li><li><a href="module-key_SubKey-SubKey.html">SubKey</a></li><li><a href="module-key_User-User.html">User</a></li><li><a href="module-type_kdf_params-KDFParams.html">KDFParams</a></li><li><a href="module-type_keyid-Keyid.html">Keyid</a></li><li><a href="module-type_s2k-S2K.html">S2K</a></li><li><a href="OnePassSignaturePacket.html">OnePassSignaturePacket</a></li><li><a href="PacketList.html">PacketList</a></li><li><a href="PublicKeyEncryptedSessionKeyPacket.html">PublicKeyEncryptedSessionKeyPacket</a></li><li><a href="PublicKeyPacket.html">PublicKeyPacket</a></li><li><a href="PublicSubkeyPacket.html">PublicSubkeyPacket</a></li><li><a href="SecretKeyPacket.html">SecretKeyPacket</a></li><li><a href="SecretSubkeyPacket.html">SecretSubkeyPacket</a></li><li><a href="Signature.html">Signature</a></li><li><a href="SignaturePacket.html">SignaturePacket</a></li><li><a href="SymEncryptedIntegrityProtectedDataPacket.html">SymEncryptedIntegrityProtectedDataPacket</a></li><li><a href="SymEncryptedSessionKeyPacket.html">SymEncryptedSessionKeyPacket</a></li><li><a href="SymmetricallyEncryptedDataPacket.html">SymmetricallyEncryptedDataPacket</a></li><li><a href="TrustPacket.html">TrustPacket</a></li><li><a href="UserAttributePacket.html">UserAttributePacket</a></li><li><a href="UserIDPacket.html">UserIDPacket</a></li><li><a href="WKD.html">WKD</a></li></ul>
</nav>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.4</a> on Sat Feb 27 2021 01:25:52 GMT+0100 (Midden-Europese standaardtijd)
</footer>
<script> prettyPrint(); </script>
<script src="scripts/linenumber.js"> </script>
</body>
</html>