Журнал «Компьютерра» № 8 от 27 февраля 2007 года - Компьютерра Журнал 619 8 стр.


Очередная волна шумихи вокруг «нового веба» тоже не осталась незамеченной — здесь можно отметить такие проекты, как Hop от французского института INRIA (родины OCaml) и Links (им занимается Phil Wadler, некогда концептуальный архитектор Haskell), цель которых — свести разработку веб-приложений к одному языку сверхвысокого уровня, который бы «компилировался» в традиционные HTML, JavaScript, SQL и серверные скрипты [В каком-то смысле ASP.Net и некоторые Java-библиотеки занимаются тем же, имитируя для программиста однородную языковую среду. Существует также проект haXe, с аналогичным подходом и JavaScript-образным базовым языком].

Тем не менее пока все эти инициативы в основном «для своих», то есть апологетов модернизма, желающих «сделать что-нибудь практичное». Говорить о серьезном проникновении в мэйнстрим языков с понятиями и синтаксисом, в корне отличным от старичка Алгола, пока рано.

Итоги: все чудесатее и чудесатее

Ключевое слово в последней фразе предыдущего раздела — пока. Старая императивная модель пока ограничивает восприятие, но эти ограничения с каждым днем уменьшаются. По мере проникновения некогда странных идей «в подкорку», в базовый набор понятий современного программиста расклады могут сильно меняться. К примеру, помимо заметной миграции веб-программистов с Java на Python и Ruby, существует не слишком большая, но устойчивая миграция с Ruby на Smalltalk: когда идея «все есть объект» становится привычной и родной, то некоторые очевидные преимущества Smalltalk (вроде прекрасной среды, особенно для экспериментаторов и творческих личностей) начинают перевешивать мнимый недостаток — «непривычность». Точно так же, после привыкания к основополагающей идее «функция — наше все» на очевидных и простых примерах, многие мэйнстрим-программисты куда благосклоннее начинают смотреть если не на Haskell, то по крайней мере на OCaml и Erlang.

К чему приведет такое «смешение языков» в течение ближайших лет, при нынешних скоростях возникновения идей-суперзвезд, сказать трудно. Быть может, Erlang, отделавшись от репутации «странного до идиотизма», вскоре займет соответствующее место в «гонке платформ» .Net/Java (учитывая, что за платформой Erlang/OTP стоит сильная и амбициозная корпорация, хотя и не слишком заинтересованная в рынке платформ — пока?). Не исключено, что набор тенденций, называемый «Web 2.0», вызовет к жизни другую клиентскую платформу, заметно отличающуюся от сегодняшних браузеров (вспомним, что браузер изначально — таки ж программа для просмотра, а не для работы со сложными приложениями): в ней может быть снято ограничение на клиентский язык [Сегодня это де-факто только JavaScript — который тоже ох как непрост (см.врезку «СНЯПМ»)], и это породит новую гонку языков. А может быть, послезавтра вообще появится нечто существенно отличное от веба. Или, опять же, прилетят инопланетяне и всех завоюют.

Одно ясно: мы живем в эпоху победившего постмодернизма. И здесь случается всякое. Следите за рекламой.

СНЯПМ

СНЯПМ — «самый недооцененный язык программирования в мире» — распространенное шуточное название JavaScript. Его сугубо прикладное направление (как языка программирования, работающего в браузере) стало серьезной преградой к оценке концепций языка по достоинству. Распространенное мнение — «это такой недоязык, в нем и классов-то нормальных нету»; между тем JavaScript как самостоятельный язык — яркий и небезынтересный представитель семейства «прототипно-ориентированных» языков (вместе с диалектом Smalltalk’а Self и современным io), с поддержкой функционального программирования; то, что синтаксически язык относится к C-образным языкам, — чуть ли не единственное, что роднит его с «классическими» системами программирования.

Впрочем, в последнее время, на волне интереса к «богатым» интерфейсам веб-приложений и AJAX (ну и, ясное дело, наступившего постмодернизма), репутация этого занятного языка постепенно начала укрепляться.

КАФЕДРА ВАННАХА: Прецедент Эдипа

Автор: Ваннах Михаил

Об эдиповом комплексе знает всякий, взросший в лоне современной западной культуры. Но вот подлинная история Эдипа, та, о которой нам поведали Софокл в трагедии «Царь Эдип» и Аполлодор в «Мифологической библиотеке», создает интереснейший и важнейший прецедент для информационных технологий.

Итак, Сфинкс, aka Сфинга. Матерью этой барышни была полудева-полузмея Ехидна. Папой — Тифон, чудовище с сотней драконьих голов, человеческим торсом и змеиными кольцами вместо ног. Братьями и сестрами — чудовищные собаки Кербер и Орф, лернейская гидра, химера.

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

Это чудовище использовалось Герой, супругой Зевса в качестве правопринудителя. (Подобно тому, как полиции всех стран и времен используют «ссучившихся» уголовников для борьбы с преступностью.) Объектом деятельности Сфинкса стали семивратные Фивы, город основанный Кадмом в Беотии.

Поводом для правопринудительной деятельности послужило деяние царя Фив Лая, а именно растление им юного Хрисиппа [Schol. Eur. Phoen. 1760.]. (Как всегда, когда речь идет об элитах, дело не обошлось без сексуальной психопатологии…) А протекала карательная работа Сфинги весьма своеобразно. Расположившись у стен Фив на горе Сфингионе, Сфинкс задавала прохожим вопрос: «Скажи мне, кто ходит утром на четырех ногах, днем на двух, а вечером на трех? Никто из всех существ не изменяется так, как он. Когда ходит он на четырех ногах, тогда меньше всего у него сил, и медленнее двигается он, чем в другое время».

Поскольку путники все как один разрешить эту загадку не могли, то дружно гибли в железных объятиях Сфинги. Так что мы можем отметить — Сфинкс была использована как первый в истории случай smart bomb, «умной бомбы». Она была задействована для нарушения коммуникаций семивратных Фив, функционируя в строго локализованном регионе. Она имела изощренную систему «friend or foe», опознавания «свой-чужой». Признак опознавания просто великолепен — он передается по естественному, голосовому каналу коммуникации. Он сформулирован на естественном языке. И, требуя довольно развитого мышления, он весьма устойчив.

Получилось все так, как планировала Гера. Народ семивратных Фив страдал от деятельности Сфинкс, мстившей за преступления своего царя Лая. Примерно так, как жители Дрездена сгорали в огненном шторме, расплачиваясь за деяния А.Гитлера. Обратим внимание — разумность Сфинги превышала IQ любой современной системы оружия, но гражданское население страдало все равно — этот урок стоит помнить и политикам, ведущим самую, что ни на есть справедливую, войну, так и подданным правителей, действия которых могут привести жителей к малоприятным знакомствам с умным оружием.

Согласно классической версии Эдип освободил народ семивратных Фив от Сфинкс, дав ей ответ — «Это — человек. В детстве, зрелости, старости». После этого Сфинкс, взмахнув крыльями, бросилась со скалы в море. Принято считать — богами было предрешено, что Сфинкс должна погибнуть, если кто-либо разрешит ее загадку. Формально все так и было — запрограммированные действия после приема идентификационного кода.

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

На перекрестке трех дорог, в тесном ущелье, он встретил величественного старика на дорогостоящей колеснице, вступил с ним в спор о приоритете движения и в ответ на удар бичом убил того посохом, несмотря на наличие у старика свиты из чинов тогдашних ГАИ и ФСО. Старик этот и был Лай, царь семивратных Фив, ликвидации режима которого и добивалась Гера. (Тот факт, что он был и биологическим отцом Эдипа, оставим за рамками разговора, как широкоизвестный.)

Таким образом повстанец Эдип, находясь в зоне военной операции олимпийцев, выполнил задачу ликвидации царя-педофила Лая. После этого он вступил в контакт с высокотехнологическим оружием олимпийцев, начавшийся с предъявления опознавателя—разгадки, в результате которой оружие — Сфинкс, ликвидировала себя. Так же как подрываются прошедшие мимо цели ракеты, как ликвидируются отлежавшие свое в земле современные противопехотные мины. Ее боевая задача была выполнена — Лай ликвидирован. Местным населением. Классика военного искусства Запада. Непрямая операция [Б. Лиддел Гарт, Стратегия непрямых действий, М., 1999.].

Но есть и более общий смысл в прецеденте Эдипа. Современный человек все сильнее зависит от все более умных машин. И ему хотелось бы, чтобы машины ему подчинялись. Второй закон роботехники Азимова. Просто потому, что он — Человек.

А вот это — вряд ли, как показывает нам Сфинкс. Подчиняться машины будут. Но только тем, кто умнее их. Даже отнюдь не наделенный сознанием компьютер требует кое-каких знаний от пользователя. Машина автономная, разумная вряд ли станет безропотным рабом купившего ее идиота. У умных машин для глупых хозяев найдутся стальные объятия Сфинкс.

А вот это — вряд ли, как показывает нам Сфинкс. Подчиняться машины будут. Но только тем, кто умнее их. Даже отнюдь не наделенный сознанием компьютер требует кое-каких знаний от пользователя. Машина автономная, разумная вряд ли станет безропотным рабом купившего ее идиота. У умных машин для глупых хозяев найдутся стальные объятия Сфинкс.

ОКНО ДИАЛОГА: Восход Европы: Электронные паспорта в России

Авторы: Владимир Гуриев, Родион Насакин, Константин Курбатов

Стремление любого государства к учету и контролю объяснимо. Так же понятно стремление любого гражданина этого учета и контроля избежать. Электронным удостоверениям без году неделя, а пресса — и наш журнал не исключение — заполнена невеселыми размышлениями на тему, что будет, когда государство научится использовать ИТ по полной программе, отслеживая перемещения граждан, сводя воедино разрозненные базы данных и получая, таким образом, полный электронный профиль практически любого человека. О том, чем на самом деле вызван переход на электронные паспорта, что они вообще такое и насколько уязвимы к внешним вторжениям, мы попытались узнать у Леонида Юхневича, директора ФГУП НИИ «Восход», которое, кроме всего прочего, занимается изготовлением загранпаспортов нового поколения.

Формальным поводом для нашего разговора стал прошлогодний взлом электронных паспортов в Великобритании. Вслед за голландскими и германскими умельцами британские «хакеры» научились читать данные, записанные на встроенный чип. Никакой новой информации там не содержится — все данные, записанные на чипе, можно найти в «бумажной» составляющей паспорта, однако легкость, с которой потенциальный злоумышленник способен просмотреть содержимое чипа и даже клонировать его (но не изменить — этого пока не умеют), настораживает.

В Великобритании выдано больше 3 млн. новых паспортов. В России — 5 тысяч.

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

Американский стиль

— Новые документы внешне мало чем отличаются от прежних, — говорит Леонид Юхневич, — разве что добавилась пластиковая страница с зашитым чипом. В нем дублируются печатные данные: двухмерная фотография, фамилия, имя, отчество, дата рождения, пол, дата выдачи документа. Отечественный паспорт соответствует международным стандартам защиты информации в электронных удостоверениях личности. Предъявляемые ими требования к криптографическим средствам одинаковы для всех стран. Если требования будут выше — появятся проблемы из-за того, что по каким-то причинам эта информация может не считаться на пропускном пункте определенного государства. Если ниже, может возникнуть ситуация с несанкционированным доступом к данным, как случилось в Великобритании.

Стандарты безопасности принимает Международная организация гражданской авиации (ICAO). Их вполне достаточно для надежной защиты. Разумеется, это не значит, что какая-то другая структура или частные лица, ознакомившись со стандартами (они, кстати, находятся в открытом доступе) и приобретя соответствующее оборудование, не смогут разработать ПО для считывания. Но это нельзя расценивать как угрозу. Считать данные закрытого паспорта, находясь в нескольких метрах от его обладателя, невозможно. Для этого нужно еще выкрасть паспорт и приложить чип к «самопальному» сканеру. Ну а потерянные или украденные паспорта в соответствии с законодательными нормами объявляются недействительными.

«Считать данные закрытого паспорта, находясь в нескольких метрах от его обладателя», действительно невозможно, однако нидерландские экспериментаторы сумели сделать это с расстояния 30 см (британцы остановились на 7,5 см — при том, что, по официальной точке зрения, паспорт можно считать с расстояния не более 2 см). Не бог весть какое достижение, но лиха беда начало. Конечно, сегодня трудно предположить, насколько эти прорехи в безопасности критичны, но то, что новый уровень защиты не слишком хорош, — удивляет.

Паспорта made by «Восход» четко соответствуют международным стандартам, однако сами процессы изготовления, оформления, выдачи и пограничного контроля осуществляются силами государственной информационной системы, к которой предъявляются дополнительные требования.

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

Специализированное ПО — документооборот, использование ЭЦП, считывание данных, а в перспективе дактилоскопия и создание 3D-фотографий — в основном пишется в России. И по большей части — в самом «Восходе». А вот основа ИТ-составляющей реализована на зарубежных технологиях. Операционные системы, СУБД, продукты передачи данных — все от мировых производителей: Microsoft, IBM, Oracle.

Пресловутая «закрытость» кода от Microsoft Юхневича не смущает. Уже несколько лет Microsoft дает «посмотреть», что напрограммировали ее сотрудники, если речь идет о государственных или просто крупных заказах.

— Мы, разумеется, исследовали их системы, прежде чем принимать решение об использовании той или иной технологической платформы в проекте. Помимо Microsoft, есть так называемая доверенная операционная система, которая построена на базе Linux и имеет соответствующий сертификат требуемого класса. Она и ложится в основу выбранного технологического решения. Такие решения мы применяем при автоматизации паспортно-визовых отделов.

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

— Например, все говорят о биометрических паспортах, но очевидно, что на сегодняшний день никакой биометрии там нет. Биометрия может появиться тогда, когда появится информация об отпечатках пальцев и, возможно, трехмерный портрет владельца. Думаю, уже в нынешнем году будет принят стандарт с 3D. Ну и безусловно будут совершенствоваться международные стандарты в области криптографии.

Биометрия

Опыт клонировани

Может показаться, что добавление биометрии значительно повышает общую надежность электронных удостоверений, однако не все эксперты с этим согласны. По крайней мере, если под биометрией понимать только изображение лица. Несколько лет назад ученые из Университета Вестминстера провели любопытный эксперимент, чтобы выяснить, насколько кредитки с фотографией владельца надежнее обычных кредитных карт. Казалось бы, если найдется такой глупый злоумышленник, что попытается расплатиться фотокредиткой в супермаркете, то его задержат при первой же попытке пробить чек, однако все оказалось иначе. Работники «подопытного» супермаркета совершенно спокойно принимали фотокредитки от людей, хотя бы немного напоминающих тех, кто изображен на фотографии. Мало ли когда он фотографировался? Само осознание того, что эти кредитки более «надежны», снижало их надежность. В результате никакой заметной разницы между фотокредитками и обычными карточками обнаружено не было — в реальной жизни технологии работают не всегда столь эффективно, как ожидается.

Та же проблема и у электронных паспортов. Разумеется, электронный паспорт труднее клонировать. Вряд ли кто-то будет отрицать, что в сумме «бумажная» и электронная защита лучше. Но есть опасность, что и проверять электронные паспорта — как заведомо более надежные — станут спустя рукава. Пограничный контроль с паспортом, в который вклеена или прошита чужая фотография, пройти не так-то просто. А вот арендовать автомобиль или взять небольшой потребительский кредит может оказаться не труднее (а то и легче), чем сейчас.

Так или иначе, электронные паспорта уже здесь. И за довольно короткий срок — проект был начат только в 2005 году — Россия почти догнала своих соседей, хотя она гораздо больше Германии или Великобритании.

Срок действия паспорта оставлен прежним — пять лет. Однако эксплуатационная надежность паспортов, по мнению Гознака, который и занимается их изготовлением, вдвое выше. В самом «Восходе» исследований эксплуатационной надежности не проводили, но понятно, что это больной — или, как говорит Леонид Юхневич, — интересный вопрос (а вот в журнале Wired немножко поэкспериментировали и выяснили, что самый надежный и аккуратный способ разделаться со встроенным чипом — это отдубасить поверхность паспорта молотком). Дело в том, что электронный паспорт с неработающим чипом считается недействительным, даже если его бумажная составляющая в полном порядке.

Назад Дальше