uTools-Manuals/docs/java/javax/crypto/spec/GCMParameterSpec.html

240 lines
9.8 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<div class="subTitle">
javax.crypto.spec
</div>
<h2 class="title" title="Class GCMParameterSpec">Class GCMParameterSpec</h2>
</div><div class="contentContainer">
<ul class="inheritance">
<li><a href="../../../java/lang/Object.html" title="class in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>javax.crypto.spec.GCMParameterSpec</li>
</ul> </li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>
All Implemented Interfaces:
</dt>
<dd>
<span><a href="../../../java/security/spec/AlgorithmParameterSpec.html" title="java.security.spec中的接口">AlgorithmParameterSpec</a></span>
</dd>
</dl>
<hr/> <br/> <pre>public class <span class="typeNameLabel">GCMParameterSpec</span>
extends <a href="../../../java/lang/Object.html" title="class in java.lang">Object</a>
implements <a href="../../../java/security/spec/AlgorithmParameterSpec.html" title="interface in java.security.spec">AlgorithmParameterSpec</a></pre>
<div class="block">
<span>指定该组由所需的参数<a href="../../../javax/crypto/Cipher.html" title="javax.crypto中的类"><code>Cipher</code></a>使用伽罗瓦/计数器模式GCM模式。</span>
<p> <span>简单的块密码模式如CBC通常仅需要初始化向量<code>IvParameterSpec</code> 但是GCM需要这些参数</span> </p>
<ul>
<li> <span><code>IV</code> 初始化向量IV</span> </li>
<li> <span><code>tLen</code> 认证标签T的长度以比特为单位</span> </li>
</ul>
<p> <span>除了这里描述的参数之外其他GCM输入/输出附加认证数据AAD密钥分组密码简单/密文和认证标签)都在<code>Cipher</code>类中处理。</span> </p>
<p> <span>有关具有关联数据AEAD算法的认证加密的更多信息以及<a href="http://csrc.nist.gov/publications/nistpubs/800-38D/SP-800-38D.pdf">NIST Special Publication 800-38D</a> “NIST推荐用于块密码操作模式伽罗瓦/计数器模式GCM和GMAC”的信息请参见<a href="http://www.ietf.org/rfc/rfc5116.txt">RFC 5116</a></span> </p>
<p> <span>GCM规范指出对于<code>tLen</code>应用程序, <code>tLen</code>可能只有值{ <code>tLen</code> }或{64,32}。</span> <span>可以为此类指定其他值但并不是所有的CSP实现都将支持它们。</span> </p>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.7
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/crypto/Cipher.html" title="javax.crypto中的类"><code>Cipher</code></a></span>
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- --> </a> <h3>构造方法摘要</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Constructor Summary table, listing constructors, and an explanation">
<caption>
<span>构造方法</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../javax/crypto/spec/GCMParameterSpec.html#GCMParameterSpec-int-byte:A-">GCMParameterSpec</a></span>(int tLen, byte[] src)</code>
<div class="block">
使用指定的认证标签位长度和IV缓冲区构造GCMParameterSpec。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../javax/crypto/spec/GCMParameterSpec.html#GCMParameterSpec-int-byte:A-int-int-">GCMParameterSpec</a></span>(int tLen, byte[] src, int offset, int len)</code>
<div class="block">
使用指定的身份验证标记位长度和指定缓冲区的子集作为IV构造一个GCMParameterSpec对象。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- --> </a> <h3>方法摘要</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Method Summary table, listing methods, and an explanation">
<caption>
<span class="activeTableTab" id="t0"><span>所有方法</span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t2"><span><a href="javascript:show(2);">接口方法</a></span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t4"><span><a href="javascript:show(8);">具体的方法</a></span><span class="tabEnd"> </span></span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor" id="i0">
<td class="colFirst"><code>byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/crypto/spec/GCMParameterSpec.html#getIV--">getIV</a></span>()</code>
<div class="block">
返回初始化向量IV
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/crypto/spec/GCMParameterSpec.html#getTLen--">getTLen</a></span>()</code>
<div class="block">
返回认证标签长度。
</div> </td>
</tr>
</tbody>
</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="../../../java/lang/Object.html" title="class in java.lang">Object</a></h3> <code><a href="../../../java/lang/Object.html#clone--">clone</a>, <a href="../../../java/lang/Object.html#equals-java.lang.Object-">equals</a>, <a href="../../../java/lang/Object.html#finalize--">finalize</a>, <a href="../../../java/lang/Object.html#getClass--">getClass</a>, <a href="../../../java/lang/Object.html#hashCode--">hashCode</a>, <a href="../../../java/lang/Object.html#notify--">notify</a>, <a href="../../../java/lang/Object.html#notifyAll--">notifyAll</a>, <a href="../../../java/lang/Object.html#toString--">toString</a>, <a href="../../../java/lang/Object.html#wait--">wait</a>, <a href="../../../java/lang/Object.html#wait-long-">wait</a>, <a href="../../../java/lang/Object.html#wait-long-int-">wait</a></code></li>
</ul> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- --> </a> <h3>构造方法详细信息</h3> <a name="GCMParameterSpec-int-byte:A-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>GCMParameterSpec</h4> <pre>public GCMParameterSpec(int tLen,
byte[] src)</pre>
<div class="block">
使用指定的认证标签位长度和IV缓冲区构造GCMParameterSpec。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>tLen</code> - 认证标签长度(以位为单位)
</dd>
<dd>
<span><code>src</code> - IV源缓冲区。</span>
<span>复制缓冲区的内容以防止后续修改。</span>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>tLen</code>为负数,或
<code>src</code>为空。
</dd>
</dl> </li>
</ul> <a name="GCMParameterSpec-int-byte:A-int-int-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>GCMParameterSpec</h4> <pre>public GCMParameterSpec(int tLen,
byte[] src,
int offset,
int len)</pre>
<div class="block">
使用指定的身份验证标记位长度和指定缓冲区的子集作为IV构造一个GCMParameterSpec对象。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>tLen</code> - 认证标签长度(以位为单位)
</dd>
<dd>
<span><code>src</code> - IV源缓冲区。</span>
<span>复制缓冲区的内容以防止后续修改。</span>
</dd>
<dd>
<code>offset</code> - 偏移在
<code>src</code>其中IV开始
</dd>
<dd>
<code>len</code> - IV字节数
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>tLen</code>为负,则
<code>src</code>为空,
<code>len</code>
<code>offset</code>为否定,或
<code>offset</code>
<code>len</code>的总和大于
<code>src</code>字节数组的长度。
</dd>
</dl> </li>
</ul> </li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="getTLen--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getTLen</h4> <pre>public int getTLen()</pre>
<div class="block">
返回认证标签长度。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
认证标签长度(以位为单位)
</dd>
</dl> </li>
</ul> <a name="getIV--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>getIV</h4> <pre>public byte[] getIV()</pre>
<div class="block">
返回初始化向量IV
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<span>四。</span>
<span>每次调用此方法时都会创建一个新数组。</span>
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>