enter otp что это значит

Одноразовый пароль

enter otp что это значит

enter otp что это значит

Одноразовый пароль (англ. one time password, OTP ) — это пароль, действительный только для одного сеанса аутентификации. Действие одноразового пароля также может быть ограничено определённым промежутком времени. Преимущество одноразового пароля по сравнению со статическим состоит в том, что пароль невозможно использовать повторно. Таким образом, злоумышленник, перехвативший данные из успешной сессии аутентификации, не может использовать скопированный пароль для получения доступа к защищаемой информационной системе. Использование одноразовых паролей само по себе не защищает от атак, основанных на активном вмешательстве в канал связи, используемый для аутентификации (например, от атак типа «человек посередине»).

Человек не в состоянии запомнить одноразовые пароли. Поэтому требуются дополнительные технологии для их корректной работы.

Содержание

Способы создания и распространения OTP

Алгоритмы создания OTP обычно используют случайные числа. Это необходимо, потому что иначе было бы легко предсказать последующие пароли на основе знания предыдущих. Конкретные алгоритмы OTP сильно различаются в деталях. Различные подходы к созданию одноразовых паролей перечислены ниже.

Также существуют различные способы, чтобы сообщить пользователю следующий пароль. Некоторые системы используют специальные электронные токены, которые пользователь носит с собой, создающие одноразовые пароли и выводящие затем их на маленьком экране. Другие системы состоят из программ, которые пользователь запускает с мобильного телефона. Ещё другие системы генерируют одноразовые пароли на сервере и затем отправляют их пользователю используя посторонние каналы, такие как SMS сообщения. Наконец, в некоторых системах одноразовые пароли напечатаны на листе бумаги или на скретч-карте, которые пользователю необходимо иметь с собой.

Реализация

Математические алгоритмы

Один подход, разработанный Лесли Лэмпортом, использует одностороннюю функцию (назовём её f). Система одноразовых паролей начинает работать от начального числа s, затем генерирует пароли

столько раз, сколько необходимо. Если ищется бесконечная серия паролей, новое начальное число может быть выбрано после того, как ряд для s оказывается исчерпанным. Каждый пароль распределяется в обратном порядке, начиная с f(f(…f(s))…), заканчивая f(s).

Синхронизированные по времени

enter otp что это значит

enter otp что это значит

Синхронизированные по времени одноразовые пароли обычно связаны с физическими аппаратными токенами (например, каждому пользователю выдаётся персональный токен, который генерирует одноразовый пароль). Внутри токена вcтроены точные часы, которые синхронизированы с часами на сервере. В этих OTP системах, время является важной частью алгоритма создания пароля так как генерация нового пароля основывается на текущем времени, а не на предыдущем пароле или секретном ключе.

В последнее время, стало возможным брать электронные компоненты, связанные с постоянными токенами-часами, такие как от ActivIdentity, InCard, RSA, SafeNet, Vasco, и VeriSign и встраивать их в форм-фактор кредитной карты. Однако, так как толщина карты (от 0.79 мм до 0.84мм) не позволяет использовать традиционные элементов батареек, необходимо использовать специальные батарейки, основанные на полимерах, время жизни которых гораздо больше, чем у обычных мини-батареек. Кроме того, должны использоваться крайне маломощные полупроводниковые компоненты для экономии энергии во время режима ожидания и/или использования продукта. В производстве тонких устройств OTP лидируют две компании: Identita и NagraID.

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

Запрос

Использование одноразовых паролей с запросом требует от пользователя обеспечивать синхронизированные по времени запросы, чтобы была выполнена проверка подлинности. Это может быть сделано путём ввода значения в сам токен. Чтобы избежать появления дубликатов, обычно включается дополнительный счётчик, так что если случится получение двух одинаковых запросов, то это всё равно приведёт к появлению разных одноразовых паролей. Однако, вычисления обычно не включают предыдущий одноразовый пароль, так как это приведёт к синхронизации задач. EMV начинают использовать такие системы (т. н. «Chip Authentication Program») для кредитных карт в Европе.

Одноразовый пароль через SMS

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

Одноразовый пароль на мобильном телефоне

По сравнению с аппаратной реализацией токена, которая требует, чтобы пользователь имел с собой устройство-токен, токен на мобильном телефоне существенно снижает затраты и предлагает беспрецедентный уровень удобства. Это решение так же уменьшает материально-технические требования, так как нет необходимости выдавать отдельное устройство каждому пользователю. Мобильные токены, такие как FiveBarGate или FireID дополнительно поддерживают некоторое число токенов в течение одной установки приложения, позволяя пользователю аутентифицироваться на нескольких ресурсах с одного устройства. Этот вариант также предусматривает специфические приложения для разных моделей телефонов пользователя. Токены в мобильных телефонах также существенно более безопасны, чем OTP по SMS, так как SMS отправляются по сети GSM в текстовом формате с возможностью перехвата.

Сравнение технологий

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

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

Хотя одноразовые пароли являются более безопасными, чем обычные пароли, использование систем OTP всё ещё уязвимо для атак типа «человек посередине». Поэтому одноразовые пароли не должны передаваться третьей стороне. Синхронизирован ли одноразовый пароль по времени, в основном никак не влияет на степень уязвимости. Основанные на запросе одноразовые пароли тоже являются уязвимыми, хотя успешная атака требует от злоумышленника чуть более активных действий, чем для других типов OTP.

Стандартизация

Запатентовано множество технологий OTP. Это делает стандартизацию в этой области ещё более трудной, так как каждая компания пытается протолкнуть свою собственную технологию. Стандарты, тем не менее, существуют, например, RFC 2289 [3] и RFC 4226 (HOTP).

OTP в рамках банковского дела

В некоторых странах одноразовые пароли используются для удалённого использования банков. В некоторых из этих систем банк посылает пользователю пронумерованный список одноразовых паролей, напечатанный на бумаге. Для каждой удалённой транзакции, пользователь должен ввести соответствующий одноразовый пароль из этого списка. В Германии эти пароли обычно называют TAN кодом (от «transaction authentication numbers»). Некоторые банки отправляют TAN-коды пользователю с помощью SMS, и в этом случае они называются mTAN-коды (от «mobile TANs»).

Связанные технологии

Чаще всего, одноразовые пароли являются олицетворением двухфакторной аутентификации. Некоторые Технологии единого входа [4] системы используют одноразовые пароли. OTP технология так же используется в токенах безопасности.

Источник

Что означает OTP и как его использовать

OTP расшифровывается как One True Pairing и часто используется на веб-сайтах социальных сетей, особенно на Tumblr. Интернет-пользователи, которые часто используют OTP, обычно используют это сокращение, очень высоко оценивая своих любимых звезд на телевидении или в фильмах. И не только для знаменитостей, люди также используют эту аббревиатуру, чтобы показать свою любовь к двум людям, которых они предполагают или хотели бы видеть вместе как пару, как пару на экране или даже как пару в целом.

Возможно, вы также были свидетелями других подобных интернет-жаргонов, которые широко используются на всех сайтах социальных сетей, таких как BTW (кстати), WTH (что за черт), ILY (я люблю вас), и список этих сокращений бесконечен.

Молодые люди, и особенно подростки, любят использовать эти аббревиатуры в повседневной жизни, при обмене текстовыми сообщениями или когда они разговаривают с другими людьми в социальных сетях, таких как Facebook, Twitter или даже Tumblr. Например, люди, которые видели «Сумерки», могут узнать об удивительной паре Эдварда и Беллы. Так что для этого фанат с радостью использовал бы аббревиатуру OTP, сказав, что Эдвард и Белла были OTP, надеюсь, я скоро увижу их больше.

Как следует использовать Acronym OTP в Интернете

Люди, которые любят Интернет и любят делать заявления, используют OTP, когда хотят поделиться своим мнением о паре знаменитостей или даже старшеклассниках или учениках. Они могут даже объединить персонажей из романа в пары творчески и по своему желанию. Для этого аббревиатуры не существует каких-либо правил. Его можно использовать для кого угодно.

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

Близкая альтернатива OTP на Tumblr

Если вы являетесь крупным подписчиком Tumblr, возможно, вы встречали другое слово, которое часто используется как близкую альтернативу интернет-жаргону OTP, то есть «корабль» или «доставка».

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

Примеры OTP

Пример 1

H: Вы видели Блокнот?
З: Конечно! А кто нет? Что насчет этого?
H: Я видел это вчера, спустя столько времени. Лиды полностью ОТП. Вы знаете больше фильмов, в которых они снимаются?
З: Понятия не имею, но да, Блокнот — одно печальное, красивое произведение искусства.

Пример 2

Вы только начали смотреть сериал «Дневники вампира» и не можете забыть Стефана и Елену. Вот что вы пишете в Интернете:

Источник

Защита счета через OTP

Что такое OTP-авторизация.

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

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

Первым механизмом получения одноразовых паролей была их отправка через SMS. Это был технологический прорыв. Метод очень удобен. Вам просто нужно иметь мобильный телефон. При совершении какой-то важной операции вы получаете код через SMS и потом вводите его на сайте для подтверждения. Но этот метод имеет некоторые недостатки. Иногда получение SMS задерживается, вы находитесь вне зоны приема вашего мобильного оператора (плохое покрытие, в другой стране, где нет роуминга) или просто в ту страну, где вы находитесь, сложно отправить SMS из страны, где находится сервис. И очень опасным может быть то, что злоумышленник может получить дубль вашей SIM-карты. Последнее вполне реально, но это тема отдельной статьи.

Для того, чтобы вышеперечисленные проблемы вас не беспокоили была разработана технология OTP — One Time Password.

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

enter otp что это значит

Для каждого клиента сервиса фраза своя и нигде не публикуется. Когда вы хотите подтвердить операцию, вы просто смотрите на своем мобильном телефоне или планшете код. Этот код создается без подключения к интернету и другим сетям. Срок действия кода всего одна минута. Через минуту у вас будет другой код. Еще через минуту — третий и так далее. Как только код исчезает с экрана телефона — он становится недействительным. И если его даже кто-то подсмотрел — это никак не поможет его использовать.

Одна тонкость — на вашем телефоне/планшете время должно быть точным, иначе коды будут создаваться с запаздыванием или опережением и не будут работать. Но смартфоны умеют синхронизировать время с сотовой сетью и проблемы выставить точное время это не составляет.

То есть вы единоразово отсканировали на сайте QR-код камерой вашего смартфона и дальше просто используете те коды, которые вам отображаются. Не нужно никакого ожидания SMS, не нужно беспокоиться наличием сотовой сети и нет никакой разницы в какой стране вы в данный момент находитесь. Эти коды работают стабильно.

Как включить дополнительную авторизацию.

1. Скачайте приложение FreeOTP (Google Play для Андроид / AppStore для iPhone)

2. У нас на сайте выберите метод авторизации FreeOTP и нажмите кнопку Включить

enter otp что это значит

3. На экране компьютера появится изображение QR-code, который необходимо отсканировать.

4. Запустите программу FreeOTP у Вас на смартфоне и нажмите иконку QR-c

enter otp что это значит

5. Отсканируйте смартфоном код изображенный на мониторе компьютера.

6. На смартфоне в программе FreeOTP появится надпись Seller-Online и ниже Ваш логин.

enter otp что это значит

7. На экране компьютера появится поле для ввода шестизначного кода.

8. Нажмите на смартфоне на поле с Вашим логином, после чего появится шестизначный код, который является активным в течение 1 минуты.

enter otp что это значит

9. Введите этот код в поле на компьютере и нажмите кнопку Далее.

enter otp что это значит

Важно: Убедитесь, что время на компьютере и смартфоне совпадает. Лучше всего, выбрать дату и время сети на своем смартфоне.

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

А если не включить дополнительную авторизацию?

По этому поводу у наших клиентов есть печальные истории.

История первая: Украли пароль к почтовому ящику

У клиента со счета исчезла некоторая сумма денег. Клиент попросил разобраться. Как оказалось, злоумышленник получил доступ к почтовому ящику и запросил восстановление пароля и письма из почтового ящика удалил. Клиент не смог войти в систему и запросил восстановление пароля. Пароль был выслан ему в почту. Клиент смог войти в систему. Но и злоумышленник тоже увидел этот пароль и тоже получил возможность входить в личный кабинет клиента в Seller-Online. Время от времени злоумышленник делал переводы мелких сумм в другой аккаунт, из которого потом выводил деньги на разные кошельки Webmoney. Если бы у клиента была включена дополнительная авторизация, то перевод средств в другой аккаунт мошенник не перечислил бы.

История вторая: Бывший работник

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

Источник

OTP — Авторизация при помощи одноразовых паролей

Использование OTP (One Time Password, одноразовый пароль) — это дополнительный уровень безопасности при работе с торговыми счетами. При каждом подключении к счету пользователю требуется ввести уникальный одноразовый пароль.

Чтобы начать использовать одноразовые пароли, необходимо связать свой торговый счет с генератором паролей, в качестве которого выступает мобильная платформа для iPhone или Android.

Включение OTP на iPhone

Зайдите в раздел «Настройки» мобильной платформы и выберите пункт OTP. При первом открытии данного раздела для дополнительной безопасности требуется установить пароль из четырех цифр. Пароль потребуется вводить каждый раз для доступа к генератору паролей.

Если вы забыли пароль доступа к генератору паролей, но используете то же мобильное устройство, переустановите мобильную платформу и привяжите счет к генератору заново. Если вы более не имеете доступа к мобильному устройству, обратитесь к брокеру для сброса привязки к генератору паролей.

enter otp что это значит

В открывшемся окне выберите пункт «Привязать к счету».

enter otp что это значит

Далее укажите имя сервера, на котором открыт торговый счет, номер счета и главный пароль к нему. Опцию «Привязать» следует оставить включенной. Ее необходимо выключать, если вы собираетесь отвязать указанный счет от генератора и больше не использовать одноразовые пароли.

Если вы выполняете перепривязку счета к другому генератору паролей, потребуется дополнительно ввести одноразовый пароль из ранее используемого генератора. Если вы не имеете к нему доступа (например, утеряно мобильное устройство), обратитесь к брокеру для сброса привязки.

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

enter otp что это значит

Аналогичным образом вы можете привязать неограниченное количество торговых счетов к генератору.

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

Включение OTP на устройстве с Android

Если вы забыли пароль доступа к генератору паролей, но используете то же мобильное устройство, переустановите мобильную платформу и привяжите счет к генератору заново. Если вы более не имеете доступа к мобильному устройству, обратитесь к брокеру для сброса привязки к генератору паролей.

enter otp что это значит

В открывшемся окне выберите пункт «Привязать к счету».

enter otp что это значит

Далее укажите имя сервера, на котором открыт торговый счет, номер счета и главный пароль к нему. Опцию «Привязать» следует оставить включенной. Ее необходимо выключать, если вы собираетесь отвязать указанный счет от генератора и больше не использовать одноразовые пароли.

Если вы выполняете перепривязку счета к другому генератору паролей, потребуется дополнительно ввести одноразовый пароль из ранее используемого генератора. Если вы не имеете к нему доступа (например, утеряно мобильное устройство), обратитесь к брокеру для сброса привязки.

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

enter otp что это значит

Аналогичным образом вы можете привязать неограниченное количество торговых счетов к генератору.

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

Использование OTP в платформе

После привязки к генератору при попытке подключения через торговую платформу при помощи торгового счета будет дополнительно запрашиваться одноразовый пароль:

Источник

Как работают одноразовые пароли

enter otp что это значит

Вступление

Как показывает практика, существует определенное непонимание принципов работы одноразовых паролей (это те самые, которые используются в GMail, в спец. токенах платежных систем и так далее).

Прочитав эту небольшую статью, Вы разберетесь в принципе работы одноразовых паролей на основе хэшей, а заодно напишете на Python небольшую программу, которая умеет вычислять пароли для двухэтапной аутентификации Google.

Хэш-функция

Хэш-функция позволяет взять любые данные любой длины и построить по ним короткий «цифровой отпечаток пальца». Длина значения хэш-функции не зависит от длины исходного текста; например, в случае популярного алгоритма SHA-1 длина этого отпечатка составляет 160 бит.

Чтобы понять, почему значение всегда имеет одинаковую длину и не зависит от исходного текста, можно упрощенно представить хэш-функцию в виде кодового замка с колесиками. Вначале мы выставляем все колесики в «ноль», затем идем по тексту и для каждой буквы прокручиваем колесики в соответствии с некоторыми правилами. То число, которое окажется на замке в конце, и есть значение хэш-функции. Примерами таких функций являются MD5, SHA-1, ГОСТ_Р_34.11-94.

Не придумывайте свои хэш-функции, используйте стандартные реализации (например, в случае Python):

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

enter otp что это значит
В связи с этим возникает естественное желание использовать хэш-функцию для контроля целостности сообщений, которые Алиса посылает Бобу: Алиса подсчитывает для каждого своего сообщения значение SHA-1 и вкладывает его в конверт; Боб, самостоятельно подсчитав SHA-1 текста, может сравнить свой результат с Алисиным и удостовериться, что сообщение не было изменено где-то по дороге.

Однако мы забыли о Меллори, который находится где-то между Алисой и Бобом, перехватывает их переписку и вскрывает конверты! Он вполне может изменить сообщение, после чего подсчитать для него SHA-1 и приложить к письму; Боб сверит значения и ничего не заметит.

Проверка подлинности

Подумав, Алиса и Боб при встрече договариваются, что при подсчете SHA-1 они будут временно дописывать к тексту секретное слово, например, «Secret» (конечно, в реальности Алиса и Боб решили использовать куда более длинное слово, чтобы его было сложно подобрать). Меллори не знает это слово, а следовательно, даже если изменит сообщение, то не сможет скорректировать его хэш, не так ли?

К сожалению, тут есть проблемы. Да, Меллори не может изменить тело сообщения, но (раз он знает хэш от текущего текста) он всегда может дописать в конце «P.S. На самом деле все это чушь, нам пора расстаться, Боб» и просто досчитать хэш от остатка (вспомним аналогию с кодовым замком).

Чтобы защититься от этого, мы немного усложним нашу функцию:

Теперь дописывание чего-либо в конец сообщения полностью изменит исходные данные для «внешнего» вызова SHA-1 и Меллори остается вне игры.

Алиса и Боб только что придумали то, что называется HMAC (или hash-based message authentication code): основанный на хэш-функции код проверки подлинности сообщений. В реальности HMAC, принятый как стандарт RFC2104 выглядит чуть-чуть сложнее за счет выравнивания длины ключа, пары XOR’ов внутри, участия ключа во «внутреннем» хэше, но суть не меняется.

Не придумывайте свои реализации HMAC, используйте стандартные реализации, например, HMAC-SHA1:

Одноразовые пароли

Что такое «одноразовый пароль»? Это пароль, который бесполезно перехватывать с помощью кейлоггера, подглядывания через плечо или прослушивания телефонной линии — т.к. этот пароль используется ровно один раз.

Как можно было бы реализовать эту схему? Например, Алиса может сгененировать сотню случайных паролей и отдать копию Бобу. Когда Боб позвонит в следующий раз, он продиктует самый верхний пароль в списке, Алиса сверит его со своим, после чего оба вычеркнут его. При следующем звонке они используют очередной пароль и так далее, пока они не закончатся. Это не очень удобно: хранение списков, генерация новых паролей и так далее.

Лучше реализовать эту схему в виде алгоритма. Например, паролем является его номер по порядку, умноженный на секретное число. Пусть Алиса и Боб договорились, что секретным числом является 42; тогда первым паролем будет 42, вторым 84, третьим 126 и так далее. Меллори, не знающий алгоритма и секретного числа, никогда не догадается, какой пароль будет следующим!

Конечно, алгоритм лучше выбрать посложнее. Алиса вспоминает про HMAC и предлагает Бобу считать пароль номер N по формуле: HMAC(«Secret», номер-пароля). После этого им нужно договориться о ключе (в данном случае это «Secret»), зато потом Бобу нужно только помнить, какой по счету пароль он генерирует (например, двадцатый):

Впрочем, Бобу совсем не улыбается каждый раз диктовать такой длинный пароль. Они с Алисой договариваются, что будут использовать только его часть, например, последние 6 символов.

Некоторое время все идет хорошо. До момента, пока Бобу и Алисе не надоедает вести подсчет, какой по счету пароль они используют. Кто-то подсказывает им, что в качестве аргумента HMAC() вместо номера можно использовать все, к чему Алиса и Боб имеют одновременный доступ… например, текущее время!

Наши герои синхронизируют свои часы и договариваются, что будут в качестве аргумента HMAC() использовать unix time — количество секунд, прошедших с момента наступления эпохи UNIX (в UTC). Чтобы вводить пароль не торопясь, они решают разделить время на 30 секундные «окна»; таким образом, на протяжении 30 секунд действует один и тот же пароль. Естественно, Алиса, проверяющая пароли, в течение 30 секунд не позволяет использовать пароль повторно (просто запоминая его) и тем самым оставляет его по-настоящему «одноразовым».

Теперь пароль вычисляется по следующей формуле: HMAC(«Secret», unix_timestamp / 30).

Мы получили одноразовые пароли на основе текущего времени. Сгенерировать и проверить эти пароли может только тот, кто обладает ключом («Secret» в примере выше); иначе говоря, сервер и пользователь.

Следует отметить, что одноразовые пароли могут считаться и по другим алгоритмам; главное, чтобы алгоритм и секрет были известны обеим сторонам. Но т.к. у нас есть стандарт, дальше мы будем говорить именно о нем

OATH, TOTP, HOTP, RFC… WTF?

Итак, мы только что описали основные идеи, лежащие в основе:

1) HMAC, hash-based message authentication code: RFC2104
2) HOTP, hash-based one-time password: RFC4226
3) TOTP, time-based one-time password: RFC6238

Эти идеи — один из краеугольных камней инициативы Initiative For Open Authentication (OATH), направленной на стандартизацию методов аутентификации.

Двухэтапная аутентификация Google

Одноразовые пароли, основанные на времени (и подсчитываемые на основе алгоритма TOTP RFC 6238) используются также компанией Google в приложении Google Authenticator, которое можно установить на iOS, Android, BlackBerry. Это приложение автоматически генерирует одноразовые пароли раз в 30 секунд (в дополнение к основному паролю на Google Account). Это означает, что даже если Ваш основной пароль кто-то подглядит или перехватит, без очередного одноразового пароля в систему войти будет невозможно. Удобно.

ВНИМАНИЕ : Я НЕ НЕСУ НИКАКОЙ ОТВЕТСТВЕННОСТИ ЗА ВАШИ ДЕЙСТВИЯ С ВКЛЮЧЕНИЕМ И ВЫКЛЮЧЕНИЕМ ДВУХЭТАПНОЙ АУТЕНТИФИКАЦИИ GOOGLE; ВЫ СОГЛАСНЫ, ЧТО ВЫ ВЫПОЛНЯЕТЕ ИХ НА СВОЙ СТРАХ И РИСК.

На самом деле там нет ничего страшного (есть инструкции, есть trusted-компьютеры, есть резервные коды и т.д.), но если от души постараться, бездумно нажимая на кнопки, то вполне можно лишиться доступа к своему аккаунту. И все же: если не готовы экспериментировать, не трогайте Gmail; просто скачайте приложение Google Authenticator на телефон, вручную добавьте «ключ по времени» (например, «a abc def abc def abc» или просто отсканируйте QR-код ниже).

Для начала нам нужно получить секретный ключ, который используется для создания одноразового пароля. Его можно посмотреть на странице добавления Google Authenticator’а в настройках аккаунта, он находится под QR-кодом:

enter otp что это значит

Обратите внимание, что если двухэтапная аутентификация уже включена, то старый ключ узнать нельзя: придется удалить старый и сгенерировать новый. Это несложно; главное, не забыть сразу обновить ключ и в Google Authenticator, если Вы им пользуетесь.

Ключ закодирован в Base32 (для удобства уберите пробелы и переведите буквы в верхний регистр).

Программа, которая подсчитывает текущий одноразовый пароль:

Теперь можно положить рядом запущенный Google Authenticator и сравнить значения.

upd #2: если хотите поиграть с 2-step verification от dropbox, в конце секрета допишите «======» (это необходимо для паддинга и корректной работы base32-декодера).

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *