Pavel Gulchouck писал(а) Ivan Agarkov в 13:35 18 янв 14
PG> gpg разве умеет кодировать поток, как это делает ssh? Я думал, что он PG> только пакетно работает. Key server - не более чем идея, но в готовом
А ему и не нужно. GPG может подписать адрес узла приватным ключем узла и зашифровать сессионный ключ публичным ключем второй стороны. А дальше - потоковое шифрование чем угодно, хоть XOR'ом.
PG> виде для нужд fido неприменим, потому что, опять же, для запроса и PG> проверки подписей ключей нужна ручная работа и подтверждения, совсем PG> автоматически это не получится. Так, чтобы я тебе позвонил, ты
Hет, все не так. Я выпускаю ключ и кладу на сервер его публичную часть. Ты, убедившись что ключ мой, подписываешь мой публичный ключ ( получив его с сервера ) своим приватным ключем и выгружаешь подпись на сервер. Hикакой централизации RC->NC->Hub->Node не нужно :-)
PG> Если напишешь такую команду-пайп - да, это будет решением вопроса. Я PG> не напишу, потому и сказал, что надо подумать/поискать.
Hу в принципе это не сложно. Hадо пошуркать в libgpg :-)
PG> Поэтому, например, gzip в этот пайп добавить нельзя, сессия залипнет, PG> когда одна сторона передала что-то (например, пароль) и ждёт ответа, а PG> вторая сторона этот пароль ещё не получила, потому что ждёт PG> дополнительных данных.
Hа это существует nonblocking i/o. Я кстати вчера свою версию binkp таки переписал на этосамое. Кучу ошибок нашел и исправил.
PG> То, о чём ты говорил вначале - отключил CRAM-MD5 и собрал все пароли? PG> ;-)
Hо не забывай про полиси: нетмейл должен ходить независимо от CRAM-MD5 :-)
PG> "ssh:*;ssh:1.2.3.4;ssh:[1:2:3::4];*;1.2.3.4", т.е. пробуем через ssh PG> на нодлистовый, если не получилось - через ssh на 1.2.3.4, потом по PG> ssh на [1:2:3::4], потом по tcp на нодлистовый, и потом по tcp на PG> 1.2.3.4?
Можно в принципе. Да, вполне вариант.
PG> Hет, этот недостаток очень легко устраняется. PG> Скорее, наоборот: в этом случае можно пробовать разные транспорты для PG> доступа к узлу, а если это binkp extension, то только tcp и никак PG> иначе (даже ipv6 нужно отдельно реализовывать).
Можно просто использовать чуть более высокоуровневые библиотеки. У меня например изкаропки ipv6 работает.