public class PDFTimeStampValidator
extends java.lang.Object
修飾子とタイプ | フィールドと説明 |
---|---|
static int |
VERIFY_TARGET_AMANO
署名辞書のFilterの値がetim_AMANO.EVIDENCEを検証対象とします。
|
static int |
VERIFY_TARGET_FULL
署名辞書のFilterの値がetim_AMANO.EVIDENCEまたは署名辞書のTypeの値がDocTimeStamp
かつ署名辞書のFilterの値がAdobe.PPKLiteを検証対象とします。
|
コンストラクタと説明 |
---|
PDFTimeStampValidator(AmanoTSTValidator tstValidator)
タイムスタンプトークン検証の際に使用する tstValidator を指定して PDFTimeStampValidator を作成します。
|
修飾子とタイプ | メソッドと説明 |
---|---|
static PDFTimeStampValidator |
getAmanoInstance(java.util.Collection certificates,
ProxyHost proxyHost)
アマノタイムスタンプ局に接続するために必要な設定を行った PDFTimeStampValidator オブジェクトを返します。
|
AmanoTSTValidator |
getTSTValidator()
タイムスタンプトークンの検証動作を返します。
|
int |
getVerifyTarget()
不可視タイムスタンプの検証対象を返します。
|
void |
setTSTValidator(AmanoTSTValidator tstValidator)
タイムスタンプトークンの検証動作を設定します。
|
void |
setVerifyTarget(int target)
不可視タイムスタンプの検証対象を設定します。
|
static void |
timeStampValidation(jp.co.amano.etiming.apl3161.doc.SafeDictNode sigFieldDict,
jp.co.amano.etiming.apl3161.ats.io.RandomInput pdfFile,
TSTValidator tstValidator,
char[] userPassword,
char[] ownerPassword,
int verifyTarget)
PDF タイムスタンプを使用して PDF 文書の検証を行います。
|
void |
validate(byte[] pdfDocument)
バイト配列に格納された PDF タイムスタンプ付き PDF 文書を検証します。
|
void |
validate(byte[] pdfDocument,
char[] userPassword,
char[] ownerPassword)
PDF 標準セキュリティの文書を開くためのパスワードを指定して、バイト配列に格納された PDF タイムスタンプ付き PDF 文書を検証します。
|
void |
validate(java.io.RandomAccessFile pdfDocument)
ファイルから読み込んだ PDF タイムスタンプ付き PDF 文書を検証します。
|
void |
validate(java.io.RandomAccessFile pdfDocument,
char[] userPassword,
char[] ownerPassword)
PDF 標準セキュリティの文書を開くためのパスワードを指定して、ファイルから読み込んだ PDF タイムスタンプ付き PDF 文書を検証します。
|
public static final int VERIFY_TARGET_FULL
public static final int VERIFY_TARGET_AMANO
public PDFTimeStampValidator(AmanoTSTValidator tstValidator)
tstValidator
- タイムスタンプトークン検証の際に使用する tstValidatorjava.lang.NullPointerException
- tstValidator が null の場合public AmanoTSTValidator getTSTValidator()
setTSTValidator(jp.co.amano.etiming.apl3161.AmanoTSTValidator)
public void setTSTValidator(AmanoTSTValidator tstValidator)
tstValidator
- タイムスタンプトークンの検証動作java.lang.NullPointerException
- tstValidator が null の場合getTSTValidator()
public void validate(byte[] pdfDocument) throws java.io.IOException, APLException
validate メソッドが例外を発生させずに終了した場合、この PDF 文書の内容は PDF タイムスタンプ生成時点から全く変更されていないことを意味します。
IncrimentalUpdatedException が発生した場合は PDF タイムスタンプ生成時点で存在したデータは変更されていません。 しかし PDF 文書が増分更新(データ追記)されていることを意味します。
InvalidTimeStampException が発生した場合は
PDF タイムスタンプが何らかの理由で無効状態になっていることを意味します。
以下の原因のどれか 1 つ、または複数によって PDF タイムスタンプは無効状態になります。
TimeStampUnvalidatableException が発生した場合は
PDF タイムスタンプを検証できなかったことを意味します。
これは次のような状況で発生します。
NoTimeStampException が発生した場合は入力した PDF 文書中に PDF タイムスタンプが含まれていなかったことを意味します。
このメソッドは次の PDF 文書を検証可能です。
入力する PDF 文書に PDF 標準セキュリティが設定されており、文書を開くためのパスワードを必要とする場合は、代わりに
validate(byte[],char[],char[])
メソッドを使用してください。
pdfDocument
- 検証対象の PDF 文書java.io.IOException
- PDF データに入出力の問題があった場合IncrimentalUpdatedException
- PDF 文書がデータ追記によって編集されている場合InvalidTimeStampException
- PDF タイムスタンプが無効であることを確認した場合TimeStampUnvalidatableException
- 未知のバージョンの PDF タイムスタンプまたはハッシュアルゴリズムが見つかった場合TimeStampValidationException
- PDF タイムスタンプの検証中に問題が発生した場合NoTimeStampException
- 検証する PDF 文書内に PDF タイムスタンプが存在しない場合APLException
- PDF 文書の検証中に問題が発生した場合java.lang.NullPointerException
- pdfDocument が null の場合public void validate(byte[] pdfDocument, char[] userPassword, char[] ownerPassword) throws java.io.IOException, APLException
入力する PDF 文書に PDF 標準セキュリティが設定されており、文書を開くためのパスワードを必要とする場合は引数の
password を使用してこの文書を開きます。
PDF 文書にセキュリティが設定されていない場合、または PDF 標準セキュリティが設定されているが、文書を開くためのパスワードは設定されていない場合には引数の
password に指定した値に関わらずこの文書を開きます。
pdfDocument
- 検証対象の PDF 文書userPassword
- ユーザーパスワードownerPassword
- オーナーパスワードjava.io.IOException
- PDF データに入出力の問題があった場合IncrimentalUpdatedException
- PDF 文書がデータ追記によって編集されている場合InvalidTimeStampException
- PDF タイムスタンプが無効であることを確認した場合TimeStampUnvalidatableException
- 未知のバージョンの PDF タイムスタンプまたはハッシュアルゴリズムが見つかった場合TimeStampValidationException
- PDF タイムスタンプの検証中に問題が発生した場合NoTimeStampException
- 検証する PDF 文書内に PDF タイムスタンプが存在しない場合APLException
- PDF 文書の検証中に問題が発生した場合java.lang.NullPointerException
- pdfDocument が null の場合validate(byte[])
public void validate(java.io.RandomAccessFile pdfDocument) throws java.io.IOException, APLException
pdfDocument
- 検証対象の PDF 文書java.io.IOException
- PDF データに入出力の問題があった場合IncrimentalUpdatedException
- PDF 文書がデータ追記によって編集されている場合InvalidTimeStampException
- PDF タイムスタンプが無効であることを確認した場合TimeStampUnvalidatableException
- 未知のバージョンの PDF タイムスタンプまたはハッシュアルゴリズムが見つかった場合TimeStampValidationException
- PDF タイムスタンプの検証中に問題が発生した場合NoTimeStampException
- 検証する PDF 文書内に PDF タイムスタンプが存在しない場合APLException
- PDF 文書の検証中に問題が発生した場合java.lang.NullPointerException
- pdfDocument が null の場合validate(byte[])
public void validate(java.io.RandomAccessFile pdfDocument, char[] userPassword, char[] ownerPassword) throws java.io.IOException, APLException
pdfDocument
- 検証対象の PDF 文書userPassword
- ユーザーパスワードownerPassword
- オーナーパスワードjava.io.IOException
- PDF データに入出力の問題があった場合IncrimentalUpdatedException
- PDF 文書がデータ追記によって編集されている場合InvalidTimeStampException
- PDF タイムスタンプが無効であることを確認した場合TimeStampUnvalidatableException
- 未知のバージョンの PDF タイムスタンプまたはハッシュアルゴリズムが見つかった場合TimeStampValidationException
- PDF タイムスタンプの検証中に問題が発生した場合NoTimeStampException
- 検証する PDF 文書内に PDF タイムスタンプが存在しない場合APLException
- PDF 文書の検証中に問題が発生した場合java.lang.NullPointerException
- pdfDocument が null の場合validate(byte[],char[],char[])
public static PDFTimeStampValidator getAmanoInstance(java.util.Collection certificates, ProxyHost proxyHost)
getAmanoInstance メソッドから返された PDFTimeStampValidator オブジェクトは次に
validate メソッドのどれかを呼び出すことで PDF タイムスタンプ付き PDF 文書の検証を行うことができます。
getAmanoInstance メソッドは PDF タイムスタンプ付き PDF 文書の検証を簡単に行う方法を提供します。
getAmanoInstance メソッドが返す PDFTimeStampValidator オブジェクトの内容は次のようになっています。
PDFTimeStampValidator └─tstValidator: |
certificates
- X509Certificate の CollectionproxyHost
- HTTP プロキシ。設定しない場合は null。java.lang.NullPointerException
- certificates が null の場合public static void timeStampValidation(jp.co.amano.etiming.apl3161.doc.SafeDictNode sigFieldDict, jp.co.amano.etiming.apl3161.ats.io.RandomInput pdfFile, TSTValidator tstValidator, char[] userPassword, char[] ownerPassword, int verifyTarget) throws java.io.IOException, jp.co.amano.etiming.apl3161.doc.DocumentStructureException, TimeStampValidationException, NoTimeStampException
sigFieldDict
- SafeDictNodepdfFile
- RandomInputtstValidator
- TSTValidatoruserPassword
- ユーザーパスワードownerPassword
- オーナーパスワードjava.io.IOException
jp.co.amano.etiming.apl3161.doc.DocumentStructureException
TimeStampValidationException
NoTimeStampException
public void setVerifyTarget(int target)
target
- 検証対象java.lang.IllegalArgumentException
- VERIFY_TARGET_AMANO、VERIFY_TARGET_FULL以外の値を設定した場合public int getVerifyTarget()
Copyright(C) 2005-2023 AMANO Corporation. All Rights Reserved.