📄 pdfencryption.html
字号:
<!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_04) on Sat May 17 11:57:49 CEST 2008 --><TITLE>PdfEncryption</TITLE><META NAME="date" CONTENT="2008-05-17"><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="PdfEncryption"; }}</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><a href="http://www.1t3xt.com/docs/book.php" target="_blank"><img src="http://www.1t3xt.com/img/book/lowagie_3d.jpg" border="0" /></a></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../com/lowagie/text/pdf/PdfEncodings.WingdingsConversion.html" title="class in com.lowagie.text.pdf"><B>PREV CLASS</B></A> <A HREF="../../../../com/lowagie/text/pdf/PdfEncryptor.html" title="class in com.lowagie.text.pdf"><B>NEXT CLASS</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../index.html?com/lowagie/text/pdf/PdfEncryption.html" target="_top"><B>FRAMES</B></A> <A HREF="PdfEncryption.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="#field_summary">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: <A HREF="#field_detail">FIELD</A> | <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">com.lowagie.text.pdf</FONT><BR>Class PdfEncryption</H2><PRE><A HREF="http://java.sun.com/j2se/1.4/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A> <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>com.lowagie.text.pdf.PdfEncryption</B></PRE><HR><DL><DT><PRE>public class <B>PdfEncryption</B><DT>extends <A HREF="http://java.sun.com/j2se/1.4/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></DL></PRE><P><DL><DT><B>Author:</B></DT> <DD>Paulo Soares (psoares@consiste.pt), Kazuya Ujihara</DD></DL><HR><P><!-- =========== FIELD SUMMARY =========== --><A NAME="field_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>Field Summary</B></FONT></TH></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#AES_128">AES_128</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>private <A HREF="../../../../com/lowagie/text/pdf/crypto/ARCFOUREncryption.html" title="class in com.lowagie.text.pdf.crypto">ARCFOUREncryption</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#arcfour">arcfour</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>private int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#cryptoMode">cryptoMode</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) byte[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#documentID">documentID</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>private boolean</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#encryptMetadata">encryptMetadata</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) byte[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#extra">extra</A></B></CODE><BR> Work area to prepare the object/generation bytes</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) byte[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#key">key</A></B></CODE><BR> The encryption key for a particular object/generation</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>private int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#keyLength">keyLength</A></B></CODE><BR> The generic key length.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#keySize">keySize</A></B></CODE><BR> The encryption key length for a particular object/generation</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) <A HREF="http://java.sun.com/j2se/1.4/docs/api/java/security/MessageDigest.html?is-external=true" title="class or interface in java.security">MessageDigest</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#md5">md5</A></B></CODE><BR> The message digest algorithm MD5</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>private static byte[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#metadataPad">metadataPad</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) byte[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#mkey">mkey</A></B></CODE><BR> The global encryption key</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) byte[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#ownerKey">ownerKey</A></B></CODE><BR> The encryption key for the owner</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>private static byte[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#pad">pad</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#permissions">permissions</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>protected <A HREF="../../../../com/lowagie/text/pdf/PdfPublicKeySecurityHandler.html" title="class in com.lowagie.text.pdf">PdfPublicKeySecurityHandler</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#publicKeyHandler">publicKeyHandler</A></B></CODE><BR> The public key security handler for certificate encryption</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>private int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#revision">revision</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>private static byte[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#salt">salt</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) static long</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#seq">seq</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#STANDARD_ENCRYPTION_128">STANDARD_ENCRYPTION_128</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#STANDARD_ENCRYPTION_40">STANDARD_ENCRYPTION_40</A></B></CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>(package private) byte[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#userKey">userKey</A></B></CODE><BR> The encryption key for the user</TD></TR></TABLE> <!-- ======== 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="../../../../com/lowagie/text/pdf/PdfEncryption.html#PdfEncryption()">PdfEncryption</A></B>()</CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#PdfEncryption(com.lowagie.text.pdf.PdfEncryption)">PdfEncryption</A></B>(<A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html" title="class in com.lowagie.text.pdf">PdfEncryption</A> enc)</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> void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#addRecipient(java.security.cert.Certificate, int)">addRecipient</A></B>(<A HREF="http://java.sun.com/j2se/1.4/docs/api/java/security/cert/Certificate.html?is-external=true" title="class or interface in java.security.cert">Certificate</A> cert, int permission)</CODE><BR> </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="../../../../com/lowagie/text/pdf/PdfEncryption.html#calculateStreamSize(int)">calculateStreamSize</A></B>(int n)</CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>private byte[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#computeOwnerKey(byte[], byte[])">computeOwnerKey</A></B>(byte[] userPad, byte[] ownerPad)</CODE><BR> </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="../../../../com/lowagie/text/pdf/PdfEncryption.html#computeUserPassword(byte[])">computeUserPassword</A></B>(byte[] ownerPassword)</CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static byte[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#createDocumentId()">createDocumentId</A></B>()</CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>static <A HREF="../../../../com/lowagie/text/pdf/PdfObject.html" title="class in com.lowagie.text.pdf">PdfObject</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#createInfoId(byte[])">createInfoId</A></B>(byte[] id)</CODE><BR> </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="../../../../com/lowagie/text/pdf/PdfEncryption.html#decryptByteArray(byte[])">decryptByteArray</A></B>(byte[] b)</CODE><BR> </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="../../../../com/lowagie/text/pdf/PdfEncryption.html#encryptByteArray(byte[])">encryptByteArray</A></B>(byte[] b)</CODE><BR> </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="../../../../com/lowagie/text/pdf/PdfEncryption.html#getCryptoMode()">getCryptoMode</A></B>()</CODE><BR> </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> <A HREF="../../../../com/lowagie/text/pdf/StandardDecryption.html" title="class in com.lowagie.text.pdf">StandardDecryption</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../../com/lowagie/text/pdf/PdfEncryption.html#getDecryptor()">getDecryptor</A></B>()</CODE>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -