Способы и аппарат для обеспечения верительных данных прикладных программ
Иллюстрации
Показать всеИзобретение относится к системам обеспечения верительных данных прикладной программы для прикладной программы, выполняемой на устройстве. Техническим результатом является обеспечение строгой аутентификации без необходимости иметь множество паролей для каждого устройства. Способы обеспечивают верительные данные прикладной программы для прикладной программы, выполняемой на устройстве, причем верительные данные прикладной программы используются прикладной программой для выполнения аутентификации на сервере базы данных. В способах осуществляют прием запроса на генерирование верительных данных прикладной программы, причем запрос включает в себя непроизвольный идентификатор прикладной программы, а также содержит генерирование верительных данных прикладной программы с использованием указанного идентификатора прикладной программы и эталонных верительных данных, связанных с устройством. Устройства реализуют действия способа. 9 н. и 36 з.п. ф-лы, 9 ил.
Реферат
Область техники, к которой относится изобретение
Настоящее изобретение относится в общем к системам обеспечения верительных данных и более конкретно, к способам и аппарату для обеспечения верительных данных прикладных программ для прикладных программ, выполняемых на устройствах, с целью аутентификации и защиты.
Описание предшествующего уровня техники
Достижения в технологии привели к разработке и вводу в действие обширных сетей передачи данных. Эти сети включают в себя и сети передачи данных общего пользования, типа Интернета, и специализированные сети, такие как беспроводные сети дальней связи. Пользователи этих сетей имеют возможность доступа к большому разнообразию информации и услуг, которые являются доступными в качестве сетевых ресурсов.
Одним примером области, в которой имеется возрастающая потребность в сетевых ресурсах, являются сетевые среды с беспроводной связью. В средах с беспроводной связью ряд беспроводных устройств, таких как радиотелефоны, персональные цифровые ассистенты (ПЦА) и устройства поисковой связи, осуществляют связь через сеть беспроводной связи. Сеть беспроводной связи также может включать в себя сетевые серверы, которые функционируют для обеспечения различных сетевых ресурсов для беспроводных устройств. Кроме того, сети беспроводной связи также могут быть подсоединены к сети общего пользования, типа Интернета, таким образом, чтобы ресурсы в сети общего пользования могли быть доступны для беспроводных устройств в сети беспроводной связи.
Как правило, беспроводное устройство может загружать прикладную программу из сети беспроводной связи. Прикладная программа может быть загружена бесплатно или куплена пользователем беспроводного устройства, который фактически получает права на использование прикладной программы или содержимого на неограниченный, установленный период или период до окончания некоторого срока. Во время выполнения прикладная программа может пытаться извлекать частные данные из сервера базы данных. Например, прикладная программа может быть прикладной программой поиска новостей, и во время работы прикладная программа запрашивает данные новостей от частного сервера базы данных новостей. Перед передачей данных сервер базы данных должен проверить, что прикладная программа наделена полномочиями для приема данных. Поэтому для прикладной программы необходимо выполнить аутентификацию на сервере базы данных.
Однако строгая аутентификация невозможна, если не имеется секретной информации, совместно используемой устройством и сервером, которая является разной для каждого устройства. Если это не имеет места, обратное проектирование прикладной программы выявит достаточно информации, чтобы получить доступ к серверу. Совместно используемая секретная информация должна распределяться внеполосно и не через сетевое соединение между устройством и сервером. Один подход состоит в том, чтобы снабжать отдельным ключом каждое устройство во время изготовления или продажи. Таким образом некоторые системы функционируют для выполнения аутентификации речевых вызовов. Однако эта методика не масштабируется для большого количества прикладных программ, не действует для прикладных программ, которые загружаются после приобретения устройства, и поставщики прикладных программ могут не иметь доступ к процессу изготовления или продажи.
Другая методика заключается в выпуске индивидуальных паролей для каждого пользователя устройства, где пароли распределяют с использованием голосовой почты, электронной почты, бумажной почты или некоторого другого внеполосного средства. Это может обеспечивать частичное решение, однако эти методики приводят к большей ответственности пользователей, большей величине накладных расходов для разработчика прикладных программ или содержимого и к потребности в создании, распределении и поддерживании паролей для каждой прикладной программы, используемой каждым пользователем.
Поэтому необходима система для обеспечения верительных данных прикладных программ, которые могут использоваться прикладными программами, выполняемыми на устройстве, для выполнения аутентификации их запросов данных от частных серверов баз данных, где верительные данные прикладных программ обеспечивают строгую аутентификацию без необходимости иметь множество паролей для каждого устройства.
Сущность изобретения
В одном или более вариантах осуществления описана система верительных данных, которая обеспечивает верительные данные для прикладных программ, выполняемых на устройстве. В одном варианте осуществления прикладная программа, выполняемая на устройстве, предоставляет идентификатор прикладной программы в запросе верительных данных, который посылается в систему верительных данных. Система верительных данных использует идентификатор прикладной программы и эталонные верительные данные для генерирования верительных данных прикладной программы для использования прикладной программой. После получения верительных данных прикладной программы прикладная программа посылает запрос данных в сервер базы данных, и запрос включает в себя верительные данные прикладной программы и идентификатор прикладной программы. Сервер базы данных принимает запрос и включает идентификатор прикладной программы в запрос верительных данных сервера, который посылается в сервер верительных данных. Сервер верительных данных имеет копию эталонных верительных данных. Сервер верительных данных использует идентификатор прикладной программы и эталонные верительные данные для генерирования верительных данных сервера, которые передаются назад на сервер базы данных. Затем сервер базы данных сравнивает верительные данные прикладной программы с верительными данными сервера и, если они совпадают, сервер посылает запрашиваемые данные прикладной программе. Таким образом, для прикладной программы возможно выполнять аутентификацию на сервере базы данных без использования специальных паролей.
В другом варианте осуществления сервер базы данных передает идентификатор прикладной программы и верительные данные прикладной программы на сервер верительных данных в запросе верификации верительных данных. Сервер верительных данных генерирует верительные данные сервера с использованием идентификатора прикладной программы и эталонных верительных данных. Сервер верительных данных сравнивает верительные данные прикладной программы с верительными данными сервера и определяет, совпадают ли эти верительные данные. Если верительные данные совпадают, сервер верительных данных передает положительный показатель в сервер базы данных, таким образом уполномочивая сервер базы данных на передачу запрашиваемых данных прикладной программе.
В одном варианте осуществления способ обеспечивает верительные данные прикладной программы для прикладной программы, выполняемой на устройстве, в котором верительные данные прикладной программы используются прикладной программой для выполнения аутентификации на сервере базы данных. Способ содержит прием запроса на генерирование верительных данных прикладной программы, причем запрос включает в себя идентификатор прикладной программы. Способ также содержит генерирование верительных данных прикладной программы с использованием идентификатора прикладной программы и эталонных верительных данных, связанных с устройством.
В другом варианте осуществления обеспечен аппарат, который функционирует для предоставления верительных данных прикладной программы прикладной программе, выполняемой на устройстве, в котором верительные данные прикладной программы используются прикладной программой для выполнения аутентификации на сервере базы данных. Аппарат содержит логическую схему приема, которая функционирует для приема запроса на верительные данные прикладной программы, причем запрос включает в себя идентификатор прикладной программы. Аппарат также содержит логическую схему генерирования, которая функционирует для генерирования верительных данных прикладной программы с использованием идентификатора прикладной программы и эталонных верительных данных.
В другом варианте осуществления обеспечен аппарат, который функционирует для предоставления верительных данных прикладной программы прикладной программе, выполняемой на устройстве, в котором верительные данные прикладной программы используются прикладной программой для выполнения аутентификации на сервере базы данных. Аппарат содержит средство для приема запроса на верительные данные прикладной программы, причем запрос включает в себя идентификатор прикладной программы. Аппарат также содержит средство для генерирования верительных данных прикладной программы с использованием идентификатора прикладной программы и эталонных верительных данных.
В другом варианте осуществления обеспечен машиночитаемый (пригодный для чтения компьютером носитель информации), содержащий команды, которые при выполнении процессором в устройстве обеспечивают верительные данные прикладной программы прикладной программе, выполняемой на устройстве, причем верительные данные прикладной программы используются прикладной программой для выполнения аутентификации на сервере базы данных. Пригодный для чтения компьютером носитель информации содержит команды для приема запроса на верительные данные прикладной программы, причем запрос включает в себя идентификатор прикладной программы. Пригодный для чтения компьютером носитель информации также содержит команды для генерирования верительных данных прикладной программы с использованием идентификатора прикладной программы и эталонных верительных данных.
В другом варианте осуществления обеспечен способ функционирования сервера верительных данных для выполнения аутентификации прикладной программы, выполняемой на устройстве, в котором прикладная программа передает запрос на данные в сервер базы данных, и запрос содержит верительные данные прикладной программы. Способ содержит прием идентификатора прикладной программы в запросе на верительные данные сервера и генерирование верительных данных сервера с использованием идентификатора прикладной программы и эталонных верительных данных. Способ также содержит передачу верительных данных сервера в сервер базы данных, в котором, если верительные данные сервера и верительные данные прикладной программы совпадают, прикладная программа является аутентифицированной.
Другие аспекты, преимущества и признаки настоящего изобретения поясняются последующим описанием сформулированных ниже краткого описания чертежей, подробного описания изобретения и формулы изобретения.
Краткое описание чертежей
Вышеизложенные аспекты и сопутствующие преимущества описанных вариантов осуществления станут более очевидными в отношении последующего подробного описания, приведенного в связи с прилагаемыми чертежами, на которых:
фиг. 1 изображает сеть передачи данных, которая содержит один вариант осуществления системы верительных данных, предоставляющей верительные данные прикладных программ для прикладных программ, выполняемых на беспроводном устройстве;
фиг. 2 изображает функциональную блок-схему, иллюстрирующую один вариант осуществления беспроводного устройства фиг. 1, который включает в себя один вариант осуществления системы верительных данных, функционирующей для обеспечения верительных данных прикладных программ для прикладных программ, выполняемых на устройстве;
фиг. 3 изображает один вариант осуществления способа функционирования системы верительных данных для обеспечения верительных данных прикладной программы для прикладной программы, выполняемой на устройстве;
фиг. 4 изображает функциональную блок-схему сервера базы данных, включающего в себя один вариант осуществления системы верительных данных, которая аутентифицирует запрос данных, принимаемый от прикладной программы, выполняемой на устройстве;
фиг. 5 изображает один вариант осуществления способа функционирования сервера базы данных в системе верительных данных для выполнения аутентификации верительных данных прикладной программы, обеспечиваемых прикладной программой, выполняемой на устройстве;
фиг. 6 изображает функциональную блок-схему другого варианта осуществления сервера базы данных, включающего в себя один вариант осуществления системы верительных данных, которая аутентифицирует запрос данных, принимаемый от прикладной программы, выполняемой на устройстве;
фиг. 7 изображает один вариант осуществления сервера верительных данных, который функционирует в системе верительных данных для выполнения аутентификации верительных данных прикладной программы, обеспечиваемых для прикладной программы, выполняемой на устройстве;
фиг. 8 изображает один вариант осуществления способа функционирования сервера верительных данных в системе верительных данных для выполнения аутентификации верительных данных прикладной программы, обеспечиваемых прикладной программой, выполняемой на устройстве;
фиг. 9 изображает функциональную блок-схему другого варианта осуществления сервера верительных данных, включающего в себя один вариант осуществления системы верительных данных, которая аутентифицирует запрос данных, принимаемый от прикладной программы, выполняемой на устройстве.
Подробное описание
В последующем подробном описании описывается система верительных данных, которая обеспечивает верительные данные для прикладной программы, выполняемой на устройстве. Устройство может быть вычислительным устройством любого типа, таким как настольный компьютер, сервер или компьютер другого типа. Система также хорошо подходит для использования с переносными устройствами, такими как планшетные компьютеры, ПЦА, беспроводные телефоны, устройствами электронной почты, пейджерами или любым другим типом переносного устройства. Поэтому, хотя система является подходящей для использования с большим разнообразием устройств, для ясности варианты осуществления изобретения описаны в данном описании со ссылкой на беспроводное устройство.
Устройство включает в себя копию эталонных верительных данных, которые были установлены в устройстве во время изготовления, или посредством использования некоторой другой процедуры обеспечения защиты, которая защищает эталонные верительные данные от публичного раскрытия. Эталонные верительные данные также известны на сервере верительных данных.
В одном или более вариантах осуществления система верительных данных взаимодействует с рабочей операционной средой, выполняемой на устройстве, которая используется для упрощения функционирования устройства, например, обеспечивая обобщенные запросы специфичных для устройства ресурсов. Одной такой рабочей операционной средой является бинарная рабочая операционная среда для программной платформы Wireless™ (BREW™), разработанной фирмой QUALCOMM, Inc., Сан-Диего, шт. Калифорния. В последующем описании предполагается, что устройство выполняет рабочую операционную среду типа платформы BREW программного обеспечения. Однако один или более вариантов осуществления системы верительных данных являются подходящими для использования с другими типами рабочих операционных сред, чтобы обеспечивать верительные данные прикладных программ для прикладных программ, выполняемых на ряде проводных и беспроводных устройств.
Фиг. 1 изображает сеть 100 передачи данных, которая содержит один вариант осуществления системы верительных данных, обеспечивающей верительные данные прикладных программ для прикладных программ, выполняемых на устройстве. Сеть 100 содержит беспроводное устройство 102, которое осуществляет связь с сетью 104 передачи данных через канал 106 беспроводной связи. Сеть 100 может быть сетью передачи данных любого типа и содержать как проводные, так и беспроводные компоненты. Сеть 100 также содержит сервер 108 верительных данных, который функционирует для обеспечения обслуживания беспроводного устройства 102 и других объектов, находящихся в связи с сетью 104. Например, беспроводным устройством 102 может быть беспроводной телефон, а сервером 108 верительных данных может быть часть общенациональной сети передачи данных, которая предоставляет телекоммуникационные услуги устройству 102. В связи с сетью 104 также находится сервер 110 базы данных. Сервер 110 базы данных функционирует для предоставления данных, таких как мультимедиа содержимое или других типов данных, устройствам, которые находятся в связи с сетью 104 беспроводной связи.
В одном варианте осуществления устройство 102 включает в себя эталонные верительные данные 114, которые были установлены в устройство во время изготовления или при использовании некоторой другой процедуры обеспечения защиты. Эталонные верительные данные 114 могут быть любым типом подходящих верительных данных, которые не делаются общеизвестными, чтобы обеспечить возможность устройству 102 выполнять аутентификацию в других объектах типа сервера 108 верительных данных. Устройство 102 также содержит логическую схему 116 генерирования верительных данных. Логическая схема 116 генерирования верительных данных генерирует верительные данные, основанные на конкретной входной информации. В одном варианте осуществления логическая схема 116 использует "одностороннюю" методику генерирования так, чтобы генерируемые верительные данные нельзя было декодировать или реверсировать, чтобы определить входную информацию, которая использовалась для генерирования верительных данных. Например, для генерирования верительных данных логическая схема 116 может использовать хеш-функцию.
Во время работы система верительных данных функционирует для обеспечения верительных данных прикладных программ для прикладных программ, выполняемых на устройстве 102, выполняя один или больше из следующих этапов.
1. Прикладная программа 118, выполняемая на устройстве 102, запрашивает верительные данные прикладной программы от системы верительных данных. Прикладная программа включает идентификатор (ИД) прикладной программы в запрос верительных данных прикладной программы. Запрос верительных данных прикладной программы показан ссылочной позицией 128.
2. Система верительных данных использует ИД прикладной программы и эталонные верительные данные 114 для генерирования верительных данных прикладной программы для прикладной программы 118. Верительные данные прикладной программы возвращаются к прикладной программе 118, как показано ссылочной позицией 130.
3. Прикладная программа 118 посылает верительные данные прикладной программы и, если требуется, ИД на сервер 110 базы данных с запросом на получение данных. Запрос на получение данных показан ссылочной позицией 120.
4. Сервер 110 базы данных посылает ИД в сервер 108 верительных данных в запросе верительных данных сервера. Запрос верительных данных сервера показан ссылочной позицией 122.
5. Сервер 108 верительных данных использует ИД и эталонные верительные данные 114 для генерирования верительных данных сервера с использованием логической схемы 116 генерирования верительных данных, которая размещена на сервере 108 верительных данных. Полученные в результате верительные данные сервера возвращаются на сервер 110 базы данных, как показано ссылочной позицией 124.
6. Сервер 110 базы данных сравнивает верительные данные прикладной программы с верительными данными сервера, и, если они совпадают, запрос 120 прикладной программы относительно данных является аутентифицированным, и сервер 110 базы данных передает запрашиваемые данные, как показано ссылочной позицией 126.
Поэтому, поскольку верительные данные прикладной программы могут изменяться для каждого пользователя, система функционирует так, чтобы выполнять аутентификацию и пользователя, и прикладной программы.
Фиг. 2 изображает функциональную блок-схему 200, иллюстрирующую один вариант осуществления устройства 102, которое включает в себя один вариант осуществления системы верительных данных, обеспечивающей верительные данные прикладных программ для прикладных программ, выполняемых на устройстве 102.
Устройство 102 содержит блок 202 проверки подписи прикладной программы/ИД, логическую схему 206 генерирования верительных данных, эталонные верительные данные 204, прикладную программу 210, ИД 212 прикладной программы и цифровую подпись 214. Эталонные верительные данные 204 сохраняются в защищенной энергонезависимой памяти или другой защищенной логической схеме так, чтобы они были защищены от стирания и несанкционированного раскрытия. Подпись 214 создается некоторой службой или органом подписания прикладных программ и связывает прикладную программу 210 с ИД 212 прикладной программы. В одном или более вариантах осуществления вместо подписи 214 можно использовать любой тип методики выявления модификации.
Блок 202 проверки подписи прикладной программы/ИД выявляет, если информация, закодированная цифровой подписью, была модифицирована. Это также обеспечивает возможность телефонной трубке твердо знать, что прикладная программа действительно является прикладной программой, которой назначен конкретный ИД прикладной программы. Например, посредством предоставления прикладной программы 210, ИД 212 и подписи 214 блоку 202 проверки блок 202 проверки может определять, были ли прикладная программа 210 и/или ИД 212 изменены или модифицированы после того, как была создана цифровая подпись. В одном или более вариантах осуществления блок 202 проверки функционирует согласно методике выявления модификации любого типа.
Логическая схема 206 генерирования верительных данных генерирует верительные данные на основе информации, принимаемой на ее входе. Логическая схема 206 генерирования использует "одностороннюю" методику для генерирования верительных данных, чтобы верительные данные нельзя было декодировать или реверсировать с целью определения информации, использованной для их создания.
Во время работы одного варианта осуществления прикладная программа 210 имеет связанный ИД 212 прикладной программы и подпись 214. Подпись 214 связывает прикладную программу 210 и ИД 212. Подпись могла быть сгенерирована разработчиком прикладной программы или третьим лицом, которое отличается от разработчика прикладной программы. Прикладная программа 210 функционирует, чтобы извлекать данные из сервера базы данных, например сервера 110 базы данных на фиг. 1. Однако чтобы извлекать данные, прикладная программа 210 должна получить верительные данные прикладной программы для выполнения аутентификации на сервере базы данных. Следующий способ описывает, как в одном варианте осуществления система верительных данных обеспечивает верительные данные прикладной программы для прикладной программы 210, чтобы прикладная программа 210 могла свидетельствовать о подлинности на сервере базы данных, например на сервере 110.
Фиг. 3 изображает один вариант осуществления способа 300 функционирования системы верительных данных для обеспечения верительных данных прикладной программы для прикладной программы, выполняемой на устройстве. Например, способ 300 будет описан со ссылкой на устройство 102, показанное на фиг. 2. Предположим, что прикладная программа 210 выполняется на устройстве 102 и что прикладной программе 210 требуются верительные данные прикладной программы для выполнения аутентификации на сервере базы данных для извлечения данных.
В блоке 302 устройство функционирует с целью определения, является ли прикладная программа 210 и/или ее ИД 212 модифицированной (измененной) или неправильно связанной. В одном варианте осуществления прикладная программа 210, ИД 212 и подпись 214 посылаются в блок 202 проверки, как показано маршрутом 224. Блок 202 проверки функционирует так, чтобы использовать любую известную методику для проверки того, что прикладная программа 210 и/или ИД 212 не были модифицированы.
В блоке 304 прикладная программа запрашивает верительные данные от системы верительных данных так, чтобы прикладная программа могла свидетельствовать о подлинности на сервере базы данных с целью извлечения данных. В одном варианте осуществления ИД 212 прикладной программы предоставляется логической схеме 206 генерирования верительных данных, как показано маршрутом 216 в запросе верительных данных прикладной программы. Отметим, что ИД 212 прикладной программы предоставляется после проверки, чтобы прикладная программа не могла предоставлять произвольный ИД для получения верительных данных для других прикладных программ.
В блоке 306 для прикладной программы генерируются верительные данные прикладной программы. В одном варианте осуществления логическая схема 206 генерирования генерирует верительные данные 208 прикладной программы с использованием ИД 212 прикладной программы и эталонных верительных данных 204. Например, в одном варианте осуществления логическая схема 206 генерирования для генерирования верительных данных 208 прикладной программы использует хеш-функцию для того, чтобы верительные данные 208 прикладной программы нельзя было декодировать или изменять, чтобы узнать эталонные верительные данные 204. Затем верительные данные 208 прикладной программы возвращаются прикладной программе 210, как показано маршрутом 218. Поскольку верительные данные 208 прикладной программы сгенерированы с использованием "односторонней" методики, никогда не существует риск обнаружения или раскрытия эталонных верительных данных 204.
В блоке 308 верительные данные прикладной программы используются прикладной программой для выполнения аутентификации на сервере базы данных, чтобы извлечь данные для использования на устройстве. Например, прикладная программа 210 передает верительные данные 208 в запросе данных на сервер базы данных, как показано маршрутом 220. Запрос также может включать в себя ИД 212 прикладной программы. Например, запрос передается на сервер 110 базы данных на фиг. 1. Сервер 110 базы данных может уже иметь доступ к ИД прикладной программы и поэтому для устройства может не требоваться передавать ИД на сервер базы данных.
В блоке 310, полагая что запрос данных прикладной программы является аутентифицированным, запрашиваемые данные передаются прикладной программе 210 от сервера базы данных, как показано маршрутом 222. Например, сервер 110 базы данных принимает запрос от прикладной программы 210 и функционирует для выполнения аутентификации прикладной программы перед передачей запрашиваемых данных. Более детальное описание процесса аутентификации, выполняемого сервером данных, обеспечивается в другом разделе этого документа.
Способ 300 предназначен в качестве иллюстративного и не ограничивает действие различных вариантов осуществления, описанных в данном описании. Например, должно быть очевидно, что специалисты в данной области техники могут выполнять незначительные изменения, добавления или исключения для любого из описанных способов. Кроме того, описанные этапы способа можно объединять, перегруппировывать или переупорядочивать, не выходя при этом за рамки объема описанных вариантов осуществления.
Фиг. 4 изображает функциональную блок-схему 400 сервера 110 базы данных, включающего в себя один вариант осуществления системы верительных данных, который аутентифицирует запрос данных, принимаемый от прикладной программы, выполняемой на устройстве. Например, сервер 110 принимает запрос данных от прикладной программы 210, и запрос включает в себя верительные данные 208 прикладной программы и ИД 212 прикладной программы. После того как сервер 110 аутентифицирует запрос, он предоставляет запрашиваемые данные прикладной программе 210. Сервер 110 содержит сервер 404 содержимого, содержимое/данные 406, логическую схему 402 сопоставления верительных данных.
В одном варианте осуществления логическая схема 402 сопоставления верительных данных функционирует для приема верительных данных прикладной программы и верительных данных сервера и их сравнения. Результат сравнения 418 посылается на сервер 404 содержимого. Обычно результат 418 будет подтверждением, когда верительные данные равны по значению. Основное различие между верительными данными 208 прикладной программы и верительными данными 414 сервера состоит в том, что первые были сгенерированы на устройстве конечного пользователя, а последние на сервере.
Следует отметить, что конфигурация сервера 110 является только одной конфигурацией, подходящей для реализации одного варианта осуществления системы верительных данных. В пределах объема настоящего изобретения также возможно реализовывать систему верительных данных с использованием других серверов или конфигураций серверов.
Фиг. 5 изображает один вариант осуществления способа 500 функционирования сервера базы данных в системе верительных данных для выполнения аутентификации верительных данных прикладной программы, обеспечиваемых прикладной программой, выполняемой на устройстве. Например, способ 500 будет описан со ссылкой на сервер 110, показанный на фиг. 4. Предположим, что прикладная программа 210 выполняется на устройстве 102 и что прикладная программа 210 получает верительные данные 208 прикладной программы от системы верительных данных. Прикладная программа 210 представляет верительные данные 208 прикладной программы и ИД 212 прикладной программы в запросе данных серверу 110 базы данных.
В блоке 502 сервер базы данных принимает запрос данных от прикладной программы, выполняемой на устройстве. Запрос данных содержит верительные данные 208 прикладной программы и ИД 212 прикладной программы.
В блоке 504 сервер базы данных запрашивает верительные данные сервера от сервера верительных данных. Например, ИД 212 прикладной программы и маркер 408 аутентификации посылаются (показано ссылочными позициями 410 и 412) на сервер верительных данных в запросе верительных данных сервера. Например, запрос передается на сервер 108 верительных данных.
В блоке 506 верительные данные сервера принимаются от сервера верительных данных. Например, сервер 108 верительных данных генерирует верительные данные 414 сервера с использованием ИД 212 прикладной программы и копии эталонных верительных данных 204, хранящейся на сервере 108 верительных данных. Верительные данные 414 сервера генерируются с использованием такой же методики генерирования верительных данных, которая использовалась для генерирования верительных данных 208 прикладной программы.
В блоке 508 выполняется проверка с целью определения, совпадают ли верительные данные 414 сервера с верительными данными 208 прикладной программы, таким образом аутентифицируя прикладную программу 210 в качестве стороны, запрашивающей данные. Например, логическая схема 402 сопоставления сопоставляет эти верительные данные с использованием методики сопоставления любого типа. Если эти верительные данные совпадают, на выходе 418 логической схемы сопоставления обеспечивается положительный показатель. В результате запрос данных прикладной программы 210 является аутентифицированным, и сервер 404 содержимого функционирует, чтобы передать содержимое/данные 406 прикладной программе 210, чтобы удовлетворить запрос данных прикладной программы. Если эти верительных данные не совпадают, на выходе 418 логической схемы сопоставления обеспечивается отрицательный показатель, и сервер 404 содержимого в ответ на запрос данных не предоставляет никакие данные.
Способ 500 предназначен в качестве иллюстративного и не ограничивает действие различных вариантов осуществления, описанных в данном описании. Например, должно быть очевидно, что специалисты в данной области техники могут выполнять незначительные изменения, добавления или исключения для любого из описанных способов. Кроме того, описанные этапы способа можно объединять, перегруппировывать или переупорядочивать, не выходя при этом за рамки объема описанных вариантов осуществления.
Фиг. 6 изображает функциональную блок-схему 600 другого варианта осуществления сервера 110 базы данных, который включает в себя один вариант осуществления системы верительных данных, которая аутентифицирует запрос данных, принятый от прикладной программы, выполняемой на устройстве. В показанном на фиг. 6 варианте осуществления сервер 110 включает в себя блок 602 направления верительных данных, который направляет ИД 212, маркер 408 аутентификации и верительные данные 208 прикладной программы (показанные ссылочными позициями 410, 412, и 604) на сервер верительных данных. Сервер верительных данных генерирует верительные данные сервера и сравнивает верительные данные сервера с верительными данными 208 прикладной программы. Если верительные данные прикладной программы и верительные данные сервера совпадают, сервер верительных данных передает подтверждение 606 полномочий на сервер 110 базы данных. Подтверждение полномочий пересылается (через маршрут 418) на сервер 404 содержимого, который затем функционирует, чтобы передать содержимое/данные 406 запрашивающей прикладной программе 210. Таким образом, в варианте осуществления, показанном на фиг. 6, сервер верительных данных функционирует, чтобы сравнивать верительные данные прикладной программы с верительными данными сервера, где в варианте осуществления по фиг. 4 это сравнение выполняет сервер 110 базы данных.
Фиг. 7 изображает один вариант осуществления сервера 108 верительных данных, который функционирует в системе верительных данных для выполнения аутентификации верительных данных прикладной программы, обеспечиваемых для прикладной программы, выполняемой на устройстве. Сервер 108 верительных данных содержит логическую схему 702 проверки полномочий, эталонные верительные данные 204 и логическую схему 706 генерирования верительных данных.
Фиг. 8 изображает один вариант осуществления способа 800 функционирования сервера верительных данных в системе верительных данных для выполнения аутентификации верительных данных прикладной программы, обеспечиваемых прикладной программой, выполняемой на устройстве. Например, способ 800 будет описан со ссылкой на сервер 108 верительных данных, показанный на фиг. 7. Предположим, что сервер 110 базы данных послал запрос на сервер 108 верительных данных, чтобы получить верительные данные сервера, которые могут соответствовать верительным данным 208 прикладной программы. Запрос верительных данных сервера, принятый сервером 108 верительных данных, включает в себя ИД 212 прикладной программы и маркер 408 аутентификации.
В блоке 802 сервер 108 верительных данных принимает запрос от сервера базы данных для получения верительных данных сервера. Например, сервер 110 базы данных передает запрос в сервер 108 верительных данных, чтобы получить верительные данные сервера, и запрос включает в себя ИД 212 прикладной программы и маркер 408 аутентификации.
В блоке 804 сервер 108 верительных данных использует маркер 408 аутентификации для выполнения аутентификации запроса в логической схеме 702 проверки полномочий. Эта аутентификация используется для того, чтобы убедиться, что запрос сделан для данного ИД 212 прикладной программы от сервера базы данных, которому разрешено обращаться к верительным данным 414 сервера, принадлежащим прикладной программе, указанной посредством ИД 212 прикладной программы.
В блоке 806 после того, как запрос был проверен, логическая схема 706 генерирования верительных данных использует ИД 212 прикладной программы и эталонные верительные данные 204 для генерирования верительных данных 414 сервера. Логическая схема 706 генерирования верительных данных в большинстве вариантов осуществления будет функционально такой же, как логическая схема 206 на оконечном устройстве 102.
В блоке 808 сервер верительных данных передает верительные данные 414 сервера на сервер базы данных (как показано маршрутом 704) так, чтобы сервер базы данных мог использовать верительные данные сервера для выполнения аутентификации запроса данных от прикладной программы, выполняемой на устройстве.
Способ 800 предназначен в качестве иллюстративного и не ограничивает действие различных вариантов осуществления, описанных в данном описании. Например, должно быть очевидно, что специалисты в данной област