Dijital İmzalarla Çalışma

Dijital imza, belgeleri imzalamak ve belgenin imzalanmasından bu yana değiştirilmediğini garanti etmek amacıyla imzalayanın kimliğini doğrulamak için elektronik imzaların teknolojik bir uygulamasıdır. Hem genel hem de özel anahtarlar oluşturmak için PKI protokolünü takip etmesi nedeniyle her dijital imza, her imzalayan için benzersizdir. Bir belgeyi dijital olarak imzalamak, imzalayanın özel anahtarını kullanarak bir imza oluşturmak anlamına gelir; burada oluşturulan karmayı şifrelemek için matematiksel bir algoritma kullanılır.

Aspose.Words, mevcut dijital imzaları tespit etmenize, saymanıza veya doğrulamanıza ve ayrıca belgenizdeki herhangi bir tahrifatı tespit etmek için belgenize yeni bir imza eklemenize olanak tanır. Ayrıca bir belgedeki tüm dijital imzaları da kaldırabilirsiniz. Dijital imzalarla çalışmak için DigitalSignatureUtil sınıfını kullanın.

Bu makalede, dijital bir belgenin orijinalliğini ve bütünlüğünü doğrulamak için yukarıdakilerin hepsinin nasıl yapılacağı açıklanmaktadır.

Desteklenen Formatlar

Aspose.Words, DOC, OOXML ve ODT belgelerinde dijital imzalarla çalışmanıza ve oluşturulan belgeyi PDF veya XPS formatında imzalamanıza olanak tanır.

Dijital İmzaların Sınırlamaları

Aşağıdaki tabloda, Aspose.Words aracılığıyla dijital imzalarla çalışırken karşılaşabileceğiniz birkaç sınırlamanın yanı sıra bazı alternatif seçenekler de açıklanmaktadır.

Sınırlama Alternatif seçenek
Bir belgeyi yükleyip kaydettikten sonra dijital imzaların kaybolması. Bu nedenle, bir belgenin bir sunucuya işlenmesi, tüm dijital imzaların önceden haber verilmeksizin kaybedilmesine neden olabilir Bir belgede dijital imza olup olmadığını kontrol edin ve varsa uygun işlemi yapın. Örneğin, istemcilere, yükledikleri belgenin işlenirse kaybolacak dijital imzalar içerdiğini bildiren bir uyarı gönderin
Aspose.Words, bir belgedeki makrolarla çalışmayı destekler. Ancak Aspose.Words henüz makrolardaki dijital imzaları desteklemiyor Belgeyi herhangi bir Word formatına geri aktarın ve makrolara dijital imza eklemek için Microsoft Word’i kullanın

Dijital İmzaları Algıla, Say ve Doğrula

Aspose.Words, DetectFileFormat yöntemini ve HasDigitalSignature özelliğini kullanarak bir belgedeki dijital imzayı algılamanıza olanak tanır. Böyle bir kontrolün yalnızca imzanın gerçekliğini tespit edeceğini ancak geçerliliğini tespit etmeyeceğini belirtmekte fayda var.

Bir belge birden fazla kez imzalanabilir ve bu, farklı kullanıcılar tarafından yapılabilir. Dijital imzaların geçerliliğini kontrol etmek için bunları belgeden LoadSignatures yöntemini kullanarak yüklemeniz ve IsValid özelliğini kullanmanız gerekir. Ayrıca Aspose.Words, Count özelliğini kullanarak bir belgedeki tüm dijital imzaları saymanıza olanak tanır.

Tüm bunlar, bir belgeyi işlemeden önce imza açısından kontrol etmenin etkili ve güvenli bir yolunu sağlar.

Aşağıdaki kod örneği, dijital imzaların varlığının nasıl algılanacağını ve bunların nasıl doğrulanacağını gösterir:

Dijital İmza {#create-a-digital-signature} Oluşturun

Dijital imza oluşturmak için kimliği doğrulayan bir imzalama sertifikası yüklemeniz gerekir. Dijital olarak imzalanmış bir belge gönderdiğinizde sertifikanızı ve ortak anahtarınızı da gönderirsiniz.

Aspose.Words, ortak anahtarın sertifikaya dahil olan imzalayana ait olduğunu doğrulamak için uluslararası kabul görmüş X.509 PKI standardını kullanan bir dijital sertifika olan X.509 sertifikası oluşturmanıza olanak tanır. Bunu yapmak için CertificateHolder sınıfı içindeki Create yöntemini kullanın.

Sonraki bölümlerde dijital imzanın, imza satırının nasıl ekleneceği ve oluşturulan bir PDF belgesinin nasıl imzalanacağı açıklanmaktadır.

Bir Belgeyi İmzalayın

Aspose.Words, bir DOC, DOCX, XPS veya ODT belgesini Sign yöntemini ve SignOptions özelliklerini kullanarak dijital olarak imzalamanıza olanak tanır.

Aşağıdaki kod örneği, sertifika sahibini ve imzalama seçeneklerini kullanarak belgelerin nasıl imzalanacağını gösterir:

İmza Satırı Ekle

İmza satırı, bir belgedeki dijital imzanın görsel temsilidir. Aspose.Words, DocumentBuilder.InsertSignatureLine yöntemini kullanarak imza satırı eklemenizi sağlar. Bu gösterimin parametrelerini SignatureLineOptions sınıfını kullanarak da ayarlayabilirsiniz.

Örneğin aşağıdaki resimde geçerli ve geçersiz imzaların nasıl görüntülenebileceği gösterilmektedir.

çizim çizim

Ayrıca bir belgenin imza satırı içermesi ve dijital imzanın bulunmaması durumunda kullanıcıdan imza eklemesini isteme özelliği bulunmaktadır.

Aşağıdaki kod örneği, bir belgenin kişisel sertifika ve belirli bir imza satırıyla nasıl imzalanacağını gösterir:

Oluşturulan bir PDF Belgesini İmzalayın

Aspose.Words, PdfDigitalSignatureDetails özelliklerini kullanarak bir PDF belgesini imzalamanıza ve tüm ayrıntılarını almanıza olanak tanır.

Aşağıdaki kod örneği, oluşturulan bir PDF’nin nasıl imzalanacağını gösterir:

Dijital İmza Değerini Alın

Aspose.Words ayrıca, SignatureValue özelliğini kullanarak dijital imzalı bir belgeden dijital imza değerini bayt dizisi olarak alma olanağı sağlar.

Aşağıdaki kod örneği, dijital imza değerinin bir belgeden bayt dizisi olarak nasıl alınacağını gösterir:

Dijital İmzaları Kaldır

Aspose.Words, RemoveAllSignatures yöntemini kullanarak imzalı bir belgedeki tüm dijital imzaları kaldırmanıza olanak tanır.

Aşağıdaki kod örneği, dijital imzaların bir belgeye nasıl yüklenip kaldırılacağını gösterir: