📄 paddedbufferedblockcipher.html
字号:
<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="PaddedBufferedBlockCipher(org.bouncycastle.crypto.BlockCipher, org.bouncycastle.crypto.paddings.BlockCipherPadding)"><!-- --></A><H3>PaddedBufferedBlockCipher</H3><PRE>public <B>PaddedBufferedBlockCipher</B>(<A HREF="../../../../org/bouncycastle/crypto/BlockCipher.html" title="interface in org.bouncycastle.crypto">BlockCipher</A> cipher, <A HREF="../../../../org/bouncycastle/crypto/paddings/BlockCipherPadding.html" title="interface in org.bouncycastle.crypto.paddings">BlockCipherPadding</A> padding)</PRE><DL><DD>Create a buffered block cipher with the desired padding.<P><DL><DT><B>Parameters:</B><DD><CODE>cipher</CODE> - the underlying block cipher this buffering object wraps.<DD><CODE>padding</CODE> - the padding type.</DL></DL><HR><A NAME="PaddedBufferedBlockCipher(org.bouncycastle.crypto.BlockCipher)"><!-- --></A><H3>PaddedBufferedBlockCipher</H3><PRE>public <B>PaddedBufferedBlockCipher</B>(<A HREF="../../../../org/bouncycastle/crypto/BlockCipher.html" title="interface in org.bouncycastle.crypto">BlockCipher</A> cipher)</PRE><DL><DD>Create a buffered block cipher PKCS7 padding<P><DL><DT><B>Parameters:</B><DD><CODE>cipher</CODE> - the underlying block cipher this buffering object wraps.</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="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>initialise the cipher.<P><DD><DL><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html#init(boolean, org.bouncycastle.crypto.CipherParameters)">init</A></CODE> in class <CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html" title="class in org.bouncycastle.crypto">BufferedBlockCipher</A></CODE></DL></DD><DD><DL><DT><B>Parameters:</B><DD><CODE>forEncryption</CODE> - if true the cipher is initialised for encryption, if false for decryption.<DD><CODE>params</CODE> - the key and other data required by the cipher.<DT><B>Throws:</B><DD><CODE>java.lang.IllegalArgumentException</CODE> - if the params argument is inappropriate.</DL></DD></DL><HR><A NAME="getOutputSize(int)"><!-- --></A><H3>getOutputSize</H3><PRE>public int <B>getOutputSize</B>(int len)</PRE><DL><DD>return the minimum size of the output buffer required for an update plus a doFinal with an input of len bytes.<P><DD><DL><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html#getOutputSize(int)">getOutputSize</A></CODE> in class <CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html" title="class in org.bouncycastle.crypto">BufferedBlockCipher</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 update 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>return the size of the output buffer required for an update an input of len bytes.<P><DD><DL><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html#getUpdateOutputSize(int)">getUpdateOutputSize</A></CODE> in class <CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html" title="class in org.bouncycastle.crypto">BufferedBlockCipher</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 update 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>, java.lang.IllegalStateException</PRE><DL><DD>process a single byte, producing an output block if neccessary.<P><DD><DL><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html#processByte(byte, byte[], int)">processByte</A></CODE> in class <CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html" title="class in org.bouncycastle.crypto">BufferedBlockCipher</A></CODE></DL></DD><DD><DL><DT><B>Parameters:</B><DD><CODE>in</CODE> - the input byte.<DD><CODE>out</CODE> - the space for any output that might be produced.<DD><CODE>outOff</CODE> - the offset from which the output will be copied.<DT><B>Returns:</B><DD>the number of output bytes copied 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 there isn't enough space in out.<DD><CODE>java.lang.IllegalStateException</CODE> - if the cipher isn't initialised.</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>, java.lang.IllegalStateException</PRE><DL><DD>process an array of bytes, producing output if necessary.<P><DD><DL><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html#processBytes(byte[], int, int, byte[], int)">processBytes</A></CODE> in class <CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html" title="class in org.bouncycastle.crypto">BufferedBlockCipher</A></CODE></DL></DD><DD><DL><DT><B>Parameters:</B><DD><CODE>in</CODE> - the input byte array.<DD><CODE>inOff</CODE> - the offset at which the input data starts.<DD><CODE>len</CODE> - the number of bytes to be copied out of the input array.<DD><CODE>out</CODE> - the space for any output that might be produced.<DD><CODE>outOff</CODE> - the offset from which the output will be copied.<DT><B>Returns:</B><DD>the number of output bytes copied 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 there isn't enough space in out.<DD><CODE>java.lang.IllegalStateException</CODE> - if the cipher isn't initialised.</DL></DD></DL><HR><A NAME="doFinal(byte[], int)"><!-- --></A><H3>doFinal</H3><PRE>public int <B>doFinal</B>(byte[] out, int outOff) throws <A HREF="../../../../org/bouncycastle/crypto/DataLengthException.html" title="class in org.bouncycastle.crypto">DataLengthException</A>, java.lang.IllegalStateException, <A HREF="../../../../org/bouncycastle/crypto/InvalidCipherTextException.html" title="class in org.bouncycastle.crypto">InvalidCipherTextException</A></PRE><DL><DD>Process the last block in the buffer. If the buffer is currently full and padding needs to be added a call to doFinal will produce 2 * getBlockSize() bytes.<P><DD><DL><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html#doFinal(byte[], int)">doFinal</A></CODE> in class <CODE><A HREF="../../../../org/bouncycastle/crypto/BufferedBlockCipher.html" title="class in org.bouncycastle.crypto">BufferedBlockCipher</A></CODE></DL></DD><DD><DL><DT><B>Parameters:</B><DD><CODE>out</CODE> - the array the block currently being held is copied into.<DD><CODE>outOff</CODE> - the offset at which the copying starts.<DT><B>Returns:</B><DD>the number of output bytes copied 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 there is insufficient space in out for the output or we are decrypting and the input is not block size aligned.<DD><CODE>java.lang.IllegalStateException</CODE> - if the underlying cipher is not initialised.<DD><CODE><A HREF="../../../../org/bouncycastle/crypto/InvalidCipherTextException.html" title="class in org.bouncycastle.crypto">InvalidCipherTextException</A></CODE> - if padding is expected and not found.</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.38</b></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../org/bouncycastle/crypto/paddings/ISO7816d4Padding.html" title="class in org.bouncycastle.crypto.paddings"><B>PREV CLASS</B></A> <A HREF="../../../../org/bouncycastle/crypto/paddings/PKCS7Padding.html" title="class in org.bouncycastle.crypto.paddings"><B>NEXT CLASS</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../index.html?org/bouncycastle/crypto/paddings/PaddedBufferedBlockCipher.html" target="_top"><B>FRAMES</B></A> <A HREF="PaddedBufferedBlockCipher.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 | <A HREF="#fields_inherited_from_class_org.bouncycastle.crypto.BufferedBlockCipher">FIELD</A> | <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>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -