stringtranslate.com

Безопасное сетевое программирование

Secure Network Programming (SNP) — прототип первого Secure Sockets Layer , разработанный и созданный в 1993 году Лабораторией сетевых исследований Техасского университета в Остине под руководством Саймона С. Лэма . Эта работа была опубликована на Летней технической конференции USENIX 1994 года. [1] [2] За этот проект авторы выиграли премию ACM Software System Award 2004 года .

Саймон С. Лэм был включен в Зал славы Интернета (2023) за «изобретение защищенных сокетов в 1991 году и реализацию первого уровня защищенных сокетов, названного SNP, в 1993 году». [3] [4]

Эта работа началась в 1991 году как теоретическое исследование Лаборатории сетевых исследований формального значения уровня протокола, удовлетворяющего спецификации верхнего интерфейса в качестве поставщика услуг и спецификации нижнего интерфейса в качестве потребителя услуг. [5] Было представлено исследование случая добавления уровня безопасности между прикладным и сетевым уровнями . [6]

Лаборатория сетевых исследований получила грант от Агентства национальной безопасности в июне 1991 года на исследование того, как применить их теорию модулей и интерфейсов к проверке безопасности. [7] В то время было создано три известных системы аутентификации ( Kerberos от MIT ) или разрабатывалось (SPX от DEC и KryptoKnight от IBM). Все эти системы страдали от общего недостатка; а именно, они не экспортировали чистый и простой в использовании интерфейс, который мог бы легко использоваться интернет-приложениями. Например, потребовалось бы огромное количество усилий, чтобы «керберизировать» существующее распределенное приложение.

В целях «безопасного сетевого программирования для масс» изобретатели SNP задумали защищенные сокеты как высокоуровневую абстракцию, подходящую для защиты интернет-приложений. В 1993 году они спроектировали и построили прототип SNP. Разработанный как прикладной подуровень поверх сокетов, SNP предоставляет пользовательский интерфейс, очень похожий на сокеты. Это сходство было задумано так, чтобы безопасность могла быть модернизирована в существующие программы сокетов с небольшими изменениями. Кроме того, с таким тщательно спроектированным подуровнем и его тщательно отлаженной реализацией, его может легко использовать любое интернет-приложение, использующее сокеты для сквозной связи. Это естественная идея в ретроспективе, но в 1993 году это было новым и серьезным отходом от основных исследований сетевой безопасности того времени.

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

В докладе, представленном 8 июня 1994 года на летней технической конференции USENIX [1], представлен проект системы вместе с результатами измерений производительности от реализации прототипа, что наглядно демонстрирует практичность уровня защищенных сокетов.

SNP стал пионером защищенных сокетов для интернет-приложений в целом, независимо и одновременно с проектированием и разработкой протокола HTTP для всемирной паутины , который в 1993 году все еще находился в зачаточном состоянии. Последующие уровни защищенных сокетов (SSL от Netscape и TLS от IETF ), реализованные несколько лет спустя с использованием архитектуры и ключевых идей, впервые представленных в SNP, сделали возможной безопасную электронную коммерцию между браузерами и серверами. Сегодня многие другие интернет-приложения (включая электронную почту ) используют HTTPS , который состоит из HTTP, работающего поверх уровня защищенных сокетов.

За изобретение защищенных сокетов в 1991 году и реализацию первого уровня защищенных сокетов, названного SNP, в 1993 году.


Ссылки

По состоянию на 2023-05-10 эта статья полностью или частично взята из Networking Research Laboratory . Владелец авторских прав лицензировал контент таким образом, что позволяет повторное использование в соответствии с CC BY-SA 3.0 и GFDL . Все соответствующие условия должны быть соблюдены. Исходный текст был на "Краткая история первого слоя защищенных сокетов"

  1. ^ ab Woo, Thomas; Bindignavle, Raghuram; Su, Shaowen; Lam, Simon (июнь 1994 г.). "SNP: Интерфейс для безопасного сетевого программирования" (PDF) . Труды летней технической конференции USENIX . Получено 21 июля 2019 г.
  2. ^ "Программа летней технической конференции USENIX 1994 года, Бостон, 6-10 июня 1994 года".
  3. ^ «Саймон С. Лэм, почетный член совета директоров по информатике, включен в Зал славы Интернета».
  4. ^ «Саймон С. Лэм, включён в Зал славы Интернета 2023 года».
  5. ^ Лэм, Саймон; Шанкар, Удайя (январь 1994 г.). «Теория интерфейсов и модулей I — Теорема композиции». IEEE Transactions on Software Engineering . 20 : 55–71. doi :10.1109/32.263755 . Получено 21 июля 2019 г.
  6. ^ Лэм, Саймон; Шанкар, Удайя; Ву, Томас (май 1991 г.). «Применение теории модулей и интерфейсов к проверке безопасности» (PDF) . Труды. Симпозиум компьютерного общества IEEE 1991 г. по исследованиям в области безопасности и конфиденциальности . стр. 136–154. doi :10.1109/RISP.1991.130782. ISBN 0-8186-2168-0. S2CID  18581606 . Получено 5 января 2021 г. .
  7. ^ Саймон С. Лэм (PI/PD), «Применение теории модулей и интерфейсов к проверке безопасности», грант исследовательской программы NSA INFOSEC University № MDA 904-91-C-7046, с 28.06.91 по 27.06.93.