Как подписать XLA из Excel 2016 с отметкой времени? - PullRequest
0 голосов
/ 02 июня 2018

Я изо всех сил пытаюсь подписать XLA из Excel 2016 с отметкой времени .Это важно, потому что без метки времени подпись становится недействительной, когда срок действия сертификата подписи кода истекает.К сожалению, по умолчанию Excel не применяет отметку времени к подписи.

Документация Microsoft (https://docs.microsoft.com/en-us/deployoffice/security/use-digital-signatures-with-office) заявляет:

Чтобы использовать функцию отметки времени с цифровыми подписями, вынеобходимо выполнить следующие задачи:

  • Установить сервер отметок времени, соответствующий RFC 3161

  • Использовать параметр групповой политики, указать серверname, чтобы указать местоположение сервера отметок времени в сети.

Мой эмитент сертификатов Comodo заявляет, что их сервер отметок времени (http://timestamp.comodoca.com) поддерживает RFC 3161(https://support.comodo.com/index.php?/Knowledgebase/Article/View/68/0/time-stamping-server).

Я загрузил и установил файлы административных шаблонов Office 2016 (ADMX / ADML) из https://go.microsoft.com/fwlink/p/?LinkID=626001, чтобы применить параметры групповой политики. Затем в редакторе локальной групповой политики я могудоступ Конфигурация пользователя, Административные шаблоны, Microsoft Office 2016, Параметры безопасности, Цифровые подписи , где находятся соответствующие параметры групповой политики.

Первоначально я установил следующее:

  • Укажите имя сервера метки времени в http://timestamp.comodoca.com
  • Установите тайм-аут сервера метки времени в 20

... затем, когда это не сработало (см. Ниже), я также установил:

  • Укажите минимальный уровень XAdES для генерации цифровой подписи *От 1051 * до XAdES-T
  • Запрошенный уровень XAdES для генерации подписи до XAdES-T

... потому что XAdES-T "Добавляет отметку времени кразделы подписи XML-DSig и XAdES-EPES, которые помогают защитить от истечения срока действия сертификата »- что звучит как то, что мне нужно.

Я подписываюсь в VBA Editor, используя Цифровая подпись из меню Инструменты .

Однако, когда я проверяю подпись, я все еще не вижу отметку времени .

Я проверяю подпись следующим образом(Я не знаю более простого способа):

  1. На ленте Developer нажмите Macro Security , выберите Надстройки , затем установите флажок Требуется, чтобы надстройки приложений были подписаны Trusted Publisher .Нажмите OK, затем закройте Excel.(Я не являюсь доверенным издателем, поэтому намеренно отключаю свою надстройку.)

  2. Перезапустите Excel и создайте пустую книгу.(Моя надстройка настроена для автоматической загрузки.) ПРЕДУПРЕЖДЕНИЕ О БЕЗОПАСНОСТИ отображается при выполнении шага 1.

Excel security warning

Нажмите для получения более подробной информации в ответ на запрос, затем выберите Дополнительные параметры в меню Включить содержимое .

File  Info

В диалоговом окне Параметры безопасности Microsoft Office прокрутите вниз до надстройки, которая была подписана, и нажмите Показать сведения о подписи .Откроется диалоговое окно Сведения о цифровой подписи , в котором отображается Время подписи : Not available, что указывает на отсутствие отметки времени:

no signing time

Насколько я понимаю, подпись с отметкой времени покажет это здесь, например,

signature with timestamp

... но яне удалось добиться этого с моим XLA.

1 Ответ

0 голосов
/ 02 июня 2018

Согласно документации вашего сервера отметок времени :

  • RFC 3161 отметка времени используется SignTool (с использованием параметра /tr) и другие приложения (например, jarsigner ).

    Наш сервер отметок времени (http://timestamp.comodoca.com) автоматически выбирает соответствующий алгоритм сигнатуры (RSA/SHA-1, RSA/SHA-256 или RSA/SHA-384), с помощью которого знак каждая отметка времени на основе указанного вами алгоритма хэш (например, с помощью /td параметра SignTool).

image

( Источник изображения )


Дополнительная информация:

...