Шифрование информации при передаче по локальной сети

Тема в разделе "WASM.WIN32", создана пользователем lepricon, 5 сен 2009.

  1. lepricon

    lepricon New Member

    Публикаций:
    0
    Регистрация:
    3 июн 2009
    Сообщения:
    5
    Всем доброго времени суток!!!
    Есть следующая задача: необходимо обеспечить шифрование при передаче данных внутри локальной сети, на всех машинах которой стоит ОС Windows разных версий (2000, XP). Шифрование простое: xor с гаммой большого размера. При этом шифроваться должна любая исходящая и расшифровываться соответственно любая входящая информация. Шифрование должно осуществляться незаметно для пользователя (т.е. не должно быть какой-то специальной программы через которую осуществляется защищенный обмен, например при копировании файла на свой комп из расшаренной папки на другом компе путем перетаскивания иконки из одного окна Windows в другое информация должна передаваться также в закрытом подобным образом виде).
    Задачу поставили сегодня и я, честно говоря, зашел в тупик. Поэтому прежде чем начинать какие-либо телодвижения, связанные с разработкой, хочу посоветоваться касаемо направления куда копать...
    1. (в надежде на халяву) может быть есть какие-нибудь готовые, простые в установке (важное требование!!!) агенты, работающие на уровне драйверов сетевой карты (или может как-то по-другому), позволяющие решать в том или ином приближении эту задачу?

    Дальше все по самостоятельной разработке...
    2. На каком уровне шифровать? Первое, что приходит на ум - транспортный. Т.е. шифровать информационную часть TCP пакета перед его инкапсуляцией в IP дейтаграмму. Только в этом случае представляю как осуществлять синхронизацию, например в случае когда пользователь качает например с 2-х или более машин одновременно... Достаточно будет создать гамму размера 2^32 байта и шифровать информацию с байта гаммы равного номеру последовательности в заголовке TCP пакета. Тогда синхронизация будет сохраняться и при повторных передачах и во всех остальных случаях. Иначе синхронизация становится отдельной весьма нетривиальной задачей...
    3. (как продолжение размышлений по 2-му вопросу) Какими средствами можно получить доступ к сформированному TCP пакету для его модификации перед его вставкой в IP?

    И вообще, любые мысли которые могут помочь в решении данной задачи....

    Спасибо заранее!!!
     
  2. dag

    dag New Member

    Публикаций:
    0
    Регистрация:
    17 авг 2004
    Сообщения:
    446
    IPSEC
     
  3. dag

    dag New Member

    Публикаций:
    0
    Регистрация:
    17 авг 2004
    Сообщения:
    446
    PPTP
     
  4. dag

    dag New Member

    Публикаций:
    0
    Регистрация:
    17 авг 2004
    Сообщения:
    446
    L2TP
     
  5. lepricon

    lepricon New Member

    Публикаций:
    0
    Регистрация:
    3 июн 2009
    Сообщения:
    5
    IPSEC предложил сразу. Ответ отрицательный. С остальными протоколами сам никогда дел не имел, но, думаю, ответ был бы таким же. Основная идея и требование: сложение "искл. или" с гаммой, в моем случае представляющей собой оцифрованный тепловой шум, т.е. типа естественный случайный сигнал. За этим видят высокую защищенность. Не знаю насколько это верно с точки зрения криптографии, но сделать надо именно так.
    Решил попробывать написать самостоятельно... Т.к. раньше никогда с сетью не работал, прошу помочь на начальном этапе. Скачал WinpkFilter... Там есть пример passthru, который если верить описанию представляет собой ничего не делающий (т.е. просто принимающий пакеты и передающий их дальше) пакетный фильтр на уровне IP протокола. Но запустить пример не получилось. Закончилось все на сообщении "ntdsapi.dll не найдена", хотя она была в рабочем каталоге. Работаю в BDS 2006 на СBuilder. Подскажите как правильно запустить пример?
    Потом нашел информацию про WinPCap, про то, что он более стабилен, чем WinpkFilter и т.п. В чем между ними разница? Что лучше для решения этой задачи?
    Спасибо!
     
  6. s0larian

    s0larian New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2004
    Сообщения:
    489
    Адрес:
    Крыжёпполь
    lepricon, тебе ж уже отписали - IPSec. А ты что-то там несёшь про xor, "самостоятельно" и "никогда с сетью не работал"...

    Поясняю:

    1) ничего не надо придумывать и писать. Шифрование сетевых потоков существует от царч Гороха. Общее название - VPN tunnel.

    2) IPSec и есть набор протоколов (спецификация) для созданя зашифрованных (и прозрачных/transparent) тоннелей

    3) IPSec использует известные крипто-стойкие алгоритмы

    4) реализация IPSec уже есть в Win200, WinXP, Win7 но можно проинсталить и другой софт.
     
  7. lepricon

    lepricon New Member

    Публикаций:
    0
    Регистрация:
    3 июн 2009
    Сообщения:
    5
    s0larian, давай без оскорблений. Несут курицы, а я описываю задачу которая стоит передо мной. Есть люди, которых твои 1-4 волнуют как корову унитаз. IPSec НЕ ПОДХОДИТ!!! Остальное из стандарного тоже. А посему придется что-то придумывать и писать. Поэтому прошу помочь с вопросами, которые я задавал в своем предыдущем посте.
     
  8. s0larian

    s0larian New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2004
    Сообщения:
    489
    Адрес:
    Крыжёпполь
    lepricon, задача сформулирована маразматически. Тут ничего не надо изобретать. Ну а если то что я отписал не волнует, то "пилите, Шура, пилите".

    P.S. про самопальные крипро-алго - отдельная песня.
     
  9. lepricon

    lepricon New Member

    Публикаций:
    0
    Регистрация:
    3 июн 2009
    Сообщения:
    5
    Код (Text):
    1. задача сформулирована маразматически
    Сформулирована она нормально. А вот суть ее оставляет место для размышлений...
    Но дело теперь уже не в этом.
    Помогите с запуском какого-нибудь примера из WinpkFilter в Билдере 2006. Если можно по шагам или скиньте готовый проект если есть у кого.
     
  10. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    Можно написать свой LSP
     
  11. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    А ведь риальне, что может быть просче PPTP?
     
  12. lepricon

    lepricon New Member

    Публикаций:
    0
    Регистрация:
    3 июн 2009
    Сообщения:
    5
    2 Partner
    Для меня пока что что LSP, что NDIS - одинаково неподдающиеся вещи. Потом прочитал, что LSP не работает с сетевыми протоколами и стал ковырять в сторону NDIS intermidiate driver. Есть рабочие примеры работы с LSP (желательно с изменением трафика)?
     
  13. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    LSP работает на уровне сокетов. Примеры есть у майкрософт
    http://connect.microsoft.com/WNDP/content/content.aspx?ContentID=1174
     
  14. perdimonokl

    perdimonokl New Member

    Публикаций:
    0
    Регистрация:
    18 сен 2007
    Сообщения:
    38
    Ну попробуй напиши ^^

    LSP это жесть =) Даже не думай сделать это если не знаешь. Состаришсо пока разберешся. Эт лично мое мнение.
     
  15. dag

    dag New Member

    Публикаций:
    0
    Регистрация:
    17 авг 2004
    Сообщения:
    446
    Можешь сделать любой тунель ( компоненты для написания такого тунеля есть даже под дельфи ) и шифруй чем хочешь, трафик по сервисам или весь просто заварачивай в него, и ненужны никакие драйвера (кстати драйвер тоже программа)... и ещё: зашифровать то ты шумом можешь, а обратно то как (или у тебя синхронизованные шумогенераторы) ?