файлы открытого и закрытого ключей (.pkr, .skr) - PullRequest
2 голосов
/ 29 февраля 2012

Я новичок в PGP и хочу реализовать шифрование / дешифрование в одном требовании. Я погуглил его и решил использовать алгоритм Boynce Castle. Но когда я пытаюсь понять это, я не понимаю, как получить файлы .pkr и .skr. Я только что скачал необходимые фляги и программу и при попытке запустить показывает мне файл не найден. я сам не знал, поэтому я создал файлы .pkr и .skr (преобразование из .txt), но я думаю, что он должен быть в каком-то формате и генерироваться каким-то механизмом. некоторые могут объяснить мне об этом? Как я могу продолжить ..?

Ответы [ 3 ]

4 голосов
/ 04 декабря 2013

Если у вас установлен PGP Desktop на том же компьютере с Windows, что и командная строка PGP, и вы установили PGP Desktop в каталог по умолчанию, то командная строка PGP автоматически найдет и использует существующие цепочки ключей. Если вы не используете PGP Keyrings из продукта PGP Desktop, вам нужно будет создать пустые файлы ключей. Для этого откройте командную строку и введите следующую команду:

pgp --create-keyrings

Это создаст файлы pubring.pkr (открытый ключ) и secring.skr (частный ключ) в расположении ключей по умолчанию. Для Windows это в папке Мои документы> PGP. В этой статье будет использоваться [] для определения информации, которую вам нужно будет ввести, которая относится к вашим индивидуальным ключам.

После этого вам нужно будет создать пару ключей. Чтобы создать пару ключей с помощью командной строки PGP, выполните следующие действия:

В командной строке введите:

pgp --gen-key [user ID] --key-type [key type] --bits [bits #] --passphrase [passphrase]

ПРИМЕЧАНИЕ. Любая информация, содержащая пробелы, должна быть заключена в кавычки.

Пример. В следующем примере показано, как создать 2048-битный ключ RSA для пользователя Joe, сотрудника ACME Corp, с парольной фразой «моя кодовая фраза».

pgp --gen-key "Joe User" --key-type RSA --bits 2048 --passphrase "my passphrase"

PGP Командная строка теперь будет генерировать вашу пару ключей. Вы должны увидеть свой идентификатор ключа (то есть 0X12345678) и сообщение о том, что ключ был успешно создан.

ПРИМЕЧАНИЕ. Чтобы отобразить новую пару ключей, введите следующую команду:

pgp --list-keys

Это отобразит все ключи, найденные в вашем брелоке.

После того, как пара ключей сгенерирована и идентифицирована, важно экспортировать открытую часть (открытый ключ) пары ключей, чтобы другие могли импортировать ваш открытый ключ и зашифровать вас. ПРИМЕЧАНИЯ. После того как вы экспортировали свой открытый ключ в файл, его легко распространять. Вы можете прикрепить его к электронному письму, вставить текст блока открытого ключа в текст сообщения электронной почты (открыть с помощью Блокнота) или скопировать, например, на компакт-диск. Для экспорта вашего открытого ключа вам понадобится информация о ключе для его идентификации, которая в этом документе будет упоминаться как (ввод). Вы можете использовать идентификатор ключа (т. Е. 0x12345678), идентификатор пользователя (т. Е. «Пользователь Джо») или часть идентификатора пользователя (т. Е. Джо). Чтобы экспортировать ключ, выполните следующие действия:

pgp --export (input)

Командная строка PGP отвечает, экспортируя ключи в виде ASCII-файлов брони (.asc) в каталог, активный в данный момент в командной строке.

Следующие примеры покажут вам, как экспортировать ваш открытый ключ, используя ваш идентификатор ключа и идентификатор пользователя.

pgp --export 0x12345678
pgp --export "Joe User"

Вы можете импортировать открытый ключ из файла ASCII Armor (.asc) или из текстового файла, процесс одинаков для обоих. Файл, содержащий ключи для импорта, должен находиться в текущем каталоге. Как и при экспорте ключа, это будет упоминаться как (входной) в примерах. И открытый, и закрытый ключи будут импортированы, если они существуют в файле. Если импортируемый ключ уже существует в локальной цепочке ключей, ключи объединяются. Импорт ключа из файла:

pgp --import (input)

Командная строка PGP отвечает следующим образом: Joe User.asc: ключ импорта {0: ключ импортирован как 0x12345678 Joe User}

В следующих примерах показано, как импортировать ключ из файла ASCII Armor (.asc) и из текстового файла, содержащего блок ключа PGP.

pgp --import "Joe User.asc"
pgp --import "PGP Joe.txt"
0 голосов
/ 10 января 2013

Вы можете проверить примеры генерации ключей OpenPGP, которые поставляются с библиотекой BouncyCastle.

Они расположены по адресу:

[источники надувных замков] \ src \ org \ bouncycastle \ openpgp \ examples \ RSAKeyPairGenerator.java

[источники надувных замков] \ src \org \ bouncycastle \ openpgp \ examples \ DSAElGamalKeyRingGenerator.java

Пример кода, использующего ключи, можно найти по адресу:

[источники бодрых замков] \ src \ org \ bouncycastle \ openpgp \ examples \KeyBasedFileProcessor.java

0 голосов
/ 29 февраля 2012

Эти файлы являются публичными и приватными (секретными в терминологии OpenPGP) брелоками соответственно. Они содержат коллекции открытых и закрытых ключей. Обычно вы создаете пару ключей (пару открытых и закрытых ключей) или несколько пар ключей для своего собственного использования, и другие люди делают то же самое. Затем они могут дать вам свои публичные ключи, и вы создадите открытый ключ из этих ключей. Затем открытый ключ используется для шифрования данных для получателей или для проверки подписей daa других людей.

Закрытый набор ключей состоит из ваших закрытых ключей, которые вы генерируете. Вы используете закрытый набор ключей для подписи своих данных и можете передавать соответствующие открытые ключи другим людям, чтобы они могли зашифровать данные для вас (которые вы затем расшифровываете с помощью своих закрытых ключей).

Я считаю, что BouncyCastle имеет функции генерации ключей, или вы можете использовать приложение GnuPG или PGP Desktop для генерации ключей.

...