Как получить идентификатор пользователя из открытого ключа PGP в Java?

Я использую PGP для шифрования файлов, а затем передаю их с помощью apache-camel. Мне удалось зашифровать и расшифровать с помощью camel-crypto.

PGPDataFormat pgpDataFormat=new PGPDataFormat();
pgpDataFormat.setKeyFileName("0x6E1A09A4-pub.asc");
pgpDataFormat.setKeyUserid("[email protected]");
pgpDataFormat.marshal(exchange, exchange.getIn().getBody(File.class), exchange.getIn().getBody(OutputStream.class));

Мне нужно предоставить KeyUserId и открытый ключ. Я хочу извлечь этот идентификатор пользователя из открытого ключа.

$ gpg --import 0x6E1A09A4-pub.asc                    

gpg: key 6E1A09A4: public key "User <[email protected]>" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

Если я импортирую его с помощью gpg командной строки cli, он показывает идентификатор пользователя. Как получить этот идентификатор пользователя из открытого ключа в Java?


person Gangaraju    schedule 09.08.2017    source источник