सुरक्षा और हस्ताक्षर

सुरक्षा और हस्ताक्षर

सुरक्षा और हस्ताक्षर

Aspose.PDF FOSS for .NET PDF डिजिटल हस्ताक्षर, प्रमाणपत्र-आधारित एन्क्रिप्शन, और कस्टम सुरक्षा हैंडलर्स का समर्थन करता है। साइनिंग वर्कफ़्लोज़ के लिए PdfSigner का उपयोग करें और प्रमाणपत्र प्रबंधन के लिए PdfCertificate का उपयोग करें।


दस्तावेज़ पर हस्ताक्षर करना

PdfSigner एक PFX प्रमाणपत्र का उपयोग करके PDF पर डिजिटल हस्ताक्षर लागू करता है।

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 लागू करें जब मानक एन्क्रिप्शन अपर्याप्त हो।

सामान्य समस्याएँ

समस्याकारणसमाधान
हस्ताक्षर अमान्य दिख रहा हैहस्ताक्षर के बाद दस्तावेज़ में परिवर्तन किया गयासभी संशोधनों के पूर्ण होने के बाद पुनः हस्ताक्षर करें
PFX लोडिंग विफलगलत पासवर्ड या फ़ाइल भ्रष्टपासवर्ड और फ़ाइल की अखंडता सत्यापित करें
एन्क्रिप्शन खोलने से रोकता हैमालिक पासवर्ड प्रदान नहीं किया गयासही मालिक या उपयोगकर्ता पासवर्ड का उपयोग करें

अक्सर पूछे जाने वाले प्रश्न

कौन से हस्ताक्षर एल्गोरिदम समर्थित हैं?

RSA with SHA-256, SHA-384, और SHA-512 आमतौर पर समर्थित हैं। उपलब्ध एल्गोरिदम प्रमाणपत्र की कुंजी प्रकार पर निर्भर करते हैं।

क्या मैं कई हस्ताक्षर जोड़ सकता हूँ?

हाँ। प्रत्येक हस्ताक्षर को दस्तावेज़ में एक अलग हस्ताक्षर फ़ील्ड पर लागू किया जाता है।

क्या साइनिंग के लिए एक व्यावसायिक प्रमाणपत्र आवश्यक है?

नहीं। सेल्फ-साइन किए गए प्रमाणपत्र परीक्षण के लिए काम करते हैं। प्रोडक्शन के लिए, विश्वसनीय CA से एक
प्रमाणपत्र उपयोग करें।


API रेफ़रेंस सारांश

Class / MethodDescription
PdfSignerPDF दस्तावेज़ों पर हस्ताक्षर करें और सत्यापित करें
PdfSigner.Signडिजिटल हस्ताक्षर लागू करें
PdfSigner.Verifyहस्ताक्षर की वैधता जांचें
PdfSigner.SignWithAppearanceविज़ुअल हस्ताक्षर फ़ील्ड के साथ साइन करें
PdfCertificatePFX और DER फ़ॉर्मेट के लिए प्रमाणपत्र लोडर
PdfCertificate.FromPfxपासवर्ड के साथ PFX फ़ाइल से लोड करें
PdfCertificate.FromDerFilesDER-एन्कोडेड फ़ाइलों से लोड करें
CertificateEncryptionOptionsप्रमाणपत्र-आधारित PDF एन्क्रिप्शन
ICustomSecurityHandlerकस्टम एन्क्रिप्शन/डिक्रिप्शन के लिए इंटरफ़ेस
EncryptionParametersकस्टम सुरक्षा हैंडलर्स को पास किए गए पैरामीटर
SignatureAlgorithmInfoहस्ताक्षर एल्गोरिदम के बारे में मेटाडेटा

देखें भी

 हिन्दी