Turvallisuus ja allekirjoitukset

Turvallisuus ja allekirjoitukset

Turvallisuus ja allekirjoitukset

Aspose.PDF FOSS for .NET tukee PDF-digitaalisia allekirjoituksia, varmenteisiin perustuvaa salausta ja mukautettuja turvallisuusohjaimia. Käytä PdfSigner allekirjoitustyönkulkujen ja PdfCertificate varmennehallinnan varten.


Asiakirjan allekirjoittaminen

PdfSigner lisää digitaalisen allekirjoituksen PDF-tiedostoon käyttäen PFX-varmennetta.

var cert = PdfCertificate.FromPfx("certificate.pfx", "password");
var signer = new PdfSigner();
signer.Sign(doc, cert);
doc.Save("signed.pdf");

Allekirjoitusten tarkistaminen

var signer = new PdfSigner();
bool valid = signer.Verify(doc);
Console.WriteLine($"Signature valid: {valid}");

Allekirjoittaminen visuaalisen ulkoasun avulla

signer.SignWithAppearance(doc, cert, signatureField, appearance);

Sertifikaattien hallinta

PdfCertificate lataa varmenteita PFX‑tiedostoista tai DER‑koodatuista tiedostoista.

// From PFX
var cert = PdfCertificate.FromPfx("cert.pfx", "password");

// From DER files (certificate + key)
var cert2 = PdfCertificate.FromDerFiles("cert.der", "key.der");

Sertifikaattiin perustuva salaus

CertificateEncryptionOptions salaa PDF:n niin, että vain määritellyt sertifikaatin haltijat voivat avata sen.

var options = new CertificateEncryptionOptions(cert);

Mukautetut turvallisuuskäsittelijät

Toteuta ICustomSecurityHandler mukautettua salaus- ja salauksenpurkuilogikkaa.

public class MyHandler : ICustomSecurityHandler
{
    public void Initialize(EncryptionParameters parameters) { }
    public byte[] CalculateEncryptionKey() { /* ... */ return Array.Empty<byte>(); }
    public byte[] GetUserKey() { /* ... */ return Array.Empty<byte>(); }
    public byte[] GetOwnerKey() { /* ... */ return Array.Empty<byte>(); }
    public bool IsOwnerPassword(string password) { /* ... */ return false; }
    public bool IsUserPassword(string password) { /* ... */ return false; }
}

Allekirjoitusalgoritmin tiedot

SignatureAlgorithmInfo kuvaa olemassa olevassa allekirjoituksessa käytetyn algoritmin.

var info = new SignatureAlgorithmInfo("SHA256withRSA");
Console.WriteLine(info.ToString());

Vinkkejä ja parhaita käytäntöjä

  • Allekirjoita asiakirjat aina viimeisenä askeleena — kaikki muokkaus allekirjoituksen jälkeen mitätöi allekirjoituksen.
  • Käytä PFX-tiedostoja vahvoilla salasanoilla varmenteiden tallentamiseen.
  • Vahvista allekirjoitukset asiakirjan lataamisen jälkeen havaitaksesi manipuloinnin.
  • Varmenteeseen perustuva salaus vaatii vastaanottajan julkisen avaimen varmenteen.
  • Ota ICustomSecurityHandler käyttöön vain, kun tavallinen salaus ei riitä.

Yleiset ongelmat

OngelmaSyyKorjaus
Allekirjoitus näyttää virheelliseltäAsiakirjaa muokattu allekirjoituksen jälkeenAllekirjoita uudelleen, kun kaikki muutokset on tehty
PFX:n lataus epäonnistuuVäärä salasana tai vioittunut tiedostoTarkista salasana ja tiedoston eheys
Salaus estää avaamisenOmistajan salasanaa ei ole annettuKäytä oikeaa omistajan tai käyttäjän salasanaa

UKK

Mitä allekirjoitusalgoritmeja tuetaan?

RSA:ta SHA-256:n, SHA-384:n ja SHA-512:n kanssa tuetaan yleisesti. Käytettävissä olevat algoritmit riippuvat varmenteen avaintyypistä.

Voinko lisätä useita allekirjoituksia?

Kyllä. Jokainen allekirjoitus lisätään erilliseen allekirjoituskenttään asiakirjassa.

Vaatiiko allekirjoittaminen kaupallisen varmenteen?

Ei. Itse allekirjoitetut varmenteet toimivat testauksessa. Tuotannossa, käytä yksi varmenne luotettavalta CA:lta.


API-viitteiden yhteenveto

Class / MethodDescription
PdfSignerAllekirjoita ja tarkista PDF-asiakirjoja
PdfSigner.SignLisää digitaalinen allekirjoitus
PdfSigner.VerifyTarkista allekirjoituksen kelpoisuus
PdfSigner.SignWithAppearanceAllekirjoita visuaalisella allekirjoituskentällä
PdfCertificateSertifikaatin lataaja PFX- ja DER-muodoille
PdfCertificate.FromPfxLataa PFX-tiedostosta salasanalla
PdfCertificate.FromDerFilesLataa DER-koodatuista tiedostoista
CertificateEncryptionOptionsSertifikaattiin perustuva PDF-salaus
ICustomSecurityHandlerRajapinta mukautetulle salaukselle/purulle
EncryptionParametersMukautetuille turvallisuuskäsittelijöille välitetyt parametrit
SignatureAlgorithmInfoMetatiedot allekirjoituksen algoritmista

Katso myös

 Suomi