DigitalSignature
Содержание
[
Скрывать
]DigitalSignature class
Цифровая подпись в подписанном файле.
public class DigitalSignature : IDigitalSignature
Конструкторы
Название | Описание |
---|---|
DigitalSignature(X509Certificate2) | Создает новый объект DigitalSignature с указанным сертификатом. |
DigitalSignature(string, string) | Создает новый объект DigitalSignature с указанным путем к файлу сертификата и паролем. |
Свойства
Название | Описание |
---|---|
Certificate { get; } | Объект сертификата, который был использован для подписи документа. Только для чтения X509Certificate2. |
Comments { get; set; } | Цель подписи. Читаемая/записываемая строка. |
IsValid { get; } | Если эта цифровая подпись действительна и документ не был изменен, это значение будет равно true. Только для чтения Boolean. |
SignTime { get; } | Время, когда документ был подписан. Только для чтения DateTime. |
Примеры
Следующий пример демонстрирует, как добавить цифровую подпись из сертификата PFX в презентацию PowerPoint.
[C#]
// Инициализация экземпляра Presentation
using (Presentation pres = new Presentation())
{
// Создание объекта DigitalSignature с файлом PFX и паролем PFX
DigitalSignature signature = new DigitalSignature("testsignature1.pfx", @"testpass1");
// Комментарий к новой цифровой подписи
signature.Comments = "Тест цифровой подписи Aspose.Slides.";
// Добавление цифровой подписи в презентацию
pres.DigitalSignatures.Add(signature);
// Сохранение презентации
pres.Save("SomePresentationSigned.pptx", SaveFormat.Pptx);
}
Следующий образец кода демонстрирует, как проверить цифровую подпись презентации PowerPoint.
[C#]
// Инициализация экземпляра Presentation
using (Presentation pres = new Presentation("SomePresentationSigned.pptx"))
{
if (pres.DigitalSignatures.Count < 0)
{
bool allSignaturesAreValid = true;
Console.WriteLine("Подписи, использованные для подписания презентации: ");
// Проверка, являются ли все цифровые подписи действительными
foreach (DigitalSignature signature in pres.DigitalSignatures)
{
Console.WriteLine(signature.Certificate.SubjectName.Name + ", "
+ signature.SignTime.ToString("yyyy-MM-dd HH:mm") + " -- " + (signature.IsValid ? "ДЕЙСТВИТЕЛЬНА" : "НЕДЕЙСТВИТЕЛЬНА"));
allSignaturesAreValid &= signature.IsValid;
}
if (allSignaturesAreValid)
Console.WriteLine("Презентация подлинная, все подписи действительны.");
else
Console.WriteLine("Презентация была изменена после подписания.");
}
}
Смотрите также
- интерфейс IDigitalSignature
- пространство имен Aspose.Slides
- сборка Aspose.Slides