Подписание XML с помощью XADES-BES с использованием Java

Я не смог найти способ подписать XML-документ с помощью библиотеки xades4j в java. Как создать подписанный XML-документ из неподписанного?

Прежде всего, я новичок в программировании на Java и не знаю, как создавать параметры и значения, необходимые в этом методе:

FileSystemKeyStoreKeyingDataProvider(String keyStoreType, String keyStorePath, KeyStoreKeyingDataProvider.SigningCertSelector certificateSelector, KeyStoreKeyingDataProvider.KeyStorePasswordProvider keyStorePasswordProvider, KeyStoreKeyingDataProvider.KeyEntryPasswordProvider entryPasswordProvider, boolean returnFullChain)

Есть ли другой способ подписать документ проще? Если нет, то каковы истинные параметры или примеры?


person JoshuaJeanThree    schedule 26.06.2013    source источник


Ответы (1)


Вы читали документацию на вики проекта? Кроме того, тесты проекта включают примеры по всем функциям.

Если вы новичок в Java, возможно, вам будет полезно прочитать руководство JCA, а именно раздел о хранилищах ключей. Класс FileSystemKeyStoreKeyingDataProvider в xades4j является реализацией интерфейс KeyingDataProvider, обертывающий хранилище ключей в файловой системе.

Тип хранилища ключей и путь используются так же, как и в KeyStore API (см. руководство JCA и javadocs). Параметр certificateSelector используется для выбора сертификата/ключа, используемого в подписи среди сертификатов в хранилище ключей. Другие параметры управляют паролями для доступа к хранилищу ключей и его записям (могут быть необязательными, в зависимости от хранилищ ключей. Опять же, обратитесь к руководству JCA).

Для упрощения вы можете просто определить класс, который реализует интерфейс KeyingDataProvider, возвращая постоянные значения. Вы можете добавить «настоящие» хранилища ключей позже, когда будете разбираться в API.

person lgoncalves    schedule 27.06.2013