Новый продукт от разработчика WebMoney Transfer компании ЗАО "Вычислительные силы" оказался вовсе не очередным WM-сервисом и с интернет-платежами никак не связан. Простой как всё гениальное и гениальный как всё простое сервис ENUM.Ru призван окончательно решить извечную проблему безопасности в Интернете. Возможно, я слишком рано говорю о ENUM'е как о панацее от всех бед, но то, что сервис достоин самого пристального внимания, сомнению не подлежит.
ENUM - это система авторизации на сайтах с помощью... мобильного телефона.
При регистрации пользователя в ENUM, он устанавливает на свою "трубку" специальное Java-приложение (мидлет) под названием Enum Client. Каждый такой мидлет сгенерирован специально для конкретного пользователя и имеет уникальный для каждого пользователя алгоритм. Что делает Enum Client? В ответ на введенное пользователем число он рассчитвает и отображает на экране телефона число-ответ. Благодаря тому, что алгоритм рассчета для каждого пользователя уникален, соответствие эти двух чисел для каждого пользователя также уникально. Скажем, в ответ на введенные цифры "12345" мидлет одного пользователя выдаст "805687", другого - "243215", третьего - что-то еще и т.д. Таким образом осуществляется однозначная идентификация пользователя на сайтах, подключенных к сервису ENUM.
На первый взгляд это кажется слишком сложным, но на самом деле всё очень просто. И дочитав статью до конца, вы в этом убедитесь.
ENUM имеет два основых преимущества: безопасность и удобство. Звучит банально? Согласен. Но если копнуть глубже, то окажется, что всё намного интереснее.
Безопасность. Мошенники и вирусописатели используют Интернет для кражи с наших компьютеров ценной информации. Но какую бы защиту мы не изобрели - файрволлы, антивирусы, антикейлогеры, антитрояны, сертификаты - всегда есть теоретическая вероятность ее обхода и кражи паролей (или ключей Кипера, например) с компьютера, потому что и хакеры, и защитные инструменты используют ОДИН И ТОТ ЖЕ канал - Интернет. И проблема Интернета состоит в том, что нет другого, альтернативного канала хранения-передачи информации. Так вот, ENUM эту проблему решает. Он предоставляет нам тот самый другой канал. Хакер может влезть на ваш компьютер, "подсадить" троянский вирус, но он не сможет влезть в ваш мобильный телефон. Угадать же, по какому уникальному для каждого пользователя алгоритму Enum Client из одного числа получает другое, тоже нельзя.
Таким образом, ENUM, если можно так выразиться, - носитель новой философии в интернет-безопасности. И достигается это с помощью обычного телефона с поддержкой Java. Никакие дополнительные дорогостоящие устройства не требуются.
Удобство. Второе преимущество ENUM - его неоспоримое удобство и универсальность. Теперь не нужно запоминать кучу паролей. Просто набираете в телефоне контрольное число, получаете "ответ" и вводите его на сайте.
С чем это можно сравнить? Многие из вас наверняка носят с собой целую кипу ключей. Несколько ключей от квартиры, несколько от автомобиля, еще парочка от гаража. А ведь есть еще дача, почтовый ящик, банковская ячейка и т.д. Если носить все это на одной связке, то, потеряв ее, можно заработать депрессию и головную боль как минимум на ближайшую неделю-две. Если же носить на разных связках, то никаких карманов не хватит. Первый вариант опасен, второй неудобен. Вот было бы хорошо, если бы к любой вашей двери подходил один единственный ключ, который при этом было бы трудно или невозможно украсть или подделать!
Аналогично этому, каждый из нас имеет множество регистраций и паролей в Сети - на форумах, чатах, в казино, различных сервисах, службах интернет-банкинга, баннерных сетях, платежных системах и т.д. Использовать везде одинаковый пароль небезопасно. Использовать разные пароли неудобно, потому что все их надо как-то хранить и где-то записывать. С дилеммой "безопасность или удобство" мы сталкиваемся постоянно. Благодаря ENUM все проблемы могут быть сняты. Один телефон и один мидлет в нем обеспечивают доступ сразу ко множеству сайтов. Не нужно запоминать многочисленные логины и пароли. Нужно просто иметь телефон под рукой. А это совсем не сложно.
Таким образом, ENUM - это и есть тот один единственный универсальный ключ в вашем телефоне, который может отпереть любой ваш интернет-замок.
Правда, такая сказочная картина пока остается делом будущего. ENUM применяется пока лишь на двух сайтах - Capitaller и Digiseller. Но, во-первых, WebMoney наверняка будет расширять список своих проектов, подключенных к ENUM (возможно даже, что и вход в Кипер скоро будет реализован посредством этого сервиса), а, во-вторых, ENUM разрабатывался как независимый сервис, его может подключить любой сторонний сайт, на котором есть авторизация пользователей. Будем надеяться, что вебмастера и интернет-бизнесмены не обойдут эту разработку стороной.
***
Но давайте перейдем к делу и зарегистрируемся в ENUM. Для этого заполняем форму на сайте сарвиса (см.рисунок ниже), после чего проверяем указанный ящик и переходим по ссылке, которая содержится в письме. На открывшейся странице еще раз проверяем правильность своего телефонного номера и жмем кнопку "Подтверждаю":
Вслед за этим вы получите SMS-сообщение со специальным кодом активации и WAP-ссылкой, по которой можно загрузить Enum Client в свой телефон. Кроме того, на ваш емайл придет письмо с файлами мидлета (ENUMClient.jad и ENUMClient.jar). Вы можете либо загрузить приложение через WAP по ссылке в SMS-сообщении, либо передать на телефон оба этих файла через ИК-порт, кабель или Bluetooth, после чего запустить в телефоне ENUMClient.jad. Я воспользовался первым способом и скачал программу через WAP:
После загрузки и установки запустите мидлет Enum Client в телефоне. Введите код активации, полученный ранее в SMS:
Открыв приложение, видим, что его меню состоит всего из трех пунктов - "Получить ответ", "Настройки" и "Выход". Пункт "Получить ответ" служит для генерации ответов на контрольные значения на сайтах, использующих ENUM. О том, как это делать, чуть ниже. В "Настройках" мы можем задать пароль на вход (не менее 3-х символов), который будет запрашиваться всякий раз при запуске мидлета. Если такая защита будет установлена, никто посторонний не сможет войти в ваш Enum Client и, следовательно, не сможет попасть в ваши аккаунты на сайтах, использующих ENUM-авторизацию.
Но вернемся к регистрации. Нам остается лишь активировать свой аккаунт в ENUM. Для этого зайдите на эту страницу, введите там свой email и код на картинке. Проверьте почтовый ящик и в пришедшем письме кликните по ссылке. Откроется страница, на которой будет изображена картинка с контрольным значением, о котором мы уже упоминали. Введите это число в меню мидлета "Получить ответ", получите число-ответ и введите его в форме. Такую нехитрую процедуру вы будете выполнять и в дальнейшем при использовании ENUM.
***
Продемонстрируем теперь, как работает ENUM на сайтах. Например, на Digiseller.Ru попадём в свой аккаунт не традиционно по имени и паролю, а с помощью ENUM. Для этого на странице авторизации введём email, который мы указали при регистрации в ENUM, и нажмём "Продолжить". На следующей странице увидим контрольное число. Спросим у Enum Client ответ на него, введем этот ответ в поле "Ответ" и нажмём кнопку. Мы в аккаунте! Как видим, всё предельно просто.
Однако есть у ENUM один недостаток. Как мы уже увидели, уникальным реквизитом каждого пользователя в сервисе является его email. Никаких логинов и тем более WM-идентификаторов там не используется. Только email - ведь он есть у любого. Это сделано намеренно, чтобы к сервису мог подключиться любой интернет-проект и "опознавать" своих пользователей по их ENUM-емайлам. Вот тут и кроется небольшой подвох. Для того чтобы иметь возможность авторизовываться на каком-либо сайте с помощью ENUM, вы должны иметь прописанным в своей учетной записи на этом сайте ваш ENUM-email.
Поясню. Если вы регистрировались в ENUM с емайлом vpetrov@mail.ru, а в аккаунте Digiseller'а, например, у вас указан другой ящик vpetrov@yahoo.com, то в свой аккаунт Digiseller'а вы через ENUM-авторизацию не попадёте. Digiseller просто "ответит" ENUM'у: "я этого человека к себе не пущу, потому что у меня нет пользователя с емайлом vpetrov@mail.ru". Поэтому если вы хотите в дальнейшем использовать ENUM-авторизацию, вам необходимо сначала зайти в аккаунт как обычно по имени-паролю и изменить в настройках свой email (в данном случае с vpetrov@yahoo.com на vpetrov@mail.ru).
Например, чтобы использовать ENUM на сайте Capitaller'а, необходимо сначала авторизоваться с помощью Кипера и на странице "Персонал" своего бюджетного автомата указать ваш ENUM-email.
Впрочем, как обещают разработчики, в ближайшее время при регистрации в ENUM будет возможно указывать не один, а несколько email'ов. Тогда описанные неудобства исчезнут.
Update от 20.05.2005 Возможность подключать несколько ящиков к одному аккаунту ENUM была реализована почти сразу после выхода этой статьи. Для подключения необходимо зайти в личный кабинет на сайте Enum и в разделе "Email-адреса" добавить ящики с подтверждением (путем получение письма)
На этом всё. Не оставайтесь в стороне от новых решений и новых философий!