Некоторая библиотека позволяет мне сгенерировать пару ключей pgp таким образом:
var options = {
curve: 'secp256k1',
userId: 'Hamlet <hamlet@example.net>',
passphrase: 'To be, or not to be: that is the question',
material: {
key: privateKey,
subkey: privateKey
}
};
openpgp.generateKeyPair(options).then(function(keypair) {
// success
var privkey = keypair.privateKeyArmored;
var pubkey = keypair.publicKeyArmored;
//.........
То есть, учитывая некоторый начальный privateKey / материал в дополнение к user_id / passphrase, он генерирует или, возможно, преобразует в ключ pgp.
Интересно, есть ли способ сделать то же самое с помощью стандартной утилиты gpg, поставляемой с Linux? Я знаю, что он принимает в качестве аргументов идентификатор пользователя и кодовую фразу, но принимает ли он в качестве аргумента что-то, что соответствует «материальному» закрытому ключу в этой библиотеке?
Или может быть способ, который включает больше шагов для достижения того же результата создания пары ключей openpg?