אבטחה וחתימות

אבטחה וחתימות

Aspose.PDF FOSS for .NET תומך בחתימות דיגיטליות של PDF, הצפנה מבוססת תעודות, ובמטפלים מותאמים לאבטחה. השתמש בPdfSigner עבור זרימות חתימה ובPdfCertificate עבור ניהול תעודות.


חתימה על מסמך

PdfSigner מוסיף חתימה דיגיטלית ל‑PDF באמצעות תעודת PFX.

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

אימות חתימות

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

חתימה עם מראה חזותי

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

ניהול תעודות

PdfCertificate טוען תעודות מקבצי PFX או מקבצים מקודדים ב‑DER.

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

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

הצפנה מבוססת תעודה

CertificateEncryptionOptions מצפין קובץ PDF כך שרק מחזיקי תעודה ספציפיים יכולים לפתוח אותו.

var options = new CertificateEncryptionOptions(cert);

מטפלי אבטחה מותאמים

ממש ICustomSecurityHandler עבור לוגיקה מותאמת של הצפנה ופענוח.

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; }
}

מידע על אלגוריתם חתימה

SignatureAlgorithmInfo מתאר את האלגוריתם המשמש בחתימה קיימת.

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

טיפים ושיטות מומלצות

  • תמיד לחתום על המסמכים כשלב הסופי — כל שינוי לאחר החתימה מבטל את החתימה.
  • השתמשו בקבצי PFX עם סיסמאות חזקות לאחסון האסמכתאות.
  • אמתו חתימות לאחר טעינת המסמך כדי לאתר שינוי.
  • הצפנה מבוססת אסמכתא דורשת את תעודת המפתח הציבורי של הנמען.
  • יישמו ICustomSecurityHandler רק כאשר הצפנה סטנדרטית אינה מספיקה.

בעיות נפוצות

IssueCauseFix
החתימה מוצגת כלא תקינההמסמך שונה לאחר החתימהחתום מחדש לאחר שכל השינויים הושלמו
טעינת PFX נכשלהסיסמה שגויה או קובץ פגוםאמת את הסיסמה ואת שלמות הקובץ
הצפנה מונעת פתיחהלא סופקה סיסמת בעליםהשתמש בסיסמת בעלים או משתמש נכונה

שאלות נפוצות

אילו אלגוריתמי חתימה נתמכים?

RSA עם SHA-256, SHA-384 ו‑SHA-512 נתמכים בדרך כלל. האלגוריתמים הזמינים תלויים בסוג המפתח של האישור.

האם ניתן להוסיף מספר חתימות?

כן. כל חתימה מוחלת על שדה חתימה נפרד במסמך.

האם החתימה דורשת תעודה מסחרית?

לא. תעודות חתומות עצמאית עובדות לבדיקות. עבור ייצור, השתמש ב תעודה מרשות מוסמכת.


API סיכום הפניות

Class / MethodDescription
PdfSignerחתימה ואימות של מסמכי PDF
PdfSigner.Signהחלת חתימה דיגיטלית
PdfSigner.Verifyבדיקת תקפות החתימה
PdfSigner.SignWithAppearanceחתימה עם שדה חתימה חזותי
PdfCertificateטוען תעודות עבור פורמטים PFX ו‑DER
PdfCertificate.FromPfxטעינה מקובץ PFX עם סיסמה
PdfCertificate.FromDerFilesטעינה מקבצים מקודדים ב‑DER
CertificateEncryptionOptionsהצפנת PDF מבוססת תעודה
ICustomSecurityHandlerממשק להצפנה/פענוח מותאמים אישית
EncryptionParametersפרמטרים המועברים למטפלי אבטחה מותאמים
SignatureAlgorithmInfoנתוני מטא על אלגוריתם החתימה

ראה גם

 עברית