Пятница, 19.04.2024
Мой сайт
Меню сайта
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
Главная » 2011 » Январь » 7 » Безопасность сети
14:55
Безопасность сети

Криптография

Для обеспечения многоуровневой обороноспособности I2P против множества противников, были объединены несколько криптографических примитивов (алгоритмов). Коммуникации между роутерами защищены на самом низком, транспортном уровне - SSU шифрует каждый пакет при помощи алгоритма AES256/CBC, с явным указанием IV (IV - подробнее см. в документации к алгоритму AES; прим. переводчика) и с помощью MAC (HMAC-MD5-128) - после согласования эфемерного сеансового ключа, использующего алгоритм Диффи-Хеллмана на 2048 бит, и аутентификации от станции к станции с ключом DSA другого маршрутизатора. Плюс каждое сетевое сообщение имеет собственный хеш для локальной проверки целостности. У туннельных сообщений, переданных по этим транспортам, есть свое собственное многоуровневое шифрование AES256/CBC с явным IV и проверкой в точке назначения тоннеля при помощи дополнительного хеша SHA256. Различные другие сообщения передаются с помощью внутренних "чесночных сообщений", которые шифруются алгоритмами ElGamal/AES+SessionTags (описанными ниже).

Чесночные сообщения

Чесночные сообщения являются расширением "луковичного" многослойного шифрования, позволяя единственному сообщению содержать многократные "дольки" - полностью сформированные сообщения рядом с инструкциями для их доставки. Сообщения принимают чесночный вид всякий раз, когда сообщение иначе было бы передано в виде открытого текста через пира, у которого не должно быть доступа к этой информации. Например, когда маршрутизатор хочет попросить другой маршрутизатор поучаствовать в туннеле, он помещает запрос в чеснок, шифрует этот чеснок открытым ElGamal ключом маршрутизатора назначения в 2048 бит, и передаёт его через туннель. Другой пример - когда клиент захочет отправить сообщение в точку назначения - маршрутизатор отправителя обернет данные сообщения (вместе с некоторыми другими сообщениями) в чеснок, зашифрует этот чеснок открытым ключом ElGamal в 2048 бит, опубликованном в leaseSet получателя, и передаст его через соответствующие туннели.

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

Сеансовые теги

Как ненадежная, неупорядоченная, базирующаяся на сообщениях система, I2P использует простую комбинацию асимметричных и симметричных алгоритмов шифрования, чтобы обеспечить конфиденциальность данных и целостность в чесночных сообщениях. В целом, упоминается комбинация ElGamal/AES+Сеансовые теги, но это - чрезмерно многословный способ описать простое использование ElGamal на 2048 битов, AES256, SHA256, и 32-байтовых данных.

В первый раз, когда маршрутизаторы хотят обменяться зашифрованными чесночными сообщениями, они шифруют инструкции для манипулирования сеансовым ключом AES256 с ElGamal и добавляют зашифрованную полезную нагрузку AES256/CBC после этого, зашифрованного ElGamal, блока. В дополнение к зашифрованной полезной нагрузке, раздел, зашифрованный AES, содержит длину полезной нагрузки, хеш SHA256 незашифрованной полезной нагрузки, и также много "тегов сеанса" - случайных 32-байтовых данных. В следующий раз когда отправитель захочет отправить зашифрованное чесночное сообщение к другому маршрутизатору, новый сеансовый ключ шифрования ElGamal не генерируется, они просто выбирают один из ранее сопоставленных сеансовым тегам, и непосредственно шифруют полезную нагрузку по алгоритму AES, используя сеансовый ключ предварительно сопоставленный с этим тегом сеанса. Когда маршрутизатор получает чесночно зашифрованное сообщение, он проверяет первые 32 байта, чтобы узнать, соответствует ли оно доступному тегу сеанса - если это так, он, просто дешифрует AES сообщение, но если нет, он дешифрует первый блок с помощью ElGamal.

Просмотров: 1615 | Добавил: i2p-russia | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Поиск
Календарь
«  Январь 2011  »
ПнВтСрЧтПтСбВс
     12
3456789
10111213141516
17181920212223
24252627282930
31
Архив записей
Друзья сайта
  • [ k0d.cc ]
  • xakep.biz
  • Copyright MyCorp © 2024
    Создать бесплатный сайт с uCoz