Foxit PDF SDK
com.foxit.sdk.pdf.StdSecurityHandler类 参考
类 com.foxit.sdk.pdf.StdSecurityHandler 继承关系图:
com.foxit.sdk.pdf.SecurityHandler com.foxit.sdk.common.Base

Public 成员函数

 StdSecurityHandler ()
 构造函数。

 
 StdSecurityHandler (SecurityHandler other)
 构造函数,使用父类对象。
更多...
 
synchronized void delete ()
 直接清除C++相关资源。 更多...
 
boolean initialize (StdEncryptData encrypt_data, byte[] user_password, byte[] owner_password) throws com.foxit.sdk.PDFException
 (不支持AES-256)初始化当前标准安全处理器。
更多...
 
boolean initializeW (StdEncryptData encrypt_data, String user_password, String owner_password) throws com.foxit.sdk.PDFException
 (仅适用于AES-256)初始化当前标准安全处理器。
更多...
 
void setAES256ModifyFlags (int modify_flags) throws com.foxit.sdk.PDFException
 (仅适用于AES-256)设置修改标志以决定在加密过程中哪些安全数据或密码将被修改。
更多...
 
- Public 成员函数 继承自 com.foxit.sdk.pdf.SecurityHandler
 SecurityHandler ()
 构造函数。

 
 SecurityHandler (SecurityHandler other)
 用另一个安全处理器对象的构造函数。
更多...
 
int getSecurityType ()
 获取当前安全处理器的加密类型。
更多...
 
boolean isEmpty ()
 检查当前对象是否为空。
更多...
 

静态 Public 属性

static final int e_ModifyOwnerPassword = 0x04
 如果设置,在加密过程中将仅修改所有者密码。

 
static final int e_ModifyPermission = 0x01
 如果设置,在加密过程中将修改用户权限和"是否加密元数据"值(在 StdEncryptData 中定义)。

 
static final int e_ModifyUserPassword = 0x02
 如果设置,在加密过程中将修改用户密码和所有者密码。

 
- 静态 Public 属性 继承自 com.foxit.sdk.pdf.SecurityHandler
static final int e_CipherAES = 2
 使用AES加密算法,密钥长度为16字节(AES-128)或 32字节(AES-256,仅在PDF 2.0中支持)。

 
static final int e_CipherNone = 0
 不使用加密算法。

 
static final int e_CipherRC4 = 1
 使用RC4加密算法,密钥长度在5字节到16字节之间。

 

详细描述

此类表示标准安全处理器,用于密码加密。

参见
SecurityHandler

构造及析构函数说明

◆ StdSecurityHandler()

com.foxit.sdk.pdf.StdSecurityHandler.StdSecurityHandler ( SecurityHandler  other)

构造函数,使用父类对象。

参数
[in]other父类对象。

成员函数说明

◆ delete()

synchronized void com.foxit.sdk.pdf.StdSecurityHandler.delete ( )

直接清除C++相关资源。

返回
无。
注解
一旦这个接口被调用,这个对象将不能再被使用。

重载 com.foxit.sdk.pdf.SecurityHandler .

◆ initialize()

boolean com.foxit.sdk.pdf.StdSecurityHandler.initialize ( StdEncryptData  encrypt_data,
byte[]  user_password,
byte[]  owner_password 
) throws com.foxit.sdk.PDFException

(不支持AES-256)初始化当前标准安全处理器。

参数
[in]user_password用户密码,用于打开PDF文档。当参数 owner_password 不为空时,此密码可以为空。
[in]owner_password所有者密码,用于获取PDF文档的所有权。当参数 user_password 不为空时,此密码可以为空。
[in]encrypt_data标准加密数据对象。在加密数据中,密码类型不应为 com.foxit.sdk.pdf.SecurityHandler.e_CipherNone ,或密钥长度为32的 com.foxit.sdk.pdf.SecurityHandler.e_CipherAES (即不支持AES-256)。请参考类 StdEncryptData 的注释以确保每个成员的有效性。
返回
true 表示成功,false 表示失败。

◆ initializeW()

boolean com.foxit.sdk.pdf.StdSecurityHandler.initializeW ( StdEncryptData  encrypt_data,
String  user_password,
String  owner_password 
) throws com.foxit.sdk.PDFException

(仅适用于AES-256)初始化当前标准安全处理器。

参数
[in]user_password用户密码,用于打开PDF文档。当参数 owner_password 不为空时,此密码可以为空。
[in]owner_password所有者密码,用于获取PDF文档的所有权。当参数 user_password 不为空时,此密码可以为空。
[in]encrypt_data标准加密数据对象。在加密数据中,密码类型应为 com.foxit.sdk.pdf.SecurityHandler.e_CipherAES 且密钥长度应为32。
返回
true 表示成功,false 表示失败。

◆ setAES256ModifyFlags()

void com.foxit.sdk.pdf.StdSecurityHandler.setAES256ModifyFlags ( int  modify_flags) throws com.foxit.sdk.PDFException

(仅适用于AES-256)设置修改标志以决定在加密过程中哪些安全数据或密码将被修改。

修改标志仅在PDF文档已使用AES-256加密且当前 StdSecurityHandler 对象将用于修改此PDF文档的某些安全数据或密码时有用。对于其他情况,在加密过程中这些修改标志将被忽略。安全数据和密码通过函数 StdSecurityHandler::InitializeW 设置。如果当前 StdSecurityHandler 对象未调用此函数,这意味着默认修改所有安全数据和密码。

参数
[in]modify_flags修改标志,用于决定在加密过程中哪些安全数据或密码将被修改。请参考从 com.foxit.sdk.pdf.StdSecurityHandler.e_ModifyPermission 开始的值,应该是这些值中的一个或多个的组合。
返回
无。