РЕГИСТРАЦИЯ И АУТЕНТИФИКАЦИЯ ПОЛЬЗОВАТЕЛЕЙ БЕЗ ПАРОЛЕЙ
REGISTRATION AND AUTHENTICATION OF USERS WITHOUT PASSWORDS

ОБЛАСТЬ ТЕХНИКИ
Раскрытие настоящего изобретения относится к системам защиты данных. Кроме того, раскрытие настоящего изобретения также относится к способам работы указанных выше систем защиты данных. Кроме того, раскрытие настоящего изобретения также относится к компьютерным программным изделиям, содержащим машиночитаемый носитель информации, на котором хранятся машиночитаемые инструкции, исполняемые вычислительным устройством, в состав которого входят аппаратные средства обработки, выполняющие указанные выше способы.
ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ
Для повышения безопасности веками использовались пароли, еще задолго до изобретения цифровых компьютеров и информационных систем. Например, заранее согласованные пароли использовались между посыльными в эпоху римской империи с целью аутентификации; пароли использовались на полях сражений для идентификации друзей и врагов, проходящих через охранный пост. Современное информационное общество в значительной степени зависит от использования паролей, например, для регистрации (то есть, входа в систему) в компьютерах, регистрации в смартфонах, активизации телевизионных устройств, доступа к платежным терминалам, ввода данных в библиотечные автоматы самообслуживания и т.д. Кроме того, пароли в настоящее время используются для проверки достоверности пользователя в множестве совместных социальных и медийных служб, в среде дистанционного банковского обслуживания, в операционных системах, в почтовых серверах и т.д.
Для того чтобы повысить уровень защиты в современных цифровых информационных системах, на существующем уровне техники применяется множество различных способов обеспечения защиты, например:
(i) базовая аутентификация доступа (Basic Auth., см. ссылку [1]);
(ii) дайджест-аутентификация доступа (см. ссылку [2]);
(iii) протокол Kerberos (см. ссылку [3]);
(iv) диспетчер NT LAN (см. ссылку [4]);
(v) OAuth (см. ссылку [5]);
(vi) OpenID (см. ссылку [6]);
(vii) простой и защищенный механизм согласования GSSAPI (SPNEGO, см. ссылку [7]) и
(viii) защищенный протокол аутентификации по дистанционному паролю (SRP, Secure Remote Password, см. ссылку [8]);
(ix) квитирование аутентифицированным клиентом на основе протокола защиты транспортного уровня (TLS, Transport Layer Security) (см. ссылку [9]),
и т.д. В пунктах (i)-(ix), приведенных выше, используются обозначения торговых марок.
Почти всем современным способам защиты, основанным на использовании паролей, свойственны известные технические недостатки. Однако вследствие таких факторов, как утечка различной информации, взломы систем защиты данных и раскрытие информации, коснувшихся поставщиков услуг обработки больших объемов данных, в последние годы наблюдается значительный рост развития технологии обеспечения защиты информации. Эти взломы, утечки и раскрытия практически ускорили разработку экспертами по безопасности информации новых способов обеспечения защиты.
Общеизвестно, что необходимо использовать пароли, однако в современном обществе это связано с различными проблемами, зависящими от информационных систем. Независимо от используемого типа информационной системы или типа конфигурации защиты данных, в конечном счете, именно пользователи таких информационных систем являются главным фактором возникновения уязвимостей в системе защиты данных и информации, либо вследствие своего незнания, либо из-за пренебрежительного отношения к правилам безопасности. Почти ежедневно публикуются отчеты о взломанных пользовательских учетных записях, раскрытых паролях, о различных типах вредоносного кода, используемого для вымогания денег за возврат персональной частной информации, украденной из взломанной пользовательской учетной записи и т.д.
Известная в настоящее время технология аутентификации пользователя основана на передаче идентификатора и/или пароля пользователя на сервер поставщика услуг или в оконечное устройство с использованием соединения для передачи зашифрованных данных, при этом защита принципиально основывается на сертификатах, предоставляемых доверенными сторонами. В настоящее время в целом известно, что шифрованное соединение не гарантирует недоступность важной регистрационной пользовательской информации (то есть, информации, требуемой для входа в систему) в расшифрованном виде для неавторизованных злоумышленников; потенциально достаточно всего лишь одного слабого звена в цепи связи для утечки важной регистрационной информации к неавторизованным злоумышленникам.
Несмотря на предпринимаемые мере по защите данных, общеизвестно, что Интернет (работающий в соответствии с Интернет-протоколом (IP, Internet Protocol), таким как протокол управления передачей (TCP, Transmission Control Protocol) и протокол передачи дейтаграмм пользователя (UDP, User Datagram Protocol), без ограничения этими протоколами) как глобальная информационная сеть предоставляет возможность не только сверхдержавам, но и множеству многонациональных компаний осуществлять слежку за людьми и их действиями, поскольку каждый раз при использовании современных информационных систем остается множество цифровых следов. Такое множество следов метаданных или пассивных цифровых отпечатков всегда с большой вероятностью может отслеживаться и связываться с отдельным уникальным пользователем, которым, возможно, является юридическое лицо. Трассировка может выполняться даже позднее при наличии достаточных компьютерных ресурсов.
Коме того, общеизвестно, что настоящее внутреннее законодательство не может заметно воздействовать на многонациональные программные структуры, которые централизуют связанную с ними аутентификацию, а также связанные с ними процессы регистрации (то есть, входа в систему) на серверах производителей, которые часто находятся на территории иных государств, законы которых могут конфликтовать с законами государств, в которых фактически используется предоставляемая услуга. В результате Интернет становится полем боя нового типа, на котором несколько государств пытаются, якобы по причинам национальной безопасности, защитить своих граждан путем принятия новых законов, ограждающих этих граждан от использования услуг, предоставляемых инфраструктурой (а именно: сетевыми узлами и серверами), управляемой другими государствами. Другими словами, расхождения национальных законов, в том что касается международных соглашений, потенциально могут привести к неопределенности в области обеспечения безопасности, например, в ситуации, когда заданный сервер данных централизованно управляется в одной стране, а в других странах отсутствуют единые правила, по которым данный сервер мог бы осуществлять взаимодействие.
Кроме того, в настоящее время существует проблема, связанная со взломом персональных учетных записей или кражей значимой личной информации. Однако часто простые и отчетливые современные подходы для решения этих проблем отсутствуют. Кроме того, часто многим пользователям почти невозможно приспособиться к применению сложных инструментальных средств и процедур, таких как шифрование сообщений электронной почты с помощью модели надежной конфиденциальности (PGP, Pretty Good Privacy) или схожих типов шифрования, как с точки зрения абстрактного понимания, так и в том что касается технических процедур. Следовательно, на практике желательно, чтобы главная ответственность конкретного пользователя никогда не была связана с защитой своей информации от вредоносного кода и неавторизованного доступа, поскольку современными пользователями являются люди различных возрастов: от самых молодых до пожилых граждан; такие люди редко обращают внимание на вопросы безопасности при выполнении различных интерактивных действий, например при взаимодействии в социальных сетях и покупках в Интернете.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Раскрытие настоящего изобретения нацелено на поиск усовершенствованной системы защиты данных.
Кроме того, раскрытие настоящего изобретения нацелено на поиск усовершенствованного способа работы системы защиты данных.
Другой целью раскрытия настоящего изобретения является по меньшей мере частичное решение по меньшей мере некоторых упомянутых проблем, свойственных известному уровню техники.
Согласно первому аспекту посредством вариантов раскрытия настоящего изобретения предлагается система защиты данных, содержащая по меньшей мере первую сторону и вторую сторону, которые взаимосвязаны через структуру передачи данных, способную обеспечить аутентификацию пользователей и/или регистрацию пользователей, отличающуюся тем, что:
(i) первой и второй стороне предоставляются идентичные или взаимно совместимые копии по меньшей мере одного списка кодов цифровых ключей, содержащего ключи и индексы, ссылающиеся на ключи;
(ii) первая сторона способна доставлять второй стороне сообщение аутентификации, содержащее индекс ключа, который должен быть извлечен, уникальный идентификатор (ID) списка кодов цифровых ключей, из которого должен быть извлечен ключ, и дополнительную информацию, указывающую по меньшей мере на один из следующих элементов: уникальный идентификатор пользователя, связанный с первой стороной, идентификатор сеанса (session token), ранее принятый от второй стороны, дата и время, в которое выполнена попытка аутентификации и/или регистрации пользователя, при этом дополнительная информация предоставляется в зашифрованном виде; и
(iii) первая и вторая стороны способны при выполнении обмена данными друг с другом для обеспечения аутентификации и/или регистрации пользователя использовать ключ, извлеченный из списка кодов цифровых ключей на основе индекса, включенного в сообщение аутентификации, и удалять ключ после использования, при этом ключ предназначен только для однократного использования между первой и второй сторонами.
Преимущество настоящего изобретения состоит в том, что первая и вторая стороны способны выполнять обмен данными между собой без необходимости шифрования или защиты подлежащего использованию ключа или его индекса, поскольку ключ удаляется и используется только один раз.
Согласно вариантам раскрытия настоящего изобретения аутентификация и/или регистрация пользователя выполняются автоматически без каких-либо действий пользователя, поскольку доставка паролей не требуется.
Согласно второму аспекту посредством вариантов раскрытия настоящего изобретения предлагается способ работы системы защиты данных, содержащей по меньшей мере первую сторону и вторую сторону, которые взаимосвязаны через структуру передачи данных, способную обеспечить аутентификацию и/или регистрацию пользователя, отличающуюся тем, что способ включает:
(a) предоставление первой и второй сторонам идентичных или взаимно совместимых копий по меньшей мере одного списка кодов цифровых ключей, содержащего ключи и индексы, ссылающиеся на ключи;
(b) настройку первой стороны для доставки второй стороне сообщения аутентификации, содержащего индекс ключа, который должен быть извлечен, уникальный идентификатор (ID) списка кодов цифровых ключей, из которого должен быть извлечен ключ, и дополнительную информацию, указывающую по меньшей мере на один из следующих элементов: уникальный идентификатор пользователя, связанный с первой стороной, идентификатор сеанса, ранее принятый от второй стороны, дата и время, в которое выполнена попытка аутентификации и/или регистрации пользователя, при этом дополнительная информация предоставляется в зашифрованном виде; и
(c) при выполнении обмена данными для обеспечения аутентификации и/или регистрации пользователя настройку первой и второй сторон для использования ключа, извлеченного из списка кодов цифровых ключей на основе индекса, включенного в сообщение аутентификации, и для удаления ключа после использования, при этом ключ предназначен только для однократного использования между первой и второй сторонами.
Согласно третьему аспекту посредством вариантов раскрытия настоящего изобретения предлагается компьютерное программное изделие, содержащее машиночитаемый носитель информации, на котором хранятся машиночитаемые инструкции, исполняемые вычислительным устройством, в состав которого входят аппаратные средства обработки для выполнения способа, соответствующего вышеуказанному второму аспекту.
Дополнительные аспекты, преимущества, признаки и цели раскрытия настоящего изобретения становятся очевидными после ознакомления с чертежами и подробным описанием примеров осуществления, приведенным ниже совместно с прилагаемой формулой изобретения.
Следует принимать во внимание, что признаки раскрытия настоящего изобретения допускается комбинировать в различных сочетаниях без нарушения объема раскрытия настоящего изобретения, определенного прилагаемой формулой изобретения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Предшествующее описание и последующее подробное описание вариантов осуществления настоящего изобретения станут более понятными при их прочтении совместно с прилагаемыми чертежами. С целью иллюстрации раскрытия настоящего изобретения на чертежах показаны типовые структуры вариантов его осуществления. Однако раскрытие настоящего изобретения не ограничивается конкретными способами и устройствами, раскрываемыми в этом описании. Кроме того, специалисты в данной области техники понимают, что чертежи не должны масштабироваться. Там, где это возможно, схожие элементы обозначены идентичными номерами.
Варианты осуществления, приведенные в настоящем раскрытии изобретения, описываются ниже только на примерах со ссылкой на прилагаемые чертежи, на которых:
на фиг. 1 показано схематическое представление системы защиты данных в соответствии с вариантом раскрытия настоящего изобретения;
на фиг. 2А показано схематическое представление алгоритма, описывающего шаги способа работы системы защиты данных, изображенной на фиг. 1, в соответствии с вариантом раскрытия настоящего изобретения;
на фиг. 2В показано схематическое представление алгоритма, описывающего шаги выполнения процесса аутентификации, в соответствии с вариантом раскрытия настоящего изобретения;
на фиг. 3 показан пример содержимого типового сообщения аутентификации в соответствии с вариантом раскрытия настоящего изобретения.
На прилагаемых чертежах подчеркнутые числа используются для обозначения элементов, выше которых расположены эти числа, или элементов, рядом с которыми находятся эти числа. Если число не подчеркнуто, но рядом с ним расположена стрелка, то неподчеркнутое число используется для идентификации общего элемента, на который указывает стрелка.
ПОДРОБНОЕ ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
В последующем подробном описании иллюстрируются варианты раскрытия настоящего изобретения и способы их реализации. Хотя в этом описании раскрыты некоторые варианты осуществления настоящего изобретения, специалисты в этой области техники должны осознавать, что на практике возможно осуществление других вариантов.
В дальнейшем при описании примеров раскрытия настоящего изобретения приводятся следующие акронимы и определения:
Basic Auth. В данном примере транзакции HTTP (Hypertext Transfer Protocol, протокол передачи гипертекста) базовая аутентификация доступа используется для пользовательского агента HTTP с целью предоставления имени и пароля пользователя при выполнении запроса.
Digest Auth. Дайджест-аутентификация доступа является одним из множества согласуемых способов, который веб-сервер может использовать для согласования учетных данных, таких как имя или пароль пользователя, в процессе соединения с веб-браузером пользователя.
Kerberos Протокол аутентификации компьютерной сети, работающий на основе 'мандатов' ('tickets').
NFC Near-Field Communication, обычно беспроводная ближняя связь, например BlueTooth. Беспроводная связь в диапазоне до 100 метров обычно обеспечивается современными средствами ближней связи с использованием мощности беспроводной передачи в диапазоне нескольких мВт.
NTLM Набор протоколов защиты Microsoft для обеспечения аутентификации, целостности и конфиденциальности пользователей.
OAuth Открытый стандарт и децентрализованный протокол аутентификации.
OpenID Позволяет пользователям выполнять аутентификацию посредством взаимодействующих сайтов с использованием услуги третьей стороны.
PGP Pretty Good Privacy (надежная конфиденциальность), то есть современное программное изделие для шифрования и дешифрования.
GPG GNU Privacy Guard - свободно распространяемое программное обеспечение, замещающее PGP.
PKI Public Key Infrastructure (инфраструктура открытых ключей).
SPNEGO Simple and Protected GSSAPI Negotiation Mechanism (простой и защищенный механизм согласования GSSAPI); "псевдо механизм" GSSAPI используется средствами клиент-серверного программного обеспечения для согласования выбора технологии защиты.
SRP Secure Remote Password (протокол защиты по удаленному паролю) - дополненный протокол согласования ключей по аутентифицированным паролям (PAKE, Password-Authenticated Key Agreement).
TLS Защита транспортного уровня (Transport Layer Security), то есть схема аутентифицируемого квитирования TLS.
В приведенных акронимах могут содержаться обозначения торговых марок.
Согласно первому аспекту посредством вариантов раскрытия настоящего изобретения предлагается система защиты данных, содержащая по меньшей мере первую сторону и вторую сторону, которые взаимосвязаны через структуру передачи данных, способную обеспечить аутентификацию пользователей и/или регистрацию пользователей, отличающуюся тем, что:
(i) первой и второй стороне предоставляются идентичные или взаимно совместимые копии по меньшей мере одного списка кодов цифровых ключей, содержащего ключи и индексы, ссылающиеся на ключи;
(ii) первая сторона способна доставлять второй стороне сообщение аутентификации, содержащее индекс ключа, который должен быть извлечен, уникальный идентификатор (Ш) списка кодов цифровых ключей, из которого должен быть извлечен ключ, и дополнительную информацию, указывающую по меньшей мере на один из следующих элементов: уникальный идентификатор пользователя, связанный с первой стороной, идентификатор сеанса, ранее принятый от второй стороны, дата и время, в которое выполнена попытка аутентификации и/или регистрации пользователя, при этом дополнительная информация предоставляется в зашифрованном виде; и
(iii) первая и вторая стороны способны при выполнении обмена данными друг с другом для обеспечения аутентификации и/или регистрации пользователя использовать ключ, извлеченный из списка кодов цифровых ключей на основе индекса, включенного в сообщение аутентификации, и удалять ключ после использования, при этом ключ предназначен только для однократного использования между первой и второй сторонами.
При описании раскрытия настоящего изобретения термины "первая сторона" или "вторая сторона" используются для указания на предприятие, личность или программный компонент, принадлежащий идентифицируемому пользователю и применяемый этим пользователем. Согласно примеру раскрытия настоящего изобретения первая и/или вторая сторона представляет собой службу, такую, например, как служба доставки данных, служба доставки контента, банковская служба, служба финансовых транзакций и т.п. Кроме того, программный компонент может представлять собой, например, программное приложение, часть программного приложения, уровень программного приложения, обеспечивающий рабочую среду для других программных приложений (например, уровень поддержки в стеке протоколов связи).
Следует принимать во внимание, что в этом описании термины "первый", "второй" и т.п. не обозначают какую-либо конкретную роль или порядок, или значимость, а используются только для указания на различия одной стороны от другой. Другими словами, первая и вторая стороны могут действовать в качестве передающей стороны и принимающей стороны, соответственно, в заданный момент времени и в качестве принимающей стороны и передающей стороны, соответственно, в другой момент времени.
Согласно вариантам раскрытия настоящего изобретения аутентификация и/или регистрация пользователя выполняются автоматически без каких-либо действий пользователя, поскольку доставка паролей не требуется для функционирования подобным образом. Вместо этого первая сторона способна доставлять второй стороне индекс ключа (а именно: индекс одноразового ключа) совместно с указанной выше дополнительной информацией в составе сообщения аутентификации.
Дополнительно, уникальный идентификатор списка кодов цифровых ключей является порядковым номером, назначенным списку кодов цифровых ключей.
Как вариант, дополнительная информация шифруется с использованием в точности того ключа шифрования, индекс которого доставляется в процессе аутентификации. В альтернативном варианте дополнительная информация шифруется с использованием некоторого иного ключа шифрования, например следующего ключа в списке кодов цифровых ключей, и в этом случае второй стороне уже известен тот факт, что должен использоваться следующий ключ. В еще одном альтернативном варианте дополнительная информация шифруется с использованием другого ключа шифрования, индекс которого доставляется отдельно.
Как отмечалось выше, дополнительная информация указывает по меньшей мере один из следующих элементов: уникальный идентификатор пользователя, связанный с первой стороной, идентификатор сеанса, ранее принятый от второй стороны, дата и время, в которое выполнена попытка аутентификации и/или регистрации пользователя. Следует отметить, что наличие уникального идентификатора пользователя является необязательным (то есть, его не требуется доставлять), если список кодов цифровых ключей уже относится к уникальному идентификатору пользователя. Другими словами, уникальный идентификатор пользователя не требуется доставлять, если список кодов цифровых ключей является уникальным и идентифицируется как связанный с уникальным идентификатором пользователя. Дополнительно, в этом отношении список кодов цифровых ключей связывается с уникальным идентификатором пользователя в тот момент времени, когда первой и второй сторонам предоставляются идентичные или взаимно совместимые копии списка кодов цифровых ключей.
При аутентификации полезно передавать дополнительную информацию, указывающую идентификатор сеанса или дату и время, для того чтобы проверить корректность использования ключа и своевременность приема сообщения аутентификации.
При описании раскрытия настоящего изобретения термин "идентификатор сеанса" относится к уникальному идентификатору сеанса, который генерируется второй стороной и передается первой стороне для идентификации текущего сеанса взаимодействия между первой и второй сторонами. Дополнительно, вторая сторона способна генерировать и передавать первой стороне идентификатор сеанса в начале сеанса взаимодействия, при этом идентификатор сеанса передается в зашифрованном виде. Дополнительно, в этом отношении вторая сторона способна шифровать идентификатор сеанса с использованием ключа шифрования из списка кодов цифровых ключей и передавать первой стороне индекс ключа шифрования. Дополнительно, первая и вторая стороны способны использовать ключ шифрования, основанный на индексе, и удалять ключ шифрования после использования, при этом ключ шифрования приспособлен только для однократного использования между первой и второй сторонами.
Такие ключи шифрования на практике полезны в ситуациях, когда желательно, чтобы текущий сеанс регистрации оставался открытым (то есть, активным) в течение предварительно определенного периода времени, или пока не будет достигнута предварительно определенная цель. Например, заданный сеанс регистрации может истечь по окончании предварительно установленного периода времени неактивности, который может длиться от нескольких минут до нескольких часов. В другом примере заданный сеанс регистрации может истечь после того, как клиент разместил заказ на покупку в Интернет-магазине.
Дополнительно, при выполнении последующего обмена данными в течение того же сеанса взаимодействия первая сторона способна передавать последующие данные совместно с дополнительной информацией, указывающей идентификатор сеанса. Как вариант, в таком случае по меньшей мере дополнительная информация предоставляется в зашифрованном виде. Как вариант, в таком случае как последующие данные, так и дополнительная информация предоставляются в зашифрованном виде.
Следует принимать во внимание, что идентификаторы сеансов обычно применяются, если, например, первая сторона является клиентом, а вторая сторона -сервером. Дополнительно, в таком случае первой стороне (например, клиенту) требуется сохранить и обработать только идентификатор сеанса, в то время как все данные, относящиеся к текущему сеансу взаимодействия, связаны с идентификатором сеанса и хранятся на второй стороне (например, в базе данных, связанной с сервером). Обычно клиенту не предоставляется непосредственный доступ к данным сеанса, хранимым на сервере. Кроме того, вторая сторона способна хранить данные сеанса в сжатом виде для повышения эффективности и увеличения объема хранимых данных сеанса. В таком случае вторая сторона способна позднее распаковывать данные сеанса, если из первой стороны принимается информация, указывающая идентификатор сеанса.
Кроме того, дополнительно, список кодов цифровых ключей реализуется посредством контейнера ключей или генератора ключей, способного хранить и/или генерировать одноразовые ключи на основе их индексов.
Следует принимать во внимание, что различные реализации концепции, называемой "список кодов цифровых ключей" в этом описании раскрытия настоящего изобретения, представляют собой лишь несколько примеров способов реализации такого списка кодов ключей, также называемого "контейнер ключей" или "генератор ключей", и эта концепция может быть реализована множеством других возможных способов. В этом описании раскрытия изобретения для списка ключей используется термин "список кодов ключей", однако следует принимать во внимание, что он может относиться к множеству видов реализаций. В одной из реализаций это может быть список, содержащий индексы и ключи, на которые ссылаются индексы. В другой реализации это может быть генератор ключей, которому сообщается индекс ключа и который затем возвращает ключ, соответствующий этому индексу, повторяющимся и воспроизводимым образом, а именно таким образом, чтобы генератор ключей всегда формировал одинаковый ключ для одного и того же индекса.
Дополнительно, в этом отношении список кодов цифровых ключей реализуется посредством бумажника цифровых ключей шифрования, например, описанного в документе РСТ/ЕР2016/025042 (заявитель: Gurulogic Microsystems Оу), в котором приводится подробная информация о схеме формирования, непосредственно или через доверенную третью сторону, бумажника ключей шифрования, который может безопасно использоваться между двумя или более сторонами связи. Такой бумажник ключей дополнительно представляет собой динамический список кодов ключей.
Дополнительно, список кодов цифровых ключей предоставляется статически.
Следует принимать во внимание, что варианты раскрытия настоящего изобретения относятся к аутентификации, которая используется, например, в одном или более процессах регистрации, например, во множестве процессов регистрации. В процессе работы данные доставляются безопасно в зашифрованном виде, при этом аутентификация, связанная с данными, обычно реализуется от одного заданного пользователя к другому заданному пользователю или к услуге. Однако, дополнительно, согласно вариантам раскрытия настоящего изобретения устройство аутентифицируется или аутентификация реализуется относительно программного компонента или модуля, такого как приложение, услуга или подпрограмма, с целью использования программного компонента или модуля.
Кроме того, дополнительно, индекс заданного ключа доставляется с использованием одного или более символов или чисел, которые дополнительно вставляются в одну или более частей сообщения аутентификации. Следует принимать во внимание, что часто количество битов, требуемых для передачи индекса, указывающего ключ, меньше количества битов, необходимых для передачи самого ключа. Кроме того, следует принимать во внимание, что безопаснее передавать индексы ключей, а не сами ключи, даже если ключи зашифрованы.
В соответствии с вариантом раскрытия настоящего изобретения ключ выбирается для использования одной из следующих сторон: первой стороной, второй стороной или доверенной третьей стороной. Согласно некоторым вариантам осуществления ключ, подлежащий использованию, выбирает первая сторона (то есть, передающая сторона). Согласно другим вариантам осуществления ключ, подлежащий использованию, выбирает доверенная третья сторона, которая передает первой и второй сторонам индекс ключа, указывающий на выбранный ключ.
Согласно другим вариантам осуществления ключ, подлежащий использованию, выбирает вторая сторона (то есть, принимающая сторона), которая передает первой стороне индекс ключа, указывающий на выбранный ключ. Следует принимать во внимание, что выбранный ключ никогда не доставляется в отличие от известных систем защиты данных, рабочей характеристикой которых является доставка ключей.
Дополнительно, первая сторона (то есть, передающая сторона) способна выбирать подлежащий использованию ключ независимо от второй стороны (то есть, принимающей стороны), при условии что существует информация о предоставлении первой и второй сторонам идентичных или совместимых копий одного и того же списка кодов цифровых ключей; например, под "совместимостью" понимается способность совместного применения взаимно различных списков кодов цифровых ключей для реализации вариантов раскрытия настоящего изобретения. В альтернативном варианте, если известно, что первой и второй сторонам предоставлены идентичные копии одного списка кодов цифровых ключей или этого требует способ, используемый для передачи данных, то для установления подлежащего использованию ключа выполняется согласование между первой и второй сторонами.
В соответствии с вариантом раскрытия настоящего изобретения первая сторона способна использовать ключ, который еще не предоставлен второй стороне. В таком случае ключ в реальном времени или в режиме, близком к реальному времени, предоставляется изготовителем списка кодов цифровых ключей (например, в течение нескольких секунд (например, менее 60 секунд)). Такой способ функционирования позволяет первой и второй сторонам регистрироваться в различных информационных системах и службах, например, авторизованных доверенной третьей стороной. Дополнительно, одна сторона с использованием традиционного способа регистрации способна доставлять другой стороне список кодов цифровых ключей, подлежащий использованию в процедурах регистрации, выполняемых позднее между первой стороной и второй стороной.
Кроме того, если второй стороне (то есть, принимающей стороне) известен подлежащий использованию ключ (то есть, имеется информация, которая позволяет принимающей стороне определить ключ) или его индекс, независимо от того, какой стороной выбран ключ: второй стороной или доверенной третьей стороной, то первой стороне (то есть, передающей стороне) необязательно даже передавать индекс ключа совместно с передаваемыми данными, такими как информация о регистрации (то есть, о входе в систему), или в сообщении аутентификации, передаваемом второй стороне (то есть, принимающей стороне). Однако часто полезно передавать индекс ключа, даже в тех случаях, когда второй стороне (то есть, принимающей стороне) известен индекс ключа (то есть, имеется информация, которая позволяет принимающей стороне определить индекс ключа), для того чтобы устранить неопределенность при выполнении нескольких попыток регистрации (то есть, входа в систему) либо при формировании или приеме нескольких сообщений в течение короткого промежутка времени.
Согласно вариантам раскрытия настоящего изобретения первая и вторая стороны способны обмениваться данными без необходимости шифрования или защиты индекса ключа. Следует принимать во внимание, что если в традиционных способах задействуется доставка ключа между сторонами, ключ следует передавать в зашифрованном виде; однако индекс ключа при выполнении связи согласно вариантам раскрытия настоящего изобретения не требуется доставлять в зашифрованном виде. В некоторых вариантах реализации настоящего изобретения передающей стороне не обязательно требуется передавать какую-либо информацию при инициировании взаимодействия с принимающей стороной, а требуется только установление первоначального контакта; в таком случае две стороны осуществляют связь, а именно: передают сообщения в соответствии с вариантами раскрытия настоящего изобретения, если было инициировано взаимодействие между ними.
Для сравнения в типовом сценарии, применяемом для известных в настоящее время систем, если злонамеренная третья сторона перехватывает сообщение аутентификации, то эта третья сторона может зарегистрироваться с помощью этого сообщения в том случае, если информация о регистрации (включая пароль пользователя) и ключ для шифрования информации о регистрации доставляются в сообщении, и ключ расшифрован.
В отличие от этого сценария, в соответствии с вариантами раскрытия настоящего изобретения передача и доставка идентификаторов и паролей пользователей не осуществляется. Следует принимать во внимание, что помимо индекса ключа и уникального идентификатора списка кодов цифровых ключей полезно передавать указанную выше дополнительную информацию для обеспечения более высокого уровня защиты при аутентификации. Как указывалось ранее, дополнительная информация может шифроваться с использованием ключа, указываемого индексом ключа, следующего ключа в списке кодов цифровых ключей или другого ключа шифрования, индекс которого доставляется отдельно.
Следует принимать во внимание, что согласно вариантам раскрытия настоящего изобретения процесс регистрации (то есть, входа в систему) в целом может выполняться с использованием общедоступного незащищенного сетевого соединения, поскольку нельзя получить какую-либо информацию о первой и второй сторонах, которую можно было бы использовать для идентификации этих сторон. Кроме того, поскольку ключи являются одноразовыми злоумышленники не могут даже позднее отследить и записать процесс регистрации между авторизованными первой и второй сторонами. Однако следует принимать во внимание, что согласно вариантам раскрытия настоящего изобретения желательно, чтобы последующие ключи нельзя было легко предсказать на основе предшествующих ключей; другими словами, желательно, чтобы последующие ключи не вычислялись с помощью простой математической прогрессии на основе предшествующих ключей, что позволило бы злоумышленнику определить тенденцию преобразования ключей во времени. Дополнительно, последовательность значений применяемых ключей изменяется стохастически (то есть, произвольно или псевдо-произвольно).
Следует принимать во внимание, что существует возможность взлома ключа, ранее использованного первой и второй сторонами. Однако конкретный ключ никогда не используется ни при последующих регистрациях, ни в предшествующих взломанных регистрациях, поскольку ключи, используемые при регистрациях, удаляются, то есть они используются только один раз. Таким образом, согласно вариантам раскрытия настоящего изобретения, даже если сообщение может подвергнуться атаке злонамеренной третьей стороны, оно не содержит какой-либо информации (например идентификатора с паролем), которая, как таковая, могла бы повторно использоваться. В следующий раз сообщение в любом случае должно шифроваться с использованием другого ключа. Таким образом, информация формируется так, что она не может использоваться позднее для регистрации в соответствующей или в любой другой системе.
Кроме того, первая и вторая стороны способны использовать одинаковый ключ для шифрования дополнительной информации и последующих данных, передаваемых после процесса регистрации. В альтернативном варианте, дополнительно, для аутентификации и последующей передачи данных выбираются различные ключи. Дополнительно, в этом отношении при последующей передаче данных используется следующий ключ в списке кодов цифровых ключей, и в этом случае принимающей стороне известен тот факт, что должен использоваться следующий ключ. В еще одном альтернативном варианте при последующей передаче данных используется другой ключ шифрования, индекс которого доставляется отдельно. Дополнительно, ключи изменяются для каждого передаваемого сообщения. В результате их индексы также изменяются для каждого передаваемого сообщения. Индексы либо доставляются, либо в точности известны принимающей стороне, то есть ключи используются в определенном порядке. В таком случае первая и вторая стороны применяют одинаковый алгоритм шифрования в процессе регистрации (то есть, входа в систему) и при последующей передаче данных. Это позволяет непосредственно использовать список кодов цифровых ключей и потенциально обеспечивает простые и не перегруженные функциональные средства, а также полную интеграцию процесса регистрации с последующей передачей данных. Это также позволяет реализовать в значительной степени более надежные и простые средства связи между первой и второй сторонами. Такой способ функционирования гораздо более выгоден по сравнению с известными традиционными подходами для обеспечения защиты данных, в которых в процессе работы применяются несколько компонентов, разработанных и/или произведенных различными поставщиками и внешне характеризующихся надежностью, но общий уровень защиты которых снижается из-за того, что таким компонентам не хватает возможностей технической реализации и интеграции между различными интерфейсами.
Система защиты данных, соответствующая вариантам раскрытия настоящего изобретения, обеспечивает не только надежность процесса регистрации, но и процесса аутентификации пользователя. В процессе регистрации, конечно, принимает участие идентификатор заданного пользователя. Однако, в то же время, определяются полномочия заданного пользователя.
Система защиты данных способна проверять компоненты программного обеспечения взаимно, что формирует независимую от устройства и платформы систему для защиты данных и аутентификации пользователей.
Следует принимать во внимание, что практическая система защиты данных, независимая от платформы, предпочтительно реализуется как комплексное решение по обеспечению защиты, которое охватывает различные интерфейсы между аппаратурой и связанными с ней окружающими "экосистемами". Такое комплексное решение по обеспечению защиты не должно позволять использование недостаточно защищенных компонентов, а именно: компонентов, являющихся слабым звеном с точки зрения защиты данных. С этой целью в одной из реализаций вариантов раскрытия настоящего изобретения используются одна или более мер по обеспечению защиты, отдельно или в совокупности, которые предназначались для применения изготовителем устройства, например: идентификация биометрических параметров пользователя с помощью считывателя отпечатков пальцев, распознавания голоса, распознавания радужной оболочки глаза, данных о геноме и других подобных средств. Следует принимать во внимание, что пользователю не требуется вводить какой-либо главный пароль; вместо этого система защиты данных основывается на уникальной персональной информации, которая может считываться с помощью интерфейса, предоставляемого изготовителем устройства. Применение биометрической идентификации позволяет пользователю устройства проверять структуру программного обеспечения, работающего в экосистеме, и разрешать этому программному обеспечению осуществлять доступ к списку кодов цифровых ключей, содержащему ключи и соответствующие им индексы. Примеры таких пользовательских устройств включают, без ограничения указанными устройствами, мобильные телефоны, смартфоны, персональные носимые электронные цифровые устройства (например, умные часы), мобильные Интернет-устройства (MID, Mobile Internet Devices), планшетные компьютеры, ультра-мобильные персональные компьютеры (UMPC, Ultra-Mobile Personal Computers), компьютеры, сочетающие функции смартфона и планшета, персональные информационные устройства (PDA, Personal Digital Assistant), веб-блокноты, персональные компьютеры (PC, Personal Computer), портативные PC, ноутбуки, настольные компьютеры и интерактивные развлекательные устройства, такие как игровые консоли, телевизионные приемники (TV) и телевизионные приставки (STB, Set-Top Box).
Таким образом, в соответствии с вариантом раскрытия настоящего изобретения система защиты данных способна разрешать доступ к списку кодов цифровых ключей на основе биометрической идентификации пользователей, связанных с первой и второй сторонами. Например, пользователь смартфона может применять свой отпечаток пальца для получения доступа к списку кодов цифровых ключей, предоставленному смартфону.
В соответствии с вариантом раскрытия настоящего изобретения первая и вторая стороны взаимно авторизуются и аутентифицируются.
В соответствии с вариантом раскрытия настоящего изобретения список кодов цифровых ключей предоставляется первой стороной или второй стороной.
В соответствии с другим вариантом раскрытия настоящего изобретения список кодов цифровых ключей предоставляется доверенной третьей стороной.
Кроме того, дополнительно, список кодов цифровых ключей доставляется первой стороне и/или второй стороне с использованием зашифрованных сообщений электронной почты (например, с использованием таких подходов, как GNU Privacy Guard; см. ссылку [12]).
Дополнительно, первая сторона (то есть, передающая сторона) способна выполнять обмен данными анонимно, если список кодов цифровых ключей предоставляется доверенной третьей стороной. В этом случае, даже если первая и вторая стороны в процессе работы обмениваются данными анонимно, то первая и вторая стороны удостоверяются доверенной третьей стороной как авторизованные стороны. Другими словами, если желательно, чтобы первая сторона (то есть, передающая сторона) оставалась анонимной для второй стороны (то есть, принимающей стороны), но при этом оставалась доверенной, например, в том что касается регистрации (то есть, входа в систему), то первой и второй сторонам предоставляется список кодов цифровых ключей, сгенерированный доверенной третьей стороной, в результате чего первая и вторая стороны используют ключи, извлеченные из списка кодов цифровых ключей, предоставленного доверенной третьей стороной.
Однако, если первая и вторая стороны желают оставаться анонимными для другой третьей стороны, то первой и второй сторонам предоставляется список кодов цифровых ключей, сгенерированный либо первой, либо второй стороной, в результате чего первая и вторая стороны используют ключи, извлеченные из этого списка кодов цифровых ключей. В таком случае третья сторона не осведомлена о сторонах обмена данными, даже в том случае если первая и вторая стороны имеют сведения друг о друге. Такой подход в особенности полезно использовать в тех случаях, когда заданный поставщик услуг, то есть принимающая сторона, желает идентифицировать пользователя услуг, то есть передающую сторону, например, в процессе регистрации, в ходе которого как заданный поставщик услуг, так и пользователь услуг способны применять список кодов цифровых ключей, сгенерированный и предоставленный поставщиком услуг.
Дополнительно, первый список кодов цифровых ключей, сгенерированный доверенной третьей стороной, используется совместно со вторым списком кодов цифровых ключей, сгенерированным первой или второй стороной, в виде гибридной структуры набора ключей.
Преимущественно, изготовитель списка кодов цифровых ключей независимо формирует очень надежные ключи и сохраняет их в списке кодов цифровых ключей.
В целом, посредством вариантов раскрытия настоящего изобретения транзакции гораздо надежнее выполняются через общедоступную сеть Internet, например, с использованием Интернет-протокола (IP, Internet Protocol). Согласно вариантам раскрытия настоящего изобретения пользователям, связанным с передающими сторонами, не требуется иметь дело с идентификаторами и/или паролями, то есть не требуется о них заботиться, при регистрации в службах, поддерживаемых принимающими сторонами. Сообщение аутентификации может потенциально содержать любую возможную информацию; однако используется преимущественно значимая (то есть, подходящая) информация, исходя из того, что в нее не требуется включать идентификатор и пароль пользователя, связанного с конкретной стороной, регистрирующейся в службе, но достаточно идентифицировать конкретную сторону с целью аутентификации пользователя. В этом отношении, сообщение аутентификации содержит уникальный идентификатор используемого списка кодов цифровых ключей, индекс ключа из списка кодов цифровых ключей и дополнительную информацию, указывающую по меньшей мере один из следующих элементов: уникальный идентификатор пользователя, связанный с конкретной стороной, идентификатор сеанса, принятый из службы, дата и время, в которое выполнена попытка аутентификации и/или регистрации пользователя, при этом дополнительная информация предоставляется в зашифрованном виде.
Согласно вариантам раскрытия настоящего изобретения, если двум сторонам связи предоставляется несколько списков кодов цифровых ключей, то далее этим сторонам необходимо часто обмениваться информацией, касающейся того, какие списки кодов цифровых ключей должны применяться при безопасном обмене данными, например в зашифрованном и/или в затрудненном для чтения виде, между двумя сторонами связи. Такой подход с использованием нескольких потенциальных списков кодов цифровых ключей может применяться в вариантах раскрытия настоящего изобретения для повышения степени защиты. Кроме того, если срок действия предшествующего списка кодов ключей истекает, то между двумя сторонами связи предпочтительно совместно используется новый список кодов ключей. В таком случае идентификатор подлежащего использованию списка кодов ключей уникально указывает на применяемый список кодов ключей.
Хотя согласно вариантам раскрытия настоящего изобретения пароли не используются, идентификация и аутентификация каждого пользователя может осуществляться в соответствии с законодательством государства, с территории которого предоставляется заданная услуга; например, в законах определенных государств может быть прописана норма о том, что данные могут анализироваться службами безопасности для обнаружения любых террористических действий. Согласно вариантам раскрытия настоящего изобретения система защиты данных фокусируется на централизованном управлении списками кодов цифровых ключей, вследствие чего система защиты данных потенциально позволяет пользователю безопасно регистрироваться и применять услуги за пределами своего государства, при этом вся его информация хранится в запоминающих устройствах, обслуживаемых в соответствии с локальным, то есть национальным, законодательством. Таким образом, сообщение аутентификации не представляет угрозы ни для относящегося к нему пользователя, ни для связанного с ним поставщика услуг, ни для государства, в котором эта услуга используется.
Следует принимать во внимание, что в случае обнаружения злонамеренного использования списка кодов ключей этот список кодов ключей может быть неверно сформирован; другими словами, список кодов ключей с конкретным идентификатором затем не может использоваться в процессе аутентификации или регистрации в службах.
Дополнительно, в этом отношении система защиты данных способна деактивировать заданный список кодов цифровых ключей в случае обнаружения нарушения защиты в результате того, что информация, относящаяся к заданному списку кодов цифровых ключей, стала доступна неавторизованной третьей стороне, например хакеру. Как вариант, такая деактивация реализуется по команде деактивации, содержащей идентификатор заданного списка кодов цифровых ключей, который должен быть деактивирован. Дополнительно, команда деактивации выдается по меньшей мере одной из следующих сторон: первой стороной, второй стороной, третьей стороной, следящей за безопасностью связи между первой и второй сторонами.
Кроме того, система защиты данных способна связывать срок действия с заданным списком кодов цифровых ключей и деактивировать заданный список кодов цифровых ключей по окончании его срока действия.
В результате реализации вариантов раскрытия настоящего изобретения повышается степень защиты, поскольку транзакции выполняются только между авторизованными и аутентифицированными сторонами, независимо от другой технологии, используемой в услугах, связанных с транзакциями. Таким образом, варианты раскрытия настоящего изобретения предотвращают формирование неизвестными и/или злонамеренными, неавторизованными сторонами нежелательных услуг или генерацию спама в системе защиты данных.
Согласно вариантам раскрытия настоящего изобретения можно создавать более защищенное информационное сообщество путем реализации концепции устранения паролей и замены паролей моделью, описываемой в отношении вариантов раскрытия настоящего изобретения. Варианты раскрытия настоящего изобретения потенциально охватывают все информационные системы, используемые людьми или устройствами (например, устройствами искусственного интеллекта (Al, Artificial Intelligence), роботизированными устройствами и т.п.) таким образом, чтобы проблемы, вызванные самими пользователями, заблаговременно предотвращались. Варианты раскрытия настоящего изобретения способны решать вопросы, связанные с низким уровнем защиты и малоэффективной системой защиты данных вследствие использования устаревших технологий, что позволяет формировать более надежное и безопасное для своих граждан информационное общество, в котором автоматические информационные системы функционируют более независимо и надежно. Таким образом, варианты раскрытия настоящего изобретения допускается использовать, например, в банковских устройствах и "финансово-технических" системах, в которых для защиты от воровства и мошенничества требуется очень высокий уровень защиты; термин "финансово-технический" подразумевает финансовые банковские технологии. Варианты раскрытия настоящего изобретения также допускается использовать в критических инфраструктурах, которые должны быть защищены от взлома третьей стороной, например, в случае реакции на нагрузку в интеллектуальных электроэнергетических системах и сетях в ответ на запрос изменения мощности и/или временного изменения энергетической мощности.
Варианты раскрытия настоящего изобретения позволяют пользователю, относящемуся к стороне связи, безопасно регистрироваться в заданной службе, предоставляемой другой стороне связи, без передачи имени пользователя, идентификатора пользователя или пароля на любой стадии процесса регистрации. Путем реализации такого подхода пользователь может оставаться анонимным. Кроме того, в рамках такого подхода не обязательно использовать зашифрованное соединение, поскольку в процессе регистрации (то есть, входа в систему) не используется и не передается информация, которая могла бы причинить вред пользователю или ослабить систему защиты данных стороны связи, предоставляющей заданную услугу. Следует принимать во внимание, что регистрация дополнительно может выполняться с использованием нешифрованного соединения именно по той причине, что доставляемая информация не критична, однако сама информация может быть зашифрована, и в этом случае для поддержки обмена защищенными данными в системе связи требуется передавать только индекс подлежащего использованию ключа из списка кодов цифровых ключей.
Согласно вариантам раскрытия настоящего изобретения вместо паролей используется список кодов цифровых ключей, который организован для автоматической работы без необходимости каких-либо действий со стороны заданного пользователя.
Варианты раскрытия настоящего изобретения позволяют реализовать процесс регистрации (то есть, входа в систему) таким образом, чтобы учитывалось местное законодательство страны, при условии, что органы власти этой страны имеют возможность формировать для своих граждан пары ключей шифрования, предназначенных для официального использования. Такой вариант осуществления значительно улучшает способ связи между сторонами, используемый в современном информационном обществе. Кроме того, варианты раскрытия настоящего изобретения также позволяют осуществлять защищенную регистрацию в автономном режиме работы. Такие процессы автономной регистрации могут, например, успешно выполняться в пользовательском устройстве даже в том случае, если сетевое соединение с изготовителем пар ключей шифрования не установлено.
Варианты раскрытия настоящего изобретения касаются слабых мест в системе безопасности, которые негативно влияют на современные системы защиты данных; таким образом, варианты раскрытия настоящего изобретения способны в целом заменить использование паролей на применение одноразовых ключей.
В результате взаимодействующим сторонам не обязательно устанавливать и поддерживать доверительные отношения, что необходимо в современных реализациях, основанных на паролях. Согласно вариантам раскрытия настоящего изобретения доверительные отношения должны существовать только между каждой стороной связи и изготовителем ключей, то есть доверенной третьей стороной. Такая доверенная третья сторона в широком смысле может представлять собой нотариальный орган или орган сертификации, в зависимости от того, где предоставляется заданная услуга и кто ее предоставляет.
Варианты раскрытия настоящего изобретения позволяют осуществлять защищенное взаимодействие с использованием общедоступной сети Интернет (Internet Protocol, IP) в отсутствие указанных выше угроз для безопасности, поскольку значимая информация регистрации (то есть, входа в систему), такая, например, как идентификатор пользователя, адрес электронной почты или пароль, не передается ни в зашифрованной, ни в открытой форме, ни в виде односторонних хэшей. В соответствии с вариантами раскрытия настоящего изобретения не требуется использовать ни один из следующих протоколов: протокол защищенной передачи гипертекстовых файлов (HTTPS, HyperText Transport Protocol Secure), уровень защищенных сокетов (SSL, Secure Sockets Layer) или виртуальную частную сеть (VPN, Virtual Private Network). Кроме того, согласно вариантам раскрытия настоящего изобретения временные идентификаторы событий, такие как "auth tokens", передавать не обязательно; эти временные идентификаторы событий подвержены злоумышленному использованию сторонами, намеревающимися отслеживать, где и когда применялось пользовательское устройство.
Такие "auth tokens" могут использоваться в вариантах раскрытия настоящего изобретения в виде "идентификаторов сеансов" в ситуациях, когда желательно, чтобы текущий сеанс регистрации оставался открытым в течение предварительно определенного периода времени или пока не будет достигнута предварительно определенная цель. Как отмечалось выше, идентификатор сеанса является уникальным идентификатором, который генерируется и передается из сервера клиенту для идентификации текущего секанса взаимодействия между сервером и клиентом. Использование такого идентификатора сеанса может быть полезным, так как клиент должен хранить и обрабатывать только идентификатор сеанса, в то время как данные сеанса связаны с идентификатором сеанса и хранятся в базе данных, связанной с сервером.
С целью иллюстрации далее в соответствии с вариантами раскрытия настоящего изобретения рассматривается пример реализации процесса регистрации (то есть, входа в систему) без использования пароля, при этом процесс регистрации (то есть, входа в систему) выполняется между двумя сторонами связи, а именно: клиентом и сервером. В примере реализации процесс регистрации (то есть, входа в систему) выполняется посредством двух фаз, описываемых ниже.
Фаза 1
На фазе 1 формируется список кодов цифровых ключей одной из следующих сторон: клиентом, сервером или доверенной третьей стороной. Дополнительно, списку кодов цифровых ключей назначается порядковый номер, например "abc-123".
Сторонам связи предоставляются идентичные или совместимые (то есть, такие, которые могут использоваться совместно для реализации вариантов раскрытия настоящего изобретения) копии списка кодов цифровых ключей, содержащего ключи и индексы, указывающие на ключи. С этой целью вначале первый список кодов цифровых ключей доставляется сторонам связи с использованием защищенного режима передачи. Например, защищенный режим передачи может быть реализован с помощью защищенной связи, основанной на инфраструктуре открытых ключей (PKI, Public Key Infrastructure), например с помощью собственного приложения KWallet компании Gurulogic Microsystem Оу или известной модели Pretty Good Privacy (PGP).
В другом примере список кодов цифровых ключей может доставляться посредством передачи файла с использованием зашифрованных сообщений, например, в соответствии с протоколом ближней связи (NFC, Near-Field Communication) или Bluetooth, пока абсолютно точно известно, что такая передача файла может выполняться безопасно.
В еще одном примере список кодов цифровых ключей может доставляться с помощью зашифрованной карты памяти, например с помощью накопителя USB (также называемого "карта памяти USB"), в заказном письме.
Перед использованием списка кодов цифровых ключей стороны связи должны удостовериться, что изготовитель списка кодов цифровых ключей является доверенной и авторизованной стороной, не связанной со злоумышленником. Это особенно важно в тех случаях, если список кодов цифровых ключей передается по сети передачи данных, а также если список кодов цифровых ключей физически принимается непосредственно от другого пользователя. Следует принимать во внимание, что не удостоверенный список кодов цифровых ключей никогда не может использоваться.
Например, при использовании известной модели PGP доверенная взаимосвязь существуют между заданным пользователем и верификатором общедоступного ключа шифрования, в то время как в случае применения приложения KWallet компании Gurulogic Microsystem Оу доверенная взаимосвязь существуют между стороной связи и изготовителем списка кодов цифровых ключей.
Следует отметить, что в данном случае фаза 1 повторяется каждый раз, когда соответствующий список кодов цифровых ключей должен заменяться новым списком кодов цифровых ключей или когда стороны связи еще не получили общий список кодов цифровых ключей, то есть идентичные копии одного списка кодов цифровых ключей, и в этом случае требуется создать список кодов цифровых ключей, при условии что изготовитель этого списка известен и является доверенной стороной. Если существующий используемый список кодов цифровых ключей заканчивается, то есть осталось лишь несколько неиспользованных ключей, то дополнительно доставляется и согласуется новый список кодов цифровых ключей, если остаются еще неиспользованные ключи; такой способ функционирования отличается от работы систем защиты данных известных типов. В этом случае возможно выполнить доставку нового списка кодов цифровых ключей из одной стороны связи в другую или из доверенной третьей стороны в обе стороны связи с помощью по меньшей мере одного из оставшихся неиспользованных ключей из существующего списка кодов цифровых ключей без проблем, связанных с безопасностью.
Дополнительно, помимо удаления после использования, как было отмечено выше, действие ключей ограничено по времени для повышения уровня защиты. Дополнительно, действие всего списка кодов ключей ограничивается по времени, что требует периодического обновления списка кодов ключей.
С точки зрения технической реализации регистрация (то есть, вход в систему) допускается, например, только между сторонами связи, которые владеют идентичными копиями одинакового списка кодов цифровых ключей или по меньшей мере -идентичными ключами. Таким образом, варианты раскрытия настоящего изобретения позволяют отходить от стандартных, основанных на паролях процедур регистрации (то есть, входа в систему) и формировать ключи, подлежащие использованию группами пользователей и группами программных компонентов. Это повышает уровень защиты при передаче данных между сторонами связи, поскольку в этом случае корректную попытку регистрации могут осуществлять только определенные известные стороны связи.
Фаза 2
На фазе 2 стороны связи способны регистрироваться в службах друг друга, например, как описано ранее, независимо от используемого способа регистрации. В примере используется аутентификация посредством протокола передачи гипертекстовых файлов (HTTP) по нешифрованному соединению, для того чтобы более четко разъяснить сценарий использования системы защиты данных, соответствующей вариантам раскрытия настоящего изобретения, и достигаемые благодаря этому преимущества по сравнению с системами известного уровня техники.
Далее для удобства сценарий использования системы защиты данных при НТТР-аутентификации по нешифрованному соединению обозначается как "НТТР-аутентификация с использованием KWallet".
В примере пользовательское устройство клиента (далее обозначаемое аббревиатурой "С") взаимодействует с услугой, предоставляемой сервером (далее обозначаемым аббревиатурой "S").
В примере пользовательское устройство "С" подключается к услуге, предоставляемой сервером "S", через порт 80 TCP с помощью стандартного протокола HTTP, без применения, таким образом, шифрования SSL. Пользовательское устройство "С" передает HTTP-запрос в сервер "S"; HTTP-запрос для аутентификации по умолчанию указывает способ HTTP-аутентификации с использованием KWallet.
Затем пользовательское устройство "С" ожидает отклика от сервера "S", для того чтобы получить информацию, успешно ли выполнен запрос. В соответствии со стандартом HTTP кодом реакции на успешное выполнение запроса (см. ссылку [10]) является "HTTP200 OK".
В этом отношении сервер "S" обрабатывает запрос, принятый из пользовательского устройства "С", и верифицирует указанный в запросе способ HTTP-аутентификации с использованием KWallet. Дополнительно, HTTP-запрос определяет по меньшей мере один из следующих параметров (например, только один, по меньшей мере два, по меньшей мере три, по меньшей мере четыре и т.д.):
(i) список кодов цифровых ключей, используемый для процесса регистрации (то есть, входа в систему);
(ii) порядковый номер списка кодов цифровых ключей, применяемого пользовательским устройством "С";
(iii) индекс ключа, применяемого пользовательским устройством "С" для шифрования информации регистрации (то есть, входа в систему), и
(iv) зашифрованная дополнительная информация. Сервер "S" затем проверяет:
(a) соответствует ли принятый порядковый номер списку кодов цифровых ключей, принадлежащему серверу "S", и
(b) соответствует ли принятый индекс ключа ключу в списке кодов цифровых ключей, принадлежащем серверу "S".
Если соответствующий ключ найден, сервер "S" проверяет подлинность и корректность процесса регистрации и дешифрует зашифрованную дополнительную информацию с использованием ключа.
Если в процессе аутентификации возникает ошибка, сервер "S" дополнительно передает пользовательскому устройству "С" HTTP-отклик с кодом состояния "HTTP 401 Unauthorized" (несанкционированное действие) в соответствии со стандартной процедурой HTTP. В альтернативном варианте могут передаваться некоторые другие отклики, например, как определено способом HTTP-аутентификации с использованием KWallet, такой отклик определяет характер действий, посредством которых стороны связи работают согласно способу HTTP-аутентификации с использованием KWallet.
Например, в процессе регистрации (то есть, входа в систему) с использованием приложения Starwindow, разработанного компанией Gurulogic Microsystems Оу, зашифрованная информация дополнительно содержит уникальный идентификатор пользователя, который в рамках процесса Starwindow является персональным адресом электронной почты пользователя. "Starwindow" является собственным программным изделием, выпускаемым Gurulogic Microsystems Оу.
В процессе работы проверятся, связана ли зашифрованная информация с используемым списком кодов цифровых ключей. Этого достаточно для обнаружения возможных попыток взлома и неавторизованного использования, поскольку Starwindow является изготовителем списка кодов цифровых ключей и, таким образом, может проверить, принадлежит ли порядковый номер, используемый при попытке регистрации (то есть, входа в систему), пользователю, осуществляющему эту попытку. Это позволяет процессу Starwindow исключать применение списка кодов цифровых ключей, указываемого порядковым номером, неавторизованными пользователями, которым не принадлежит список кодов цифровых ключей.
Кроме того, дополнительно, согласно вариантам раскрытия настоящего изобретения любое возможное сообщение или даже последовательность символов, указывающая дату и время, может использоваться в качестве дополнительной информации (то есть, зашифрованной информации). Такие сообщения дополнительно используются для замены фактического идентификатора пользователя. В альтернативном варианте такие сообщения совмещаются с идентификатором фактического пользователя, пока другая сторона связи или доверенная третья сторона способна распознать сообщение.
Следует принимать во внимание, что для применения способа НТТР-аутентификации с использованием KWallet достаточно передавать только информацию, указанную в пунктах (i) и (iii), определяющую, что в процессе регистрации (то есть, входа в систему) должен использоваться список кодов цифровых ключей, и определяющую использование индекса ключа для предоставления требуемого ключа пользовательским устройством "С", если обе стороны связи приняли список кодов цифровых ключей только для конкретной цели, в точности определенной способом HTTP-аутентификации с использованием KWallet.
Дополнительно, согласно вариантам раскрытия настоящего изобретения ключи из списка кодов цифровых ключей могут использоваться в нескольких целях, например, для аутентификации, регистрации и шифрования данных.
Например, порядковый номер списка кодов цифровых ключей не требуется передавать, если только один список кодов цифровых ключей применяется в процессе HTTP-аутентификации с использованием KWallet. В другом примере зашифрованную информацию регистрации не требуется передавать, если ключ уже использовался для шифрования некоторого другого фрагмента информации, существенного для передачи данных, например, такого как ответная информация.
Кроме того, только для иллюстрации далее рассматривается конкретный пример реализации процесса регистрации (то есть, входа в систему), в котором пользовательское устройство "С" представляет собой оконечное устройство Starwindow, регистрирующее себя на сервере "S" с помощью способа HTTP-аутентификации с использованием KWallet, а не посредством известных стандартных способов базовой НТТР-аутентификации и дайджест-аутентификации доступа (см. ссылку [11]). Пользовательское устройство "С" передает HTTP-сообщение GET в сервер "S". С помощью способа НТТР-аутентификации с использованием KWallet в качестве первого параметра информации авторизации сообщается, например, 64-битный порядковый номер списка кодов цифровых ключей; следует принимать во внимание, что при реализации вариантов раскрытия настоящего изобретения дополнительно могут использоваться порядковые номера другой длины. Второй параметр информации авторизации представляет собой индекс, указывающий ключ, используемый в списке кодов цифровых ключей, и в иллюстрируемом примере указывается ключ в позиции "1" списка кодов цифровых ключей. Третьим параметром информации авторизации является зашифрованная информация регистрации, которая представляет собой дату и время осуществления попытки регистрации совместно со строкой идентификации пользователя Starwindow, зашифрованной с помощью ключа, указанного вторым параметром. Помимо шифрования, третий параметр преобразуется в шестнадцатеричный формат. В примере, приведенном ниже, в информации регистрации используется 96 символов.
После проверки информации авторизации сервер "S" отвечает посредством стандартного результирующего HTTP-кода "200 OK", указывающего на то, что регистрация выполнена успешно.
С: GET/signal/device/register/5776046 HTTP/1.1<cr><If>
С: Host: signal.starwindow.net<cr><lf>
С: Authorization: KWallet 0123456789ABCDEF 1
06BE6D5A3E5D471 EA3687088F647A54E214E284473C0773A00CA46BE5998
2E236D3B75794555E8B2D292AA3E3787386C<cr><lf>
C:<cr><lf>
S: HTTP/1.1 200 OK<cr><lf>
S: Date: Fri, 08 Jul 2016 06:29:14 GMT<cr><lf>
S: Access-Control-Allow-Origin: *<cr><lf>
S: Content-Type: application/xml<cr><lf>
S: Content-Length: 290<cr><lf>
S: Server: Starwindow Signal<cr><lf>
S:<cr><lf>
S: <290 байт содержимого отклика>
Кроме того, сервер "S" дополнительно генерирует идентификатор сеанса, который указывает текущий сеанс между сервером "S" и пользовательским устройством "С", и передает информацию, указывающую идентификатор сеанса, в виде части заголовка HTTP-отклика (то есть, отличного от 200, например: 401) с дополнительным полем "WWW-Authenticate", которое описывает использованный список кодов цифровых ключей, индекс ключа шифрования и идентификатор сеанса в зашифрованном виде. Например, поле "WWW-Authenticate" может быть представлено следующим образом:
WWW-Authenticate: realm="restricted", token="0123456789ABCDEF 2 E367FA5E"
Затем клиент "С" передает серверу "S" последующие данные совместно с идентификатором сеанса, при этом по меньшей мере идентификатор сеанса передается в зашифрованном виде. Это позволяет серверу "S" идентифицировать последующие данные как действительные передаваемые данные в процессе текущего сеанса взаимодействия.
Согласно второму аспекту посредством вариантов раскрытия настоящего изобретения предлагается способ работы системы защиты данных, содержащей по меньшей мере первую сторону и вторую сторону, которые взаимосвязаны через структуру передачи данных, способную обеспечить аутентификацию и/или регистрацию пользователя, отличающуюся тем, что способ включает:
(a) предоставление первой и второй сторонам идентичных или взаимно совместимых копий по меньшей мере одного списка кодов цифровых ключей, содержащего ключи и индексы, ссылающиеся на ключи;
(b) конфигурирование первой стороны для доставки второй стороне сообщения аутентификации, содержащего индекс ключа, который должен быть извлечен, уникальный идентификатор списка кодов цифровых ключей, из которого должен быть извлечен ключ, и дополнительную информацию, указывающую по меньшей мере на один из следующих элементов: уникальный идентификатор пользователя, связанный с первой стороной, идентификатор сеанса, ранее принятый от второй стороны, дата и время, в которое выполнена попытка аутентификации и/или регистрации пользователя, при этом дополнительная информация предоставляется в зашифрованном виде; и
(c) при выполнении обмена данными для обеспечения аутентификации и/или регистрации пользователя конфигурирование первой и второй сторон для использования ключа, извлеченного из списка кодов цифровых ключей на основе индекса, включенного в сообщение аутентификации, и для удаления ключа после использования, при этом ключ предназначен только для однократного использования между первой и второй сторонами.
Как вариант, дополнительная информация шифруется с использованием в точности того ключа шифрования, индекс которого доставлен в процессе аутентификации. В альтернативном варианте дополнительная информация шифруется с использованием некоторого иного ключа шифрования, например следующего ключа в списке кодов цифровых ключей, и в этом случае принимающей стороне уже известен тот факт, что должен использоваться следующий ключ. В еще одном альтернативном варианте дополнительная информация шифруется с использованием другого ключа шифрования, индекс которого доставляется отдельно.
Следует принимать во внимание, что способ допускает реализацию в виде непрерывного процесса так, чтобы обмен данными между первой и второй сторонами дополнительно шифровался с использованием одного или более других ключей из списка кодов цифровых ключей, как описано ранее. Дополнительно, в этом отношении ключи изменяются для каждого сообщения, передаваемого между первой и второй сторонами, и их индексы либо доставляются в принимающую сторону, либо в точности ей известны, например, если ключи используются в определенном порядке. Это предотвращает возникновение атак через посредника при обмене данными. Другими словами, даже если злонамеренной третьей стороне удается перехватить сообщение аутентификации, злоумышленник не способен осуществлять обмен данными с принимающей стороной, поскольку у него нет доступа к списку кодов цифровых ключей, который определяет последующую связь между авторизованными сторонами.
В соответствии с вариантом раскрытия настоящего изобретения способ включает конфигурирование ключей для их выбора одной из следующих сторон: первой стороной, второй стороной или доверенной третьей стороной.
В соответствии с вариантом раскрытия настоящего изобретения способ включает взаимную авторизацию и аутентификацию первой и второй сторон.
В соответствии с вариантом раскрытия настоящего изобретения способ включает конфигурирование списка кодов цифровых ключей для предоставления его первой стороной или второй стороной.
В соответствии с другим вариантом раскрытия настоящего изобретения способ включает конфигурирование списка кодов цифровых ключей для предоставления его доверенной третьей стороной.
Дополнительно, способ включает обеспечение возможности для первой стороны выполнять обмен данными анонимно, если список кодов цифровых ключей предоставляется доверенной третьей стороной.
В соответствии с вариантом раскрытия настоящего изобретения способ включает конфигурирование системы защиты данных для разрешения доступа к списку кодов цифровых ключей на основе биометрической идентификации пользователей, связанных с первой и второй сторонами.
Дополнительно, способ включает конфигурирование системы защиты данных для деактивации заданного списка кодов цифровых ключей в случае обнаружения нарушения защиты в результате того, что информация, относящаяся к заданному списку кодов цифровых ключей, стала доступна неавторизованной третьей стороне. Как вариант, такая деактивация реализуется по команде деактивации, содержащей идентификатор заданного списка кодов цифровых ключей, который должен быть деактивирован. Дополнительно, команда деактивации выдается по меньшей мере одной из следующих сторон: первой стороной, второй стороной, третьей стороной, следящей за безопасностью связи между первой и второй сторонами.
Кроме того, способ включает конфигурирование системы защиты данных для связывания срока действия с заданным списком кодов цифровых ключей и деактивации заданного списка кодов цифровых ключей по окончании его срока действия.
Согласно третьему аспекту посредством вариантов раскрытия настоящего изобретения предлагается компьютерное программное изделие, содержащее машиночитаемый носитель информации, на котором хранятся машиночитаемые инструкции, исполняемые вычислительным устройством, в состав которого входят аппаратные средства обработки для выполнения способа, соответствующего вышеуказанному второму аспекту.
Дополнительно, машиночитаемые инструкции могут загружаться в вычислительное устройство из хранилища программных приложений, например, из Интернет-магазина "Арр store".
Далее со ссылкой на чертежи описываются варианты раскрытия настоящего изобретения.
На фиг. 1 показано схематическое представление системы 100 защиты данных в соответствии с вариантом раскрытия настоящего изобретения. Система 100 защиты данных содержит первую сторону 102 и вторую сторону 104, которые взаимосвязаны через структуру передачи данных. Первой стороне 102 и второй стороне 104 предоставляются идентичные копии списка кодов цифровых ключей, обозначенные на фиг. 1 как 106а и 106b, соответственно. Дополнительно, также существует третья сторона 112, работающая совместно первой стороной 102 и второй стороной 104 для предоставления списка 106 с кодов цифровых ключей.
Первая и вторая стороны 102 и 104 способны при выполнении аутентификации, регистрации и обмена данными использовать ключ из списка(-ов) 106а и 106b кодов цифровых ключей, соответственно, и уничтожать ключ после использования. Ключ приспособлен для однократного использования между первой и второй сторонами 102 и 104. Дополнительно, действие ключа ограничено по времени для повышения уровня безопасности в системе 100 защиты данных.
В процессе функционирования первая сторона 102 передает сообщение 108 аутентификации, на основе которого вторая сторона 104 передает отклик 110, указывающий, успешно ли прошла аутентификация. Вместо аутентификации сообщение 108 также может использоваться для регистрации (в службе).
На фиг. 1 представлен лишь пример, который не должен неоправданно ограничивать объем приведенной формулы изобретения. Следует понимать, что конкретное описание системы 100 защиты данных представлено в качестве примера и не должно толковаться в качестве ограничения системы 100 защиты данных конкретными числами, типами или структурами сторон связи. Кроме того, может существовать группа задействованных сторон связи, каждая из которых, таким образом, использует список кодов цифровых ключей с одинаковым идентификатором. Специалисту в этой области техники понятно, каким образом можно реализовать множество изменений, альтернативных вариантов и модификаций вариантов раскрытия настоящего изобретения.
На фиг. 2А показан алгоритм, описывающий шаги способа работы системы защиты данных, например системы 100 защиты данных, содержащей первую сторону и вторую сторону, которые взаимосвязаны через структуру передачи данных, в соответствии с вариантом раскрытия настоящего изобретения. Способ изображен в виде набора шагов в рамках логической блок-схемы, представляющей последовательность шагов, которые могут быть реализованы аппаратно, программно или с помощью комбинации этих средств, таким образом как описано выше.
На шаге 202, который относится к приему списка(-ков) кодов цифровых ключей, первой и второй стороне предоставляются идентичные или взаимно совместимые копии списка кодов цифровых ключей, содержащего ключи и индексы, ссылающиеся на ключи.
На шаге 204, относящемся к процессу аутентификации, выполняется настройка первой стороны для возможности доставки второй стороне сообщения аутентификации, содержащего индекс ключа, который должен быть извлечен, уникальный идентификатор списка кодов цифровых ключей, из которого должен быть извлечен ключ, и дополнительную информацию, указывающую по меньшей мере на один из следующих элементов: уникальный идентификатор пользователя, связанный с первой стороной, идентификатор сеанса, ранее принятый от второй стороны, дата и время, в которое выполнена попытка аутентификации и/или регистрации пользователя, при этом дополнительная информация предоставляется в зашифрованном виде.
Кроме того, при обмене данными выполняется настройка первой и второй сторон для использования ключа, извлеченного из списка кодов цифровых ключей, и удаления ключа после использования. На шаге 204 ключ приспосабливается для однократного использования между первой и второй сторонами. Дополнительно, действие ключа ограничено по времени для повышения уровня безопасности в системе 100 защиты данных.
Шаги 202-204 показаны только для иллюстрации, также могут быть реализованы альтернативные варианты, в которых добавляются один или более шагов без нарушения объема представленной формулы изобретения.
На фиг. 2В показан алгоритм, описывающий шаги выполнения процесса 204 аутентификации. На шаге 206 первая сторона передает второй стороне сообщение аутентификации для выполнения регистрации, например, в службе, поддерживаемой второй стороной. После приема на шаге 208 уточняющего отклика продолжается процесс регистрации, в ходе которого ключ извлекается из списка кодов цифровых ключей на основе индекса, включенного в сообщение аутентификации. Наконец, на шаге 210 использованный ключ удаляется.
Дополнительно, первая сторона выбирает ключ, подлежащий использованию, а затем ожидает отклика от второй стороны. Используемый ключ удаляется сразу же после его применения или после поступления отклика.
Следует принимать во внимание, что способ допускает реализацию в виде непрерывного процесса так, чтобы обмен данными между первой и второй сторонами дополнительно шифровался с использованием одного или более других ключей из списка кодов цифровых ключей, как описано ранее. Дополнительно, в этом отношении ключи изменяются для каждого сообщения, передаваемого между первой и второй сторонами, и их индексы либо доставляются в принимающую сторону, либо в точности ей известны, например, если ключи используются в определенном порядке. Это предотвращает возникновение атак через посредника при обмене данными. Другими словами, даже если злонамеренной третьей стороне удается перехватить сообщение аутентификации, злоумышленник не способен осуществлять обмен данными с принимающей стороной, поскольку у него нет доступа к списку кодов цифровых ключей, который определяет последующую связь между авторизованными сторонами, то есть между первой и второй сторонами.
Шаги 206-210 показаны только для иллюстрации, также могут быть реализованы альтернативные варианты, в которых добавляются один или более шагов без нарушения объема представленной формулы изобретения.
На фиг. 3 показано содержимое типового сообщения аутентификации в соответствии с вариантом раскрытия настоящего изобретения.
Как показано на фиг. 3, сообщение аутентификации содержит уникальный идентификатор 302 списка кодов цифровых ключей. Сообщение аутентификации также обязательно содержит индекс 304 ключа, указывающий на ключ.
Кроме того, сообщение аутентификации содержит зашифрованную информацию 306. Зашифрованная информация 306 включает в свой состав по меньшей мере один из следующих элементов: уникальная идентификационная информация 308 пользователя, последовательность 310 символов, указывающая дату и время передачи сообщения аутентификации, одно или более других сообщений 312, например, содержащих идентификатор сеанса, принятый ранее от заданной стороны, которой должно доставляться сообщение аутентификации. Кроме того, сообщение аутентификации содержит информацию, которая указывает используемый способ аутентификации и отмечена на чертеже меткой 314.
Кроме того, следует принимать во внимание, что содержимое в сообщении аутентификации может располагаться в любом порядке. На фиг. 3 показан лишь пример, который не должен неоправданно ограничивать объем представленной формулы изобретения. Специалисту в этой области техники понятно, каким образом можно реализовать множество изменений, альтернативных вариантов и модификаций вариантов раскрытия настоящего изобретения.
Изменения в варианты раскрытия настоящего изобретения, описанные выше, могут вноситься при условии сохранения объема раскрытия настоящего изобретения, определенного прилагаемой формулой изобретения. Такие термины, как "включающий", "содержащий", "встроенный", "состоящий из", "имеющий", "представляет собой", используемые в описании и формуле настоящего изобретения, не должны толковаться как исключающие использование блоков, компонентов или элементов, не описанных выше в явном виде. Ссылка на компонент, указанный в единственном числе, также должна допускать толкование, связанное со множеством компонентов; например, "по меньшей мере один " в одном из примеров указывает на один компонент, а в другом - на множество компонентов; кроме того конструкция "два из" и подобная ей конструкция "один или более" должны толковаться таким же образом. Числовые значения, заключенные в скобки в прилагающейся формуле изобретения, помогают разобраться в пунктах формулы изобретения и не должны трактоваться в качестве ограничения изобретения, заявленного посредством этой формулы.
Фразы "в варианте осуществления", "согласно варианту осуществления" и т.п. обычно означают, что следующий за фразой конкретный признак, структура или характеристика включается по меньшей мере в один вариант раскрытия настоящего изобретения, а также может включаться в несколько вариантов раскрытия. Важно отметить, что такие фразы не обязательно относятся к одному варианту осуществления.
Ссылочные материалы
[1] Basic access authentication (базовая аутентификация доступа) - Wikipedia, свободная энциклопедия (дата просмотра: 14 июля 2016 года); URL: https://en.wikipedia.org/wiki/Basic_access_authentication
[2] Digest access authentication (дайджест-аутентификация доступа) - Wikipedia, свободная энциклопедия (дата просмотра: 14 июля 2016 года); URL: https://en.wikipedia.org/wiki/Digest_access_authentication
[3] Kerberos (protocol) (протокол Kerberos) - Wikipedia, свободная энциклопедия (дата просмотра: 14 июля 2016 года); URL: https://en.wikipedia.org/wiki/Kerberos_(protocol)
[4] NT LAN Manager (диспетчер NT LAN) - Wikipedia, свободная энциклопедия (дата просмотра: 14 июля 2016 года); URL: https://en.wikipedia.org/wiki/NT_LAN_Manager
[5] OAuth - Wikipedia, свободная энциклопедия (дата просмотра: 14 июля 2016 года); URL: https://en.wikipedia.org/wiki/OAuth
[6] OpenID - Wikipedia, свободная энциклопедия (дата просмотра: 14 июля 2016 года); URL: https://en.wikipedia.org/wiki/OpenID
[7] SPNEGO - Wikipedia, свободная энциклопедия (дата просмотра: 14 июля 2016 года); URL: https://en.wikipedia.org/wiki/SPNEGO
[8] Secure Remote Password protocol (защищенный протокол аутентификации по дистанционному паролю) - Wikipedia, свободная энциклопедия (дата просмотра: 14 июля 2016 года); URL: https://en.wikipedia.org/wiki/Secure_Remote_Password_protocoI
[9] Transport Layer Security (защита на транспортном уровне) - Wikipedia, свободная энциклопедия (дата просмотра: 14 июля 2016 года); URL: https://en.wikipedia.org/wiki/Transport_Layer_Security#Client-authenticated_TLS_handshake
[10] List of HTTP status codes (список кодов состояния HTTP) - Wikipedia, свободная энциклопедия (дата просмотра: 14 июля 2016 года); URL: https://en.wikipedia.org/wiki/List_of_HTTP_status_codes
[11] RFC 2617 - HTTP Authentication: Basic and Digest Access Authentication (RFC 2617 - HTTP-аутентификация: базовая и дайджест-аутентификация доступа), (дата просмотра: 14 июля 2016 года); URL: https://tools.ietf.org/html/rfc261 7
[12] GNU Privacy Guard - Wikipedia, свободная энциклопедия (дата просмотра: 29 августа 2016 года); URL: https://en.wikipedia.org/wiki/GNU_Privacy_Guard