THotPDF.CryptKeyLength-ominaisuus

THotPDF.CryptKeyLength

THotPDF

Ylös Edellinen Seuraava

Determines PDF file encryption method.

type

THPDFKeyType = ( k40, k128, aes128, aes256 );

Delphi syntax:

property CryptKeyLength: THPDFKeyType;

C++ syntax:

__property THPDFKeyType CryptKeyLength;

Kuvaus

Käytä ominaisuutta CryptKeyLength valitaksesi standardin mukaisen suojauksen käsittelijän version ja salaimen, kun ActivateProtection on otettu käyttöön

Value Meaning


k40 Vakiosuojauskäsittelijä V=1, R=2, RC4 40-bittisellä avaimella (PDF 1.1+)

k128 Vakiosuojauskäsittelijä V=2, R=3, RC4 128-bittisellä avaimella (PDF 1.4+)

aes128 Vakiosuojauskäsittelijä V=4, R=4 salausvaihtoehdolla StdCF (CFM=AESV2). AES-128 CBC-tilassa PKCS#7-täytteellä ja 16-tavuisella satunnaisella alustusvektorilla standardin ISO 32000-1 7.6.2 / 7.4.4.2 mukaisesti (PDF 1.6+). HotPDF-versiosta v2.4.0 alkaen tämä valinta salaa merkkijonot ja vuot todellisella AES-toteutuksella; aiemmat versiot loivat AES-sanakirjan mutta eivät todellisuudessa salanneet sisältöä

aes256 Vakiosuojauskäsittelijä V=5 salausvaihtoehdolla StdCF (CFM=AESV3). AES-256 CBC-tilassa PKCS#7-täytteellä ja 16-tavuisella satunnaisella alustusvektorilla määrityksen Adobe Extension Level 3 / ISO 32000-2 7.6.4 mukaisesti (PDF 1.7+, jonka hyväksyvät Acrobat 9 ja uudemmat, Foxit, Chrome sekä Apple/macOS-lukijat). Saatavilla HotPDF v2.17.0 alkaen. Oletusversio on R=5 varustettuna SHA-256-salasanahajautuksella. Aseta UseAES256R6 arvoon true siirtyäksesi versioon R=6, joka käyttää ISO 32000-2 -algoritmin 2.B "hajautustanssia" (SHA-256 / SHA-384 / SHA-512 + AES-128 -sekoitin); R=6 vaaditaan Acrobat DC- ja PDF/A-4-validaattoreissa. Saatavilla HotPDF v2.22.0 alkaen

Public-Key Security Handler (PDF 1.7 7.6.5)

Varmennepohjaista salausta varten (yksi dokumentti, useita vastaanottajia) kutsu metodia EnablePubKeyEncryption(seed, KeyType, EncryptMetadata) sen sijaan, että asettaisit ominaisuudet UserPassword / OwnerPassword. Samat CryptKeyLength-arvot pätevät symmetriseen salaukseen (k40 -> RC4-40 / V=1 + s4 SubFilter, k128 -> RC4-128 / V=2 + s5, aes128 -> AES-128 / V=4 + s5). Kutsujan on luotava yksi PKCS#7 envelopedData -lohkoryhmä vastaanottajaa kohden (Windows CryptoAPI, OpenSSL tai pycryptodome) ja liitettävä jokainen lohko metodin AddPubKeyRecipient kautta; tiedoston salausavain johdetaan algoritmin 9 kautta (siemenen SHA-1 yhdistettynä kirjekuoren binaareihin). Saatavilla versiosta HotPDF v2.33.0 alkaen

Code Example

HPDF.OwnerPassword := 'password';          // Set owner password (required to change security settings)
HPDF.UserPassword := 'user';               // Set user password (required to open the document)
HPDF.ProtectOptions := [poEdit, poAnnot];  // Disallow editing and annotations
HPDF.ActivateProtection := true;           // Enable PDF security

Katso myös: ActivateProtection, OwnerPassword, ProtectOptions, UserPassword