Опции подписания в нативном Linux
Нативный колбэк-ABI связывает ограничения подписания документа с фактическим выводом CMS и сгенерированным appearance
Digest и метаданные Unicode
Операция подписания принимает digestMethod как SHA256, SHA384 или SHA512; по умолчанию SHA256, и выбранное значение определяет фактический digest подписанта CMS
reason, location, contactInfo, signerName и legalAttestation принимают строки Unicode без встроенных символов NUL
Метаданные следуют политике шифрования строк исходного документа, включая аутентифицированный вход AES-256
legalAttestation применяется к сертификационным подписям и становится значением Catalog Legal.Attestation
Обязательные seed-значения управляют фактическим digest, reason, свойствами сертификата, правом сертификации, юридическим заверением, профилем appearance, информацией об отзыве и поведением метки времени
Явные байты доверия
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
Валидация проверяет цепочки сертификатов подписанта и включённой метки времени против явного доверия, полное покрытие без корневого, совпадение issuer и серийного номера, подписи CRL и OCSP, полномочия responder'а, интервалы действия и статус отзыва
Некорректные, устаревшие, неполные, недоверенные или отозванные доказательства проваливают операцию до публикации PDF
Проверенные доказательства становятся подписанным CMS-атрибутом 1.2.840.113583.1.1.8, а результат сообщает revocationInfoEvaluated и revocationInfoValid
signatures.verify принимает тот же объект revocationInfo для проверки фактического встроенного подписанного атрибута; CRL и OCSP-ответы вызывающего не заменяют этот атрибут при проверке
Объекты доказательств и суммарные байты делят лимиты операции, а криптографические проверки используют токен отмены операции
Фактические именованные пресеты appearance
Передайте объект appearance с caption, необязательным fontFamily и необязательным profileName
| profileName | Фактический сгенерированный стиль |
|---|---|
| HotPDF.StandardApproval | По центру синий текст 11 пунктов, прямоугольная граница, белый фон и одна строка текста |
| HotPDF.StandardCertification | По левому краю чёрный текст 10 пунктов, прямоугольная граница, белый фон и многострочный перенос |
| HotPDF.Compact | По правому краю чёрный текст 8 пунктов, без закрашенного фона и границы, одна строка текста |
Пресет определяет стиль и размер шрифта; неизвестный профиль проваливает операцию, а не помечает произвольный appearance
Обязательный AppearanceFilter совпадает с фактическим профилем, сгенерированным в текущей операции; ранее загруженный appearance должен быть сгенерирован заново
Без profileName fontSize по умолчанию 12; устаревшие верхнеуровневые caption, fontFamily и fontSize остаются поддерживаемыми
Не комбинируйте верхнеуровневый caption с объектом appearance
Провенанс транспорта приложения
credentialSourceURL заявляет провенанс учётных данных, который утверждает приложение, поставляющее идентичность, а timestampServerURL — провенанс конечной точки, утверждаемый её колбэком меток времени
Эти значения сравниваются с соответствующими обязательными seed-ограничениями; они не извлекают учётные данные, не обращаются к удалённому серверу и не аутентифицируют независимо идентичность HTTPS-эндпоинта
Извлечением идентичности и аутентификацией транспорта управляет приложение
timestampServerURL требует фактического колбэка в hpdf_signing_operation_v1, а возвращённый ответ RFC 3161 должен пройти проверки imprint подписи, nonce, назначения сертификата TSA, явного доверия и запрошенного отзыва
Сценарии подписания · Транспорт меток времени · Seed-ограничения · Профили appearance