foxit::pdf::DRMSecurityHandler Class Reference
Inheritance diagram for foxit::pdf::DRMSecurityHandler:
foxit::pdf::SecurityHandler foxit::Base

Public Member Functions

 DRMSecurityHandler ()
 Constructor function.
 
 DRMSecurityHandler (const foxit::pdf::SecurityHandler &other)
 Constructor, with parent class object. More...
 
WString GetDRMValue (const char *key)
 Get the DRM value for a specified parameter. More...
 
bool Initialize (const DRMEncryptData &encrypt_data, const char *file_id, const String &initial_key)
 Initialize current DRM security handler. More...
 
bool SetDRMValue (const char *key, const WString &value)
 Set the DRM value for a specified parameter. More...
 
bool VerifyEncryptionParams ()
 Verify encryption parameters. More...
 
- Public Member Functions inherited from foxit::pdf::SecurityHandler
 SecurityHandler ()
 Constructor.
 
 SecurityHandler (const SecurityHandler &other)
 Constructor, with another SecurityHandler object. More...
 
virtual ~SecurityHandler ()
 Destructor.
 
virtual PDFDoc::EncryptType GetSecurityType ()
 Get the encryption type of current security handler. More...
 
bool IsEmpty () const
 Check whether current object is empty or not. More...
 
bool operator!= (const SecurityHandler &other)
 Not equal operator. More...
 
SecurityHandleroperator= (const SecurityHandler &other)
 Assign operator. More...
 
bool operator== (const SecurityHandler &other)
 Equal operator. More...
 
- Public Member Functions inherited from foxit::Base
FS_HANDLE Handle () const
 Get the handle of current object. More...
 

Additional Inherited Members

- Public Types inherited from foxit::pdf::SecurityHandler
enum  CipherType { e_CipherNone = 0, e_CipherRC4 = 1, e_CipherAES = 2 }
 Enumeration for Encryption Algorithm. More...
 

Detailed Description

This class represents a Foxit DRM(Digital Right Management) security handler, used for Foxit DRM encryption.

See also
SecurityHandler

Constructor & Destructor Documentation

◆ DRMSecurityHandler()

foxit::pdf::DRMSecurityHandler::DRMSecurityHandler ( const foxit::pdf::SecurityHandler other)
explicit

Constructor, with parent class object.

Parameters
[in]otherParent class object.

Member Function Documentation

◆ GetDRMValue()

WString foxit::pdf::DRMSecurityHandler::GetDRMValue ( const char *  key)

Get the DRM value for a specified parameter.

Parameters
[in]keyA parameter string as the key name. It should not be an empty string. Followings are pre-defined key names:
  • Issuer: issuer name.
  • Creator: creator of this file.
  • FileID: file ID.
  • FlowCode: flow code for application control.
  • Order: order number.
  • User: user name.
  • ServiceURL: service URL for remote server.
  • Vender: vender name.
Returns
The value string for a specified parameter.

◆ Initialize()

bool foxit::pdf::DRMSecurityHandler::Initialize ( const DRMEncryptData encrypt_data,
const char *  file_id,
const String initial_key 
)

Initialize current DRM security handler.

Parameters
[in]encrypt_dataA CertificateEncryptData object. In the encryption data, cipher type should not be SecurityHandler::e_CipherNone.
[in]file_idThe file identity string.
[in]initial_keyThe user specified initial key for encryption.
Returns
true means success, while FASLE means failure.

◆ SetDRMValue()

bool foxit::pdf::DRMSecurityHandler::SetDRMValue ( const char *  key,
const WString value 
)

Set the DRM value for a specified parameter.

Parameters
[in]keyA parameter string as the key name. It should not be an empty string. Followings are pre-defined key names:
  • Issuer: issuer name.
  • Creator: creator of this file.
  • FileID: file ID.
  • FlowCode: flow code for application control.
  • Order: order number.
  • User: user name.
  • ServiceURL: service URL for remote server.
  • Vender: vender name.
[in]valueNew value string for specified parameter.
Returns
true means success, while false means failure.

◆ VerifyEncryptionParams()

bool foxit::pdf::DRMSecurityHandler::VerifyEncryptionParams ( )

Verify encryption parameters.

Foxit DRM maintains a set of encryption parameters for application purpose. Encryption parameters are stored in PDF file and protected by verification algorithm. So application can call this function to verify a DRM encrypted PDF document. If the verification is failed, that means the PDF document might be distorted.

Returns
true means the verification is successful, while false means the verification is failed.

Foxit Software Corporation Logo
@2018 Foxit Software Incorporated. All rights reserved.