Чтение онлайн

на главную - закладки

Жанры

Шрифт:

64. Найдите в интернете описание какого-нибудь интересного случая, касающегося приватности, и напишите о нем небольшой доклад на одну страницу.

65. Напишите программу, шифрующую входные данные путем суммирования по модулю 2 с ключевым потоком. Найдите или напишите сами хороший генератор случайных чисел для создания ключевого потока. Программа должна действовать как фильтр, принимая открытый текст со стандартного устройства ввода и выдавая шифр на стандартном устройстве вывода (и наоборот). У программы должен быть один параметр: ключ, запускающий генератор случайных чисел.

66. Напишите процедуру для вычисления хеша SHA-2 блока данных. У про­цедуры должно быть два параметра: указатель на входной буфер и указатель на 20-байтный выходной буфер.

Чтобы найти спецификацию SHA-2, поищите в интернете FIPS 180-1, в этом документе содержится полное описание.

67. Напишите функцию, которая принимает поток ASCII-символов и шифру­ет его с помощью режима сцепления блоков. Размер блока должен быть 8 байт. Программа должна преобразовывать открытый текст со стандартного устройства ввода в зашифрованный текст на стандартном устройстве вывода. Для решения этой задачи вы можете воспользоваться любой подходящей системой, чтобы определить конец входного потока и/или понять, когда добавить заполнение, чтобы завершить блок. Вы можете выбрать формат вывода данных, главное, чтобы он был однозначным. Программа должна получать два параметра:

1. Указатель на вектор инициализации.

2. Номер k, представляющий смещение шифра подстановки, так чтобы значение ASCII было зашифровано k-м значением перед ним в алфавите.

Например, если х = 3, тогда «A» шифруется как «D», «B» — как «E» и т.д. Сделайте разумные допущения с учетом последнего значения в наборе ASCII. Четко зафиксируйте в своем коде все сделанные вами допущения, касающиеся входного потока и алгоритма шифрования.

68. Цель этой задачи — дать лучшее представление о механизме работы RSA. Напишите функцию, которая получает в качестве параметров простые числа p и q, рассчитывает открытый и секретный RSA-ключи с помощью этих параметров и выводит n, z, d и e в качестве выходных данных. Также функция должна принимать поток значений ASCII и шифровать его с помощью вычисленных ключей RSA. Программа должна получать открытый текст со стандартного устройства ввода и выдавать зашифрованный текст на стандартном устройстве вывода. Шифрование должно производиться посимвольно: каждый символ из входных данных шифруется независимо от остальных. Для решения этой задачи можно воспользоваться любой подходящей системой, чтобы определить конец входного потока. Вы можете выбрать формат вывода данных, главное, чтобы он был однозначным. Четко зафиксируйте в своем коде все допущения, касающиеся входного потока и алгоритма шифрования.

Глава 9. Рекомендации для чтения и библиография

Мы закончили изучение компьютерных сетей, но это только начало. Многие интересные темы не были рассмотрены во всей полноте, а некоторые — вообще пропущены за неимением места. Данная глава содержит список дополнительной литературы для читателей, желающих продолжить ознакомление с компьютерными сетями.

9.1. Литература для дальнейшего чтения

Существует большое количество книг, касающихся всех аспектов компьютерных сетей и распределенных систем. Среди журналов, часто публикующих статьи по этой теме, стоит выделить следующие два: IEEE/ACM Transactions on Networking и IEEE Journal on Selected Areas in Communications.

В периодических изданиях ACM Special Interest Groups on Data Communi­cations (SIGCOMM) и Mobility of Systems, Users, Data, and Computing (SIGMOBILE) публикуется множество интересных статей, особенно на тему новых открытий и разработок. Это издания Computer Communication Review и Mobile Computing and Communications Review.

Кроме того, Институт инженеров электротехники и электроники (IEEE) выпускает еще три журнала: IEEE Internet Computing, IEEE Network Magazine и IEEE Communications Magazine — в них содержатся обзоры, учебные статьи и информация об исследованиях по компьютерным сетям. Первые два в основном посвящены архитектуре, стандартам и программному обеспечению, а третий — технологиям коммуникаций (оптоволоконной,

спутниковой связи и т.д.).

Ежегодно или раз в два года проводятся несколько конференций, о которых рассказывается в многочисленных статьях, посвященных сетям. В частности, обратите внимание на конференции SIGCOMM, NSDI (Symposium on Networked Systems Design and Implementation), MobiSys (Conference on Mobile Systems, Applications, and Services), SOSP (Symposium on Operating Systems Principles) и OSDI (Symposium on Operating Systems Design and Implementation).

Ниже мы перечислим дополнительную литературу, сгруппированную по главам этой книги. Большая часть приведенных рекомендаций представляет собой ссылки на издания (или отдельные главы) с учебной или обзорной информацией. Полные ссылки приводятся в разделе 9.2.

9.1.1. Введение

Comer (Комер), «The Internet Book», 4-е издание

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

Computer Communication Review, 50th Anniversary Issue, Oct. 2019

В 2019 году состоялась 50-я конференция ACM SIGCOMM, и в специальном выпуске журнала рассказывается о том, как выглядели компьютерные сети и SIGCOMM47 на заре своего становления и как они изменились со временем. Несколько бывших руководителей SIGCOMM опубликовали статьи о том, как обстояли дела в прошлом и в каком направлении следует развиваться в будущем. Также обсуждается взаимосвязь между научными исследованиями в области компьютерных сетей и промышленным применением этих технологий. Говорится и об эволюции самого журнала.

Crocker, S.D. (Крокер), The Arpanet and Its Impact on the State of Networking

В честь 50-летнего юбилея сети ARPANET, предшественницы интернета, журнал IEEE Computer собрал за виртуальным круглым столом шестерых разработчиков этой сети, чтобы поговорить о ней и о том, какое огромное влияние она оказала на весь мир. Участниками круглого стола стали Бен Баркер (Ben Barker), Винт Серф (Vint Cerf), Стив Крокер (Steve Crocker), Боб Кан (Bob Kahn), Лен Клейнрок (Len Kleinrock) и Джефф Рулифсон (Jeff Rulifson). В ходе обсуждения выяснилось много интересных фактов, в частности то, что хотя проект сети ARPANET был изначально рассчитан на ряд лучших исследовательских университетов США, их представители поначалу не видели в нем никакой ценности и не хотели к нему присоединяться.

Crovella and Krishnamurthy (Кровелла и Кришнамурти), «Internet Measurement»

Как узнать, хорошо ли работает интернет? Вопрос не тривиальный, ведь за интернет никто не отвечает. Эта книга описывает методы, разработанные для оценки работы интернета, от сетевой инфраструктуры до приложений.

IEEE Internet Computing, Jan.-Feb. 2000

Первый выпуск журнала IEEE Internet Computing в новом тысячелетии вполне ожидаемо содержит размышления людей, приложивших руку к созданию интернета в предыдущую эпоху, о том, каким он может стать в будущем. В обсуждении приняли участие такие эксперты, как Пол Бэран (Paul Baran), Лоуренс Робертс (Lawrence Roberts), Леонард Клейнрок (Leonard Kleinrock), Стивен Крокер (Stephen Crocker), Дэнни Коэн (Danny Cohen), Боб Меткалф (Bob Metcalfe), Билл Гейтс (Bill Gates), Билли Джой (Billy Joy) и др. Оцените, насколько верными оказались их прогнозы спустя два десятилетия.

Kurose and Ross (Куроуз и Росс), «Computer Networking: A Top-Down Approach»48

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

McCullough (Маккалоу), «How the Internet Happened: From Netscape to the iPhone»

Поделиться:
Популярные книги

Доктор 4

Афанасьев Семён
4. Доктор
Фантастика:
альтернативная история
5.00
рейтинг книги
Доктор 4

Барон Дубов 2

Карелин Сергей Витальевич
2. Его Дубейшество
Фантастика:
юмористическое фэнтези
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Барон Дубов 2

Вернуть Боярство 3

Мамаев Максим
3. Пепел
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Вернуть Боярство 3

Имперец. Том 1 и Том 2

Романов Михаил Яковлевич
1. Имперец
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Имперец. Том 1 и Том 2

Искатель 1

Шиленко Сергей
1. Валинор
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Искатель 1

Локки 5. Потомок бога

Решетов Евгений Валерьевич
5. Локки
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Локки 5. Потомок бога

Сыщик и вор - братья навек

Колычев Владимир Григорьевич
Детективы:
прочие детективы
7.50
рейтинг книги
Сыщик и вор - братья навек

Метатель

Тарасов Ник
1. Метатель
Фантастика:
боевая фантастика
попаданцы
рпг
фэнтези
фантастика: прочее
постапокалипсис
5.00
рейтинг книги
Метатель

Идеальный мир для Лекаря 12

Сапфир Олег
12. Лекарь
Фантастика:
боевая фантастика
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 12

Тепла хватит на всех 2

Котов Сергей
2. Миры Пентакля
Фантастика:
научная фантастика
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
Тепла хватит на всех 2

Темный Лекарь 7

Токсик Саша
7. Темный Лекарь
Фантастика:
попаданцы
аниме
фэнтези
5.75
рейтинг книги
Темный Лекарь 7

Последнее желание

Сапковский Анджей
1. Ведьмак
Фантастика:
фэнтези
9.43
рейтинг книги
Последнее желание

Бастард

Майерс Александр
1. Династия
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Бастард

Последний Паладин. Том 7

Саваровский Роман
7. Путь Паладина
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Последний Паладин. Том 7