PDFKeyDerivation
PDFKeyDerivation
Overview
PDFKeyDerivation és una classe en FOSS per Java.
Algoritmes de derivació de clau d’encriptació PDF.
Aquesta classe proporciona 11 mètodes per treballar amb objectes de PDFKeyDerivation en programes Java. Els mètodes disponibles inclouen: computeEncryptionKeyR2R4, computeEncryptionKeyR5Owner, computeEncryptionKeyR5User, computeEncryptionKeyR6Owner, computeEncryptionKeyR6User, computeHashR5, computeHashR6, generateO_R2R4, generateU_R2, generateU_R3R4, padPassword. Tots els membres públics són accessibles a qualsevol aplicació Java després d’instal·lar el paquet FOSS per Java. Propietats: PADDING.
Properties
| Name | Type | Access | Description |
|---|---|---|---|
PADDING | byte[] | Read | La cadena de rellotge de 32 bits del pas 2 (a) d’Algorithme. |
Methods
| Signature | Description |
|---|---|
computeEncryptionKeyR2R4(password: byte[], encDict: PDFEncryptionDict, documentId: byte[]) → byte[] | Algoritme 2: Computa la clau de xifratge per a R2-R4. |
computeEncryptionKeyR6User(password: byte[], encDict: PDFEncryptionDict) → byte[] | Computació de clau d’encriptació per a R=5/R=6 (AES-256). |
computeEncryptionKeyR6Owner(password: byte[], encDict: PDFEncryptionDict) → byte[] | Computa la clau de xifratge per a R=6 mitjançant contrasenya del propietari. |
computeHashR5(password: byte[], salt: byte[], userKey: byte[]) → byte[] | R=5 (Adobe Extension Level 3) hash: un sol SHA-256 de |
| {@code password + salt [+userKey]}, amb NO iteració d’Algorithm 2.B. | |
computeEncryptionKeyR5User(password: byte[], encDict: PDFEncryptionDict) → byte[] | Computa la clau de xifratge del fitxer per a R=5 mitjançant la contrasenya d’usuari |
| (Adobe Extension Level 3 SHA-256 únic, sense iteració). | |
computeEncryptionKeyR5Owner(password: byte[], encDict: PDFEncryptionDict) → byte[] | Computa la clau de xifratge del fitxer per a R=5 mitjançant la contrasenya del propietari |
| (Adobe Extension Level 3 SHA-256 únic, sense iteració). | |
generateO_R2R4(ownerPassword: byte[], userPassword: byte[], keyLenBytes: int, R: int) → byte[] | Algoritme 3 (ISO 32000-1:2008, §7.6.3.4): calcula el hash /O (propietari). |
generateU_R2(encryptionKey: byte[]) → byte[] | Algoritme 4 (ISO 32000-1:2008, §7.6.3.4): calcula el hash /U per R=2. |
generateU_R3R4(encryptionKey: byte[], documentId: byte[]) → byte[] | Algoritme 5 (ISO 32000-1:2008, §7.6.3.4): calcula el hash /U per R=3/4. |
padPassword(password: byte[]) → byte[] | Pedaça o truncada una contrasenya a exactament 32 bytes. |
computeHashR6(password: byte[], salt: byte[], userKey: byte[]) → byte[] | Computa el hash de validació o derivació de clau R=6 (ISO 32000-2, Algoritme 2.B). |