-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
apps-webpush-1.11.0 Javadoc auto-pushed to gh-pages
- Loading branch information
Tink Team
committed
May 15, 2024
1 parent
df13d03
commit 9a502cf
Showing
23 changed files
with
4,096 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
<!-- NewPage --> | ||
<html lang="en"> | ||
<head> | ||
<!-- Generated by javadoc --> | ||
<title>All Classes</title> | ||
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style"> | ||
<script type="text/javascript" src="script.js"></script> | ||
</head> | ||
<body> | ||
<h1 class="bar">All Classes</h1> | ||
<div class="indexContainer"> | ||
<ul> | ||
<li><a href="com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.html" title="class in com.google.crypto.tink.apps.webpush" target="classFrame">WebPushHybridDecrypt</a></li> | ||
<li><a href="com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.Builder.html" title="class in com.google.crypto.tink.apps.webpush" target="classFrame">WebPushHybridDecrypt.Builder</a></li> | ||
<li><a href="com/google/crypto/tink/apps/webpush/WebPushHybridEncrypt.html" title="class in com.google.crypto.tink.apps.webpush" target="classFrame">WebPushHybridEncrypt</a></li> | ||
<li><a href="com/google/crypto/tink/apps/webpush/WebPushHybridEncrypt.Builder.html" title="class in com.google.crypto.tink.apps.webpush" target="classFrame">WebPushHybridEncrypt.Builder</a></li> | ||
</ul> | ||
</div> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
<!-- NewPage --> | ||
<html lang="en"> | ||
<head> | ||
<!-- Generated by javadoc --> | ||
<title>All Classes</title> | ||
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style"> | ||
<script type="text/javascript" src="script.js"></script> | ||
</head> | ||
<body> | ||
<h1 class="bar">All Classes</h1> | ||
<div class="indexContainer"> | ||
<ul> | ||
<li><a href="com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.html" title="class in com.google.crypto.tink.apps.webpush">WebPushHybridDecrypt</a></li> | ||
<li><a href="com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.Builder.html" title="class in com.google.crypto.tink.apps.webpush">WebPushHybridDecrypt.Builder</a></li> | ||
<li><a href="com/google/crypto/tink/apps/webpush/WebPushHybridEncrypt.html" title="class in com.google.crypto.tink.apps.webpush">WebPushHybridEncrypt</a></li> | ||
<li><a href="com/google/crypto/tink/apps/webpush/WebPushHybridEncrypt.Builder.html" title="class in com.google.crypto.tink.apps.webpush">WebPushHybridEncrypt.Builder</a></li> | ||
</ul> | ||
</div> | ||
</body> | ||
</html> |
408 changes: 408 additions & 0 deletions
408
...apps-webpush/1.11.0/com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.Builder.html
Large diffs are not rendered by default.
Oops, something went wrong.
321 changes: 321 additions & 0 deletions
321
javadoc/apps-webpush/1.11.0/com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,321 @@ | ||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | ||
<!-- NewPage --> | ||
<html lang="en"> | ||
<head> | ||
<!-- Generated by javadoc --> | ||
<title>WebPushHybridDecrypt</title> | ||
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> | ||
<script type="text/javascript" src="../../../../../../script.js"></script> | ||
</head> | ||
<body> | ||
<script type="text/javascript"><!-- | ||
try { | ||
if (location.href.indexOf('is-external=true') == -1) { | ||
parent.document.title="WebPushHybridDecrypt"; | ||
} | ||
} | ||
catch(err) { | ||
} | ||
//--> | ||
var methods = {"i0":10}; | ||
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; | ||
var altColor = "altColor"; | ||
var rowColor = "rowColor"; | ||
var tableTab = "tableTab"; | ||
var activeTableTab = "activeTableTab"; | ||
</script> | ||
<noscript> | ||
<div>JavaScript is disabled on your browser.</div> | ||
</noscript> | ||
<!-- ========= START OF TOP NAVBAR ======= --> | ||
<div class="topNav"><a name="navbar.top"> | ||
<!-- --> | ||
</a> | ||
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> | ||
<a name="navbar.top.firstrow"> | ||
<!-- --> | ||
</a> | ||
<ul class="navList" title="Navigation"> | ||
<li><a href="../../../../../../com/google/crypto/tink/apps/webpush/package-summary.html">Package</a></li> | ||
<li class="navBarCell1Rev">Class</li> | ||
<li><a href="class-use/WebPushHybridDecrypt.html">Use</a></li> | ||
<li><a href="package-tree.html">Tree</a></li> | ||
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li> | ||
<li><a href="../../../../../../index-all.html">Index</a></li> | ||
<li><a href="../../../../../../help-doc.html">Help</a></li> | ||
</ul> | ||
</div> | ||
<div class="subNav"> | ||
<ul class="navList"> | ||
<li>Prev Class</li> | ||
<li><a href="../../../../../../com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.Builder.html" title="class in com.google.crypto.tink.apps.webpush"><span class="typeNameLink">Next Class</span></a></li> | ||
</ul> | ||
<ul class="navList"> | ||
<li><a href="../../../../../../index.html?com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.html" target="_top">Frames</a></li> | ||
<li><a href="WebPushHybridDecrypt.html" target="_top">No Frames</a></li> | ||
</ul> | ||
<ul class="navList" id="allclasses_navbar_top"> | ||
<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li> | ||
</ul> | ||
<div> | ||
<script type="text/javascript"><!-- | ||
allClassesLink = document.getElementById("allclasses_navbar_top"); | ||
if(window==top) { | ||
allClassesLink.style.display = "block"; | ||
} | ||
else { | ||
allClassesLink.style.display = "none"; | ||
} | ||
//--> | ||
</script> | ||
</div> | ||
<div> | ||
<ul class="subNavList"> | ||
<li>Summary: </li> | ||
<li><a href="#nested.class.summary">Nested</a> | </li> | ||
<li>Field | </li> | ||
<li>Constr | </li> | ||
<li><a href="#method.summary">Method</a></li> | ||
</ul> | ||
<ul class="subNavList"> | ||
<li>Detail: </li> | ||
<li>Field | </li> | ||
<li>Constr | </li> | ||
<li><a href="#method.detail">Method</a></li> | ||
</ul> | ||
</div> | ||
<a name="skip.navbar.top"> | ||
<!-- --> | ||
</a></div> | ||
<!-- ========= END OF TOP NAVBAR ========= --> | ||
<!-- ======== START OF CLASS DATA ======== --> | ||
<div class="header"> | ||
<div class="subTitle">com.google.crypto.tink.apps.webpush</div> | ||
<h2 title="Class WebPushHybridDecrypt" class="title">Class WebPushHybridDecrypt</h2> | ||
</div> | ||
<div class="contentContainer"> | ||
<ul class="inheritance"> | ||
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li> | ||
<li> | ||
<ul class="inheritance"> | ||
<li>com.google.crypto.tink.apps.webpush.WebPushHybridDecrypt</li> | ||
</ul> | ||
</li> | ||
</ul> | ||
<div class="description"> | ||
<ul class="blockList"> | ||
<li class="blockList"> | ||
<dl> | ||
<dt>All Implemented Interfaces:</dt> | ||
<dd>com.google.crypto.tink.HybridDecrypt</dd> | ||
</dl> | ||
<hr> | ||
<br> | ||
<pre>public final class <span class="typeNameLabel">WebPushHybridDecrypt</span> | ||
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> | ||
implements com.google.crypto.tink.HybridDecrypt</pre> | ||
<div class="block">A <code>HybridDecrypt</code> implementation for the hybrid encryption used in <a | ||
href="https://tools.ietf.org/html/rfc8291">RFC 8291 - Web Push Message Encryption</a>. | ||
|
||
<h3>Ciphertext format</h3> | ||
|
||
<p>When used with <a href="https://tools.ietf.org/html/rfc8291#section-4">AES128-GCM content | ||
encoding</a>, which is the only content encoding supported in this implementation, the ciphertext | ||
is formatted according to RFC 8188 section 2, and looks as follows | ||
|
||
<pre> | ||
// NOLINTNEXTLINE | ||
+-----------+----------------+------------------+--------------------------------------------------- | ||
| salt (16) | recordsize (4) | publickeylen (1) | publickey (publickeylen) | aes128-gcm-ciphertext | | ||
+-----------+----------------+------------------+--------------------------------------------------- | ||
</pre> | ||
|
||
<p>RFC 8188 divides messages into records which are encrypted independently. Web Push messages | ||
cannot be longer than 3993 bytes, and are always encrypted in a single record with default size | ||
of 4096 bytes. <code>aes128-gcm-ciphertext</code> is the encryption of the message padded with a | ||
single byte of value <code>0x02</code> (which indicates that this is the last and only record). | ||
|
||
<h3>Usage</h3> | ||
|
||
<pre><code> | ||
import com.google.crypto.tink.HybridDecrypt; | ||
import com.google.crypto.tink.HybridEncrypt; | ||
import java.security.interfaces.ECPrivateKey; | ||
import java.security.interfaces.ECPublicKey; | ||
|
||
// Encryption. | ||
ECPublicKey reicipientPublicKey = ...; | ||
byte[] authSecret = ...; | ||
HybridEncrypt hybridEncrypt = new WebPushHybridEncrypt.Builder() | ||
.withAuthSecret(authSecret) | ||
.withRecipientPublicKey(recipientPublicKey) | ||
.build(); | ||
byte[] plaintext = ...; | ||
byte[] ciphertext = hybridEncrypt.encrypt(plaintext, null); | ||
|
||
// Decryption. | ||
ECPrivateKey recipientPrivateKey = ...; | ||
HybridDecrypt hybridDecrypt = new WebPushHybridDecrypt.Builder() | ||
.withAuthSecret(authSecret) | ||
.withRecipientPublicKey(recipientPublicKey) | ||
.withRecipientPrivateKey(recipientPrivateKey) | ||
.build(); | ||
byte[] plaintext = hybridDecrypt.decrypt(ciphertext, null); | ||
</code></pre></div> | ||
<dl> | ||
<dt><span class="simpleTagLabel">Since:</span></dt> | ||
<dd>1.1.0</dd> | ||
</dl> | ||
</li> | ||
</ul> | ||
</div> | ||
<div class="summary"> | ||
<ul class="blockList"> | ||
<li class="blockList"> | ||
<!-- ======== NESTED CLASS SUMMARY ======== --> | ||
<ul class="blockList"> | ||
<li class="blockList"><a name="nested.class.summary"> | ||
<!-- --> | ||
</a> | ||
<h3>Nested Class Summary</h3> | ||
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation"> | ||
<caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> | ||
<tr> | ||
<th class="colFirst" scope="col">Modifier and Type</th> | ||
<th class="colLast" scope="col">Class and Description</th> | ||
</tr> | ||
<tr class="altColor"> | ||
<td class="colFirst"><code>static class </code></td> | ||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.Builder.html" title="class in com.google.crypto.tink.apps.webpush">WebPushHybridDecrypt.Builder</a></span></code> | ||
<div class="block">Builder for <a href="../../../../../../com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.html" title="class in com.google.crypto.tink.apps.webpush"><code>WebPushHybridDecrypt</code></a>.</div> | ||
</td> | ||
</tr> | ||
</table> | ||
</li> | ||
</ul> | ||
<!-- ========== METHOD SUMMARY =========== --> | ||
<ul class="blockList"> | ||
<li class="blockList"><a name="method.summary"> | ||
<!-- --> | ||
</a> | ||
<h3>Method Summary</h3> | ||
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> | ||
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> | ||
<tr> | ||
<th class="colFirst" scope="col">Modifier and Type</th> | ||
<th class="colLast" scope="col">Method and Description</th> | ||
</tr> | ||
<tr id="i0" class="altColor"> | ||
<td class="colFirst"><code>byte[]</code></td> | ||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.html#decrypt-byte:A-byte:A-">decrypt</a></span>(byte[] ciphertext, | ||
byte[] contextInfo)</code> </td> | ||
</tr> | ||
</table> | ||
<ul class="blockList"> | ||
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> | ||
<!-- --> | ||
</a> | ||
<h3>Methods inherited from class java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3> | ||
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li> | ||
</ul> | ||
</li> | ||
</ul> | ||
</li> | ||
</ul> | ||
</div> | ||
<div class="details"> | ||
<ul class="blockList"> | ||
<li class="blockList"> | ||
<!-- ============ METHOD DETAIL ========== --> | ||
<ul class="blockList"> | ||
<li class="blockList"><a name="method.detail"> | ||
<!-- --> | ||
</a> | ||
<h3>Method Detail</h3> | ||
<a name="decrypt-byte:A-byte:A-"> | ||
<!-- --> | ||
</a> | ||
<ul class="blockListLast"> | ||
<li class="blockList"> | ||
<h4>decrypt</h4> | ||
<pre>public byte[] decrypt(byte[] ciphertext, | ||
byte[] contextInfo) | ||
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/security/GeneralSecurityException.html?is-external=true" title="class or interface in java.security">GeneralSecurityException</a></pre> | ||
<dl> | ||
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt> | ||
<dd><code>decrypt</code> in interface <code>com.google.crypto.tink.HybridDecrypt</code></dd> | ||
<dt><span class="throwsLabel">Throws:</span></dt> | ||
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/security/GeneralSecurityException.html?is-external=true" title="class or interface in java.security">GeneralSecurityException</a></code></dd> | ||
</dl> | ||
</li> | ||
</ul> | ||
</li> | ||
</ul> | ||
</li> | ||
</ul> | ||
</div> | ||
</div> | ||
<!-- ========= END OF CLASS DATA ========= --> | ||
<!-- ======= START OF BOTTOM NAVBAR ====== --> | ||
<div class="bottomNav"><a name="navbar.bottom"> | ||
<!-- --> | ||
</a> | ||
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> | ||
<a name="navbar.bottom.firstrow"> | ||
<!-- --> | ||
</a> | ||
<ul class="navList" title="Navigation"> | ||
<li><a href="../../../../../../com/google/crypto/tink/apps/webpush/package-summary.html">Package</a></li> | ||
<li class="navBarCell1Rev">Class</li> | ||
<li><a href="class-use/WebPushHybridDecrypt.html">Use</a></li> | ||
<li><a href="package-tree.html">Tree</a></li> | ||
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li> | ||
<li><a href="../../../../../../index-all.html">Index</a></li> | ||
<li><a href="../../../../../../help-doc.html">Help</a></li> | ||
</ul> | ||
</div> | ||
<div class="subNav"> | ||
<ul class="navList"> | ||
<li>Prev Class</li> | ||
<li><a href="../../../../../../com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.Builder.html" title="class in com.google.crypto.tink.apps.webpush"><span class="typeNameLink">Next Class</span></a></li> | ||
</ul> | ||
<ul class="navList"> | ||
<li><a href="../../../../../../index.html?com/google/crypto/tink/apps/webpush/WebPushHybridDecrypt.html" target="_top">Frames</a></li> | ||
<li><a href="WebPushHybridDecrypt.html" target="_top">No Frames</a></li> | ||
</ul> | ||
<ul class="navList" id="allclasses_navbar_bottom"> | ||
<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li> | ||
</ul> | ||
<div> | ||
<script type="text/javascript"><!-- | ||
allClassesLink = document.getElementById("allclasses_navbar_bottom"); | ||
if(window==top) { | ||
allClassesLink.style.display = "block"; | ||
} | ||
else { | ||
allClassesLink.style.display = "none"; | ||
} | ||
//--> | ||
</script> | ||
</div> | ||
<div> | ||
<ul class="subNavList"> | ||
<li>Summary: </li> | ||
<li><a href="#nested.class.summary">Nested</a> | </li> | ||
<li>Field | </li> | ||
<li>Constr | </li> | ||
<li><a href="#method.summary">Method</a></li> | ||
</ul> | ||
<ul class="subNavList"> | ||
<li>Detail: </li> | ||
<li>Field | </li> | ||
<li>Constr | </li> | ||
<li><a href="#method.detail">Method</a></li> | ||
</ul> | ||
</div> | ||
<a name="skip.navbar.bottom"> | ||
<!-- --> | ||
</a></div> | ||
<!-- ======== END OF BOTTOM NAVBAR ======= --> | ||
</body> | ||
</html> |
Oops, something went wrong.