KEY ID
Значение KEY ID
Скажите пожалуйста, а когда происходит генерация
ключевой пары, при ее создании создается закрытый и открытый ключи.
При этом генерируется так называемый KEY ID.
Вопрос по этому ID:
он генерируется сразу одновременно для закрытого и открытого ключей,
тоесть KEY ID (открытого ключа) = (равен/совпадает/идентичен) = KEY ID (закрытого ключа) ?
или
он генерируется сразу одновременно для закрытого и открытого ключей,
НО KEY ID (открытого ключа) <> (неравен/несовпадает/не идентичен) = KEY ID (закрытого ключа) ?
Ссылки
[link1] http://pgp.mit.edu/pks/lookup?search=0x80A443212ECD733A&op=vindex&fingerprint=on
[link2] http://pgp.mit.edu/pks/lookup?search=0x231290D3EC5549D5&op=vindex&fingerprint=on
[link3] http://pool.sks-keyservers.net/pks/lookup?op=vindex&search=0x80a443212ecd733a&fingerprint=on
[link4] http://pool.sks-keyservers.net/pks/lookup?op=vindex&search=0x231290d3ec5549d5&fingerprint=on
[link5] http://pgp.mit.edu/pks/lookup?op=get&search=0x80A443212ECD733A
[link6] http://pool.sks-keyservers.net/pks/lookup?op=get&search=0x80A443212ECD733A
[link7] ftp://ftp.gnupg.org/gcrypt/binary/gnupg-w32-2.1.1_20141216.exe
[link8] ftp://ftp.gnupg.org/gcrypt/binary/gnupg-w32cli-1.4.18.exe
[link9] http://www.pgpru.com/comment71256
[link10] http://www.pgpru.com/comment71260
[link11] http://www.pgpru.com/comment71301
Опечатался исправляю
Господа, при создании топика с клавы опечатался
вместо <> поставил =
Так они совпадают или не совпадают?
Один KEY ID на всю связку, или два ID?
По одному на каждый ключ?
Так вижу что наверное вам заморочил голову, снова пишу уже в правильном виде и без ошибок
Прошу считать эту постановку вопроса окончательной!
Там много виртуальных сущностей. В общем виде все отпечатки относятся к открытым ключам. Если к какому-то открытому ключу есть закрытый, то он также вызывается по этому отпечатку. К тому же, на открытом ключе может висеть несколько подключей, со своими закрытыми частями. Главный открытый ключ заверяет то, что никто кроме его владельца не мог поместить эти подключи. При обращении к отпечатку главного открытого ключа его подключи выбираются и вызываются автоматически, как открытые, так и закрытые.
Да, может я не совсем правильно выразился про KEY ID,
но задавая вопрос я имел в иду именно так называемый фингерпринт.
Тоесть если я правильно понял из вашего ответа, то при создании ключевой пары
создается только ОДИН ФИНГЕРПРИНТ (так называемый отпечаток), который одинаковый
как для открытого ключа так и для закрытого. Это так?
Или же фингерпринты открытого и закрытого ключей различаются?
Тоесть на одной ключевой паре могут еще находится и подключевый пары?
Меня интересует пока только самое простое, когда пара только из двух кючей стандартно.
У закрытых нет своих отпечатков. Все отпечатки относятся к открытым (под)ключам. Если для какой-то операции требуется (под)ключ, то при обращении к отпечатку ищется, есть ли такой среди открытых. Если для определённой операции требуется закрытый (под)ключ (подпись, смена параметров ключа), то программа смотрит, есть ли для найденного открытого (под)ключа с этим отпечатком соответствующая закрытая часть.
Так, уже начинаю немного догонять, поправте ход моей мысли если не прав.
И так, создается так называемая связка, для которой присваивается так называемый ( так называю для себя) уникальный
KEY ID (число в виде 0xдалеешестнацеричноечисло). Далее на эту связку нанизывается ключевая пара (открытй+закрытй),
для которой генерируется уникальный фингерпринт (как уже пояснили реально только для открытого, для закрытого будет тот же).
Далее на эту связку можно нанизать еще ключевую пару, для которой соответственно будет сгенерирован свой
уникальный фингерпринт. Таким образом грубо говоря, если мы на связку поместим семь ключевых пар,
то соответственно на связке будет семь уникальных фингерпринтов, по одному для кажой ключевой пары.
Верный ход мыслей?
Вроде приблизительно верно, только:
Присваивается не от балды, а вычисляется как хэш от главного открытого ключа связки. Если всю эту связку называть ключом, то обратится к ней можно как по главному отпечатку, так и по отпечатку любого из подключей (если они не удалены, не просрочены и т.д.).
Поскольку сгенерировать другой ключ с таким же хэшем нельзя, то нет смысла передавать кому-то ключ (связку) целиком. Можно лично (по доверенному каналу) вручить хэш-отпечаток ключа, по которому его можно скачать из сети, не опасаясь подмены (если сравнивать полный отпечаток главного ключа связки).
Для каждой связки программа проверяет подпись главного ключа и целостность всего материала (подключи, ID-адреса и пр.) по хэшам, чтобы никто кроме владельца ключа не мог туда воткнуть нечто постороннее.
Тогда обьясните мне пожалуста, о чем здесь идет речь?
http://pgp.mit.edu/pks/lookup?.....index&fingerprint=on[link1]
http://pgp.mit.edu/pks/lookup?.....index&fingerprint=on[link2]
Это два разных открытых ключа? Вижу что у них фингерприты (отпечатки) одинаковые
Fingerprint=F145 3A7A 02E5 4A6F CD41 5C87 80A4 4321 2ECD 733A,
а вот ID у них разные,
Fingerprint=F145 3A7A 02E5 4A6F CD41 5C87 80A4 4321 2ECD 733A ID='0x80a443212ecd733a'
Fingerprint=F145 3A7A 02E5 4A6F CD41 5C87 80A4 4321 2ECD 733A ID='0x231290d3ec5549d5'
как такое может быть?
Или у меня опять непонимание?
http://pool.sks-keyservers.net.....d733a&fingerprint=on[link3]
http://pool.sks-keyservers.net.....549d5&fingerprint=on[link4]
Походу дела все получается наоборот,
для связки генерирутся один уникальный фингерпринт,
а затем для каждой ключевой пары на связке генерируется
уникальный ID.
тоесть есть связка с уникальным фингерпринтом,
на ней семь ключевых пар, а в итоге получаем для этой связки
один уникальный фингерпринт + 7 уникальных ID.
Верно?
Самоподпись (подпись первого UID, сделанная главным ключом связки):
0x80a443212ecd733a
sig sig3 2ECD733A 2008-08-09 [selfsig]
Второй подключ связки, также подписанный главным:
0x231290d3ec5549d5
sub 2048g/EC5549D5 2008-08-09
sig sbind 2ECD733A 2008-08-09 []
Нет. Одна главная пара, одна подключевая. Остальное — подписи первой пары ключами других людей (или другими ключами этого же). Не перепутайте, это отпечатки подписей других ключей — не пишите тем людям по-ошибке!
Да, действительно, а вчем разница между Fingerprint и ID ?
Отпечаток может выступать в роли ID, обратное неверно. Обычно ID — это адрес почты, но здесь это ID по отпечатку подключа. В общем, для начала не заморачивайтесь и используйте полный отпечаток главного ключа 0xF1453A7A02E54A6FCD415C8780A443212ECD733A, программа сама выберет правильный подключ (например для шифрования сообщения от вас к владельцу этого ключа).
В примере на этой связке главный поключ образует первую пару, на него повешен какой-то UID (адрес) и видны отпечатки подписей чужих ключей (с других связок). И есть вторая пара EC5549D5. У владельца должны быть и закрытые части к этим парам (для расшифрования и подписи).
Ага, уже доходчиво понятно. Тоесть если мы рассматриваем этот пример,
то что бы написать владельцу этого открытого ключа, нодо
найти его на сервере по главному ID='0x80a443212ecd733a',
http://pgp.mit.edu/pks/lookup?.....index&fingerprint=on[link1]
http://pool.sks-keyservers.net.....d733a&fingerprint=on[link3]
после чего пройти по ссылке
http://pgp.mit.edu/pks/lookup?.....h=0x80A443212ECD733A[link5]
http://pool.sks-keyservers.net.....h=0x80A443212ECD733A[link6]
и залить (импортировать) к себе в программу полученный
BEGIN PGP PUBLIC KEY BLOCK
END PGP PUBLIC KEY BLOCK
Верно?
Первая ссылка с строки
То, что вы описываете — верно.
Можно искать, предварительно просматривать и импортировать ключ не через браузер, а сразу через саму GnuPG в консоли. Шифровать, подписывать, проверять подписи, оперировать ключами всё равно придётся в ней.
С разметкой форума ещё разберитесь, чтобы ваши распечатки не корёжило: блок кода вставляется между символами %% %%
Благодарю unknown .
Картина полностью прояснилась,
вопрос тоже полностью прояснился.
С консолью еще не разбирался, а вот через буфер уже научился заливать блок
BEGIN PGP PUBLIC KEY BLOCK
BEGIN PGP PUBLIC KEY BLOCK
Вот решил разобраться,
но только мне нужен вариант портабельный,
наткнулся на gpg4usb, его и мучаю, с ним и разбираюсь.
Да верно, но там блин какой то баг с libconv, пытаюсь под виндой запустить
консоль из портативной gpg4usb\bin че то ругается на отсутствие этой dll.
Чую что надо качнуть с официального сайта gnupg
дистрибутив виндовый версии 2 или версии 1.4 который CLI
и уже с ними разбираться
Вам надо только это
ftp://ftp.gnupg.org/gcrypt/bin.....2-2.1.1_20141216.exe[link7]
ftp://ftp.gnupg.org/gcrypt/bin.....pg-w32cli-1.4.18.exe[link8]
И как только научитесь работать руками,
тогда переходите к этому
http://gpg4win.org/download.html
http://files.gpg4win.org/gpg4win-2.2.3.exe
Все понятно
С подписями связи там непростой туман [1][link9], [2][link10], [3][link11]. Ещё не сказали главное — то, что KeyID — это просто укороченная концовка фингерпринта (отпечатка). Вывести отпечатки как для главного ключа, так и для подключей, можно, указав опцию fingerprint дважды: