إضافة توقيعات رقمية إلى العروض التقديمية في جافا
الشهادة الرقمية تُستخدم لإنشاء عرض تقديمي PowerPoint محمي بكلمة مرور، مع علامة تم إنشاؤه من قِبل منظمة أو شخص معين. يمكن الحصول على الشهادة الرقمية عن طريق التواصل مع منظمة مُصرّح بها - هيئة إصدار الشهادات. بعد تثبيت الشهادة الرقمية في النظام، يمكن استخدامها لإضافة توقيع رقمي إلى العرض عبر File -> Info -> Protect Presentation:
قد يحتوي العرض على أكثر من توقيع رقمي. بعد إضافة التوقيع الرقمي إلى العرض، ستظهر رسالة خاصة في PowerPoint:
لتوقيع العرض أو التحقق من صحة توقيعات العرض، Aspose.Slides API توفر IDigitalSignature interface، IDigitalSignatureCollection interface وIPresentation.getDigitalSignatures method. حاليًا، يتم دعم التوقيعات الرقمية لتنسيق PPTX فقط.
إضافة توقيع رقمي من شهادة PFX
يعرض مثال الشيفرة أدناه كيفية إضافة توقيع رقمي من شهادة PFX:
- افتح ملف PFX ومرّر كلمة مرور PFX إلى كائن DigitalSignature .
- أضف التوقيع المُنشأ إلى كائن العرض.
// فتح ملف العرض التقديمي
Presentation pres = new Presentation();
try {
// إنشاء كائن DigitalSignature باستخدام ملف PFX وكلمة مرور PFX
DigitalSignature signature = new DigitalSignature("testsignature1.pfx", "testpass1");
// تعليق توقيع رقمي جديد
signature.setComments("Aspose.Slides digital signing test.");
// إضافة توقيع رقمي إلى العرض
pres.getDigitalSignatures().add(signature);
// حفظ العرض التقديمي
pres.save("SomePresentationSigned.pptx", SaveFormat.Pptx);
} finally {
pres.dispose();
}
الآن يمكن التحقق ما إذا كان العرض موقَّعًا رقميًا ولم يتم تعديله:
// فتح العرض التقديمي
Presentation pres = new Presentation("SomePresentationSigned.pptx");
try {
if (pres.getDigitalSignatures().size() > 0)
{
boolean allSignaturesAreValid = true;
System.out.println("Signatures used to sign the presentation: ");
// التحقق مما إذا كانت جميع التوقيعات الرقمية صالحة
for (IDigitalSignature signature : pres.getDigitalSignatures())
{
System.out.println(signature.getComments() + ", "
+ signature.getSignTime().toString() + " -- " + (signature.isValid() ? "VALID" : "INVALID"));
allSignaturesAreValid &= signature.isValid();
}
if (allSignaturesAreValid)
System.out.println("Presentation is genuine, all signatures are valid.");
else
System.out.println("Presentation has been modified since signing.");
}
} finally {
if (pres != null) pres.dispose();
}
FAQ
هل يمكنني إزالة التوقيعات الموجودة من ملف؟
نعم. تدعم مجموعة التوقيعات الرقمية إزالة العناصر الفردية ومسحها بالكامل؛ بعد حفظ الملف، لن يحتوي العرض على أي توقيعات.
هل يصبح الملف “للقراءة فقط” بعد التوقيع؟
لا. يحافظ التوقيع على النزاهة والملكية لكنه لا يمنع التعديلات. لتقييد التحرير، اجمعه مع “Read-only” أو كلمة مرور.
هل سيظهر التوقيع بشكل صحيح في إصدارات PowerPoint المختلفة؟
يُنشأ التوقيع لحاوية OOXML (PPTX). الإصدارات الحديثة من PowerPoint التي تدعم توقيعات OOXML تُظهر حالة هذه التوقيعات بشكل صحيح.