/lib/bouncycastle/docs/org/bouncycastle/crypto/modes/GCMBlockCipher.html
https://bitbucket.org/arkban/somersault · HTML · 550 lines · 473 code · 55 blank · 22 comment · 0 complexity · 9db3a692198f62faef6e75a1bfdbb4f6 MD5 · raw file
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <!--NewPage-->
- <HTML>
- <HEAD>
- <!-- Generated by javadoc (build 1.6.0) on Mon Jan 11 13:46:36 EST 2010 -->
- <TITLE>
- GCMBlockCipher (Bouncy Castle Library 1.45 API Specification)
- </TITLE>
- <META NAME="date" CONTENT="2010-01-11">
- <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
- <SCRIPT type="text/javascript">
- function windowTitle()
- {
- if (location.href.indexOf('is-external=true') == -1) {
- parent.document.title="GCMBlockCipher (Bouncy Castle Library 1.45 API Specification)";
- }
- }
- </SCRIPT>
- <NOSCRIPT>
- </NOSCRIPT>
- </HEAD>
- <BODY BGCOLOR="white" onload="windowTitle();">
- <HR>
- <!-- ========= START OF TOP NAVBAR ======= -->
- <A NAME="navbar_top"><!-- --></A>
- <A HREF="#skip-navbar_top" title="Skip navigation links"></A>
- <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
- <TR>
- <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
- <A NAME="navbar_top_firstrow"><!-- --></A>
- <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
- <TR ALIGN="center" VALIGN="top">
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
- <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
- </TR>
- </TABLE>
- </TD>
- <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
- <b>Bouncy Castle Cryptography Library 1.45</b></EM>
- </TD>
- </TR>
- <TR>
- <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
- <A HREF="../../../../org/bouncycastle/crypto/modes/EAXBlockCipher.html" title="class in org.bouncycastle.crypto.modes"><B>PREV CLASS</B></A>
- <A HREF="../../../../org/bouncycastle/crypto/modes/GOFBBlockCipher.html" title="class in org.bouncycastle.crypto.modes"><B>NEXT CLASS</B></A></FONT></TD>
- <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
- <A HREF="../../../../index.html?org/bouncycastle/crypto/modes/GCMBlockCipher.html" target="_top"><B>FRAMES</B></A>
- <A HREF="GCMBlockCipher.html" target="_top"><B>NO FRAMES</B></A>
- <SCRIPT type="text/javascript">
- <!--
- if(window==top) {
- document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
- }
- //-->
- </SCRIPT>
- <NOSCRIPT>
- <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
- </NOSCRIPT>
- </FONT></TD>
- </TR>
- <TR>
- <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
- SUMMARY: NESTED | FIELD | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
- <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
- DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
- </TR>
- </TABLE>
- <A NAME="skip-navbar_top"></A>
- <!-- ========= END OF TOP NAVBAR ========= -->
- <HR>
- <!-- ======== START OF CLASS DATA ======== -->
- <H2>
- <FONT SIZE="-1">
- org.bouncycastle.crypto.modes</FONT>
- <BR>
- Class GCMBlockCipher</H2>
- <PRE>
- java.lang.Object
- <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.bouncycastle.crypto.modes.GCMBlockCipher</B>
- </PRE>
- <DL>
- <DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></DD>
- </DL>
- <HR>
- <DL>
- <DT><PRE>public class <B>GCMBlockCipher</B><DT>extends java.lang.Object<DT>implements <A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></DL>
- </PRE>
- <P>
- Implements the Galois/Counter mode (GCM) detailed in
- NIST Special Publication 800-38D.
- <P>
- <P>
- <HR>
- <P>
- <!-- ======== CONSTRUCTOR SUMMARY ======== -->
- <A NAME="constructor_summary"><!-- --></A>
- <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
- <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
- <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
- <B>Constructor Summary</B></FONT></TH>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#GCMBlockCipher(org.bouncycastle.crypto.BlockCipher)">GCMBlockCipher</A></B>(<A HREF="../../../../org/bouncycastle/crypto/BlockCipher.html" title="interface in org.bouncycastle.crypto">BlockCipher</A> c)</CODE>
- <BR>
- </TD>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#GCMBlockCipher(org.bouncycastle.crypto.BlockCipher, org.bouncycastle.crypto.modes.gcm.GCMMultiplier)">GCMBlockCipher</A></B>(<A HREF="../../../../org/bouncycastle/crypto/BlockCipher.html" title="interface in org.bouncycastle.crypto">BlockCipher</A> c,
- <A HREF="../../../../org/bouncycastle/crypto/modes/gcm/GCMMultiplier.html" title="interface in org.bouncycastle.crypto.modes.gcm">GCMMultiplier</A> m)</CODE>
- <BR>
- </TD>
- </TR>
- </TABLE>
-
- <!-- ========== METHOD SUMMARY =========== -->
- <A NAME="method_summary"><!-- --></A>
- <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
- <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
- <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
- <B>Method Summary</B></FONT></TH>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
- <CODE> int</CODE></FONT></TD>
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#doFinal(byte[], int)">doFinal</A></B>(byte[] out,
- int outOff)</CODE>
- <BR>
- Finish the operation either appending or verifying the MAC at the end of the data.</TD>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
- <CODE> java.lang.String</CODE></FONT></TD>
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#getAlgorithmName()">getAlgorithmName</A></B>()</CODE>
- <BR>
- Return the name of the algorithm.</TD>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
- <CODE> byte[]</CODE></FONT></TD>
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#getMac()">getMac</A></B>()</CODE>
- <BR>
- Return the value of the MAC associated with the last stream processed.</TD>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
- <CODE> int</CODE></FONT></TD>
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#getOutputSize(int)">getOutputSize</A></B>(int len)</CODE>
- <BR>
- return the size of the output buffer required for a processBytes plus a
- doFinal with an input of len bytes.</TD>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
- <CODE> <A HREF="../../../../org/bouncycastle/crypto/BlockCipher.html" title="interface in org.bouncycastle.crypto">BlockCipher</A></CODE></FONT></TD>
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#getUnderlyingCipher()">getUnderlyingCipher</A></B>()</CODE>
- <BR>
- return the cipher this object wraps.</TD>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
- <CODE> int</CODE></FONT></TD>
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#getUpdateOutputSize(int)">getUpdateOutputSize</A></B>(int len)</CODE>
- <BR>
- return the size of the output buffer required for a processBytes
- an input of len bytes.</TD>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
- <CODE> void</CODE></FONT></TD>
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#init(boolean, org.bouncycastle.crypto.CipherParameters)">init</A></B>(boolean forEncryption,
- <A HREF="../../../../org/bouncycastle/crypto/CipherParameters.html" title="interface in org.bouncycastle.crypto">CipherParameters</A> params)</CODE>
- <BR>
- initialise the underlying cipher.</TD>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
- <CODE> int</CODE></FONT></TD>
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#processByte(byte, byte[], int)">processByte</A></B>(byte in,
- byte[] out,
- int outOff)</CODE>
- <BR>
- encrypt/decrypt a single byte.</TD>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
- <CODE> int</CODE></FONT></TD>
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#processBytes(byte[], int, int, byte[], int)">processBytes</A></B>(byte[] in,
- int inOff,
- int len,
- byte[] out,
- int outOff)</CODE>
- <BR>
- process a block of bytes from in putting the result into out.</TD>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
- <CODE> void</CODE></FONT></TD>
- <TD><CODE><B><A HREF="../../../../org/bouncycastle/crypto/modes/GCMBlockCipher.html#reset()">reset</A></B>()</CODE>
- <BR>
- Reset the cipher.</TD>
- </TR>
- </TABLE>
- <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
- <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
- <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
- <TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
- </TR>
- <TR BGCOLOR="white" CLASS="TableRowColor">
- <TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
- </TR>
- </TABLE>
-
- <P>
- <!-- ========= CONSTRUCTOR DETAIL ======== -->
- <A NAME="constructor_detail"><!-- --></A>
- <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
- <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
- <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
- <B>Constructor Detail</B></FONT></TH>
- </TR>
- </TABLE>
- <A NAME="GCMBlockCipher(org.bouncycastle.crypto.BlockCipher)"><!-- --></A><H3>
- GCMBlockCipher</H3>
- <PRE>
- public <B>GCMBlockCipher</B>(<A HREF="../../../../org/bouncycastle/crypto/BlockCipher.html" title="interface in org.bouncycastle.crypto">BlockCipher</A> c)</PRE>
- <DL>
- </DL>
- <HR>
- <A NAME="GCMBlockCipher(org.bouncycastle.crypto.BlockCipher, org.bouncycastle.crypto.modes.gcm.GCMMultiplier)"><!-- --></A><H3>
- GCMBlockCipher</H3>
- <PRE>
- public <B>GCMBlockCipher</B>(<A HREF="../../../../org/bouncycastle/crypto/BlockCipher.html" title="interface in org.bouncycastle.crypto">BlockCipher</A> c,
- <A HREF="../../../../org/bouncycastle/crypto/modes/gcm/GCMMultiplier.html" title="interface in org.bouncycastle.crypto.modes.gcm">GCMMultiplier</A> m)</PRE>
- <DL>
- </DL>
- <!-- ============ METHOD DETAIL ========== -->
- <A NAME="method_detail"><!-- --></A>
- <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
- <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
- <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
- <B>Method Detail</B></FONT></TH>
- </TR>
- </TABLE>
- <A NAME="getUnderlyingCipher()"><!-- --></A><H3>
- getUnderlyingCipher</H3>
- <PRE>
- public <A HREF="../../../../org/bouncycastle/crypto/BlockCipher.html" title="interface in org.bouncycastle.crypto">BlockCipher</A> <B>getUnderlyingCipher</B>()</PRE>
- <DL>
- <DD><B>Description copied from interface: <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#getUnderlyingCipher()">AEADBlockCipher</A></CODE></B></DD>
- <DD>return the cipher this object wraps.
- <P>
- <DD><DL>
- <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#getUnderlyingCipher()">getUnderlyingCipher</A></CODE> in interface <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></CODE></DL>
- </DD>
- <DD><DL>
- <DT><B>Returns:</B><DD>the cipher this object wraps.</DL>
- </DD>
- </DL>
- <HR>
- <A NAME="getAlgorithmName()"><!-- --></A><H3>
- getAlgorithmName</H3>
- <PRE>
- public java.lang.String <B>getAlgorithmName</B>()</PRE>
- <DL>
- <DD><B>Description copied from interface: <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#getAlgorithmName()">AEADBlockCipher</A></CODE></B></DD>
- <DD>Return the name of the algorithm.
- <P>
- <DD><DL>
- <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#getAlgorithmName()">getAlgorithmName</A></CODE> in interface <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></CODE></DL>
- </DD>
- <DD><DL>
- <DT><B>Returns:</B><DD>the algorithm name.</DL>
- </DD>
- </DL>
- <HR>
- <A NAME="init(boolean, org.bouncycastle.crypto.CipherParameters)"><!-- --></A><H3>
- init</H3>
- <PRE>
- public void <B>init</B>(boolean forEncryption,
- <A HREF="../../../../org/bouncycastle/crypto/CipherParameters.html" title="interface in org.bouncycastle.crypto">CipherParameters</A> params)
- throws java.lang.IllegalArgumentException</PRE>
- <DL>
- <DD><B>Description copied from interface: <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#init(boolean, org.bouncycastle.crypto.CipherParameters)">AEADBlockCipher</A></CODE></B></DD>
- <DD>initialise the underlying cipher. Parameter can either be an AEADParameters or a ParametersWithIV object.
- <P>
- <DD><DL>
- <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#init(boolean, org.bouncycastle.crypto.CipherParameters)">init</A></CODE> in interface <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></CODE></DL>
- </DD>
- <DD><DL>
- <DT><B>Parameters:</B><DD><CODE>forEncryption</CODE> - true if we are setting up for encryption, false otherwise.<DD><CODE>params</CODE> - the necessary parameters for the underlying cipher to be initialised.
- <DT><B>Throws:</B>
- <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the params argument is inappropriate.</DL>
- </DD>
- </DL>
- <HR>
- <A NAME="getMac()"><!-- --></A><H3>
- getMac</H3>
- <PRE>
- public byte[] <B>getMac</B>()</PRE>
- <DL>
- <DD><B>Description copied from interface: <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#getMac()">AEADBlockCipher</A></CODE></B></DD>
- <DD>Return the value of the MAC associated with the last stream processed.
- <P>
- <DD><DL>
- <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#getMac()">getMac</A></CODE> in interface <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></CODE></DL>
- </DD>
- <DD><DL>
- <DT><B>Returns:</B><DD>MAC for plaintext data.</DL>
- </DD>
- </DL>
- <HR>
- <A NAME="getOutputSize(int)"><!-- --></A><H3>
- getOutputSize</H3>
- <PRE>
- public int <B>getOutputSize</B>(int len)</PRE>
- <DL>
- <DD><B>Description copied from interface: <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#getOutputSize(int)">AEADBlockCipher</A></CODE></B></DD>
- <DD>return the size of the output buffer required for a processBytes plus a
- doFinal with an input of len bytes.
- <P>
- <DD><DL>
- <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#getOutputSize(int)">getOutputSize</A></CODE> in interface <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></CODE></DL>
- </DD>
- <DD><DL>
- <DT><B>Parameters:</B><DD><CODE>len</CODE> - the length of the input.
- <DT><B>Returns:</B><DD>the space required to accommodate a call to processBytes and doFinal
- with len bytes of input.</DL>
- </DD>
- </DL>
- <HR>
- <A NAME="getUpdateOutputSize(int)"><!-- --></A><H3>
- getUpdateOutputSize</H3>
- <PRE>
- public int <B>getUpdateOutputSize</B>(int len)</PRE>
- <DL>
- <DD><B>Description copied from interface: <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#getUpdateOutputSize(int)">AEADBlockCipher</A></CODE></B></DD>
- <DD>return the size of the output buffer required for a processBytes
- an input of len bytes.
- <P>
- <DD><DL>
- <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#getUpdateOutputSize(int)">getUpdateOutputSize</A></CODE> in interface <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></CODE></DL>
- </DD>
- <DD><DL>
- <DT><B>Parameters:</B><DD><CODE>len</CODE> - the length of the input.
- <DT><B>Returns:</B><DD>the space required to accommodate a call to processBytes
- with len bytes of input.</DL>
- </DD>
- </DL>
- <HR>
- <A NAME="processByte(byte, byte[], int)"><!-- --></A><H3>
- processByte</H3>
- <PRE>
- public int <B>processByte</B>(byte in,
- byte[] out,
- int outOff)
- throws <A HREF="../../../../org/bouncycastle/crypto/DataLengthException.html" title="class in org.bouncycastle.crypto">DataLengthException</A></PRE>
- <DL>
- <DD><B>Description copied from interface: <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#processByte(byte, byte[], int)">AEADBlockCipher</A></CODE></B></DD>
- <DD>encrypt/decrypt a single byte.
- <P>
- <DD><DL>
- <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#processByte(byte, byte[], int)">processByte</A></CODE> in interface <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></CODE></DL>
- </DD>
- <DD><DL>
- <DT><B>Parameters:</B><DD><CODE>in</CODE> - the byte to be processed.<DD><CODE>out</CODE> - the output buffer the processed byte goes into.<DD><CODE>outOff</CODE> - the offset into the output byte array the processed data starts at.
- <DT><B>Returns:</B><DD>the number of bytes written to out.
- <DT><B>Throws:</B>
- <DD><CODE><A HREF="../../../../org/bouncycastle/crypto/DataLengthException.html" title="class in org.bouncycastle.crypto">DataLengthException</A></CODE> - if the output buffer is too small.</DL>
- </DD>
- </DL>
- <HR>
- <A NAME="processBytes(byte[], int, int, byte[], int)"><!-- --></A><H3>
- processBytes</H3>
- <PRE>
- public int <B>processBytes</B>(byte[] in,
- int inOff,
- int len,
- byte[] out,
- int outOff)
- throws <A HREF="../../../../org/bouncycastle/crypto/DataLengthException.html" title="class in org.bouncycastle.crypto">DataLengthException</A></PRE>
- <DL>
- <DD><B>Description copied from interface: <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#processBytes(byte[], int, int, byte[], int)">AEADBlockCipher</A></CODE></B></DD>
- <DD>process a block of bytes from in putting the result into out.
- <P>
- <DD><DL>
- <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#processBytes(byte[], int, int, byte[], int)">processBytes</A></CODE> in interface <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></CODE></DL>
- </DD>
- <DD><DL>
- <DT><B>Parameters:</B><DD><CODE>in</CODE> - the input byte array.<DD><CODE>inOff</CODE> - the offset into the in array where the data to be processed starts.<DD><CODE>len</CODE> - the number of bytes to be processed.<DD><CODE>out</CODE> - the output buffer the processed bytes go into.<DD><CODE>outOff</CODE> - the offset into the output byte array the processed data starts at.
- <DT><B>Returns:</B><DD>the number of bytes written to out.
- <DT><B>Throws:</B>
- <DD><CODE><A HREF="../../../../org/bouncycastle/crypto/DataLengthException.html" title="class in org.bouncycastle.crypto">DataLengthException</A></CODE> - if the output buffer is too small.</DL>
- </DD>
- </DL>
- <HR>
- <A NAME="doFinal(byte[], int)"><!-- --></A><H3>
- doFinal</H3>
- <PRE>
- public int <B>doFinal</B>(byte[] out,
- int outOff)
- throws java.lang.IllegalStateException,
- <A HREF="../../../../org/bouncycastle/crypto/InvalidCipherTextException.html" title="class in org.bouncycastle.crypto">InvalidCipherTextException</A></PRE>
- <DL>
- <DD><B>Description copied from interface: <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#doFinal(byte[], int)">AEADBlockCipher</A></CODE></B></DD>
- <DD>Finish the operation either appending or verifying the MAC at the end of the data.
- <P>
- <DD><DL>
- <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#doFinal(byte[], int)">doFinal</A></CODE> in interface <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></CODE></DL>
- </DD>
- <DD><DL>
- <DT><B>Parameters:</B><DD><CODE>out</CODE> - space for any resulting output data.<DD><CODE>outOff</CODE> - offset into out to start copying the data at.
- <DT><B>Returns:</B><DD>number of bytes written into out.
- <DT><B>Throws:</B>
- <DD><CODE>java.lang.IllegalStateException</CODE> - if the cipher is in an inappropriate state.
- <DD><CODE><A HREF="../../../../org/bouncycastle/crypto/InvalidCipherTextException.html" title="class in org.bouncycastle.crypto">InvalidCipherTextException</A></CODE> - if the MAC fails to match.</DL>
- </DD>
- </DL>
- <HR>
- <A NAME="reset()"><!-- --></A><H3>
- reset</H3>
- <PRE>
- public void <B>reset</B>()</PRE>
- <DL>
- <DD><B>Description copied from interface: <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#reset()">AEADBlockCipher</A></CODE></B></DD>
- <DD>Reset the cipher. After resetting the cipher is in the same state
- as it was after the last init (if there was one).
- <P>
- <DD><DL>
- <DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html#reset()">reset</A></CODE> in interface <CODE><A HREF="../../../../org/bouncycastle/crypto/modes/AEADBlockCipher.html" title="interface in org.bouncycastle.crypto.modes">AEADBlockCipher</A></CODE></DL>
- </DD>
- <DD><DL>
- </DL>
- </DD>
- </DL>
- <!-- ========= END OF CLASS DATA ========= -->
- <HR>
- <!-- ======= START OF BOTTOM NAVBAR ====== -->
- <A NAME="navbar_bottom"><!-- --></A>
- <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
- <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
- <TR>
- <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
- <A NAME="navbar_bottom_firstrow"><!-- --></A>
- <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
- <TR ALIGN="center" VALIGN="top">
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
- <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
- <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
- </TR>
- </TABLE>
- </TD>
- <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
- <b>Bouncy Castle Cryptography Library 1.45</b></EM>
- </TD>
- </TR>
- <TR>
- <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
- <A HREF="../../../../org/bouncycastle/crypto/modes/EAXBlockCipher.html" title="class in org.bouncycastle.crypto.modes"><B>PREV CLASS</B></A>
- <A HREF="../../../../org/bouncycastle/crypto/modes/GOFBBlockCipher.html" title="class in org.bouncycastle.crypto.modes"><B>NEXT CLASS</B></A></FONT></TD>
- <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
- <A HREF="../../../../index.html?org/bouncycastle/crypto/modes/GCMBlockCipher.html" target="_top"><B>FRAMES</B></A>
- <A HREF="GCMBlockCipher.html" target="_top"><B>NO FRAMES</B></A>
- <SCRIPT type="text/javascript">
- <!--
- if(window==top) {
- document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
- }
- //-->
- </SCRIPT>
- <NOSCRIPT>
- <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
- </NOSCRIPT>
- </FONT></TD>
- </TR>
- <TR>
- <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
- SUMMARY: NESTED | FIELD | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
- <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
- DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
- </TR>
- </TABLE>
- <A NAME="skip-navbar_bottom"></A>
- <!-- ======== END OF BOTTOM NAVBAR ======= -->
- <HR>
- </BODY>
- </HTML>