خيارات التوقيع الأصلية على Linux
ABI الأصلي لـ callback يربط قيود توقيع المستند بمخرج CMS الفعلي والمظهر المولَّد
digest وميتاداتا Unicode
عملية sign تقبل digestMethod إما SHA256 أو SHA384 أو SHA512؛ والافتراضي SHA256 والقيمة المنتقاة تحدد digest الموقّع الفعلي في CMS
reason وlocation وcontactInfo وsignerName وlegalAttestation تقبل سلاسل Unicode بلا محارف NUL مضمّنة
الميتاداتا تتبع سياسة تشفير سلاسل مستند المصدر، بما يشمل مدخلات AES-256 المصادق عليها
legalAttestation تسري على تواقيع التصديق وتصير قيمة Legal.Attestation في الكتالوج
قيم seed الإلزامية تحكم digest الفعلي والسبب وخصائص الشهادة وإذن التصديق والإقرار القانوني وملف المظهر ومعلومات الإبطال وسلوك الطابع الزمني
بايتات الثقة الصريحة
trustedCAPEM وtimestampTrustedCAPEM وtimestampTrustedCRLPEM تقبل بايتات PEM في سلاسل JSON
مدخلات المسارات القديمة المقابلة هي trustedCAFile وtimestampTrustedCAFile وtimestampTrustedCRLFile؛ وزوّد بايتات أو مسارًا لكل مصدر ثقة
مدخلات PEM تُمسك في ملفات خاصة حصرية بنمط 0600 للعملية وتُزال بعدها؛ ولا تكشف الاستجابات تلك المسارات المولَّدة
ثقة شهادة الموقّع تُقيَّم فقط عند تهيئتها صراحةً، بينما فحص سلامة CMS ما زال يفحص التوقيع الفعلي وربط شهادة التوقيع
معلومات إبطال موقَّعة متحقق منها
زوّد كائن revocationInfo بـ enabled وcertificatesBase64 وocspResponsesBase64 وcrlsBase64 وtrustedCAPEM أو trustedCAFile
enabled تقصّر افتراضيًا إلى true؛ والمعلومات المعطلة لا يمكن أن تتضمن مصفوفات أدلة
المصفوفات تحتوي سلاسل Base64 مقننة لشهادات DER كاملةً وكائنات OCSPResponse ناجحة وكائنات CertificateList
clockSkewSeconds تقصّر افتراضيًا إلى 300 ويجب أن تكون بين 0 و86400؛ وmaxOCSPAgeSeconds تقصّر افتراضيًا إلى 86400 ويجب أن تكون موجبة؛ وrequireTimestamp تقصّر افتراضيًا إلى false
التحقق يفحص سلاسل شهادات الموقّع والطابع الزمني المضمّن مقابل الثقة الصريحة والتغطية الكاملة غير الجذرية ومطابقة المُصدر والسلسل و تواقيع CRL وOCSP وتخويل المستجيب وفترات الصلاحية والحالة الملغاة
الأدلة المشوهة أو المتقادمة أو الناقصة أو غير الموثوقة أو الملغاة تفشل قبل نشر PDF
الأدلة المتحقق منها تصير سمة CMS الموقَّعة 1.2.840.113583.1.1.8، والنتيجة تبلّغ revocationInfoEvaluated وrevocationInfoValid
signatures.verify تقبل كائن revocationInfo نفسه للتحقق من السمة الموقَّعة المضمّنة الفعلية؛ وCRLs للمستدعي واستجابات OCSP لا تحل محل تلك السمة أثناء التحقق
كائنات الأدلة والبايتات الكلية تتشاركان حدود العملية، والفحوص التشفيرية تستخدم token إلغاء العملية
presets مظاهر مسنّاة فعلية
زوّد كائن appearance بـ caption وfontFamily اختيارية وprofileName اختيارية
| profileName | النمط المولَّد الفعلي |
|---|---|
| HotPDF.StandardApproval | نص أزرق موسّط بحجم 11 نقطة وحد مستطيل وخلفية بيضاء وسطر نص واحد |
| HotPDF.StandardCertification | نص أسود محاذى يسارًا بحجم 10 نقاط وحد مستطيل وخلفية بيضاء والتفاف متعدد الأسطر |
| HotPDF.Compact | نص أسود محاذى يمينًا بحجم 8 نقاط وبلا خلفية أو حد مصبوعين وسطر نص واحد |
الـ preset يحدد نمطه وحجم خطه؛ والملف غير المجهول يفشل بدلًا من وضع وسماً على مظهر اعتباطي
AppearanceFilter إلزامي يطابق الملف الفعلي المولَّد أثناء العملية الحالية؛ والمظهر المحمَّل سابقًا يجب إعادة توليده
بدون profileName، يقصّر fontSize افتراضيًا إلى 12؛ وcaption وfontFamily وfontSize على المستوى الأعلى القديمة تبقى مدعومة
لا تجمع caption على المستوى الأعلى مع كائن appearance
مصدرية ناقلة التطبيق
credentialSourceURL تصرح عن مصدرية بيانات الاعتماد التي يدّعيها التطبيق المزوّد للهوية، وtimestampServerURL تصرح عن مصدرية نقطة النهاية التي يدّعيها callback الطابع الزمني
هاتان القيمتان تُقارنان بقيود seed الإلزامية المقابلة؛ وهما لا تسترجعان بيانات اعتماد ولا تصلان إلى خادم بعيد ولا تصادقان باستقلالية على هوية نقطة نهاية HTTPS
التطبيق يتحكم في استرجاع الهوية ومصادقة النقل
timestampServerURL تتطلب callback فعلية في hpdf_signing_operation_v1، واستجابة RFC 3161 المعادة يجب أن تجتاز فحوص بصمة التوقيع وnonce وغرض شهادة TSA والثقة الصريحة والإبطال المطلوب
سير عمل التوقيع · نقل الطوابع الزمنية · قيود seed · ملفات المظاهر