RU2332711C2 - ЗАЩИЩЕННАЯ ОБРАБОТКА МАНДАТА КЛИЕНТСКОЙ СИСТЕМЫ ДЛЯ ДОСТУПА К РЕСУРСАМ НА ОСНОВЕ Web - Google Patents

ЗАЩИЩЕННАЯ ОБРАБОТКА МАНДАТА КЛИЕНТСКОЙ СИСТЕМЫ ДЛЯ ДОСТУПА К РЕСУРСАМ НА ОСНОВЕ Web Download PDF

Info

Publication number
RU2332711C2
RU2332711C2 RU2003133768/09A RU2003133768A RU2332711C2 RU 2332711 C2 RU2332711 C2 RU 2332711C2 RU 2003133768/09 A RU2003133768/09 A RU 2003133768/09A RU 2003133768 A RU2003133768 A RU 2003133768A RU 2332711 C2 RU2332711 C2 RU 2332711C2
Authority
RU
Russia
Prior art keywords
computer system
key
memory
keys
server
Prior art date
Application number
RU2003133768/09A
Other languages
English (en)
Other versions
RU2003133768A (ru
Inventor
Шон Дерек БРЭЙСУЭЛЛ (US)
Шон Дерек БРЭЙСУЭЛЛ
Ричард Б. УОРД (US)
Ричард Б. УОРД
Расселл Ли Мл. СИМПСОН (US)
Расселл Ли Мл. СИМПСОН
Карим Мичел БЭТТИШ (US)
Карим Мичел БЭТТИШ
Original Assignee
Майкрософт Корпорейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Майкрософт Корпорейшн filed Critical Майкрософт Корпорейшн
Publication of RU2003133768A publication Critical patent/RU2003133768A/ru
Application granted granted Critical
Publication of RU2332711C2 publication Critical patent/RU2332711C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/068Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/30Compression, e.g. Merkle-Damgard construction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

Настоящее изобретение относится к способам безопасного доступа к ресурсам компьютерных сетей. Технический результат заключается в обеспечении защищенной обработки клиентского мандата, используемого для доступа на основе Web к ресурсам. Такой результат достигается следующим образом. Страница регистрации с интерфейсом для ввода пользовательского мандата представляется на клиентской системе и введенный пользовательский мандат посылается на сервер. В ответ на получение пользовательского мандата сервер генерирует уникальный идентификатор сеанса для клиентской системы. Сервер также получает цифровую подпись для пользовательского мандата на основе текущего ключа в памяти циклически сменяемых ключей и уникального идентификатора сеанса. Сервер затем зашифровывает цифровую подпись и пользовательский мандат на основе ключа шифрования, полученного из текущего ключа и уникального идентификатора сеанса. Когда зашифрованный мандат принимается на клиентской системе, для проверки достоверности мандата используются ключи из памяти циклически сменяемых ключей. Если пользовательский мандат не подтвержден, то пользователю вновь представляется страница регистрации. 2 н. и 10 з.п. ф-лы, 7 ил.

Description

Предпосылки изобретения
Ссылки на связанные заявки
Настоящая заявка заявляет приоритет предварительной патентной заявки США № 60/428,152 от 20 ноября 2002 на «Систему и способ для аутентификации на основе cookie (идентификационного файла, сохраняемого на клиентской системе)», причем указанная предварительная заявка включена в настоящее описание посредством ссылки.
Область техники
Настоящее изобретение относится к компьютерным сетям, более конкретно к защищенной обработке мандата клиентской системы для доступа к ресурсам на основе Web.
Предшествующий уровень техники
Компьютерные системы и связанная с ними технология оказывают влияние на многие аспекты общества. В действительности возможности компьютерных систем по обработке информации трансформировали образ жизни и деятельности человека. Компьютерные системы в настоящее время обычно выполняют массу задач (например, обработку текстов, планирование, управление базами данных), которые до появления компьютеров выполнялись вручную. Позднее компьютерные системы были связаны друг с другом для формирования как проводных, так и беспроводных компьютерных сетей, в которых компьютерные системы могут осуществлять электронный информационный обмен для совместного использования данных. В результате множество задач, выполняемых на компьютерной системе (например, речевая связь, доступ к электронной почте, электронная конференц-связь, просмотр Web-страниц в Интернет), включают в себя электронный обмен информацией с одной или несколькими другими компьютерными системами посредством проводных и/или беспроводных компьютерных сетей.
В особенности электронная почта стала важным средством связи. Системы электронной почты в типовом случае включают в себя клиентский компонент электронной почты и серверный компонент электронной почты. Эти компоненты в типовом случае являются программными приложениями, которые конфигурированы для исполнения на компьютерных системах (например, серверах, персональных компьютерах (ПК), портативных компьютерах и цифровых персональных помощниках (карманных компьютерах). Клиентский компонент электронной почты и серверный компонент электронной почты в типовом случае проектируются и конфигурируются для конкретной работы друг с другом. Клиентский компонент электронной почты и серверный компонент электронной почты в общем случае осуществляют связь друг с другом с использованием узкоспециализированных протоколов, таких как RPC (удаленный вызов процедуры), который позволяет, например, прикладной программе на клиентской компьютерной системе выполнять программу на серверной компьютерной системе. Например, клиентский компонент электронной почты может послать сообщение на серверный компонент электронной почты с соответствующими аргументами (параметрами), и серверный компонент электронной почты возвратит сообщение электронной почты.
Некоторые типы серверов электронной почты конфигурированы для разрешения доступа к электронной почте через "zero-touch" (не затронутую) клиентскую систему, такую, например, как клиентская компьютерная система с Web-браузером, а не как специализированная клиентская система электронной почты. В этих типах серверов электронной почты Web-браузер взаимодействует с сервером электронной почты, и любые функции, требуемые для выполнения на клиентской системе, выполняются посредством Web-браузера. Например, клиентская компьютерная система может загрузить инструкции и скрипты языка разметки гипертекста (HTML) (динамически генерируемые такой технологией, как активные серверные страницы), что позволяет Web-браузеру соответствующим образом взаимодействовать с сервером электронной почты. Таким образом, основанная на браузере "zero-touch" клиентская система позволяет пользователю получать доступ к своей электронной почте и другой связанной с почтой информации (такой как календарь, совместно используемая папка) с любой серверной компьютерной системы, которая соединена с общей сетью (например, WWW) c основанной на браузере "zero-touch" клиентской системой. Соответственно, такие протоколы как, например, НТТР (протокол передачи гипертекстовых файлов), используемые для доступа к основанному на Web информационному содержанию в WWW, могут быть использованы для доступа к электронной почте и другой связанной с почтой информации.
Однако основная на браузере доступность к электронной почте и другой связанной с почтой информации также приводит к проблемам потенциальной защищенности, причем некоторые такие вопросы защищенности связаны с кэшированием мандата (учетной записи с параметрами доступа пользователя, сформированными после его успешной аутентификации) в памяти Web-браузера. В среде Web информационное содержание и запросы информационного содержания в общем случае транспортируются с использованием протокола НТТР. Например, запрос протокола НТТР для доступа к информационному содержанию, инициируется пользователем в основанной на браузере клиентской системе и затем пересылается от основанной на браузере клиентской системы через сеть. Запрос затем принимается Web-сервером на серверной компьютерной системе, которая обрабатывает запрос для определения того, авторизован ли пользователь основанной на браузере клиентской системы для доступа к запрошенному информационному содержанию. Если пользователь авторизован для доступа к запрошенному информационному содержанию, то Web-сервер пересылает информационное содержание назад к основанной на браузере клиентской системе в сообщении протокола НТТР.
Некоторые версии протокола НТТР (например, НТТР/1.0) не используют информацию о состоянии. То есть передача по протоколу НТТР (например, запрос сообщения электронной почты) выполняется без знания какой-либо предыдущей передачи сервером (например, других предыдущих запросов сообщений электронной почты). Как таковые, эти версии протокола НТТР не поддерживают концепцию «сеанса», когда пользователь должен зарегистрироваться при входе в систему ("log-in") и при выходе из системы ("log-out"). Другие версии протокола НТТР (например, НТТР/1.1) поддерживают сообщения, подтверждающие активность ("keep-alive"), которые посылаются между клиентской системой и серверной системой для поддержания активности соединения протокола НТТР. Однако использование таких сообщений подтверждения активности является в некоторой степени ненадежным, и даже если используются сообщения, подтверждающие активность, однако нет гарантии того, что соединение протокола НТТР может поддерживаться активным. Кроме того, поскольку запросы клиентской системы часто проходят через промежуточные посреднические серверы, которые совместно используют поддерживаемые активными каналы среди множества пользователей, то для сервера нет возможности определить, был ли принятый запрос послан ранее аутентифицированной клиентской системой. Соответственно, независимо от того, является ли передача протокола НТТР не использующей информацию о состоянии или использующей сообщение, подтверждающее активность, каждый запрос доступа к информационному содержанию, который транспортируется по протоколу НТТР (далее называемый «НТТР-запросом»), должен включать в себя соответствующую информацию аутентификации протокола НТТР.
Соответственно, информация аутентификации протокола НТТР может быть включена в НТТР-запросы посредством специального заголовка, называемого заголовком WWW-авторизации и имеющего следующий формат: "WWW-авторизация:[Аутентификация-Тип] [Мандат]". В первый раз, когда Web-браузер пытается получить доступ к информационному содержанию, которое требует аутентификации (например, представление введенного пользователем мандата), Web-сервер в типовом случае откажет в предоставлении запрашиваемого информационного содержания и вместо него возвратит сообщение протокола НТТР с кодом 401 статуса «Не авторизован». Ответное сообщение протокола НТТР включает в себя заголовок формата: "WWW-Аутентификация: [Метод аутентификации] [realm= значение realm][Вспомогательная информация]".
При приеме Web-браузером ответное сообщение протокола НТТР обуславливает представление Web-браузером запрашивающего мандат диалогового окна, например имя пользователя и пароль. После того как пользователь введет мандат, Web-браузер пересылает исходный НТТР-запрос с заголовком WWW-авторизации, который включает в себя введенный мандат. Если Web-сервер принимает введенный пользователем мандат в качестве действительного и возвращает запрошенное информационное содержание (например, сообщение электронной почты), то Web-браузер кэширует введенный пользователем мандат в памяти браузера. Таким образом, в последующих запросах на тот же самый URL (унифицированный указатель информационного ресурса) или соответствующий производный относительный URL, связанный с тем же самым информационным содержанием, кэшированный мандат извлекается из памяти браузера и включается в соответствующие заголовки WWW-авторизации протокола НТТР. Соответственно, даже если протокол НТТР не использует информацию о состоянии, пользователь освобожден от необходимости повторного ввода мандата для каждого запроса на тот же самый или соответственно производный относительный URL.
К сожалению, Web-браузеры обычно поддерживают кэшированные мандаты в памяти браузера по существу неопределенным образом до тех пор, пока Web-браузер не выполнит выход (путем выхода из программы Web-браузера, или повторной загрузки, или выключения компьютерной системы или клиентского устройства). Таким образом, мандат привилегированного пользователя, который получал доступ к защищенному информационному содержанию, может быть кэширован в памяти браузера после того, как пользователь больше не использует Web-браузер. Если привилегированный пользователь выходит из компьютерной системы, другой непривилегированный пользователь может войти в нее и использовать кнопку обратного просмотра браузера или архивное средство для попытки доступа к защищенному информационному содержанию. Поскольку мандат привилегированного пользователя все еще кэширован в памяти браузера, Web-браузер будет извлекать кэшированный мандат и представлять его вместе с запросом непривилегированного пользователя для доступа к защищенному информационному содержанию. Таким образом, непривилегированный пользователь может получить доступ к защищенному информационному содержанию без необходимости ввода соответствующего мандата в Web-браузер.
Кэшированный мандат может быть особенно проблематичным в местоположениях, где имеются общедоступные компьютеры и/или на компьютерных системах, которые не позволяют закрывать Web-браузер. Примером такой компьютерной системы является Интернет-киоск (компьютер, подсоединенный к Интернет и общедоступный для пользователей). Интернет-киоски часто размещаются в местах общего доступа, например в библиотеках, Интернет-кафе, центрах проведения конференций, чтобы обеспечить публичный доступ к Интернет. Интернет-киоски предназначены для того, чтобы позволить любому пользователю, подошедшему к киоску, получить быстрый доступ к Интернет, не требуя сначала поиска и запуска Web-браузера. Поэтому многие Интернет-киоски конфигурированы таким образом, что Web-браузер всегда активен и не может быть закрыт.
Хотя это обеспечивает эффективный доступ к Интернет, вместе с тем приводит к тому, что кэшированный мандат остается в памяти браузера по существу неопределенно долго. Например, если привилегированный пользователь вводит мандат (например, для доступа к защищенному информационному содержанию) в Интернет-киоск, мандат привилегированного пользователя кэшируется в памяти браузера. Поскольку Web-браузер не закрывается, по существу не имеется способа удалить кэшированный мандат без снятия питания с Интернет-киоска. Таким образом, даже если привилегированный пользователь знает, как очистить кэшированные данные мандата (например, путем закрытия Web-браузера), привилегированный пользователь может не иметь возможности сделать это.
Использование кэшированного мандата для получения доступа к защищенному информационному содержанию является особенно важным для основанных на браузере приложений электронной почты. Например, непривилегированный пользователь может иметь возможность просмотра страниц в обратном порядке для получения доступа к сообщениям электронной почты привилегированного пользователя, которые могли бы содержать конфиденциальные данные. В дополнение к доступу к электронной почте привилегированного пользователя кэшированный мандат также позволяет непривилегированному пользователю выдать себя за привилегированного пользователя. Например, непривилегированный пользователь может получить возможность послать сообщения электронной почты с учетной записи, связанной с привилегированным пользователем.
Возможным решением этой проблемы является вынуждение пользователей повторно аутентифицироваться каждый раз, когда запрашивается информационное содержание. Однако это потребовало бы от пользователей ручного ввода информации аутентификации для каждого НТТР-запроса для доступа к информационному содержанию. Поскольку типовое взаимодействие с Web-сайтом может состоять из десятков и даже сотен НТТР-запросов, это привело бы к тому, что пользователю понадобилось бы повторно вводить мандат десятки и сотни раз. Таким образом, повторный ввод мандата для каждого НТТР-запроса для доступа к информационному содержанию привел бы к существенному увеличению количества времени и объема вводимых данных. Такое решение является слишком обременительным для большинства пользователей, которые предпочли бы ввести свой мандат один раз на сеанс связи. Поэтому предпочтительными были бы системы, способы, компьютерные программные продукты для защищенной обработки клиентского мандата, используемого для доступа к ресурсам на основе Web.
Сущность изобретения
Вышеуказанные проблемы, свойственные предшествующему уровню техники, преодолеваются принципами, лежащими в основе настоящего изобретения, которые направлены на способы, системы, компьютерные программные продукты и структуры данных для защищенной обработки клиентского мандата, используемого для доступа к ресурсам на основе Web. Клиентская компьютерная система (далее упоминается как «клиент») и серверная компьютерная система (далее упоминается как «сервер») подсоединены к общей сети, такой как, например, Интернет. Сервер конфигурирован для обеспечения доступа к ресурсам, таким как, например, сообщения электронной почты, и связанным с ними данным электронной почты. Клиент конфигурирован с браузером, который может запрашивать доступ к ресурсам на основе Web и представлять ресурсы на основе Web пользователю на клиентской компьютерной системе.
Клиент посылает первый запрос доступа к ресурсам на сервер. Например, клиент может послать запрос доступа к сообщению электронной почты, сохраненному на сервере. Сервер принимает первый запрос и, поскольку клиент не аутентифицирован, сервер переадресует клиента на страницу регистрации в ответ на прием первого запроса. Переадресация клиента может включать передачу сервером клиенту ответа, который содержит индикатор переадресации (например, сообщение протокола НТТР с кодом 302 статуса «Временно перемещено») вместе с универсальным идентификатором ресурса (URI) на страницу регистрации. Страница регистрации может быть одной из активных страниц сервера (ASP), которая обеспечивает интерфейс для пользователя на клиентской компьютерной системе, чтобы ввести мандат пользователя. Клиент получает доступ к странице регистрации и использует страницу регистрации для представления мандата пользователя серверу. Клиент может представить мандат, например, с использованием протокола SSL (уровень защищенных разъемов) для защиты отправления протокола НТТР.
Сервер принимает представленный мандат. Сервер посылает зашифрованную информацию, которая представляет мандат пользователя и зависящую от времени цифровую подпись. Может быть, что сервер посылает зашифрованную информацию после делегирования аутентификации представленного мандата органу, уполномоченному для выполнения аутентификации. Сервер генерирует зашифрованные данные с использованием ключа из памяти ключей с циклическим сдвигом (циклически сменяемых ключей). Каждый ключ в памяти ключей с циклическим сдвигом автоматически прекращает действие спустя определенный временной интервал (например, 10 минут). После определенного временного интервала сервер может ввести новый ключ в память ключей с циклическим сдвигом и вывести прекративший действие ключ из памяти ключей с циклическим сдвигом. Число ключей, поддерживаемых в памяти ключей с циклическим сдвигом и определенный временной интервал, могут быть конфигурированы администратором.
При приеме мандата пользователя сервер ассоциирует мандат пользователя с уникальным идентификатором (например, с глобально уникальным идентификатором - GUID). Сервер получает ключ подписи, который может быть использован для цифровой подписи данных, путем хеширования (например, с использованием алгоритмов хеширования SHA-1 или MD-5) комбинации самого последнего ключа в памяти ключей с циклическим сдвигом, уникального идентификатора и первой постоянной последовательности. Сервер затем использует ключ подписи для получения цифровой подписи (например, код аутентификации хешированного сообщения - HMAC) из комбинации уникального идентификатора и мандата пользователя.
Сервер также получает ключ шифрования, который может быть использован для шифрования данных путем хеширования комбинации самого последнего ключа в памяти ключей с циклическим сдвигом, уникального идентификатора и второй постоянной последовательности. Сервер затем использует ключ шифрования для шифрования комбинации цифровой подписи и мандата пользователя в зашифрованную информацию. Сервер передает уникальный идентификатор и зашифрованную информацию клиенту. Клиент принимает уникальный идентификатор и зашифрованную информацию и сохраняет уникальный идентификатор и зашифрованную информацию (например, в соответствующем cookie - идентификационном файле, сохраняемом на клиентской системе).
Клиент посылает второй запрос, включающий в себя уникальный идентификатор и зашифрованную информацию для доступа к ресурсу на сервере. Сервер принимает второй запрос и пытается проверить достоверность мандата пользователя с использованием самого последнего ключа в памяти ключей с циклическим сдвигом. Сервер выводит ключ дешифрирования, который может быть использован для дешифрирования данных путем хеширования комбинации самого последнего ключа в памяти ключей с циклическим сдвигом, уникального идентификатора и второй постоянной последовательности. Сервер использует ключ дешифрирования для дешифрирования зашифрованной информации, тем самым показывая цифровую подпись и мандат пользователя. Сервер выводит ключ подтверждения достоверности, который может быть использован для аутентификации данных, путем хеширования комбинации самого последнего ключа в памяти ключей с циклическим сдвигом, уникального идентификатора и первой постоянной последовательности. Сервер использует ключ подписи проверки достоверности для получения цифровой подписи проверки достоверности из комбинации уникального идентификатора и мандата пользователя.
Сервер сравнивает цифровую подпись проверки достоверности с цифровой подписью. Если цифровая подпись проверки достоверности и цифровая подпись совпадают, то мандат пользователя подтверждается. С другой стороны, если цифровая подпись проверки достоверности и цифровая подпись не совпадают, то мандат пользователя не подтверждается. Если мандат пользователя не подтвержден при использовании самого последнего ключа в памяти ключей с циклическим сдвигом, то используется предпоследний ключ в памяти ключей с циклическим сдвигом в попытке подтвердить мандат пользователя (например, путем использования предпоследнего ключа для генерации ключа дешифрирования и цифровой подписи подтверждения). Сервер может пытаться проверить достоверность мандата пользователя с использованием каждого ключа в памяти ключей с циклическим сдвигом. Подтвержденный мандат пользователя посылается в модуль (например, на сервер электронной почты), который управляет доступом к запрошенному ресурсу (например, к сообщению электронной почты).
Если мандат пользователя подтвержден с использованием ключа из памяти ключей с циклическим сдвигом, который не является самым последним ключом, то сервер определяет, что должна быть получена обновленная зашифрованная информация. Сервер использует самый последний ключ из памяти ключей с циклическим сдвигом для получения обновленной зашифрованной информации (например, путем получения обновленной цифровой подписи и обновленного ключа шифрования из самого последнего ключа). Если подтвержденный мандат пользователя является соответствующим, то клиенту возвращается запрошенный ресурс и, если требуется, также обновленная зашифрованная информация. Клиент получает ресурс и обновленную зашифрованную информацию. Клиент сохраняет обновленную зашифрованную информацию, перезаписывая предыдущую зашифрованную информацию, соответствующую уникальному идентификатору. Если мандат пользователя не может быть подтвержден с использованием любых сменяемых ключей из памяти ключей с циклическим сдвигом, то клиент переадресуется на страницу регистрации, где должен быть введен новый мандат пользователя.
В некоторых вариантах осуществления страница регистрации включает в себя интерфейс для выбора коммуникационных свойств (например, поддержка gzip-сжатия, клиентская компьютерная система является частным или недоверительным клиентом, клиент является усовершенствованным клиентом, который предпочел бы упрощенное информационное содержание), которые могут изменять способы обработки сообщений протокола НТТР. Коммуникационные свойства выбираются на странице регистрации и посылаются в коммуникационный фильтр, чтобы указать коммуникационному фильтру, каким образом должны обрабатываться у клиента передачи протокола НТТР. Выбранные коммуникационные свойства принимаются на сервере.
Сервер запрашивает клиента, чтобы определить, поддерживаются ли выбранные коммуникационные свойства клиентской системой, а также идентифицировать другие релевантные коммуникационные свойства. Сервер конфигурирует коммуникационный фильтр для обработки передач протокола НТТР на клиентской системе в соответствии с любыми выбранными коммуникационными свойствами и идентифицированными другими релевантными коммуникационными свойствами, поддерживаемыми клиентской системой. Основываясь на том, что клиент находится не в защищенном положении, сервер может использовать другую память ключей с циклическим сдвигом, которая имеет более короткий период сдвига и поддерживает уменьшенное количество ключей.
Дополнительные свойства и преимущества изобретения изложены в нижеследующем описании и будут частично очевидны из описания или могут быть изучены при практической реализации изобретения. Признаки и преимущества изобретения могут быть реализованы и получены посредством механизмов и комбинаций, в частности, приведенных в пунктах формулы изобретения. Эти и другие признаки настоящего изобретения будут понятны из нижеследующего описания и формулы изобретения или могут быть изучены при практической реализации изобретения.
Краткое описание чертежей
Для того чтобы описать способ, которым могут быть получены вышеописанные и другие преимущества и признаки, более конкретное описание изобретения, кратко описанное выше, будет проиллюстрировано ссылками на конкретные варианты осуществления, которые иллюстрируются прилагаемыми чертежами. Исходя из того, что эти чертежи изображают только типовые варианты осуществления изобретения и поэтому не должны рассматриваться как ограничивающие его объем, изобретение будет описано и пояснено с дополнительной конкретизацией и деталями с использованием иллюстрирующих чертежей, на которых показано следующее:
Фиг. 1 - подходящая операционная среда для реализации принципов настоящего изобретения.
Фиг. 2А - пример сетевой архитектуры, которая обеспечивает защищенность мандата со стороны клиентской системы, когда клиент запрашивает доступ к ресурсу на сервере в соответствии с настоящим изобретением.
Фиг. 2В - пример сетевой архитектуры, которая обеспечивает использование защищенного мандата со стороны клиентской системы для доступа к ресурсу на сервере в соответствии с настоящим изобретением.
Фиг. 3 - пример блок-схемы способа обеспечения защищенности мандата со стороны клиентской системы, когда клиент запрашивает доступ к ресурсу на сервере в соответствии с настоящим изобретением.
Фиг. 4 - пример блок-схемы способа использования защищенного мандата со стороны клиентской системы для доступа к ресурсу на сервере в соответствии с настоящим изобретением.
Фиг. 5 - пример блок-схемы способа определения коммуникационных свойств, связанных с клиентом, в соответствии с принципами настоящего изобретения.
Фиг. 6 - пример страницы регистрации, которая принимает мандат и варианты выбора коммуникационных свойств в соответствии с принципами настоящего изобретения.
Детальное описание предпочтительных вариантов осуществления изобретения
Принципы настоящего изобретения обеспечивают защищенную обработку клиентского мандата, используемого для доступа к ресурсам на основе Web. Сервер поддерживает по меньшей мере одну память ключей с циклическим сдвигом для хранения одного или нескольких ключей. Каждый ключ в памяти ключей с циклическим сдвигом автоматически прекращает действие спустя определенный временной интервал (например, десять минут). После определенного временного интервала, сервер вводит новый ключ в память ключей с циклическим сдвигом и выводит прекративший действие ключ из памяти ключей с циклическим сдвигом. Число ключей, поддерживаемых в памяти ключей с циклическим сдвигом, и определенный временной интервал, могут быть конфигурированы администратором (например, поддерживаются три ключа и ключи циклически сдвигаются каждые пять минут). Сервер обеспечивает защиту мандата пользователя путем генерации цифровых подписей для мандата пользователя и шифрования мандата пользователя на основе ключей в памяти ключей с циклическим сдвигом.
Страница регистрации с интерфейсом для ввода мандата пользователя представляется на клиентской системе. Мандат пользователя, введенный на клиентской системе, пересылается на сервер. В ответ на прием мандата пользователя сервер генерирует уникальный идентификатор сеанса для клиента. Сервер выводит цифровую подпись для мандата пользователя на основе самого последнего ключа в памяти ключей с циклическим сдвигом и уникального идентификатора сеанса. Сервер затем шифрует цифровую подпись и мандат пользователя на основе ключа шифрования, полученного из самого последнего ключа в памяти ключей с циклическим сдвигом и уникального идентификатора сеанса. Когда зашифрованный мандат возвращается назад к клиенту, ключи из памяти ключей с циклическим сдвигом используются в попытке проверки достоверности мандата. Если ключ из памяти ключей с циклическим сдвигом, использованный первоначально для шифрования мандата пользователя, выведен из памяти ключей с циклическим сдвигом, то клиент переадресуется на страницу регистрации для ввода нового мандата.
Варианты осуществления, входящие в объем настоящего изобретения, включают в себя считываемые компьютером носители для переноса или хранения считываемых компьютером инструкций или структур данных, сохраненных на них. Такие считываемые компьютером носители могут представлять собой любые доступные носители, к которым может иметь доступ универсальная или специализированная компьютерная система. Например, но не в качестве ограничения, такие считываемые компьютером носители могут включать в себя физические носители для хранения данных, такие как RAM (ОЗУ), ROM (ПЗУ), EEPROM (электронно-стираемое программируемое ПЗУ - ЭСППЗУ), CD-ROM (ПЗУ на компакт-дисках) или другие устройства памяти на оптических дисках, на магнитных дисках или других магнитных ЗУ, или любые другие носители записи, которые могут использоваться для переноса или хранения желательных средств программного кода в форме исполняемых компьютером инструкций или структур данных, и доступ к которым может быть осуществлен универсальной или специализированной компьютерной системой.
В данном описании и в последующей формуле изобретения термин «сеть» определяется как один или несколько каналов передачи данных, которые обеспечивают возможность транспортировки электронных данных между компьютерными системами и/или модулями. Когда информация транспортируется или обеспечивается по сети или другому коммуникационному соединению (как проводному, беспроводному, так и комбинации проводных и беспроводных соединений) к компьютерной системе, соединение надлежащим образом рассматривается как считываемая компьютером среда (носитель). Таким образом, любое такое соединение надлежащим образом определяется как считываемый компьютером носитель. Комбинации вышеуказанного должны быть также включены в объем считываемых компьютером сред (носителей). Считываемые компьютером инструкции включают в себя, например, инструкции и данные, которые вызывают выполнение универсальной компьютерной системой или специализированной компьютерной системой определенной функции или группы функций. Исполняемые компьютером инструкции могут представлять собой, например, бинарные инструкции, инструкции промежуточного формата, такие как язык ассемблера или даже исходный код.
В данном описании и в последующей формуле изобретения термин «компьютерная система» определяется как один или несколько модулей программного обеспечения, один или несколько модулей аппаратных средств или их комбинации, которые работают совместно для выполнения операций над электронными данными. Например, определение компьютерной системы включает в себя компоненты аппаратных средств персонального компьютера, а также модули программного обеспечения, такие как операционная система персонального компьютера. Физическая конфигурация модулей не принципиальна. Компьютерная система может включать в себя один или несколько компьютеров, связанных через сеть. Аналогичным образом компьютерная система может включать в себя одиночное физическое устройство (такое как мобильный телефон или персональный цифровой помощник), где внутренние модули (такие, как память и процессор) работают совместно для выполнения операций над электронными данными.
Специалистам в данной области техники должно быть ясно, что изобретение может быть реализовано в сетевых компьютерных средах с множеством типов конфигураций компьютерных систем, включая персональные компьютеры, портативные компьютеры, карманные устройства, мультипроцессорные системы, основанные на микропроцессорах или программируемые бытовые электронные приборы, сетевые ПК, мини-компьютеры, универсальные компьютеры (мэйнфреймы), мобильные телефоны, персональные цифровые помощники (карманные компьютеры для выполнения специальных функций), пейджеры и т.п. Изобретение также может быть реализовано в распределенных системных средах, где локальные и удаленные компьютерные системы, которые связаны (либо проводными линиями передачи данных, либо беспроводными линиями передачи данных, либо линиями, представляющими собой комбинацию проводных и беспроводных линий передачи данных) через сеть и которые выполняют задачи. В распределенной системной среде программные модули могут находиться как в локальных, так и в удаленных устройствах памяти.
Фиг. 1 и последующее обсуждение предназначены для обеспечения краткого обобщенного описания подходящей компьютерной среды, в которой может быть реализовано изобретение. Хотя не требуется, однако изобретение описано в обобщенном контексте исполняемых компьютером инструкций, таких как программные модули, исполняемые компьютерными системами. В общем случае программные модули включают в себя подпрограммы, программы, объекты, компоненты, структуры данных и т.п., которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Исполняемые компьютером инструкции, связанные с ними структуры данных и программные модули представляют примеры средств программного кода для исполнения действий способов, раскрытых в настоящем описании. Как показано на фиг. 1, приведенная для примера система для реализации изобретения включает в себя универсальное вычислительное устройство в форме компьютерной системы 120, включающей в себя блок 121 обработки, системную память 122 и системную шину 123, которая связывает различные системные компоненты, включая системную память 122, с блоком 121 обработки. Блок 121 обработки может исполнять инструкции, предназначенные для исполнения компьютером, обеспечивающие реализацию признаков компьютерной системы 120, включая признаки настоящего изобретения. Системная шина 123 может быть любой из различных типов шинных структур, включая шину памяти или контроллер памяти, шину периферийных устройств, локальную шину, использующую любую из разнообразных шинных архитектур. Системная память включает в себя ПЗУ 124 и ОЗУ 125. Базовая система ввода/вывода (BIOS) 126, содержащая базовые подпрограммы, которые способствуют переносу информации между элементами в компьютерной системе 120, например при запуске, может быть сохранена в ПЗУ 124.
Компьютерная система 120 может также включать в себя накопитель 127 на жестких магнитных дисках для считывания с жесткого магнитного диска 139 и записи на него, накопитель 129 на магнитных дисках для считывания со съемного магнитного диска 129 и записи на него и накопитель 130 на оптических дисках для считывания со съемного оптического диска 131 или записи на оптический диск, такой как, например, ПЗУ-КД (CD-ROM) или иные оптические носители записи. Накопитель 127 на жестких магнитных дисках, накопитель 128 на магнитных дисках и накопитель 130 на оптических дисках соединены с системной шиной 123 посредством интерфейса 132 накопителя на жестких дисках, интерфейса 133 накопителя на магнитных дисках и интерфейса 134 на оптических дисках соответственно. Накопители и связанные с ними считываемые компьютером носители обеспечивают энергонезависимую память исполняемых компьютером инструкций, структур данных, программных модулей и других данных для компьютерной системы 120. Хотя описываемая приведенная для примера среда использует жесткий магнитный диск 139, съемный магнитный диск 129 и съемный оптический диск 131, могут использоваться и другие типы считываемых компьютером носителей для хранения данных, такие как магнитные кассеты, платы флэш-памяти, цифровые многофункциональные диски, картриджи Бернулли, ОЗУ, ПЗУ и т.п.
Средство программного кода, содержащее один или более программных модулей, может быть сохранено на жестком диске 139, магнитном диске 129, оптическом диске 131, ПЗУ 124 или ОЗУ 125, включая операционную систему 135, одну или несколько прикладных программ (приложений) 136, другие программные модули 137 и программные данные 138. Пользователь может вводить команды и информацию в компьютерную систему 120 посредством клавиатуры 140, указательного устройства 142 или других устройств ввода (не показаны), таких как, например, микрофон, джойстик, игровая панель, сканер и т.п. Эти и другие устройства ввода могут быть соединены с блоком 121 обработки через интерфейс 146 ввода/вывода, связанный с системной шиной 123. Интерфейс 146 ввода/вывода логически представляет любой из широкого разнообразия интерфейсов, такой как, например, интерфейс последовательного порта, интерфейс PS/2, интерфейс параллельного порта, интерфейс USB (универсальной последовательной шины), или интерфейс IEEE (Институт инженеров по электротехнике и электронике) 1394 (например, интерфейс FireWire (стандарта высокопроизводительной последовательной шины IEEE 1394)), или даже может логически представлять комбинацию различных интерфейсов.
Монитор 147 или иное устройство отображения также соединено с системной шиной 123 через видеоадаптер 148. Громкоговорители 169 или иное устройство аудиовывода также соединено с системной шиной 123 через интерфейс 149. Другие периферийные устройства вывода (не показаны), например, принтеры, также могут быть подсоединены к компьютерной системе 120. Компьютерная система 120 может быть подсоединена к сети, такой, например, как офисная сеть или компьютерная сеть предприятия, домашняя сеть, интранет и/или Интернет. Компьютерная система 120 может посредством таких сетей обмениваться данными с внешними источниками, такими, например, как удаленные компьютерные системы, удаленные приложения и/или удаленные базы данных.
Компьютерная система 120 включает в себя сетевой интерфейс 153, через который компьютерная система 120 получает данные от внешних источников и/или передает данные к внешним источникам. Как показано на фиг.1, сетевой интерфейс 153 обеспечивает обмен данными с удаленной компьютерной системой 183 посредством линии 151 связи. Сетевой интерфейс 153 может логически представлять один или несколько модулей программного обеспечения и/или аппаратных средств, таких, например, как плата сетевого интерфейса и соответствующий стек NDIS (спецификации интерфейса сетевого драйвера). Линия 151 связи представляет часть сети (например, сегмент сети Ethernet), а удаленная компьютерная система 183 представляет узел сети. Например, удаленная компьютерная система 183 может быть серверной компьютерной системой, которая обеспечивает компьютерной системе 120 доступ на основе Web к ресурсам (например, сообщениям электронной почты). С другой стороны, удаленная компьютерная система 183 может быть клиентской компьютерной системой, которая использует доступ на основе Web для доступа к ресурсам от компьютерной системы 120.
Аналогичным образом компьютерная система 120 включает в себя интерфейс 146 ввода/вывода, через который компьютерная система получает данные от внешних источников и/или передает данные к внешним источникам. Интерфейс 1467 ввода/вывода связан с модемом 154 (например, стандартным модемом, кабельным модемом или модемом цифровой абонентской линией (DSL)) посредством линии 159 связи, посредством которой компьютерная система 120 получает данные от внешних источников и/или передает данные к внешним источникам. Как показано на фиг. 1, интерфейс 146 ввода/вывода и модем 154 обеспечивают обмен данными с удаленной компьютерной системой 193 через линию 152 связи. Линия 152 связи представляет собой часть сети, а удаленная компьютерная система 193 представляет узел сети. Например, удаленная компьютерная система 193 может быть серверной компьютерной системой, которая обеспечивает компьютерной системе 120 доступ на основе Web к ресурсам (например, сообщениям электронной почты). С другой стороны, удаленная компьютерная система 193 может быть клиентской компьютерной системой, которая использует доступ на основе Web для доступа к ресурсам от компьютерной системы 120.
Хотя фиг. 1 представляет подходящую операционную среду для настоящего изобретения, принципы настоящего изобретения могут быть использованы в любой системе, которая способна, при соответствующей модификации, если это необходимо, реализовывать принципы настоящего изобретения. Среда, показанная на фиг. 1, является иллюстративной и ни в коем случае не характеризует собой даже малой части широкого разнообразия сред, в которых могут быть использованы принципы настоящего изобретения.
Модули настоящего изобретения, а также связанные с ними программные данные, могут сохраняться и предоставляться для доступа с любого из считываемых компьютером носителей (сред), связанных с компьютерной системой 120. Например, части таких модулей и части связанных с ними программных данных могут быть включены в операционную систему 135, прикладные программы 136, программные модули 137 и/или программные данные 138 для хранения в системной памяти 122. Если устройство массовой памяти, например жесткий магнитный диск 139, связано с компьютерной системой 120, такие модули и связанные с ними программные данные могут быть также записаны в устройстве массовой памяти. В сетевой среде программные модули, описанные в связи с компьютерной системой 120 или ее частями, могут быть сохранены в удаленных устройствах памяти, таких как системная память и/или устройства массовой памяти, связанные с удаленной компьютерной системой 183 и/или удаленной компьютерной системой 193. Исполнение таких модулей может осуществляться в распределенной среде, как описано выше.
Фиг. 2 иллюстрирует пример сетевой архитектуры 200, которая обеспечивает защиту мандата клиентской стороны, когда клиентская компьютерная система запрашивает доступ к ресурсу на сервере. Клиентская компьютерная система 201 и серверная компьютерная система 211 могут быть соединены с общей сетью, такой, например, как локальная сеть (LAN), глобальная сеть (WAN) или даже с Интернет. Клиентская компьютерная система 201 включает в себя браузер 202, который может быть использован для запроса на основе Web доступа к ресурсам и представления полученных ресурсов на клиентской компьютерной системе 201. Cookies (идентификационные файлы, сохраняемые на клиентской системе) 203 могут включать в себя один или более таких файлов cookies, которые сохраняют части данных, ранее полученных от серверной компьютерной системы. Данные в файлах cookies могут быть посланы на соответствующую серверную компьютерную систему для указания персонализированной информации или предпочтений серверной компьютерной системе и/или для освобождения пользователя от необходимости вручную вводить часть сохраненной информации.
Серверная компьютерная система 211 включает в себя сервер 212 электронной почты, который обеспечивает доступ к ресурсам электронной почты, таким как, например, сообщения электронной почты, информация адресной книги, информация календаря. После авторизации для доступа к ресурсам электронной почты от пользователя может потребоваться ввести мандат на сервер 212 электронной почты, чтобы быть аутентифицированным на сервере 212 электронной почты. Сервер 212 электронной почты может сравнить полученный мандат с авторизованным мандатом в базе 213 данных мандатов для определения того, может ли быть удовлетворен запрос доступа к ресурсам электронной почты. Если пользователь авторизован, то сервер 212 электронной почты может возвратить запрошенные ресурсы электронной почты в запрашивающую клиентскую компьютерную систему. Если пользователь не авторизован, то сервер 212 электронной почты может возвратить сообщение отсутствия авторизации (например, сообщение протокола НТТР со статусом 401 кода «не авторизован») на запрашивающую клиентскую компьютерную систему.
Серверная компьютерная система 211 также включает в себя модуль 214 генерации ключей. Модуль 214 генерации ключей может генерировать и вводить новые ключи в состав циклически сменяемых ключей 220 и может выводить ключи, срок действия которых истек, из циклически сменяемых ключей 220. Модуль 214 генерации ключей может быть конфигурирован для поддержания одного или нескольких запоминающих устройств циклически сменяемых ключей. Например, в сетевой архитектуре 200 модуль 214 генерации ключей поддерживает недоверительную память 221 циклически сменяемых ключей и закрытую память 231 циклически сменяемых ключей.
Конкретный интервал времени, за который ключи циклически сменяются, является конфигурируемым. То есть модуль 214 генерации ключей может быть конфигурирован так, чтобы вводить в цикл смены вновь генерированных ключей и удалять из памяти циклически сменяемых ключей тех из них, срок действия которых истек, с определенными интервалами времени. Например, модуль 214 генерации ключей может вводить новый ключ и удалять устаревший ключ из закрытой памяти 231 циклически сменяемых ключей каждые 10 минут. Число ключей, поддерживаемых в памяти циклически сменяемых ключей, также является конфигурируемым. То есть модуль 214 генерации ключей может также конфигурироваться для поддержания определенного количества ключей в памяти циклически сменяемых ключей. Например, модуль 214 генерации ключей может быть конфигурирован для поддержания 3 ключей в недоверительной памяти 221 циклически сменяемых ключей.
Число поддерживаемых ключей и определенные интервалы могут различаться для блоков памяти циклически сменяемых ключей. Например, модуль 214 генерации ключей может поддерживать 3 ключа с определенным интервалом циклической смены, равным 5 минутам, в недоверительной памяти 221 ключей и четыре ключа с определенным интервалом циклической смены, равным 1 часу, в закрытой памяти 231 ключей. В зависимости от свойств, связанных с клиентской компьютерной системой, различные блоки памяти ключей могут использоваться для реализации принципов настоящего изобретения. Стрелки, показанные под ключами в памяти циклически сменяемых ключей, указывают на то, что ключи перемещаются вниз при добавлении нового ключа до тех пор, пока ключ с истекшим сроком не будет выведен из памяти циклически сменяемых ключей. Например, когда новый ключ добавляется в закрытую память циклически сменяемых ключей, ключ 232 будет перемещен в позицию ключа 233.
Серверная компьютерная система 211 также включает в себя страницу 217 регистрации. Страница 217 регистрации может представлять собой Web-страницу (например, страницу из ASP (активных серверных страниц)), которая обеспечивает интерфейс для представления пользовательского мандата и выбора свойств информационного обмена, связанных с клиентской компьютерной системой. В ответ на доступ клиентской компьютерной системы к унифицированному указателю информационного ресурса (URL), соответствующему странице 217 регистрации, серверная компьютерная система 211 может послать страницу 217 регистрации на клиентскую компьютерную систему. Браузер клиентской компьютерной системы может представлять страницу 217 регистрации на клиентской компьютерной системе. Пользовательский мандат и варианты выбора коммуникационных свойств, представленные на странице 217 регистрации, могут быть посланы в серверную компьютерную систему 211.
Серверная компьютерная система 211 также включает в себя коммуникационный фильтр 243. Коммуникационный фильтр 243 может перехватывать передачи протокола НТТР такие, как, например, запросы, ответы и сообщения, которые передаются на серверную компьютерную систему 211 и от нее. Коммуникационный фильтр 243 может обращаться к информации состояния клиентской системы, включенной в зашифрованные cookies (идентификационные файлы, сохраненные на клиентской системе), для определения того, следует ли изменить передачу протокола НТТР между серверной компьютерной системой 211 и клиентской компьютерной системой (например, путем модифицирования заголовков протокола НТТР). Коммуникационный фильтр 243 может также реализовывать криптографические алгоритмы (с использованием ключей из памяти циклически сменяемых ключей) для дешифрирования и подтверждения достоверности пользовательского мандата.
Серверная компьютерная система 211 также включает в себя средство 216 проверки достоверности элемента регистрации. Средство 216 проверки достоверности элемента регистрации может принимать представленный пользовательский мандат, введенный на странице 217 регистрации, и реализовывать криптографический алгоритм (с использованием ключей из памяти циклически сменяемых ключей) для цифровой подписи и шифрования переданного пользовательского мандата. Средство 216 проверки достоверности элемента регистрации может также генерировать уникальные идентификаторы сеанса (например, GUID (глобально уникальные идентификаторы)) для клиентских компьютерных систем, которые запрашивают доступ на основе Web к ресурсам серверной компьютерной системы 211. Средство 216 проверки достоверности элемента регистрации может послать уникальные идентификаторы сеанса и зашифрованную информацию, включая пользовательский мандат и зависящие от времени цифровые подписи, на клиентские компьютерные системы. Например, средство 216 проверки достоверности элемента регистрации может послать уникальные идентификаторы сеанса и зашифрованную информацию на клиентскую компьютерную систему 201 для сохранения в идентификационных файлах (cookies) 203.
На фиг. 3 представлен пример блок-схемы способа 300 обеспечения защищенности мандата со стороны клиентской системы, когда клиент запрашивает доступ к ресурсу на сервере в соответствии с настоящим изобретением. Способ 300 описан ниже относительно клиентской компьютерной системы и серверной компьютерной системы, представленных на фиг. 2А. Способ 300 включает в себя действие передачи первого запроса к серверу (действие 301). Действие 301 может включать в себя передачу клиентской компьютерной системой первого запроса на доступ на основе Web к ресурсу (например, к сообщению электронной почты) на сервер.
Например, клиентская компьютерная система 201 может послать запрос 251, который включает URI 267 почтового сервера, на серверную компьютерную систему 211. URI 267 почтового сервера может представлять собой URI, соответствующий серверу 212 электронной почты. То есть пользователи, которые желают получить доступ к ресурсам электронной почты, поддерживаемым сервером электронной почты, могут пытаться получить доступ на основе Web к ресурсам электронной почты путем доступа к URI почтового сервера 267. Соответственно, может быть, что пользователь на клиентской компьютерной системе 201 вводит команды в браузер 202 для того, чтобы обеспечить посылку клиентской компьютерной системой 201 запроса 251.
Способ 300 включает в себя действие приема первого запроса от клиентской системы (действие 306). Действие 306 может включать в себя прием серверной компьютерной системой первого запроса на доступ на основе Web к ресурсу (например, к сообщению электронной почты) на сервере. Например, серверная компьютерная система 211 может принять запрос 251, который включает в себя URI 267 почтового сервера, от клиентской компьютерной системы 201. Как показано пунктирной линией, проходящей через коммуникационный фильтр 243, коммуникационный фильтр 243 может быть конфигурирован для обеспечения прохождения запроса 251 без изменения запроса 251. Соответственно, запрос 251 может направляться в сервер 212 электронной почты без модифицирования.
Способ 300 включает в себя функциональный ориентированный на результат этап обеспечения защиты мандата клиентской стороны (этап 311). Этап 311 может включать в себя любые соответствующие действия для обеспечения защиты мандата клиентской стороны. Однако в показанном на фиг. 3 примере этап 311 включает в себя соответствующее действие переадресации клиентской системы на страницу регистрации в ответ на первый запрос (действие 307). Действие 307 может включать в себя переадресацию серверной компьютерной системой клиентской компьютерной системы на страницу регистрации в ответ на первый запрос.
В ответ на запрос 251 сервер 212 электронной почты может послать ответ 252, который включает в себя указатель 272 «не авторизован». Ответ 252 может представлять собой сообщение протокола НТТР с кодом 401 статуса «не авторизован», возвращенным в результате запроса 251, который не включал в себя пользовательский мандат. Коммуникационный фильтр 243 может быть конфигурирован для перехвата сообщений, которые включают в себя указатели «не авторизован». Соответственно, коммуникационный фильтр 243 может перехватить сообщение 252.
Коммуникационный фильтр 243 может модифицировать содержимое ответа 252 (например, путем изменения заголовка протокола НТТР) для обеспечения переадресации клиентской компьютерной системы 201 на страницу регистрации, которая обеспечивает интерфейс для ввода пользовательского мандата. Например, коммуникационный фильтр 243 может удалить указатель 272 «не авторизован» из ответа 252 и ввести URI 263 страницы регистрации и указатель 271 переадресации в ответ 252, формируя в результате ответ 252А. Ответ 252А может представлять собой сообщение протокола НТТР с кодом 302 статуса «обнаружен». URI 263 страницы регистрации может представлять собой URI, используемый для доступа к странице 217 регистрации. Соответственно ответ 252А может указывать клиентской компьютерной системе 201, что запрошенный ресурс (например, сообщение электронной почты) вместо этого доступен на URI 263 страницы регистрации.
Способ 300 включает в себя действие переадресации на страницу регистрации (действие 302). Действие 302 может включать в себя переадресацию клиентской компьютерной системы на страницу регистрации, которая обеспечивает интерфейс для приема пользовательского мандата. Например, клиентская компьютерная система 201 может быть переадресована на страницу 217 регистрации. В ответ на прием ответа 252А клиентская компьютерная система 201 может послать запрос 257, который включает в себя URI 263 страницы регистрации, на серверную компьютерную систему 211. В ответ на запрос 257 серверная компьютерная система 211 сможет послать ответ 258, который включает в себя страницу 217 регистрации, на клиентскую компьютерную систему 201. Страница регистрации может представлять собой Web-страницу, такую, например, как страница из активных серверных страниц (ASP).
Браузер 202 может представить страницу 217 регистрации на клиентской компьютерной системе 201. Перейдя от фиг. 3 к фиг. 6, можно видеть, что фиг. 6 иллюстрирует пример страницы регистрации, которая может принимать мандат и варианты выбора коммуникационных свойств в соответствии с принципами настоящего изобретения. Страница 217 регистрации может быть подобна странице 600 регистрации. Страница 600 регистрации включает в себя поле 606, которое может принимать идентификатор пользователя, и поле 607, которое может принимать соответствующий пароль.
Переключатель 601 может быть использован для приема варианта выбора коммуникационного свойства, указывающего, что браузер клиентской стороны является «клиентом повышенного уровня». Переключатель 602 может использоваться для приема варианта выбора коммуникационного свойства, указывающего, что браузер клиентской стороны является «клиентом пониженного уровня». Клиент повышенного уровня может включать в себя функциональные возможности для выполнения усовершенствованной обработки, такой, например, как исполнение скриптов или представление мультимедийного выхода. С другой стороны, клиент пониженного уровня может не включать в себя функциональные возможности для выполнения усовершенствованной обработки. Соответственно степень полноты содержания, возвращаемого от сервера, может быть соответствующим образом подстроена в зависимости от возможностей браузера клиентской стороны. Когда клиент повышенного уровня соединяется с сервером через соединение с уменьшенной шириной полосы и/или высокой задержкой (например, соединение по телефонной линии), выбор клиента пониженного уровня может уменьшить объем содержания, возвращаемого от сервера.
Переключатель 603 может использоваться для приема варианта выбора коммуникационного свойства, указывающего, что браузер клиентской стороны находится в «недоверительной клиентской компьютерной системе». Переключатель 604 может использоваться для приема варианта выбора коммуникационного свойства, указывающего, что браузер клиентской стороны находится в «частной клиентской компьютерной системе». Частная клиентская компьютерная система может представлять собой домашнюю или корпоративную клиентскую компьютерную систему, которая имеет ограниченный публичный доступ (или вообще не имеет его). Недоверительная клиентская компьютерная система может представлять собой клиентскую компьютерную систему, которая имеет расширенный публичный доступ, такой, например, как в случае Интернет-киоска в отеле или аэропорту. Соответственно, защищенность, связанная с информационным содержанием, возвращаемым от сервера, может быть соответствующим образом настроена в зависимости от степени доверительности клиентской компьютерной системы. Переключатель 608 может быть выбран для посылки введенного пользовательского мандата и выбранных коммуникационных свойств на серверную компьютерную систему.
Переходя от фиг. 6 к фиг. 5, можно видеть, что фиг. 5 иллюстрирует пример блок-схемы способа 500 определения свойств передачи, связанных с клиентом, в соответствии с принципами настоящего изобретения. Способ 500 описан ниже относительно клиентской компьютерной системы и серверной компьютерной системы, показанных на сетевой архитектуре 200. Способ 500 включает в себя действие передачи страницы регистрации клиенту (действие 501). Действие 501 может включать в себя передачу серверной компьютерной системой страницы регистрации, которая включает в себя интерфейс для выбора одного или более коммуникационных свойств, которые могут изменять то, каким образом должны обрабатываться сообщения протокола НТТР. Например, серверная компьютерная система 211 может посылать страницу 600 регистрации (или подобную страницу регистрации) к клиентской компьютерной системе 201.
Способ 500 включает в себя действие приема страницы регистрации от сервера (действие 505). Действие 505 может включать прием клиентской компьютерной системой страницы регистрации, которая включает в себя интерфейс для выбора одного или нескольких коммуникационных свойств, которые могут изменять то, каким образом сервер обрабатывает сообщения протокола НТТР. Например, клиентская компьютерная система 201 может принимать страницу 600 регистрации (или подобную страницу регистрации). Способ 500 включает в себя действие представления страницы регистрации в клиентской системе (действие 506). Действие 506 может включать в себя представление браузером клиентской компьютерной системы страницы регистрации на клиентской компьютерной системе. Например, браузер 202 может представлять страницу 600 регистрации (или подобную страницу регистрации) на клиентской компьютерной системе 201.
Способ 500 включает в себя действие приема вариантов выбора по меньшей мере одного из одного или нескольких коммуникационных свойств (действие 507). Действие 507 может включать в себя прием клиентской компьютерной системой вариантов выбора по меньшей мере одного из одного или нескольких коммуникационных свойств на странице регистрации. Например, пользователь на клиентской компьютерной системе 201 может манипулировать устройством ввода (например, клавиатурой и/или мышью) для ввода вариантов выбора коммуникационных свойств в страницу 600 регистрации. Страница 600 регистрации может принимать введенные пользователем варианты выбора. Например, страница 600 регистрации может принимать введенные пользователем варианты выбора либо переключателя 601, либо переключателя 602 и введенные пользователем варианты выбора либо переключателя 603, либо переключателя 604 (возможно, вместе с приемом введенных пользователем данных мандата в поля 606 и 607).
Способ 500 включает в себя действие передачи вариантов выбора коммуникационных свойств к коммуникационному фильтру на сервере (действие 508). Действие 508 может включать в себя пересылку клиентской компьютерной системой вариантов выбора коммуникационных свойств в коммуникационный фильтр на серверной компьютерной системе. Например, клиентская компьютерная система 201 может послать варианты выбора коммуникационных свойств (например, вместе с введенными пользователем данными мандата) на серверную компьютерную систему. Способ 500 включает в себя действие приема по меньшей мере одного варианта выбора коммуникационного свойства от клиентской системы (действие 502). Действие 502 может включать в себя прием серверной компьютерной системой по меньшей мере одного из по меньшей мере одного или нескольких выбираемых вариантов выбора коммуникационных свойств, которые могут быть выбраны со страницы регистрации. Например, коммуникационный фильтр 243 может принять один или несколько вариантов выбора коммуникационных свойств (например, выбранных со страницы 600 регистрации) от клиентской компьютерной системы 201.
Способ 500 включает в себя действие запрашивания клиентской системы для определения того, поддерживается ли принятый по меньшей мере один вариант выбора коммуникационных свойств, а также для идентификации других релевантных коммуникационных свойств, поддерживаемых клиентской системой (действие 503). Действие 503 может включать в себя запрашивание серверной компьютерной системой клиентской компьютерной системы для определения того, поддерживаются ли принятые варианты выбора коммуникационных свойств, и для идентификации других релевантных коммуникационных свойств, поддерживаемых клиентской системой. Например, серверная компьютерная система может определить возможности клиентской компьютерной системы с использованием заголовка протокола НТТР агента пользователя и априорных знаний о клиентской компьютерной системе. Дополнительные возможности клиентской компьютерной системы могут быть определены посредством страницы регистрации и из скриптов (например, скриптов на языке Java), которые исполняются внутри страницы регистрации на клиентской компьютерной системе.
Альтернативно запрашивание клиентской компьютерной системы может включать в себя посылку запросов в клиентскую компьютерную систему, которые вызывают предоставление клиентской компьютерной системой информации конфигурации серверной компьютерной системе. Например, серверная компьютерная система 211 может посылать запросы клиентской компьютерной системе 201, запрашивающие конфигурацию браузера 202. В ответ браузер 202 может указать информацию конфигурации, например номер версии, и то, поддерживает ли браузер 202 сжатие по протоколу НТТР, например сжатие gzip. На основе номера версии серверная компьютерная система 211 может определить, был ли корректным выбор варианта «клиент повышенного уровня» на странице 600 регистрации. Например, серверная компьютерная система может иметь возможность определить, что версия браузера 202 не поддерживает скрипты. Таким образом, даже если был выбран вариант «клиент повышенного уровня», серверная компьютерная система может обеспечить упрощенное информационное содержание для клиентской компьютерной системы 201.
Упрощение информационного содержания может включать в себя сокращение объема содержания, доставляемого клиентской компьютерной системе. Например, в ответ на запрос клиентской системы пониженного уровня о предоставлении консультативной информации серверная компьютерная система может возвратить сокращенную (более лаконичную консультационную информацию). С другой стороны, в ответ на запрос консультационной информации от клиентской системы повышенного уровня серверная компьютерная система может возвратить более расширенную консультационную информацию, например, включающую скрипты поиска и другие расширенные функциональные возможности. Серверная компьютерная система может также изменять доставляемое информационное содержание на основе доверительности клиентской компьютерной системы. Например, серверная компьютерная система может обеспечить консультационную информацию о том, как получить доступ к уязвимой (секретной) информации, частной клиентской компьютерной системе, но не может предоставить ту же самую информацию для недоверительной клиентской компьютерной системы.
Серверная компьютерная система 211 может тестировать браузер 202 для проверки того, что заявленные характеристики поддерживаются надлежащим образом. Например, если браузер 202 указывает на поддержку сжатия gzip, серверная компьютерная система 211 может послать сжатое в режиме gzip содержание на клиентскую компьютерную систему 201 для определения того, обрабатывает ли браузер 202 gzip-сжатое содержание надлежащим образом. Клиентская компьютерная система 201 может конфигурировать соответствующий заголовок запроса, указывая на поддержку gzip-сжатия. Клиентская компьютерная система 201 может включать соответствующий заголовок запроса в клиентский запрос, который посылается к серверной компьютерной системе 211 и принимается ею. В ответ серверная компьютерная система 211 может запросить клиентскую компьютерную систему 201, чтобы определить, соответствующим ли образом клиентская компьютерная система 201 кэширует сжатое в режиме gzip содержание и обрабатывает сжатое в режиме gzip содержание таким образом, что не оказывается отрицательного влияния на защищенность и целостность приложения на основе Web.
Способ 500 включает в себя действие конфигурирования коммуникационного фильтра в соответствии с выбранными и идентифицированными коммуникационными свойствами (действие 504). Действие 504 может включать в себя конфигурирование серверной компьютерной системой коммуникационного фильтра для обработки информационного обмена протокола НТТР с клиентской системой в соответствии с выбранными коммуникационными свойствами и идентифицированными другими релевантными свойствами, поддерживаемыми клиентской системой. Например, серверная компьютерная система 211 может конфигурировать коммуникационный фильтр 243 для обработки информационного обмена протокола НТТР с клиентской компьютерной системой 201 в соответствии с вариантами выбора коммуникационных свойств (например, клиентской компьютерной системы «повышенного уровня» и «недоверительной клиентской системы») и идентифицированными другими релевантными коммуникационными свойствами (например, поддержка информационного обмена протокола НТТР) браузера 202.
Когда сообщение протокола НТТР должно быть послано от серверной компьютерной системы 211 к клиентской компьютерной системе 201, коммуникационный фильтр 243 может изменить заголовки сообщения протокола НТТР и содержание сообщения протокола НТТР для обеспечения того, чтобы информационное содержание соответствовало коммуникационным свойствам для клиентской компьютерной системы 201. Например, если сервер 212 электронной почты посылает сообщение с несжатой информацией электронной почты на клиентскую компьютерную систему 201, коммуникационный фильтр 243 может перехватить сообщение, сжать в режиме gzip его содержание и изменить заголовки сообщения, чтобы указать на то, что информация электронной почты сжата в режиме gzip. Альтернативно, другие модули серверной компьютерной системы, такие, например, как модули сервера информации Интернет (IIS), могут реализовывать zip-сжатие. Соответственно, содержание может быть представлено на клиентской компьютерной системе таким способом, который наилучшим образом использует возможности клиентской компьютерной системы и в соответствии с желаниями пользователя.
Когда серверная компьютерная система принимает вариант выбора, указывающий, что браузер клиентской стороны соответствует «частной клиентской компьютерной системе», то для обеспечения защиты пользовательского мандата может быть использована закрытая память циклически сменяемых ключей, такая как закрытая память 231 ключей. С другой стороны, когда серверная компьютерная система 211 получает вариант выбора, указывающий, что браузер клиентской стороны является «недоверительной клиентской компьютерной системой», то для защиты пользовательского мандата может использоваться недоверительная память 221 циклически сменяемых ключей.
Согласно фиг. 3 способ 300 включает в себя действие использования страницы регистрации для представления мандата на сервер (действие 303). Действие 303 может включать в себя использование клиентской компьютерной системой страницы регистрации для представления мандата на серверную компьютерную систему. Например, клиентская компьютерная система 201 может использовать страницу 217 регистрации для представления мандата (возможно, вместе с вариантами выбора коммуникационных свойств) на серверную компьютерную систему 211. Пользовательский мандат и варианты выбора коммуникационных свойств могут быть включены в качестве элементов регистрации в почтовое сообщение, которое посылается средству проверки достоверности формата элементов регистрации. Например, клиентская компьютерная система 201 может послать почтовое сообщение 254, которое включает в себя элементы 273 регистрации, на серверную компьютерную систему.
Способ 300 включает в себя действие приема пользовательского мандата, который был представлен на странице регистрации (действие 308). Действие 308 может включать в себя прием серверной компьютерной системой пользовательского мандата, который был представлен на странице регистрации. Например, серверная компьютерная система 211 может принимать пользовательский мандат (возможно, вместе с вариантами выбора коммуникационных свойств) от клиентской компьютерной системы 201. Мандат и варианты выбора коммуникационных свойств могут быть приняты как элементы регистрации в почтовом сообщении. Например, серверная компьютерная система 211 может принять почтовое сообщение 254, которое включает в себя элементы 273 регистрации, от клиентской компьютерной системы 201. Как показано пунктирной линией через коммуникационный фильтр 243, коммуникационный фильтр 243 может быть конфигурирован для обеспечения возможности прохождения почтового сообщения 254 без изменения этого почтового сообщения 254. Соответственно, почтовое сообщение 254 может направляться в средство 216 проверки достоверности элементов регистрации без модифицирования. Если потребуется, то между клиентской компьютерной системой и серверной компьютерной системой может быть установлено соединение с взаимной аутентификацией, например с использованием защиты транспортного уровня (TLS) или уровня защищенных разъемов (SSL), для снижения вероятности враждебных процессов или пользовательского анализа пакетов и для снижения вероятности атак посторонних пользователей.
Средство 216 проверки достоверности элементов регистрации может также генерировать уникальный идентификатор, такой как, например, глобально уникальный идентификатор (GUID) для клиентской компьютерной системы 201. Средство 216 проверки достоверности элементов регистрации может использовать цифровую подпись и алгоритмы шифрования для защищенного приема пользовательского мандата (например, включенного в элементы 273 регистрации). Например средство 216 проверки достоверности элементов регистрации может генерировать цифровую подпись, используемую для последующей проверки достоверности принятого пользовательского мандата. Средство 216 проверки достоверности элементов регистрации может получить ключ подписи, который может быть использован для заверки данных цифровой подписью путем хеширования (например, с использованием алгоритмов хеширования SHA1 или MD-5) комбинации самого последнего ключа в памяти циклически сменяемых ключей, генерируемого уникального идентификатора и первой постоянной последовательности. В некоторых вариантах осуществления цифровая подпись представляется как код аутентификации хешированного сообщения. Соответственно, ключ подписи может быть получен по формуле
KSIG=SHA-1(KMOST CURRENT ROTATING, GUID, HMACKeyString).
В формуле (1) KMOST CURRENT ROTATING представляет самый последний ключ в соответствующей памяти циклически сменяемых ключей. Например, если браузер 202 соответствует «частной клиентской компьютерной системе» (например, как это указано в варианте выбора коммуникационных свойств), KMOST CURRENT ROTATING представляет самый последний ключ в закрытой памяти 231 циклически сменяемых ключей (например, ключ 232). GUID представляет уникальный идентификатор, соответствующий клиентской компьютерной системе 201. HMACKeyString представляет постоянную строку текста. Из KSIG может быть генерирован код аутентификации хешированного сообщения в соответствии с формулой
Цифровая подпись =HMAC(KSIG,(GUID,{username:password},Flags)).
В формуле (2) HMAC представляет алгоритм кода аутентификации хешированного сообщения такой, например, как описано в Запросе комментариев (RFC) 2104. Часть формулы (2) (GUID,{username:password},Flags) представляет, что GUID, пользовательский мандат и флаги, представляющие варианты выбора коммуникационных свойств, включены в качестве текстового ввода в алгоритм кода аутентификации хешированного сообщения. Если требуется, пользовательский мандат может быть преобразован в текстовый формат (например, путем base64 кодирования пользовательского мандата) для совместимости с алгоритмом кода аутентификации хешированного сообщения. Хотя алгоритм описан в терминах кода аутентификации хешированного сообщения, однако используемый для генерации цифровой подписи алгоритм не принципиален, и по существу может использоваться любая цифровая подпись, дайджест (комбинация) или алгоритм кода аутентификации.
Средство 216 проверки достоверности элементов регистрации может также получить ключ шифрования, который может быть использован для шифрования данных, путем хеширования комбинации самого последнего ключа в памяти циклически сменяемых ключей, уникального идентификатора и второй постоянной последовательности. Соответственно ключ шифрования может быть получен в соответствии с формулой
KENC=SHA-1(KMOST CURRENT ROTATING, GUID, EncryptKeyString).
В формуле (3) KMOST CURRENT ROTATING представляет самый последний ключ в памяти циклически сменяемых ключей, который был использован при генерации ключа подписи. Таким образом, если ключ 232 был использован для генерации KSIG, то ключ 232 может также использоваться для генерации KENC. GUID представляет уникальный идентификатор, соответствующий клиентской компьютерной системе 201. EncryptKeyString представляет постоянную строку текста, которая отличается от HMACKeyString. Соответственно зашифрованная информация может генерироваться в соответствии с уравнением
Зашифрованная информация = KENC[Цифровая подпись, {username: password}, Flags].
В формуле (4) Цифровая подпись представляет Цифровую подпись, генерируемую по формуле (2), {username: password} представляет пользовательский мандат и Flags представляет варианты выбора коммуникационных свойств.
Этап 311 включает в себя соответствующее действие посылки зашифрованной информации, которая представляет по меньшей мере часть пользовательского мандата и зависящую от времени подпись (действие 309). Действие 309 может включать передачу серверной компьютерной системой зашифрованной информации, которая представляет по меньшей мере часть пользовательского мандата и зависящую от времени подпись, на клиентскую компьютерную систему. Например, средство 216 проверки достоверности элемента регистрации может послать сообщение 255, которое включает в себя GUID 274 и зашифрованный мандат 275, на клиентскую компьютерную систему 201. Как показано пунктирной линией через коммуникационный фильтр 243, коммуникационный фильтр 243 может быть конфигурирован для обеспечения возможности прохождения сообщения 255 без изменения этого сообщения 255. Соответственно сообщение 255 может направляться на клиентскую компьютерную систему 201 без изменения.
Способ 300 включает в себя действие приема зашифрованной информации, которая представляет по меньшей мере часть пользовательского мандата и зависящую от времени подпись (действие 304). Действие 304 может включать в себя прием клиентской компьютерной системой зашифрованной информации, которая представляет по меньшей мере часть пользовательского мандата и зависящую от времени подпись, от серверной компьютерной системы. Например, клиентская компьютерная система 201 может получить сообщение 255, которое включает в себя GUID 274 и зашифрованный мандат 275 от серверной компьютерной системы 211. Сообщение 255 может быть конфигурировано для обеспечения сохранения в клиентской компьютерной системе 201 GUID 274 и зашифрованного мандата 275 в cookies (идентификационных файлах, сохраняемых в клиентской системе) 203. Например, сообщение 255 может быть конфигурировано следующим образом:
Set-Cookie:sessionid={GUID};path=/
Set-Cookie:creddata={Encrypted Information};path=/
Способ 300 включает в себя действие передачи второго запроса, который включает в себя зашифрованную информацию (действие 305). Действие 305 может включать в себя передачу клиентской компьютерной системой второго запроса доступа к ресурсу на основе Web (например, сообщению электронной почты, запрошенному в первом запросе). Например, клиентская компьютерная система 201 может послать запрос 256, который включает в себя URI 267, GUID 274 и зашифрованный мандат 275, на серверную компьютерную систему 211. Способ 300 включает в себя действие приема второго запроса, который содержит зашифрованную информацию (действие 310). Действие 310 может включать в себя прием серверной компьютерной системой второго запроса на доступ к ресурсу на основе Web (например, сообщению электронной почты, запрошенному в первом запросе). Например, серверная компьютерная система 211 может принять запрос 256, который включает в себя URI 267 почтового сервера, GUID 274 и зашифрованный мандат 275, от клиентской компьютерной системы 201.
В некоторых вариантах осуществления клиентская компьютерная система уже хранит соответствующие cookies (идентификационные файлы) с GUID и зашифрованной информацией в памяти браузера. Сохраненные GUID и зашифрованная информация могут быть использованы при запросе доступа к ресурсу на основе Web (например, к данным электронной почты) на сервере. На фиг. 2В иллюстрируется пример сетевой архитектуры, которая обеспечивает использование защищенного мандата клиентской стороны для доступа к ресурсу на сервере в соответствии с настоящим изобретением. На фиг. 4 иллюстрируется пример блок-схемы способа 400 использования защищенного мандата клиентской стороны для доступа к ресурсу на сервере в соответствии с настоящим изобретением. Способ 400 описан по отношению к клиентской компьютерной системе и серверной компьютерной системе, изображенным на фиг. 2В.
Способ 400 включает в себя действие передачи запроса, который включает в себя идентификатор сеанса и зашифрованный пользовательский мандат, на доступ к ресурсу на основе Web на сервере (действие 401). Действие 401 может включать в себя передачу клиентской компьютерной системой запроса на доступ к ресурсу на основе Web на серверной компьютерной системе. Например, клиентская компьютерная система 201 может послать запрос 291, который включает в себя URI 267 почтового сервера, GUID 274 и зашифрованный мандат 275, на серверную компьютерную систему 211. URI 267 почтового сервера представляет собой URI, который обеспечивает доступ к ресурсам электронной почты, управляемым сервером 212 электронной почты. GUID 274 представляет уникальный идентификатор сеанса, который ранее был послан от серверной компьютерной системы 211 к клиентской компьютерной системе 201. Зашифрованный мандат 275 представляет зашифрованный пользовательский мандат и зависящую от времени подпись, которые ранее были посланы от серверной компьютерной системы 211 на клиентскую компьютерную систему 201. Зашифрованный мандат 275 может генерироваться из ключа в соответствующей памяти циклически сменяемых ключей.
Способ 400 включает в себя действие приема запроса, который включает в себя идентификатор сеанса и зашифрованный пользовательский мандат, для доступа к ресурсу на основе Web на сервере (действие 404). Действие 404 может включать в себя прием серверной компьютерной системой запроса на доступ к ресурсу на основе Web на серверной компьютерной системе. Например, серверная компьютерная система 211 может принять запрос 291, который включает в себя URI 267 почтового сервера, GUID 274 и зашифрованный мандат 275, от клиентской компьютерной системы 201.
Способ 400 включает в себя действие попытки проверки достоверности зашифрованного пользовательского мандата с использованием самого последнего ключа в памяти циклически сменяемых ключей (действие 405). Действие 405 может включать в себя попытку проверки достоверной серверной компьютерной системой по меньшей мере части пользовательского мандата с использованием самого последнего ключа в памяти циклически сменяемых ключей. Например, если указывается, что браузер 202 находится на частной клиентской компьютерной системе, то серверная компьютерная система может попытаться проверить достоверность зашифрованного мандата 275 с использованием ключа 232. С другой стороны, если указывается, что браузер 202 находится на недоверительной клиентской компьютерной системе, то серверная компьютерная система может попытаться проверить достоверность зашифрованного мандата 275 с использованием ключа 222. Средство 237 проверки достоверности мандата может получить ключ дешифрирования, который может использоваться для дешифрирования данных, путем хеширования комбинации из самого последнего ключа из соответствующей памяти циклически сменяемых ключей, уникального идентификатора сеанса и второй постоянной последовательности (используемой при получении ключа шифрования). Соответственно ключ дешифрирования может быть получен в соответствии с формулой
KDCR=SHA-1(KMOST CURRENT ROTATING, GUID, EncryptKeyString).
В формуле (5) KMOST CURRENT ROTATING представляет самый последний ключ в соответствующей памяти циклически сменяемых ключей (например, ключ 232 или 222). GUID представляет уникальный идентификатор, соответствующий клиентской компьютерной системе 201. EncryptKeyString представляет постоянную строку текста, используемую при получении KENC. Соответственно, средство 237 проверки достоверности мандата может дешифрировать зашифрованную информацию для получения цифровой подписи, пользовательского мандата и флагов, представляющих варианты выбора коммуникационных свойств, в соответствии с формулой
Цифровая подпись,{username:password},Flags =KDCR,[Зашифрованная информация].
Средство 237 проверки достоверности мандата может получить ключ проверки достоверности, который может быть использован для генерирования цифровой подписи проверки достоверности, путем хеширования комбинации самого последнего ключа в памяти циклически сменяемых ключей, уникального идентификатора и первой постоянной последовательности. В некоторых вариантах осуществления цифровая подпись проверки достоверности представляется как код аутентификации хешированного сообщения. Соответственно ключ проверки достоверности может быть получен в соответствии с формулой
KVAL=SHA-1(KMOST CURRENT ROTATING, GUID, HMACKeyString).
В формуле (7) KMOST CURRENT ROTATING представляет самый последний ключ в соответствующей памяти циклически сменяемых ключей. GUID представляет уникальный идентификатор, соответствующий клиентской компьютерной системе 201. HMACKeyString представляет постоянную строку текста, используемую при получении ключа подписи. Из KVAL и с использованием полученных пользовательского мандата и флагов из формулы (6) код аутентификации хешированного сообщения может генерироваться в соответствии с формулой
Проверка Цифровой подписи =HMAC(KVAL(GUID,{username: password}, Flags)).
В формуле (8) HMAC представляет алгоритм кода аутентификации хешированного сообщения. Часть (GUID {username: password}, Flags) формулы (8) представляет, что GUID, пользовательский мандат и Flags, представляющие варианты выбора коммуникационных свойств, включены как текстовый ввод в алгоритм кода аутентификации хешированного сообщения. Хотя алгоритм описан в терминах кода аутентификации хешированного сообщения, однако алгоритм, используемый для генерации цифровой подписи проверки достоверности, не является принципиальным, и по существу может использоваться любая цифровая подпись, дайджест или алгоритм кода аутентификации.
Если цифровая подпись проверки достоверности равна цифровой подписи, то пользовательский мандат, представленный в зашифрованном мандате 275, подтверждается. Соответственно, коммуникационный фильтр 243 образует заголовок авторизации (например, заголовок авторизации протокола НТТР), который включает в себя подтвержденный пользовательский мандат. Коммуникационный фильтр 243 может ввести заголовок авторизации в запрос на доступ к ресурсу на основе Web. Например, коммуникационный фильтр 243 может удалить зашифрованный мандат 275 из запроса 291 и ввести мандат 289 в запрос 291 для получения в результате запроса 291А.
Если цифровая подпись проверки достоверности не равна цифровой подписи, то пользовательский мандат не подтверждается. Соответственно, средство 237 проверки достоверности мандата повторяет функции, определенные формулами (5)-(8) на основе предыдущего ключа в памяти циклически сменяемых ключей. Например, для браузера клиентской стороны на частной клиентской компьютерной системе средство 237 проверки достоверности мандата может использовать ключ 233. С другой стороны, для браузера клиентской стороны на недоверительной клиентской компьютерной системе средство 237 проверки достоверности мандата может использовать ключ 223. Средство проверки достоверности мандата может пытаться проверить достоверность пользовательского мандата с использованием каждого ключа в соответствующей памяти циклически сменяемых ключей. Подтвержденный пользовательский мандат может быть включен в соответствующий заголовок авторизации.
В некоторых вариантах осуществления вместе с зашифрованным мандатом включается индекс для индикации циклически сменяемого ключа, который должен использоваться при попытке проверки достоверности зашифрованного мандата (например, циклически сменяемый ключ, который ранее использовался для шифрования мандата). Например, клиентская компьютерная система 201 может включать в себя индекс, который идентифицирует в запросе 291 циклически сменяемый ключ в недоверительной памяти 221 циклически сменяемых ключей или в закрытой памяти 231 циклически сменяемых ключей. Индекс может иметь числовое значение (например, 0, 1, 2 и т.д.), которое идентифицирует генерацию циклически сменяемого ключа, который должен использоваться. Например, если клиентская компьютерная система 201 является частной клиентской компьютерной системой, индекс 0 может идентифицировать ключ 232. Аналогичным образом, если клиентская компьютерная система 201 является недоверительной клиентской компьютерной системой, индекс 2 может идентифицировать ключ 224. Соответственно, использование индекса может повысить эффективность процесса проверки достоверности. Если мандат не подтвержден циклически сменяемым ключом, идентифицированным индексом, может использоваться другой ключ в соответствующей памяти циклически сменяемых ключей при попытке проверки достоверности мандата.
Способ 400 включает в себя действие направления запроса в модуль, который управляет доступом к запрошенному ресурсу на основе Web (действие 406). Действие 406 может включать в себя посылку серверной компьютерной системой запроса к модулю, который управляет доступом к ресурсу на основе Web. Например, коммуникационный фильтр 243 может направить запрос 291А, который включает в себя URI 267 почтового сервера и мандат 289 (в том виде, как выявлено из зашифрованного мандата 275), на сервер 212 электронной почты. Сервер 212 электронной почты может представлять собой модуль, который управляет доступом на основе Web к ресурсам электронной почты. Сервер 212 электронной почты может сравнивать мандат 289 с данными базы 213 данных мандатов для определения того, авторизован ли доступ на основе Web к запрошенному ресурсу электронной почты.
Способ 400 включает в себя действие определения, следует ли вывести обновленный пользовательский мандат из самого последнего ключа в памяти циклически сменяемых ключей (действие 407). Действие 407 может включать в себя определение серверной компьютерной системой того, следует ли вывести обновленную зашифрованную информацию, представляющую пользовательский мандат, и зависящую от времени подпись из самого последнего ключа в памяти циклически сменяемых ключей. Если пользовательский мандат подтвержден с использованием ключа из памяти циклически сменяемых ключей иного, чем самый последний ключ из памяти циклически сменяемых ключей, то сервер определяет, что должна быть выведена обновленная информация. Например, если средство 237 проверки достоверности подтверждает зашифрованный мандат с использованием ключа 224, то коммуникационный фильтр 243 может определить, что необходимо получить обновленный зашифрованный мандат для пользовательского мандата, представленного в зашифрованном мандате.
Соответственно, как представлено пунктирной линией, коммуникационный фильтр 243 может дополнительно послать запрос 294 обновления идентификационного файла (cookie) в средство 216 проверки достоверности элементов регистрации. Средство 216 проверки достоверности элементов регистрации может использовать самый последний циклически сменяемый ключ в соответствующей памяти циклически сменяемых ключей для получения обновленной зашифрованной информации (например, путем получения обновленной цифровой подписи и обновленного ключа шифрования из самого последнего ключа). Средство 216 проверки достоверности элементов регистрации может возвратить обновленный GUID и обновленный зашифрованный мандат коммуникационному фильтру 243. Например, как представлено пунктирной стрелкой, средство 216 проверки достоверности элементов регистрации возвращает сообщение 295, которое включает в себя обновленный GUID 296 и обновленный зашифрованный мандат 297 в коммуникационный фильтр 243.
Если мандат 289 является соответствующим для доступа на основе Web к ресурсам электронной почты на сервере 212 электронной почты, то сервер 212 электронной почты может возвратить ресурс электронной почты в ответ на запрос 291А. Например, сервер 212 электронной почты может возвратить ресурс 292, который включает в себя ресурс 293 (например, сообщение электронной почты), в коммуникационный фильтр 243. С другой стороны, если мандат 289 не соответствует доступу на основе Web к ресурсам электронной почты на сервере 212 электронной почты, то сервер 212 электронной почты может возвратить указание отсутствия авторизации в ответ на запрос 291А. Например, как представлено пунктирной стрелкой, сервер 212 электронной почты может возвратить ответ 294, который включает в себя указатель 272 «не авторизован» в коммуникационный фильтр 243. Когда коммуникационный фильтр 243 получает указатель «не авторизован», коммуникационный фильтр 243 может переадресовать клиентскую компьютерную систему на страницу 217 регистрации.
Если подтвержденный пользовательский мандат является соответствующим, коммуникационный фильтр 243 может послать запрошенный ресурс на клиентскую компьютерную систему 201. Например, если зашифрованный мандат подтвержден с использованием самого последнего ключа из соответствующей памяти циклически сменяемых ключей, то ответ 292, включающий в себя ресурс 293, принимается коммуникационным фильтром 243. Коммуникационный фильтр 243 может послать ответ 293 на клиентскую компьютерную систему 201. Соответственно ресурс 293 может быть представлен в браузере.
Если подтвержденный пользовательский мандат является соответствующим, коммуникационный фильтр 243 может также послать обновленный зашифрованный мандат и обновленный GUID вместе с ресурсом на клиентскую компьютерную систему 201. Например, если зашифрованный мандат 275 подтвержден с использованием ключа из памяти циклически сменяемых ключей, который не является самым последним ключом в памяти циклически сменяемых ключей, то ресурс 293, обновленный GUID 296 и обновленный зашифрованный мандат 297 могут быть приняты коммуникационным фильтром 243. Как представлено пунктирной стрелкой, коммуникационный фильтр 243 может затем послать ответ 276, который включает в себя ресурс 293, обновленный GUID 296 и обновленный зашифрованный мандат, на клиентскую компьютерную систему 201.
Способ 400 включает в себя действие приема ресурса вместе с обновленным идентификатором сеанса и обновленным зашифрованным мандатом пользовательским мандатом на браузере клиентской стороны (действие 402). Действие 402 может включать в себя прием клиентской компьютерной системой запрошенного ресурса вместе с обновленным идентификатором сеанса и обновленной зашифрованной информацией, представляющей по меньшей мере часть пользовательского мандата и обновленную зависящую от времени подпись. Например, клиентская компьютерная система 201 может принимать от серверной компьютерной системы 201 ответ 276, который включает в себя ресурс 293, обновленный GUID 296 и обновленный зашифрованный пользовательский мандат 297. Способ 400 включает в себя действие сохранения обновленного идентификатора сеанса и обновленного зашифрованного мандата в соответствующих идентификационных файлах (cookies) (действие 403). Действие 403 может включать в себя сохранение клиентской компьютерной системой обновленного идентификатора сеанса и обновленной зашифрованной информации в соответствующих идентификационных файлах (cookies) на клиентской компьютерной системе. Например, в соответствующих идентификационных файлах - cookies 203 может быть сохранен обновленный GUID 296 и обновленный зашифрованный пользовательский мандат 297 путем перезаписи GUID 274 и зашифрованного мандата 275. Ресурс 293 может быть представлен в браузере 202.
Настоящее изобретение может быть реализовано в других конкретных формах, без отклонения от сущности или существенных признаков изобретения. Описанные варианты осуществления должны рассматриваться во всех аспектах только как иллюстративные, но не ограничительные. Поэтому объем изобретения должен определяться пунктами формулы изобретения, а не предшествующим описанием. Все изменения, которые находятся в пределах содержания и диапазона эквивалентности формулы изобретения, должны быть включены в ее объем.

Claims (12)

1. Способ поддержки пользовательского мандата, используемого для доступа на основе Web к ресурсу на серверной компьютерной системе, в клиентской компьютерной системе, включающий действия, при которых клиентская компьютерная система посылает запрос на доступ на основе Web к ресурсу, причем запрос включает в себя уникальный идентификатор сеанса и зашифрованную информацию, представляющую, по меньшей мере, часть пользовательского мандата и зависящую от времени цифровую подпись, причем зависящая от времени подпись получена, по меньшей мере, из части пользовательского мандата и зависящего от времени ключа подписи, при этом зашифрованная информация зашифрована с использованием зависящего от времени ключа шифрования, причем зависящий от времени ключ подписи и зависящий от времени ключ шифрования получены из ключа в памяти циклически сменяемых ключей, клиентская компьютерная система получает запрошенный ресурс вместе с обновленным уникальным идентификатором сеанса и обновленной зашифрованной информацией на браузере клиентской стороны, причем обновленная зашифрованная информация представляет, по меньшей мере, часть пользовательского мандата и обновленную зависящую от времени подпись, при этом зависящая от времени подпись получена, по меньшей мере, из части пользовательского мандата и обновленного зависящего от времени ключа подписи, причем зашифрованная информация зашифрована с использованием обновленного зависящего от времени ключа шифрования, при этом обновленный зависящий от времени ключ подписи и обновленный зависящий от времени ключ шифрования получены из самого последнего ключа в памяти циклически сменяемых ключей, и клиентская компьютерная система сохраняет обновленный идентификатор сеанса и обновленную зашифрованную информацию в соответствующих идентификационных файлах на клиентской компьютерной системе.
2. Способ по п.1, отличающийся тем, что действие посылки клиентской компьютерной системой запроса на доступ на основе Web к ресурсу включает в себя действие посылки сообщения протокола HTTP, запрашивающего доступ на основе Web к ресурсу электронной почты на сервере электронной почты.
3. Способ по п.1, отличающийся тем, что действие получения клиентской компьютерной системой запрошенного ресурса вместе с обновленным уникальным идентификатором сеанса и обновленной зашифрованной информацией в браузере клиентской стороны включает в себя получение обновленного идентификатора сеанса и обновленной зашифрованной информации как результата использования, при генерации зашифрованной информации, ключа, не являющегося самым последним ключом в памяти циклически сменяемых ключей.
4. Способ по п.1, отличающийся тем, что действие сохранения клиентской компьютерной системой обновленного уникального идентификатора сеанса и обновленной зашифрованной информации в соответствующих идентификационных файлах на клиентской компьютерной системе включает в себя перезапись обновленным уникальным идентификатором сеанса и обновленной зашифрованной информацией уникального идентификатора сеанса и зашифрованной информации в памяти браузера.
5. Способ определения достоверности пользовательского мандата, используемого для доступа на основе Web к ресурсам на серверной компьютерной системе, в серверной компьютерной системе, включающий действия, при которых серверная компьютерная система получает запрос от клиентской компьютерной системы на доступ на основе Web к ресурсу на сервере, причем запрос включает в себя: уникальный идентификатор сеанса, который является уникальным для конкретного сеанса между серверной компьютерной системой и клиентской компьютерной системой, и зашифрованную информацию, представляющую, по меньшей мере, часть пользовательского мандата и зависящую от времени подпись, причем зависящая от времени подпись получена, по меньшей мере, из части пользовательского мандата и зависящего от времени ключа подписи, при этом зашифрованная информация принята от клиентской компьютерной системы и зашифрована с использованием, по меньшей мере, одного ключа, полученного из памяти циклически сменяемых ключей серверной компьютерной системы, и зависящего от времени ключа шифрования, зависящий от времени ключ подписи получен из ключа в памяти циклически сменяемых ключей на сервере, и зависящий от времени ключ шифрования получен из ключа в памяти циклически сменяемых ключей на сервере и уникального идентификатора сеанса, при этом модуль генерации ключей на сервере генерирует ключи для памяти циклически сменяемых ключей, которые передаются на клиентскую компьютерную систему, серверная компьютерная система пытается проверить достоверность, по меньшей мере, части пользовательского мандата с использованием самого последнего ключа в памяти циклически сменяемых ключей и определяет, что, по меньшей мере, часть пользовательского мандата не может быть подтверждена с использованием самого последнего ключа в памяти циклически сменяемых ключей, серверная компьютерная система пытается проверить достоверность, по меньшей мере, части пользовательского мандата с использованием других ключей в памяти циклически сменяемых ключей, серверная компьютерная система подтверждает достоверность пользовательского мандата с использованием ключа в памяти циклически сменяемых ключей иного, чем самый последний ключ в памяти циклически сменяемых ключей, серверная компьютерная система направляет запрос в модуль, который управляет доступом на основе Web к запрошенному ресурсу, и в ответ на действие подтверждения достоверности серверной компьютерной системой пользовательского мандата с использованием ключа, иного, чем самый последний ключ памяти циклически сменяемых ключей, серверная компьютерная система определяет, что должна быть получена обновленная зашифрованная информация, представляющая, по меньшей мере, часть пользовательского мандата и зависящую от времени подпись, с использованием самого последнего ключа в памяти циклически сменяемых ключей.
6. Способ по п.5, отличающийся тем, что действие подтверждения достоверности серверной компьютерной системой пользовательского мандата с использованием ключа в памяти ключей иного, чем самый последний ключ в памяти циклически сменяемых ключей, дополнительно включает в себя действие, в котором серверная компьютерная система определяет, что основанная на ранее генерированном ключе в памяти циклически сменяемых ключей, по меньшей мере, часть пользовательского мандата является достоверной, причем ранее генерированный ключ введен в память циклически сменяемых ключей перед самым последним ключом.
7. Способ по п.5, отличающийся тем, что действие определения серверной компьютерной системой того, что обновленная зашифрованная информация, представляющая, по меньшей мере, часть пользовательского мандата и зависящую от времени подпись, должна быть получена с использованием самого последнего ключа в памяти циклически сменяемых ключей, включает в себя определение, что обновленная зашифрованная информация, представляющая, по меньшей мере, часть пользовательского мандата и зависящую от времени подпись, должна быть получена с использованием самого последнего ключа в памяти циклически сменяемых ключей.
8. Способ по п.7, отличающийся тем, что действие определения, что обновленная зашифрованная информация, представляющая, по меньшей мере, часть пользовательского мандата и зависящую от времени подпись, должна быть получена с использованием самого последнего ключа в памяти циклически сменяемых ключей, включает в себя определение, что серверная компьютерная система подтвердила достоверность, по меньшей мере, части пользовательского мандата на основе ранее генерированного ключа в памяти циклически сменяемых ключей, причем ранее генерированный ключ введен в память циклически сменяемых ключей перед самым последним ключом.
9. Способ по п.5, отличающийся тем, что дополнительно включает в себя действие переадресации серверной компьютерной системой клиентской компьютерной системы на страницу регистрации, которая обеспечивает интерфейс для получения пользовательского мандата.
10. Способ по п.5, отличающийся тем, что действие определения серверной компьютерной системой того, что обновленная зашифрованная информация, представляющая, по меньшей мере, часть пользовательского мандата и зависящую от времени подпись, должна быть получена с использованием самого последнего ключа в памяти циклически сменяемых ключей, включает в себя получение обновленной зашифрованной информации и зависящей от времени подписи с использованием самого последнего ключа в памяти циклически сменяемых ключей.
11. Способ по п.10, отличающийся тем, что дополнительно включает в себя действие посылки серверной компьютерной системой запрошенного ресурса, обновленного уникального идентификатора сеанса и обновленной зашифрованной информации на клиентскую компьютерную систему.
12. Способ по п.5, отличающийся тем, что память циклически сменяемых ключей хранит множество ключей, при этом, когда новый ключ генерируется в модуле генерации ключей, то вновь генерированный ключ включается в память циклически сменяемых ключей, а более старый ключ выводится из памяти циклически сменяемых ключей.
RU2003133768/09A 2002-11-20 2003-11-19 ЗАЩИЩЕННАЯ ОБРАБОТКА МАНДАТА КЛИЕНТСКОЙ СИСТЕМЫ ДЛЯ ДОСТУПА К РЕСУРСАМ НА ОСНОВЕ Web RU2332711C2 (ru)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US42815202P 2002-11-20 2002-11-20
US60/428,152 2002-11-20
US10/459,863 US7360096B2 (en) 2002-11-20 2003-06-12 Securely processing client credentials used for Web-based access to resources
US10/459,863 2003-06-12

Related Child Applications (1)

Application Number Title Priority Date Filing Date
RU2008114665/08A Division RU2447490C2 (ru) 2002-11-20 2008-04-14 Защищенная обработка мандата клиентской системы для доступа к ресурсам на основе web

Publications (2)

Publication Number Publication Date
RU2003133768A RU2003133768A (ru) 2005-05-10
RU2332711C2 true RU2332711C2 (ru) 2008-08-27

Family

ID=32233681

Family Applications (2)

Application Number Title Priority Date Filing Date
RU2003133768/09A RU2332711C2 (ru) 2002-11-20 2003-11-19 ЗАЩИЩЕННАЯ ОБРАБОТКА МАНДАТА КЛИЕНТСКОЙ СИСТЕМЫ ДЛЯ ДОСТУПА К РЕСУРСАМ НА ОСНОВЕ Web
RU2008114665/08A RU2447490C2 (ru) 2002-11-20 2008-04-14 Защищенная обработка мандата клиентской системы для доступа к ресурсам на основе web

Family Applications After (1)

Application Number Title Priority Date Filing Date
RU2008114665/08A RU2447490C2 (ru) 2002-11-20 2008-04-14 Защищенная обработка мандата клиентской системы для доступа к ресурсам на основе web

Country Status (13)

Country Link
US (1) US7360096B2 (ru)
EP (1) EP1422907B1 (ru)
JP (1) JP4647200B2 (ru)
KR (1) KR101071132B1 (ru)
CN (1) CN100581103C (ru)
AU (1) AU2003257894B8 (ru)
BR (2) BRPI0305140B1 (ru)
CA (1) CA2450056C (ru)
DK (1) DK1422907T3 (ru)
ES (1) ES2423824T3 (ru)
MX (1) MXPA03010477A (ru)
RU (2) RU2332711C2 (ru)
SI (1) SI1422907T1 (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2742910C1 (ru) * 2010-11-25 2021-02-11 ИНСИГНИЯ АйПи ЛТД Обработка закодированной информации

Families Citing this family (165)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7350228B2 (en) * 2001-01-23 2008-03-25 Portauthority Technologies Inc. Method for securing digital content
US20030084172A1 (en) * 2001-10-29 2003-05-01 Sun Microsystem, Inc., A Delaware Corporation Identification and privacy in the World Wide Web
US20030084171A1 (en) * 2001-10-29 2003-05-01 Sun Microsystems, Inc., A Delaware Corporation User access control to distributed resources on a data communications network
US20030084302A1 (en) * 2001-10-29 2003-05-01 Sun Microsystems, Inc., A Delaware Corporation Portability and privacy with data communications network browsing
US7941533B2 (en) 2002-02-19 2011-05-10 Jpmorgan Chase Bank, N.A. System and method for single sign-on session management without central server
US7412539B2 (en) * 2002-12-18 2008-08-12 Sonicwall, Inc. Method and apparatus for resource locator identifier rewrite
US20060179305A1 (en) * 2004-03-11 2006-08-10 Junbiao Zhang WLAN session management techniques with secure rekeying and logoff
US10535049B2 (en) * 2003-03-21 2020-01-14 Paypal, Inc. Payment transactions via substantially instant communication system
US7805366B2 (en) * 2003-03-21 2010-09-28 Ebay Inc. Method and system to facilitate payments to satisfy payment obligations resulting from purchase transactions
US7809843B1 (en) * 2003-09-18 2010-10-05 Intel Corporation Globally unique identification in communications protocols and databases
US20050138367A1 (en) * 2003-12-19 2005-06-23 Robert Paganetti System and method for storing user credentials on a server copyright notice
US8954420B1 (en) 2003-12-31 2015-02-10 Google Inc. Methods and systems for improving a search ranking using article information
US7373502B2 (en) * 2004-01-12 2008-05-13 Cisco Technology, Inc. Avoiding server storage of client state
US7665147B2 (en) * 2004-02-05 2010-02-16 At&T Mobility Ii Llc Authentication of HTTP applications
US7581227B1 (en) 2004-03-31 2009-08-25 Google Inc. Systems and methods of synchronizing indexes
US7725508B2 (en) * 2004-03-31 2010-05-25 Google Inc. Methods and systems for information capture and retrieval
US7412708B1 (en) 2004-03-31 2008-08-12 Google Inc. Methods and systems for capturing information
US8161053B1 (en) 2004-03-31 2012-04-17 Google Inc. Methods and systems for eliminating duplicate events
US7333976B1 (en) 2004-03-31 2008-02-19 Google Inc. Methods and systems for processing contact information
US20050234929A1 (en) * 2004-03-31 2005-10-20 Ionescu Mihai F Methods and systems for interfacing applications with a search engine
US7941439B1 (en) 2004-03-31 2011-05-10 Google Inc. Methods and systems for information capture
US8346777B1 (en) 2004-03-31 2013-01-01 Google Inc. Systems and methods for selectively storing event data
US8275839B2 (en) 2004-03-31 2012-09-25 Google Inc. Methods and systems for processing email messages
US8099407B2 (en) 2004-03-31 2012-01-17 Google Inc. Methods and systems for processing media files
US8386728B1 (en) 2004-03-31 2013-02-26 Google Inc. Methods and systems for prioritizing a crawl
US7680888B1 (en) 2004-03-31 2010-03-16 Google Inc. Methods and systems for processing instant messenger messages
US8631076B1 (en) 2004-03-31 2014-01-14 Google Inc. Methods and systems for associating instant messenger events
US7823192B1 (en) * 2004-04-01 2010-10-26 Sprint Communications Company L.P. Application-to-application security in enterprise security services
US20050273621A1 (en) * 2004-05-18 2005-12-08 Davis Bruce L Multistate collaboration between departments of motor vehicles
US20100100967A1 (en) * 2004-07-15 2010-04-22 Douglas James E Secure collaborative environment
US8533791B2 (en) 2004-07-15 2013-09-10 Anakam, Inc. System and method for second factor authentication services
US8296562B2 (en) * 2004-07-15 2012-10-23 Anakam, Inc. Out of band system and method for authentication
ES2420158T3 (es) * 2004-07-15 2013-08-22 Anakam, Inc. Sistema y método para bloquear un inicio de sesión de red no autorizado usando una contraseña robada
US8528078B2 (en) * 2004-07-15 2013-09-03 Anakam, Inc. System and method for blocking unauthorized network log in using stolen password
US7676834B2 (en) * 2004-07-15 2010-03-09 Anakam L.L.C. System and method for blocking unauthorized network log in using stolen password
WO2006019275A1 (en) 2004-08-18 2006-02-23 Sk Telecom Co., Ltd. Method for providing contents in a mobile communication system and apparatus thereof
US7483943B2 (en) * 2004-09-21 2009-01-27 Microsoft Corporation Reliable messaging using clocks with synchronized rates
US20060168054A1 (en) * 2004-12-13 2006-07-27 Ebay Inc. Messaging method and apparatus
CA2648523C (en) 2005-04-21 2018-09-04 Securedpay Solutions, Inc. Portable handheld device for wireless order entry and real time payment authorization and related methods
US7810143B2 (en) * 2005-04-22 2010-10-05 Microsoft Corporation Credential interface
US9692725B2 (en) 2005-05-26 2017-06-27 Citrix Systems, Inc. Systems and methods for using an HTTP-aware client agent
US9407608B2 (en) 2005-05-26 2016-08-02 Citrix Systems, Inc. Systems and methods for enhanced client side policy
US8943304B2 (en) 2006-08-03 2015-01-27 Citrix Systems, Inc. Systems and methods for using an HTTP-aware client agent
US9621666B2 (en) 2005-05-26 2017-04-11 Citrix Systems, Inc. Systems and methods for enhanced delta compression
JP2008546317A (ja) * 2005-06-01 2008-12-18 グッドメール システムズ,インク. フロムヘッダの検証による電子メールのスタンピング
US7917943B1 (en) * 2006-12-01 2011-03-29 Goodmail Systems, Inc. E-mail Stamping with accredited entity name
US7877789B2 (en) * 2005-06-01 2011-01-25 Goodmail Systems, Inc. E-mail stamping with from-header validation
US7650505B1 (en) * 2005-06-17 2010-01-19 Sun Microsystems, Inc. Methods and apparatus for persistence of authentication and authorization for a multi-tenant internet hosted site using cookies
US7730523B1 (en) * 2005-06-17 2010-06-01 Oracle America, Inc. Role-based access using combinatorial inheritance and randomized conjugates in an internet hosted environment
CN1929367B (zh) * 2005-09-10 2010-08-25 腾讯科技(深圳)有限公司 一种游戏数据传输方法及系统
US9262446B1 (en) 2005-12-29 2016-02-16 Google Inc. Dynamically ranking entries in a personal data book
GB2434947B (en) * 2006-02-02 2011-01-26 Identum Ltd Electronic data communication system
US8332627B1 (en) * 2006-02-08 2012-12-11 Cisco Technology, Inc. Mutual authentication
US8560595B2 (en) 2006-06-23 2013-10-15 Microsoft Corporation Virtualization of mobile device user experience
CN101101687B (zh) * 2006-07-05 2010-09-01 山谷科技有限责任公司 用生物特征进行身份认证的方法、设备、服务器和系统
US7698242B2 (en) * 2006-08-16 2010-04-13 Fisher-Rosemount Systems, Inc. Systems and methods to maintain process control systems using information retrieved from a database storing general-type information and specific-type information
US8197323B2 (en) 2006-08-21 2012-06-12 Scientific Games International, Inc. System and method for implementing an additional game to players of a lottery game
CN101155028B (zh) * 2006-09-26 2010-09-15 阿里巴巴集团控股有限公司 一种安全登录网站的方法和系统
JP4607082B2 (ja) * 2006-09-27 2011-01-05 株式会社エヌ・ティ・ティ・データ 情報処理装置、管理方法、及びコンピュータプログラム
WO2008108564A1 (en) * 2007-03-02 2008-09-12 Lg Electronics Inc. Method and system for transferring resource
CN101267299B (zh) * 2007-03-14 2010-11-03 阿里巴巴集团控股有限公司 一种安全显示网页中数据的方法和系统
US8763136B2 (en) * 2007-03-22 2014-06-24 Red Hat, Inc. Privacy enhanced browser
US9319220B2 (en) * 2007-03-30 2016-04-19 Intel Corporation Method and apparatus for secure network enclaves
US7941405B2 (en) * 2007-03-30 2011-05-10 Data Center Technologies Password protection for file backups
CN101335622B (zh) * 2007-06-27 2012-08-29 日电(中国)有限公司 使用匿名柔性凭证的用于分布式授权的方法和装置
US8094812B1 (en) * 2007-09-28 2012-01-10 Juniper Networks, Inc. Updating stored passwords
WO2009052533A1 (en) * 2007-10-18 2009-04-23 Goodmail Systems, Inc. Certification of e-mails with embedded code
US9349410B2 (en) 2008-01-08 2016-05-24 International Business Machines Corporation Automated data storage library with target of opportunity recognition
US8682470B2 (en) * 2008-01-08 2014-03-25 International Business Machines Corporation Data storage drive with target of opportunity recognition
US9495561B2 (en) * 2008-01-08 2016-11-15 International Business Machines Corporation Target of opportunity recognition during an encryption related process
CN101247232B (zh) * 2008-03-27 2012-09-26 上海金鑫计算机系统工程有限公司 数据交换传输中基于数字签名的加密技术方法
CN101309278B (zh) * 2008-06-27 2011-07-06 腾讯科技(深圳)有限公司 一种在客户端保存加密数据的方法及系统
US8924362B2 (en) 2008-06-30 2014-12-30 Microsoft Corporation B-file abstraction for efficiently archiving self-expiring data
US8352519B2 (en) * 2008-07-31 2013-01-08 Microsoft Corporation Maintaining large random sample with semi-random append-only operations
US8181861B2 (en) 2008-10-13 2012-05-22 Miri Systems, Llc Electronic transaction security system and method
WO2010043024A1 (en) * 2008-10-19 2010-04-22 Research In Motion Limited Web application framework for enabling optimum rendering performance on a client based upon detected parameters of the client
US20100287231A1 (en) * 2008-11-11 2010-11-11 Esignet, Inc. Method and apparatus for certifying hyperlinks
US8271536B2 (en) * 2008-11-14 2012-09-18 Microsoft Corporation Multi-tenancy using suite of authorization manager components
US20100226526A1 (en) * 2008-12-31 2010-09-09 Modro Sierra K Mobile media, devices, and signaling
US9449195B2 (en) * 2009-01-23 2016-09-20 Avow Networks Incorporated Method and apparatus to perform online credential reporting
MX2011008925A (es) * 2009-02-25 2012-04-02 Miri Systems Llc Sistema y metodo de pago.
JP5124527B2 (ja) * 2009-05-26 2013-01-23 株式会社日立製作所 メール中継装置
US9178858B1 (en) * 2009-08-05 2015-11-03 West Corporation Method and system for message delivery security validation
BR112012007872B1 (pt) 2009-10-05 2021-06-22 Miri Systems, Llc Método para proporcionar acesso a uma conta mantida por uma instituição, método para fornecer credenciais de login a um terminal de transação envolvendo um dispositivo móvel e método para proporcionar acesso a uma conta de um usuário identificado por identificador único
US20110179270A1 (en) * 2010-01-20 2011-07-21 The Provost, Fellows and Scholars of the College of the Holy and Undivided Trinity of Queen Elizab Data Retrieval System
US8442235B2 (en) * 2010-04-14 2013-05-14 Microsoft Corporation Extensible management of self-encrypting storage devices
US9667423B2 (en) * 2010-09-27 2017-05-30 Nokia Technologies Oy Method and apparatus for accelerated authentication
US8505083B2 (en) 2010-09-30 2013-08-06 Microsoft Corporation Remote resources single sign on
US8646062B2 (en) * 2010-11-09 2014-02-04 International Business Machines Corporation Remote authentication based on challenge-response using digital certificates
US8862870B2 (en) 2010-12-29 2014-10-14 Citrix Systems, Inc. Systems and methods for multi-level tagging of encrypted items for additional security and efficient encrypted item determination
US8683560B1 (en) * 2010-12-29 2014-03-25 Amazon Technologies, Inc. Techniques for credential generation
US9838392B2 (en) * 2011-02-28 2017-12-05 Nokia Technologies Oy Method and apparatus for providing proxy-based access controls
US8752208B2 (en) 2011-05-13 2014-06-10 Imperva Inc. Detecting web browser based attacks using browser digest compute tests launched from a remote source
WO2013013291A1 (en) * 2011-07-28 2013-01-31 Certicom Corp. System, device, and method for authentication of a user accessing an on-line resource
US8640210B2 (en) * 2011-09-01 2014-01-28 Microsoft Corporation Distributed computer systems with time-dependent credentials
US9058467B2 (en) * 2011-09-01 2015-06-16 Microsoft Corporation Distributed computer systems with time-dependent credentials
US9032492B2 (en) 2011-09-01 2015-05-12 Microsoft Corporation Distributed computer systems with time-dependent credentials
CN103002439B (zh) * 2011-09-13 2015-06-17 联芯科技有限公司 保密通话的通信方法及用户终端
US9830435B2 (en) * 2011-10-04 2017-11-28 Salesforce.Com, Inc. Method and system for providing login as a service
US8955079B2 (en) * 2011-10-31 2015-02-10 Avaya Inc. Single sign-on for applications
US9298837B2 (en) 2011-11-10 2016-03-29 Room 77, Inc. Efficient indexing and caching infrastructure for metasearch
US9356924B1 (en) * 2011-12-27 2016-05-31 Majid Shahbazi Systems, methods, and computer readable media for single sign-on (SSO) using optical codes
US10742634B1 (en) 2011-12-27 2020-08-11 Majid Shahbazi Methods for single sign-on (SSO) using optical codes
US8819444B2 (en) * 2011-12-27 2014-08-26 Majid Shahbazi Methods for single signon (SSO) using decentralized password and credential management
US8898796B2 (en) * 2012-02-14 2014-11-25 International Business Machines Corporation Managing network data
US9166777B2 (en) * 2012-03-05 2015-10-20 Echoworx Corporation Method and system for user authentication for computing devices utilizing PKI and other user credentials
CN102638580A (zh) * 2012-03-30 2012-08-15 奇智软件(北京)有限公司 一种网页信息处理方法和装置
US9576064B2 (en) * 2012-04-13 2017-02-21 Yahoo! Inc. Third party program integrity and integration control in web-based applications
US8997193B2 (en) * 2012-05-14 2015-03-31 Sap Se Single sign-on for disparate servers
US8880885B2 (en) * 2012-10-09 2014-11-04 Sap Se Mutual authentication schemes
CN113536276A (zh) * 2013-01-15 2021-10-22 施耐德电气美国股份有限公司 安全访问可编程装置的系统和方法
US9881201B2 (en) * 2013-02-05 2018-01-30 Vynca, Inc. Method and apparatus for collecting an electronic signature on a first device and incorporating the signature into a document on a second device
WO2014126493A1 (ru) * 2013-02-13 2014-08-21 Sherbakov Andrei Yuryevich Способ использования ресурса в компьютерной системе
US9954843B2 (en) * 2013-02-28 2018-04-24 Microsoft Technology Licensing, Llc Web ticket based upon a symmetric key usable for user authentication
EP2975854B1 (en) * 2013-03-15 2019-09-18 Panasonic Intellectual Property Management Co., Ltd. Content distribution method, content distribution system, source device, and sink device
US9344426B2 (en) 2013-05-14 2016-05-17 Citrix Systems, Inc. Accessing enterprise resources while providing denial-of-service attack protection
CN104217136B (zh) * 2013-06-05 2017-05-03 北京齐尔布莱特科技有限公司 防止网页文本信息被自动抓取的方法和系统
CN103458037A (zh) * 2013-09-06 2013-12-18 南京南自信息技术有限公司 一种在资源受限环境下提供复杂网页应用的方法和设备
US9237019B2 (en) * 2013-09-25 2016-01-12 Amazon Technologies, Inc. Resource locators with keys
US9722801B2 (en) * 2013-09-30 2017-08-01 Juniper Networks, Inc. Detecting and preventing man-in-the-middle attacks on an encrypted connection
US9215064B2 (en) 2013-10-21 2015-12-15 Adobe Systems Incorporated Distributing keys for decrypting client data
EP3522446B1 (en) 2013-11-14 2021-01-06 Pleasant Solutions Inc. System and method for credentialed access to a remote server
CN104767719B (zh) * 2014-01-07 2018-09-18 阿里巴巴集团控股有限公司 确定登录网站的终端是否是移动终端的方法及服务器
US9882884B1 (en) * 2014-01-15 2018-01-30 United States Automobile Association (USAA) Authenticating mobile traffic
US10108168B2 (en) 2014-06-01 2018-10-23 Si-Ga Data Security (2014) Ltd. Industrial control system smart hardware monitoring
US10182046B1 (en) * 2015-06-23 2019-01-15 Amazon Technologies, Inc. Detecting a network crawler
US9489508B2 (en) 2014-11-13 2016-11-08 Seagate Technology Llc Device functionality access control using unique device credentials
US9853977B1 (en) 2015-01-26 2017-12-26 Winklevoss Ip, Llc System, method, and program product for processing secure transactions within a cloud computing system
US10158480B1 (en) 2015-03-16 2018-12-18 Winklevoss Ip, Llc Autonomous devices
US10915891B1 (en) 2015-03-16 2021-02-09 Winklevoss Ip, Llc Autonomous devices
US10165004B1 (en) * 2015-03-18 2018-12-25 Cequence Security, Inc. Passive detection of forged web browsers
US11418520B2 (en) 2015-06-15 2022-08-16 Cequence Security, Inc. Passive security analysis with inline active security device
US10290022B1 (en) 2015-06-23 2019-05-14 Amazon Technologies, Inc. Targeting content based on user characteristics
US9887848B2 (en) * 2015-07-02 2018-02-06 Gn Hearing A/S Client device with certificate and related method
US10509900B1 (en) 2015-08-06 2019-12-17 Majid Shahbazi Computer program products for user account management
US11082849B2 (en) * 2015-08-07 2021-08-03 Qualcomm Incorporated Validating authorization for use of a set of features of a device
CN105490813B (zh) * 2015-11-26 2019-03-01 广州华多网络科技有限公司 一种用户安全访问web的方法及装置
US10237080B2 (en) * 2015-12-08 2019-03-19 Verizon Patent And Licensing Inc. Tracking data usage in a secure session
US10931713B1 (en) 2016-02-17 2021-02-23 Cequence Security, Inc. Passive detection of genuine web browsers based on security parameters
US9600656B1 (en) * 2016-03-09 2017-03-21 Sailpoint Technologies, Inc. System and method for domain password reset in a secured distributed network environment
US10461942B1 (en) * 2016-07-20 2019-10-29 United Services Automobile Association Multi-factor authentication with code rotation
US20180145959A1 (en) * 2016-11-22 2018-05-24 Synergex Group Method for determining access privilege using username, IP address, App ID, App Key, and biometric signature sample.
US10805080B2 (en) 2017-01-06 2020-10-13 Microsoft Technology Licensing, Llc Strong resource identity in a cloud hosted system
SE543061C2 (en) * 2017-01-31 2020-09-29 Telia Co Ab Methods for providing continuity in chatbot communications
US10931686B1 (en) 2017-02-01 2021-02-23 Cequence Security, Inc. Detection of automated requests using session identifiers
PH12017000064A1 (en) * 2017-03-03 2018-09-17 Jr Eugenio S Ynion Access control method, system, device, terminal, and computer program product uisng multimodal authenticity determination
CN108632021A (zh) 2017-03-15 2018-10-09 阿里巴巴集团控股有限公司 一种密钥加密方法、装置和系统
CN108632213B (zh) * 2017-03-20 2021-12-31 腾讯科技(北京)有限公司 设备信息处理方法及装置
CN109286932B (zh) * 2017-07-20 2021-10-19 阿里巴巴集团控股有限公司 入网认证方法、装置及系统
US10891372B1 (en) 2017-12-01 2021-01-12 Majid Shahbazi Systems, methods, and products for user account authentication and protection
US10949564B2 (en) * 2018-05-07 2021-03-16 Apple Inc. Contact discovery service with privacy aspect
CN108600268B (zh) * 2018-05-09 2020-09-22 聚龙股份有限公司 一种应用于非授信认证的加密解密方法及非授信认证系统
CN108600266B (zh) * 2018-05-09 2020-09-22 聚龙股份有限公司 一种声明过滤认证方法及认证系统
CN110968413A (zh) * 2018-09-28 2020-04-07 华为技术有限公司 一种数据管理方法、装置和服务器
CN109359252B (zh) * 2018-10-30 2021-11-30 北京小米移动软件有限公司 浏览器选择方法及装置
CN111249740A (zh) * 2020-01-07 2020-06-09 上海米哈游天命科技有限公司 一种资源数据的访问方法及系统
US11398901B2 (en) * 2020-03-26 2022-07-26 Walmart Apollo, Llc Restricted partial key storage
US11552802B2 (en) * 2020-04-15 2023-01-10 Salesforce, Inc. Stateless mutual authentication between services
US11314876B2 (en) 2020-05-28 2022-04-26 Bank Of America Corporation System and method for managing built-in security for content distribution
US11233802B1 (en) 2020-06-11 2022-01-25 Amazon Technologies, Inc. Cookie and behavior-based authentication
CN112417401A (zh) * 2020-11-26 2021-02-26 深圳创维-Rgb电子有限公司 账号验证方法、装置、系统及计算机可读存储介质
US11665002B2 (en) * 2020-12-11 2023-05-30 International Business Machines Corporation Authenticated elevated access request
KR102486585B1 (ko) * 2021-10-21 2023-01-09 주식회사 엔디에스 네트워크를 통한 사용자 자격 검증 방법 및 이에 사용되는 서비스 제공 서버
US20230319025A1 (en) * 2022-03-31 2023-10-05 T-Mobile Usa, Inc. Methods and systems for implementing unique session number sharing to ensure traceability
US11528144B1 (en) * 2022-06-09 2022-12-13 Uab 360 It Optimized access in a service environment

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5168520A (en) * 1984-11-30 1992-12-01 Security Dynamics Technologies, Inc. Method and apparatus for personal identification
US4972472A (en) * 1985-03-15 1990-11-20 Tandem Computers Incorporated Method and apparatus for changing the master key in a cryptographic system
US5237614A (en) * 1991-06-07 1993-08-17 Security Dynamics Technologies, Inc. Integrated network security system
US5657388A (en) * 1993-05-25 1997-08-12 Security Dynamics Technologies, Inc. Method and apparatus for utilizing a token for resource access
US6047357A (en) * 1995-01-27 2000-04-04 Digital Equipment Corporation High speed method for maintaining cache coherency in a multi-level, set associative cache hierarchy
US6041357A (en) * 1997-02-06 2000-03-21 Electric Classified, Inc. Common session token system and protocol
JP3804245B2 (ja) * 1998-01-22 2006-08-02 富士ゼロックス株式会社 電子チケットシステム
RU2163745C2 (ru) * 1999-04-29 2001-02-27 Щеглов Андрей Юрьевич Система защиты виртуального канала корпоративной сети с аутентифицирующим маршрутизатором, построенной на каналах и средствах коммутации сети связи общего пользования
US6957334B1 (en) * 1999-06-23 2005-10-18 Mastercard International Incorporated Method and system for secure guaranteed transactions over a computer network
US6834271B1 (en) * 1999-09-24 2004-12-21 Kryptosima Apparatus for and method of secure ATM debit card and credit card payment transactions via the internet
RU2166792C1 (ru) * 1999-10-25 2001-05-10 Щеглов Андрей Юрьевич Система защиты рабочих станций, информационных и функциональных серверов вычислительных систем и сетей с динамическими списками санкционированных событий
DE60026472T2 (de) * 1999-12-27 2006-11-02 Hewlett-Packard Development Company, L.P., Houston System und Verfahren zur Authentifizierung von an einen Netzwerkserver gesendeten elektronischen Nachrichten
US6954799B2 (en) * 2000-02-01 2005-10-11 Charles Schwab & Co., Inc. Method and apparatus for integrating distributed shared services system
JP2002117350A (ja) * 2000-07-21 2002-04-19 Hitachi Ltd サービス発行方法並びにサービス提供方法及びそのシステム
US6986040B1 (en) * 2000-11-03 2006-01-10 Citrix Systems, Inc. System and method of exploiting the security of a secure communication channel to secure a non-secure communication channel

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2742910C1 (ru) * 2010-11-25 2021-02-11 ИНСИГНИЯ АйПи ЛТД Обработка закодированной информации

Also Published As

Publication number Publication date
CA2450056A1 (en) 2004-05-20
MXPA03010477A (es) 2004-10-15
BR0305140A (pt) 2004-08-31
CN1505309A (zh) 2004-06-16
AU2003257894B8 (en) 2009-08-13
RU2003133768A (ru) 2005-05-10
AU2003257894A1 (en) 2004-06-10
DK1422907T3 (da) 2013-08-26
SI1422907T1 (sl) 2013-10-30
EP1422907A2 (en) 2004-05-26
KR20040044375A (ko) 2004-05-28
CA2450056C (en) 2013-05-14
EP1422907A3 (en) 2011-11-23
US7360096B2 (en) 2008-04-15
ES2423824T3 (es) 2013-09-24
US20040098609A1 (en) 2004-05-20
AU2003257894B2 (en) 2009-07-02
KR101071132B1 (ko) 2011-10-10
RU2008114665A (ru) 2009-10-20
RU2447490C2 (ru) 2012-04-10
CN100581103C (zh) 2010-01-13
JP4647200B2 (ja) 2011-03-09
BRPI0305140B1 (pt) 2018-05-29
JP2004173285A (ja) 2004-06-17
EP1422907B1 (en) 2013-07-03

Similar Documents

Publication Publication Date Title
RU2332711C2 (ru) ЗАЩИЩЕННАЯ ОБРАБОТКА МАНДАТА КЛИЕНТСКОЙ СИСТЕМЫ ДЛЯ ДОСТУПА К РЕСУРСАМ НА ОСНОВЕ Web
JP4864289B2 (ja) ネットワークユーザ認証システムおよび方法
KR100946110B1 (ko) 기존 ssl 세션을 브레이킹하지 않고 인증서-기반 인증으로 스텝 업하는 방법 및 시스템
US20060294366A1 (en) Method and system for establishing a secure connection based on an attribute certificate having user credentials
US7444509B2 (en) Method and system for certification path processing
US7496755B2 (en) Method and system for a single-sign-on operation providing grid access and network access
US6374359B1 (en) Dynamic use and validation of HTTP cookies for authentication
EP2520064B1 (en) Distributed authentication with data cloud
WO2019000092A1 (en) SYSTEMS AND METHODS FOR HYBRID AUTHENTICATION
CN109165500B (zh) 一种基于跨域技术的单点登录认证系统及方法
KR20060100920A (ko) 웹 서비스를 위한 신뢰되는 제3자 인증
CN101331731A (zh) 由身份提供商对联盟内的客户进行定制认证的方法、装置和程序产品
JP2005011098A (ja) 代理認証プログラム、代理認証方法、および代理認証装置
EP4096147A1 (en) Secure enclave implementation of proxied cryptographic keys
US11750597B2 (en) Unattended authentication in HTTP using time-based one-time passwords
Vecchio et al. Evaluating grid portal security
Karayiannis et al. Implementing Secure Sockets Layer on Your Site
Rhodes et al. TLS/SSL
Lowman Secure Computer Applications in an Enterprise Environment
Burnside et al. Authentication on untrusted remote hosts with public-key sudo
Cristea et al. PROIECT DE LICENȚĂ
Tiwari et al. Securing any business service using authorization delegation based on advanced cryptographic techniques

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20091120

NF4A Reinstatement of patent

Effective date: 20110620

PC41 Official registration of the transfer of exclusive right

Effective date: 20150526

MM4A The patent is invalid due to non-payment of fees

Effective date: 20191120