RU2295753C2 - Безопасное распределение и выполнение приложений в беспроводной среде - Google Patents
Безопасное распределение и выполнение приложений в беспроводной среде Download PDFInfo
- Publication number
- RU2295753C2 RU2295753C2 RU2003137835/09A RU2003137835A RU2295753C2 RU 2295753 C2 RU2295753 C2 RU 2295753C2 RU 2003137835/09 A RU2003137835/09 A RU 2003137835/09A RU 2003137835 A RU2003137835 A RU 2003137835A RU 2295753 C2 RU2295753 C2 RU 2295753C2
- Authority
- RU
- Russia
- Prior art keywords
- application
- permission
- wireless device
- developer
- execute
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/54—Link editing before load time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/51—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
-
- E—FIXED CONSTRUCTIONS
- E04—BUILDING
- E04H—BUILDINGS OR LIKE STRUCTURES FOR PARTICULAR PURPOSES; SWIMMING OR SPLASH BATHS OR POOLS; MASTS; FENCING; TENTS OR CANOPIES, IN GENERAL
- E04H4/00—Swimming or splash baths or pools
- E04H4/0006—Devices for producing waves in swimming pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/30—Security of mobile devices; Security of mobile applications
- H04W12/35—Protecting application or service provisioning, e.g. securing SIM application provisioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/60—Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B69/00—Training appliances or apparatus for special sports
- A63B69/0093—Training appliances or apparatus for special sports for surfing, i.e. without a sail; for skate or snow boarding
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B71/00—Games or sports accessories not covered in groups A63B1/00 - A63B69/00
- A63B71/04—Games or sports accessories not covered in groups A63B1/00 - A63B69/00 for small-room or indoor sporting games
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63G—MERRY-GO-ROUNDS; SWINGS; ROCKING-HORSES; CHUTES; SWITCHBACKS; SIMILAR DEVICES FOR PUBLIC AMUSEMENT
- A63G31/00—Amusement arrangements
- A63G31/007—Amusement arrangements involving water
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/10—Integrity
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10T—TECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
- Y10T29/00—Metal working
- Y10T29/49—Method of mechanical manufacture
- Y10T29/49826—Assembling or joining
- Y10T29/49947—Assembling or joining by applying separate fastener
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Architecture (AREA)
- Civil Engineering (AREA)
- Structural Engineering (AREA)
- Mobile Radio Communication Systems (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
Abstract
Настоящее изобретение относится к обработке приложений для использования в беспроводном устройстве. Технический результат заключается в обеспечении безопасного и защищенного распределения и исполнения приложения с помощью систем и способов, которые тестируют приложение на соответствие заранее определенным критериям, связанным со средой, в которой оно будет исполняться. Используя правила и списки разрешений, выгрузку приложения и технологию обнаружения изменений, такие как цифровая подпись, настоящее изобретение предоставляет механизмы для безопасного распределения и исполнения тестированных или не тестированных приложений, определяя, было ли приложение изменено, имеет ли приложение разрешение на исполнение в данной среде беспроводных устройств, и выгружая приложение. 15 н. и 38 з.п. ф-лы, 7 ил.
Description
Настоящее изобретение относится к обработке приложений для использования в беспроводном устройстве и, более конкретно, к повышению безопасности, защищенности и сохранности приложений, выполняемых на беспроводных устройствах.
В последние годы беспроводная связь развивается взрывоподобными темпами. По мере того, как потребители и бизнес все более полагаются на свои беспроводные устройства, такие как мобильные телефоны и персональные цифровые помощники (PDA), провайдеры беспроводных услуг, например владельцы беспроводных сетей, стремятся повысить функциональность таких беспроводных устройств. Такая дополнительная функциональность не только повысила бы спрос на беспроводные устройства, но и привела бы к более широкому их использованию уже существующими владельцами. Однако повышение функциональности, в частности расширение приложений, к которым имеют доступ беспроводные устройства, дорого и усложнено, что мешает владельцам беспроводных сетей предоставлять такую функциональность.
Более того, почти нет уверенности в том, что приложение, загруженное в беспроводное устройство, будет работать правильно. В настоящее время надежды на способность приложения выполняться на беспроводном устройстве возлагаются на разработчика этого приложения, изготовителя беспроводного устройства и/или владельцев беспроводных сетей. Чем больше разрабатывается приложений и чем больше становится количество приложений в беспроводном устройстве, тем более динамичной становится среда беспроводного устройства. Например, беспроводное устройство в любой данный момент времени может отыскивать или выполнять множество различных приложений из большого пула доступных приложений. Следовательно, становится все более сложно контролировать загрузку каждого данного приложения и его безопасное выполнение на беспроводном устройстве.
Это становится особенно важным, поскольку неправильное выполнение приложения может не только нанести вред беспроводному устройству, но и причинить ущерб беспроводной сети и сетевым компонентам, включая другие беспроводные устройства. Например, одно приложение, если его не ограничить, может взять под контроль средства управления мощностью беспроводного устройства и создавать помехи для других беспроводных устройств, снижая общую емкость ячейки, обслуживающей это беспроводное устройство.
В настоящее время ни изготовители беспроводных устройств, ни владельцы беспроводных сетей не имеют технических средств для тестирования и безопасного распределения приложений в динамической среде распределения и выполнения приложений. Таким образом, существует опасность того, что приложение, загруженное в беспроводное устройство и выполняемое на нем, может причинить вред беспроводному устройству, беспроводной сети или другим компонентам сети.
Кроме того, по мере разработки большего числа приложений и повышения динамичности среды, в которой эти приложения распределяются по беспроводным устройствам, возникают и другие проблемы безопасности. С ростом количества приложений и их разработчиков также растет и желание узнать источник любого данного приложения, т.е. его разработчика. Владельцы беспроводных сетей или изготовители носимых устройств захотят убедиться с определенной степенью уверенности, что они смогут определить источник приложения, если это приложение причинит вред.
Следовательно, имеется потребность в системе и способе для создания более безопасной среды для распределения и выполнения приложений на беспроводном устройстве.
Система и способ по настоящему изобретению преодолевают недостатки существующих систем путем создания более безопасной среды для распределения и выполнения приложений, которая тестирует приложения по заранее определенным стандартам, обеспечивает трассируемость для разработчика для исключения искажений информации, проверяет приложения на несанкционированные модификации, позволяет удалить приложение из беспроводного устройства и/или использовать правила и систему разрешений, которые определяют среду, в которой приложение может выполняться.
Сертификация приложений на предмет соответствия заранее определенным стандартам дает возможность заранее обнаружить возможные ошибки, которые могут возникнуть во время выполнения. Это помогает предотвратить вредный эффект, способный возникнуть при выполнении приложения.
Трассируемость позволяет обеспечить отсутствие искажений информации. Если с приложением возникают проблемы, полезно отследить путь к источнику приложения, т.е. к разработчику, чтобы исправить такую проблему. Кроме того, функция трассируемости не позволит разработчикам как умышленно, так и случайно создавать приложения, которые дают вредные результаты.
Кроме того, возможность определить, было ли приложение модифицировано еще до его загрузки в беспроводное устройство, дает преимущество в повышении безопасности, гарантируя, что принятое приложение является тем же самым, которое было отправлено. Поскольку в беспроводной среде приложения распределяются более свободно, способность обнаружить модификацию приложения повышает уверенность в том, что принятое беспроводным устройством приложение не было умышленно или случайно изменено.
Создание набора правил и разрешений, которые определяют когда приложения могут исполняться, также повышает безопасность системы распределения и выполнения приложений, предотвращая несанкционированное исполнение приложений на платформах, например в системах или средах, для которых оно не предназначено.
Возможность удалить приложение из беспроводного устройства также повышает безопасность системы распределения приложений. Если приложение установлено на носимом устройстве либо изготовителем такого устройства, либо путем загрузки, наличие механизма для выгрузки приложения из-за непредвиденных негативных последствий повышает безопасность системы распределения и выполнения приложений за счет удаления вредного и нежелательного кода, который может создавать вредные эффекты. Системы и способы по настоящему изобретению могут обращаться к одной или нескольким описанным здесь технологиям. Однако обращение ко всем описанным и указанным здесь технологиям обеспечивает системам и способам по настоящему изобретению возможность высококачественного и безопасного распределения и исполнения приложений.
В одном варианте настоящего изобретения раскрывается способ распределения и обработки приложения, который содержит этапы, на которых принимают приложение и идентифицирующую информацию, проверяют, что приложение удовлетворяет заранее определенным критериям, присваивают приложению разрешение, передают приложение, разрешение и идентифицирующую информацию на устройство, используя технологию обнаружения модификаций, определяют, было ли приложение модифицировано при передаче, вводят правило в запоминающее устройство, определяют с помощью правила и разрешения, может ли приложение выполняться, и выгружают приложение из устройства.
В другом варианте настоящего изобретения раскрывается способ выполнения приложения на беспроводном устройстве, который содержит этапы, на которых вводят в запоминающее устройство правило для оценки разрешения, принимают информацию, содержащую приложение, разрешение и идентификатор, используя технологию обнаружения модификаций, принимают запрос на исполнение приложения на беспроводном устройстве, оценивают принятую информацию для определения наличия в ней модификаций, если принятая информация не была модифицирована, оценивают разрешение, ассоциированное с приложением, и, если разрешение дано, выполняют приложение.
В еще одном варианте настоящего изобретения раскрывается способ выполнения приложения на беспроводном устройстве, который содержит этапы, на которых вводят в устройство правило для оценки разрешения, принимают информацию, относящуюся к приложению, разрешению и идентификатору с использованием технологии определения наличия модификаций, принимают запрос на исполнение приложения на беспроводном устройстве, оценивают принятую информацию на предмет обнаружения модификаций, если принятая информация не была модифицирована, оценивают разрешение, ассоциированное с приложением, и, если разрешение дано, выполняют приложение.
На прилагаемых чертежах, являющихся неотъемлемой частью настоящего описания, приведены иллюстрации предпочтительных в настоящее время вариантов осуществления настоящего изобретения, которые в сочетании с общим описанием, приведенным выше, и подробным описанием предпочтительных вариантов, приводимым ниже, служат для пояснения принципов настоящего изобретения. На чертежах:
Фиг.1 - блок-схема, иллюстрирующая процесс высокого уровня безопасного распределения и исполнения приложений в примерном варианте настоящего изобретения.
Фиг.2 - блок-схема, иллюстрирующая архитектуру системы, в которой может быть реализован примерный вариант настоящего изобретения.
Фиг.3 - блок-схема, иллюстрирующая архитектуру беспроводной сети, в которой может быть реализована система безопасного распределения и исполнения приложений по примерному варианту настоящего изобретения.
Фиг.4 - блок-схема, иллюстрирующая беспроводное устройство и некоторые внутренние компоненты в примерном варианте настоящего изобретения.
Фиг.5 - блок-схема, иллюстрирующая информацию, используемую для создания цифровой подписи, передаваемой на беспроводное устройство в примерном варианте настоящего изобретения.
Фиг.6 - блок-схема, иллюстрирующая этапы, применяемые на сервере или серверах при распределении приложения в примерном варианте настоящего изобретения.
Фиг.7 - блок-схема, иллюстрирующая этапы, используемые в беспроводном устройстве при исполнении приложения в примерном варианте настоящего изобретения.
Ниже приводятся ссылки на примерный и предпочтительный варианты настоящего изобретения, показанные на прилагаемых чертежах, где на всех чертежах одинаковыми позициями обозначены одинаковые или подобные детали.
Сущность, достигаемый результат и преимущества настоящего изобретения будут более понятны специалистам из нижеследующего подробного описания в сочетании с прилагаемыми чертежами.
Настоящее изобретение обеспечивает безопасное и защищенное распределение и исполнение приложений с помощью систем и способов, которые тестируют приложение, чтобы убедиться, что оно удовлетворяет заранее определенным критериям, связанным со средой, в которой оно будет исполняться. Более того, используя списки правил и разрешений, удаление приложений и технологию обнаружения модификаций, такую как цифровая подпись, настоящее изобретение обеспечивает механизмы безопасного распределения и исполнения тестированных или не тестированных приложений путем определения, было ли приложение модифицировано, имеет ли оно разрешение на исполнение в данной среде беспроводного устройства и путем выгрузки приложения, если это является желательным.
Из вышесказанного специалистом должно быть ясно, что речь идет о файле прикладной программы, который распределяется и исполняется. «Приложение» также может включать файлы, имеющие исполняемое содержимое, такое как объектный код, сценарии, ява-файлы, файлы закладок (или PQA-файлы), WML-сценарии, побайтовый код и сценарии на языке Perl. Кроме того, упоминаемое здесь «приложение» может также содержать файлы, которые по своей природе не являются исполняемыми, такие как документы, которые должны открываться, или другие файлы данных, к которым необходимо получить доступ.
На фиг.1 представлена блок-схема, иллюстрирующая процесс высокого уровня безопасного распределения и исполнения приложения способом по примерному варианту настоящего изобретения. Вариант настоящего изобретения позволяет вводить в приложение идентификатор разработчика, тестировать приложение для среды, в которой оно должно работать, присваивать разрешения, которые можно использовать для определения, какие устройства или системы могут исполнять это приложение, и обеспечивает выгрузку приложения, если оно выполнит недопустимые или нежелательные действия. Для повышения безопасности распределения и исполнения приложений предпочтительно, чтобы системы и способы использовали все эти технологии. Однако следует понимать, что использование даже одной или нескольких из этих технологий приводит к повышению безопасности распределения и исполнения приложений.
Процесс высокого уровня начинается с присвоения приложению идентификатора разработчика (шаг 100). Этот процесс может выполняться путем связывания идентификатора разработчика с приложением при его распределении. Альтернативно, ассоциированный идентификатор разработчика может храниться вместе с соответствующим приложением на сервере в системе. Предпочтительно также, чтобы информация идентификатора разработчика хранилась и ассоциировалась с приложением так, чтобы ее нельзя было легко модифицировать.
Затем приложение тестируется на неправильную работу (шаг 105). Приложение может использоваться в среде, где неправильная операция может повлиять не только на устройство, на котором оно исполняется, но и на другие устройства, которые соединены с этим устройством или связаны с ним через сеть. Предпочтительно тестировать приложение, чтобы оно не выполняло ошибочных системных вызовов или не влияло отрицательно во время работы на устройство или на другие подключенные устройства. В одном варианте это тестирование выполняется через процесс сертификации, при котором приложение тестируется на соответствие заранее определенным критериям. Также предпочтительно, чтобы сертификационный процесс для тестирования приложений был независим от разработчика. Независимость сертификационного процесса способствует более точному и надежному тестированию.
Перед исполнением приложение проверяется на «разрешение» исполнения на данном устройстве (шаг 110). Эта проверка может выполняться с помощью разрешений или правил, описываемых ниже, или с помощью других механизмов проверки, известных специалистам. Более того, предпочтительно, чтобы приложение проверялось перед каждой попыткой исполнения. Такой процесс продолжительной проверки повышает безопасность исполнения приложений. Например, он защищает от вирусов-троянов, которые могут встраиваться в это приложение на исполняющем устройстве во время исполнения другого приложения.
Приложение, которое выполняет недопустимую или нежелательную операцию, затем выгружается из устройства (шаг 115). Это предотвращает нанесение дополнительного ущерба этим приложением и высвобождает память в устройстве для другого использования. Альтернативно, приложение можно не выгружать из устройства. Выгрузкой приложения может называться отключение этого приложения, при том что оно остается в устройстве.
На фиг.2 показана архитектура системы, в которой может быть реализован примерный вариант настоящего изобретения. Разработчик 200 создает приложение для использования на беспроводном устройстве 230. Как описано выше, специалистам должно быть ясно, что хотя в вышеприведенном описании используется тип файлов «приложение», могут использоваться и другие типы файлов. Более того, специалистам должно быть ясно, что настоящее изобретение может использоваться с другими беспроводными или проводными устройствами и может использоваться в беспроводных сетях, проводных сетях или в комбинированных сетях.
Обычно разработчик 200 получает комплект спецификаций, по которым он разрабатывает приложение для работы на беспроводном устройстве 230. В одном варианте беспроводное устройство содержит программную платформу, способствующую интерфейсу приложения с этим беспроводным устройством, например пакет BREW™, разработанный фирмой QUALCOMM, Incorporated, расположенной в Сан-Диего, Калифорния. Разработчик может создать приложение, удовлетворяющее требованиям программной платформы или пакета BREW™, стандартным спецификациям и правилам.
В одном варианте разработчик 200 соединен с центральным сервером 205, чтобы иметь возможность передать приложение электронным способом на центральный сервер 205. В одном варианте центральный сервер является сервером Штаб-квартиры Центра по контролю за приложениями (Application Control Center Headquarters, ACCHQ), который используется для распределения приложений по беспроводным устройствам. Разработчик 200 может использовать цифровую подпись на приложении (более подробно описывается ниже) для обнаружения факта модификации приложения. Следует понимать, что физическое соединение с центральным сервером не является необходимым. Например, разработчик 200 может послать приложение на центральный сервер 205 заказным отправлением, содержащим компакт-диск.
Кроме того, разработчик посылает на центральный сервер 205 различную информацию для определения источника. Информация для идентификации источника может ассоциироваться с приложением, которое идентифицирует разработчика, указывая, например, название компании, номер налогоплательщика этой компании или другую идентифицирующую информацию.
Центральный сервер 205 либо самостоятельно, либо через сервер 210 сертификации используется для анализа и сертификации приложений. В одном варианте в качестве сервера сертификации может использоваться Центр контроля за приложениями (Application Control Center, ACC). Сервер 210 сертификации может использоваться для анализа приложения, чтобы определить удовлетворяет ли оно заранее определенным сертификационным критериям. Сертификационными критериями, однако, могут быть любые критерии, которым приложение должно удовлетворять до исполнения на беспроводном устройстве. Такие критерии могут включать проверку того, что (а) приложение функционирует, как заявлено разработчиком, чтобы приложение вносило помехи в работу беспроводного устройства (например, чтобы оно не приводило к аварийному отказу телефона); (b) приложение не пытается получить доступ к данным или к памяти, к которым оно не должно иметь доступ (например, оно не имеет доступа к файлам или данным, относящимся к другим приложениям, операционной системе или программной платформе); и (с) оно не влияет отрицательно на ресурсы беспроводного устройства, например, пагубно монополизируя вход и выход беспроводного устройства.
Центральный сервер 205 может также вводить комплект разрешений в список, ассоциируемый с этим приложением. Такой список разрешений определяется разными факторами, включая анализ того, прошло ли приложение процесс сертификации, в каких сетях 220 этому приложению разрешено выполняться, и поддерживает ли беспроводное устройство это приложение. Для определения списка разрешений может использоваться множество факторов, задача определения этих факторов оставляется для тех специалистов, которые будут внедрять настоящее изобретение.
Центральный сервер 205 принимает идентификационную информацию разработчика и коррелирует ее с приложением, созданным разработчиком 200. Если в приложении имеются какие-либо проблемы, центральный сервер сможет идентифицировать источник приложения. В одном варианте информация о разработчике передается на беспроводное устройство 230 так, что корреляция может быть проведена беспроводным устройством или другими системами, соединенными с беспроводным устройством.
В одном варианте центральный сервер также соединен с сервером 215 загрузки приложений (СЗП) (Application Download Server, ADS). Это сервер 215 загрузки приложений используется для интерфейса с беспроводным устройством через беспроводную сеть 220 для загрузки приложения. Центральный сервер может также посылать на СЗП список разрешений и идентификатор разработчика, ассоциированные с приложением, которые будут там храниться до передачи на беспроводное устройство. Предпочтительно приложение, список разрешений и идентификатор разработчика имеют цифровую подпись центрального сервера для повышения защиты от модификаций.
Специалистам понятно, что СЗП может использоваться для соединения множества сетей 220 для распределения приложений, файлов и другой информации по различным беспроводным устройствам 230. Более того, для передачи списка разрешений приложения и идентификатора разработчика могут использоваться и проводные, и беспроводные сети.
В ответ на запрос о загрузке приложения СЗП 215 посылает по сети 220 на беспроводное устройство 230 приложение, список разрешений, идентификатор разработчика и цифровую подпись (подписи). В одном варианте беспроводное устройство 230 содержит ключ для проверки цифровой подписи для определения, не были ли модифицированы приложение, список разрешений и/или идентификатор разработчика.
Предпочтительно, если в настоящем изобретении используется цифровая подпись, чтобы центральный сервер использовал безопасный ключ для создания цифровой подписи и устанавливал ключ на беспроводном устройстве для проверки цифровой подписи. Используя безопасный ключ, беспроводное устройство будет иметь более высокую степень надежности, поскольку цифровая подпись создается центральным сервером, а не отправителем.
Если приложение вызывает какие-либо ошибки беспроводного устройства или по любой другой причине, беспроводное устройство может инициировать выгрузку приложения. Более того, приложение может быть выгружено из беспроводного устройства по запросу СЗП или центрального сервера. Такой запрос от сервера может быть инициирован по любой желаемой причине. Например, сервер может инициировать выгрузку приложения из беспроводного устройства, если приложение совершит недопустимую операцию в отношении другого устройства, при появлении новой версии приложения или даже по деловым причинам, диктующим необходимость выгрузки приложения. Такой процесс выгрузки приложения дополнительно защищает среду беспроводного устройства от повторного исполнения поврежденного и/или деструктивного приложения.
На фиг.3 показана архитектура беспроводной сети, в которой может быть реализована система распределения приложений по настоящему изобретению. На центральный сервер 302 возложена функция сертификации либо самостоятельно, либо в комбинации с сервером сертификации, прикладных программ как совместимых с определенным набором стандартов или правил программирования. Как описано выше, стандарты программирования могут быть сформулированы так, чтобы приложение исполнялось на программной платформе, такой как платформа BREW™.
В одном варианте база 304 данных центрального сервера состоит из записей идентификаторов для каждой прикладной программы, которая когда-либо загружалась на любой беспроводное устройство 330 в сети 300, электронного сервисного номера (ЭСН) (Electronic Service Number, ESN) лица, которое загружало прикладную программу и мобильного идентификационного номера (МИН) (Mobile Identification Number, MIN), уникального для беспроводного устройства 330, в которое загружена эта прикладная программа. Альтернативно, база 304 данных центрального сервера содержит записи для каждого беспроводного устройства 330 в сети 300, содержащие данные о модели беспроводного устройства, о владельце беспроводной сети, о регионе, в котором используется беспроводное устройство 330, и любую другую информацию, полезную для идентификации того, на каком беспроводном устройстве 330 какая прикладная программа загружена. Кроме того, база данных центрального сервера может хранить и идентификатор разработчика, ассоциированный с приложением.
В одном варианте центральный сервер 302 может также содержать источник 322 команды на выгрузку. Источник 322 команды на выгрузку - это лицо(лица) или устройство(устройства), которые могут принимать решение о выгрузке одной или более целевых прикладных программ. Источник 322 команды на выгрузку - это также устройство, которое «конструирует» команду 316 на выгрузку (описываемую ниже), которая передается на идентифицированное беспроводное устройство 330, на которое загружена целевая прикладная программа (программы). Альтернативно и без ограничений, источником 322 команды на выгрузку может быть лицо или лица или организации, причастные к разработке и выпуску целевой прикладной программы, лица или организации, причастные к производству беспроводного устройства 330 и/или лица или организации, причастные к функционированию любой части сети 300.
Центральный сервер 302 поддерживает связь с одним или более сервером 306, например СЗП, по сети 308, например, через Интернет, предпочтительно, по защищенной сети. Серверы 306 также поддерживают связь с несущей сетью 310 по сети 308. Несущая сеть 310 поддерживает связь с мобильным центром 312 коммутации (МЦК) и по Интернету и по обычной телефонной сети (совместно показанным на фиг.4 позицией 311). Через Интернет-соединение 311 между несущей сетью 310 и мобильным центром 312 коммутации передаются данные, а по телефонной сети 311 передается голосовая информация. Мобильный центр 312 коммутации в свою очередь соединен с множеством базовых станций 314. Мобильный центр 312 коммутации соединен с базовыми станциями и через Интернет (для передачи данных) и через обычную телефонную сеть (для передачи голосовой информации). Базовая станция 314 посылает беспроводные сообщения на беспроводные устройства 330 с помощью службы коротких сообщений (СКС) (SMS) или любым другим способом, используемым в беспроводной связи.
Одним примером сообщения, посылаемого базовой станцией 314, является команда 316 на выгрузку. Как дополнительно описано ниже, беспроводное устройство 330 в ответ на прием команды 316 на выгрузку отвечает деинсталляцией целевой прикладной программы, хранящейся в беспроводном устройстве 330. В одном варианте команда на выгрузку может быть дополнительно или альтернативно запрограммирована так, чтобы останавливать выполнение целевой прикладной программы или перепрограммировать ее так, чтобы она работала по-другому. Беспроводное устройство может также стирать приложение и любую связанную с ним информацию, например список разрешений.
Команда 316 на выгрузку «конструируется» источником 322 (который может быть тем же лицом или организацией, которое приняло решение о инициации выгрузки целевой прикладной программы, или другим лицом или организацией). Команда 316 на выгрузку посылается источником 322 по сети 300 для передачи на беспроводное устройство 330.
Использование команды на выгрузку описанным выше способом приводит к повышению безопасности при распределении и исполнении приложений за счет создания механизма удаления поврежденных или нежелательных приложений. Специалистам понятно, что еще до получения описанной выше команды на выгрузку от центрального сервера беспроводное устройство также может инициировать выгрузку или деинсталляцию приложения и связанной с ним информации.
Подобным же образом вышеописанная сеть может использоваться для посылки приложения, списка разрешений и ассоциированной цифровой подписи от центрального сервера на различные серверы 306 (например, СЗП) через мобильные центры коммутации и базовые станции на беспроводные устройства 330.
На фиг.4 показано беспроводное устройство и некоторые его внутренние компоненты в примерном варианте настоящего изобретения. Несмотря на то, что этот вариант относится к беспроводному устройству 400, он используется как пример, без каких-либо ограничений. Изобретение может быть альтернативно реализовано на любом удаленном модуле, способном осуществлять связь по сети, включая без ограничений, проводные и беспроводные устройства, такие как «персональные цифровые помощники» (ПЦП) (PDA), беспроводные модемы, карты PCMCIA, терминалы доступа, персональные компьютеры, устройства без дисплея и клавиатуры или любая комбинация или субкомбинация таких устройств. Эти примеры удаленных модулей также могут иметь пользовательский интерфейс, такой как клавиатура, видеодисплей или звуковой дисплей.
Беспроводное устройство 400, показанное на фиг.4, имеет специализированную интегральную схему (СИС) ("ASIC") 415, установленную во время изготовления этого беспроводного устройства. Во время изготовления в беспроводное устройство 400 также устанавливается программный интерфейс приложения (ПИП) ("API") 410. В одном варианте ПИП представляет BREW ПИП или программную платформу. ПИП 410 - это программное средство, сконфигурированное для взаимодействия с СИС. ПИП 410 служит интерфейсом между аппаратными средствами СИС 415 и прикладными программами (описываемыми ниже), инсталлированными на беспроводном устройстве 400. Альтернативно, беспроводное устройство 400 может содержать любые другие формы схем, которые позволят программам работать способом, совместимым с конфигурацией аппаратных средств беспроводного устройства 400. Беспроводное устройство 400 также имеет запоминающее устройство 405. Запоминающее устройство 405 состоит из ОЗУ и ПЗУ, однако, альтернативно, может относиться к любому другому типу - СППЗУ, ЭСППЗУ или сменным флэш-картам памяти.
Запоминающее устройство 405 в беспроводном устройстве может использоваться для хранения принятых прикладных программ и списков разрешений 425. Кроме того, запоминающее устройство 405 может использоваться для хранения одного или более «ключей». Эти ключи могут применяться к цифровой подписи, используя алгоритм подписи для определения, не была ли модифицирована подписанная информация.
На беспроводном устройстве 400 могут устанавливаться правила 435. Эти правила могут использоваться в сочетании со списком разрешений для определения, имеет ли приложение разрешение на исполнение. Например, в правиле может указываться, что приложению разрешено исполняться, если в списке разрешений установлен сертификационный флаг (т.е. указывающий, что приложение прошло сертификацию). В списке разрешений сертификационный флаг устанавливается или нет, в зависимости от того, прошло ли приложение сертификацию или нет. Применяя это правило к информации, содержащейся в списке разрешений, выдается либо разрешение, либо запрет на исполнение этого приложения.
Изготовитель (не показан) беспроводного устройства 400 может загружать прикладные программы в запоминающее устройство 405 этого беспроводного устройства 400 во время его изготовления. Такие прикладные программы могут быть любыми программами, потенциально полезными для пользователя или являющимися развлекательными программами, например игры, книги или любые другие типы данных или программ. Прикладные программы также можно загружать в беспроводное устройство 400 и по каналам связи после того, как это устройство будет изготовлено.
Программа удаления, исполняемая на беспроводном устройстве 400, деинсталлирует одну или более прикладных программ из установленных на беспроводном устройстве 400. Целевая прикладная программа - это прикладная программа, которую нужно выгрузить из беспроводного устройства по различным причинам, описываемым ниже.
Беспроводное устройство 400 имеет локальную базу 420 данных, установленную изготовителем. ПИП беспроводного устройства запрограммирован на автоматическое обновление локальной базы 420 данных, записывая в нее идентифицирующую информацию о каждой прикладной программе, хранящейся в беспроводном устройстве 400. Локальная база 420 данных содержит запись об идентификационных подписях, уникальных для каждой прикладной программы, хранящейся в беспроводном устройстве 400. Дополнительно, локальная база 420 данных может содержать запись о расположении прикладных программ в запоминающем устройстве 405 беспроводного устройства 400 и любую другую информацию, полезную для слежения за загрузкой прикладных программ в беспроводное устройство 400 и за их расположением в нем.
Фиг.5 - это блок-схема, показывающая информацию, используемую для создания цифровой подписи и передаваемую на беспроводное устройство в примерном варианте настоящего изобретения. Как известно специалистам, цифровые подписи могут использоваться для определения наличия модификаций в файлах. Как описано выше, цифровая подпись может использоваться с любыми файлами, включая документы, приложения, базы данных и пр. В общем цифровая подпись создается путем применения к файлу ключа с использованием алгоритма подпись. Такая цифровая подпись создается с использованием информации, содержащейся в файле. Типично, цифровая подпись посылается получателю вместе с файлом. Получатель файла и цифровой подписи затем может применить к файлу и цифровой подписи ключ, чтобы определить, не был ли файл изменен при его передаче получателю.
Ключи, используемые для создания и оценки цифровой подписи, могут использоваться для определения личности подписавшего. Например, можно сгенерировать и хранить в недоступной форме ключ для создания цифровой подписи организации. Эта организация может распространить соответствующий ключ для проверки своей цифровой подписи. Если ключ хранится в безопасности и не стал доступен посторонним, получатель, проверяя цифровую подпись, может определить не только факт изменения информации, но и личность отправителя. Альтернативно, организации - третьи лица могут создавать ключи для других организаций в защищенном режиме. Таким образом, получатель, имеющий ключ, ассоциированный с конкретной личностью, получит возможность определить, является ли отправителем именно эта личность.
В одном варианте осуществления настоящего изобретения цифровая подпись 515 генерируется с помощью ключа 525, например ключа центрального сервера (см. фиг.2), приложения 500, списка 505 разрешений и идентификатора 510 разработчика, которые подаются на вход алгоритма 530 создания цифровой подписи. Результатом работы алгоритма является цифровая подпись 515, которая зависит от информации, поданной на вход.
После создания цифровой подписи 515 приложение 500, список 505 разрешений, идентификатор 510 разработчика и цифровая подпись 515 передаются на беспроводное устройство 520. Беспроводное устройство затем может использовать цифровую подпись для определения, не были ли изменены какое-либо приложение или связанная с ним информация (например, список разрешений и идентификатор разработчика). Кроме того, использование одной из вышеуказанных технологий, например безопасный ключ, дает уверенность в личности того, кто передал эту информацию на беспроводное устройство.
Фиг.6 - блок-схема, описывающая шаги, применяемые сервером или серверами при распределении приложений в соответствии с примерным вариантом настоящего изобретения. В этом примерном варианте процесс начинается с приема приложения и цифровой подписи (шаг 600). Цифровая подпись - это информация, связанная с приложением так, что позволяет определить, не было ли изменено приложение перед приемом. Более того, предпочтительно, чтобы ключ, используемый для создания цифровой подписи, присваивался третьей стороной для того, чтобы удостовериться, что организация или разработчик, подписавшие приложение, являются той организацией или тем разработчиком, которые получили этот ключ.
После приема приложения и цифровой подписи цифровую подпись проверяют для определения, является ли разработчик, отправивший приложение, и разработчик, подписавший приложение, одним и тем же лицом (шаг 605). Если разработчику ключ для создания цифровой подписи был выдан третьей стороной, то эта третья сторона может выдать ключ принимающей стороне, например центральному серверу, описанному со ссылками на фиг.2, для проверки цифровой подписи.
Идентификация разработчика или любого лица, подписавшего и/или создавшего приложение, затем вводится в запоминающее устройство и ассоциируется с приложением (шаг 610). Память может быть организована в табличной форме, в форме базы данных или в любой другой форме, позволяющей извлекать информацию, если в дальнейшем понадобится определить личность разработчика. В одном варианте настоящего изобретения информация о разработчике хранится не на сервере, а в беспроводном устройстве.
Затем принятое приложение проверяется на соответствие установленным критериям (шаг 615). В одном варианте приложение может быть написано для исполнения на конкретной платформе, такой как платформа BREW™, разработанной корпорацией QUALCOMM, Incorporated, расположенной в Сан-Диего, Калифорния и применяемой в беспроводных устройствах. Конкретная платформа или устройство могут иметь конкретные требования, которым должно удовлетворять приложение прежде, чем оно будет исполняться на этом устройстве. Например, платформа или устройство могут требовать, чтобы приложение не обращалось к конкретным адресам памяти, чтобы не была нарушена целостность устройства или других приложений, расположенных в памяти. Эти критерии можно специфицировать и приложение можно тестировать для определения соответствия этим критериям. Предпочтительно такие критерии определяются заранее и предоставляются разработчику для учета во время разработки приложений.
После сертификации для данной среды присваиваются разрешения, ассоциированные с приложением (шаг 620). Разрешения могут присваиваться на базе множества факторов в зависимости от среды, в которой реализуется настоящее изобретение. В одном варианте приложения предназначены для работы на беспроводных устройствах. В этой среде присвоение разрешений может зависеть от несущей сети, требований к беспроводному устройству, результатов проверки на сертификацию и тестовой среды разработчика или владельца сети. Таким образом, пример списка разрешений является индикатором, что приложение прошло тестирование на сертификацию и может исполняться в конкретной сети.
Затем сервер ставит цифровую подпись на приложение, список разрешений и идентификатор разработчика (шаг 625). В одном варианте эта подпись совершается с помощью защищенного ключа так, что те, кто принимает подписанную информацию, могут определить тождественность сервера. Осуществить подпись разработчика, полученную сервером, или посылать ее на беспроводное устройство не требуется.
Приложение, список разрешений, идентификатор разработчика и подпись, созданная на шаге 625, затем передаются на беспроводное устройство (шаг 630).
На фиг.7 представлена блок-схема, иллюстрирующая шаги, применяемые в беспроводном устройстве при исполнении приложения в соответствии с примерным вариантом настоящего изобретения. В этом варианте беспроводное устройство сохраняет правила для оценки разрешений, ассоциированных с приложением (шаг 700). Специалистам понятно, что хотя в настоящем изобретении описывается парадигма правил/разрешений, существует много парадигм, которые можно использовать для выдачи разрешений на использование приложения на конкретном устройстве или платформе, и они попадают в объем настоящего изобретения.
Беспроводное устройство затем принимает приложение, список разрешений, идентификатор разработчика и цифровую подпись (шаг 705). В одном варианте беспроводное устройство может оценивать принятую цифровую подпись для определения личности подписавшего. Цифровая подпись может также использоваться для определения факта модификации приложения, списка разрешений или идентификатора разработчика после того, как подпись была поставлена.
Беспроводное устройство затем принимает запрос на исполнение приложения (шаг 710). Запрос может прийти от пользователя беспроводного устройства, желающего запустить программу. Альтернативно, запрос может быть сделан самим беспроводным устройством или получен беспроводным устройством из удаленного источника по сети или через прямое соединение с беспроводным устройством.
Получив запрос, прежде, чем исполнять приложение, беспроводное устройство оценивает цифровую подпись и список разрешений, ассоциированный с приложением (шаг 720). Как описано выше, беспроводное устройство в одном варианте может использовать правила для оценки списка разрешений. Если в результате оценки цифровой подписи будет обнаружено, что приложение, список разрешений или идентификатор разработчика не модифицированы, тогда беспроводное устройство оценивает список разрешений на соответствие хранящимся в его памяти правилам. Если модификаций не было и анализ соответствия списка разрешений правилам показывает, что приложению дано разрешение на исполнение на этом беспроводном устройстве, то начинается исполнение этого приложения на устройстве (шаг 730).
Если оценка на шаге 720 покажет, что приложение, список разрешений или идентификатор разработчика после проставления цифровой подписи подверглись изменению, или что приложению отказано в разрешении на исполнение на этом беспроводном устройстве, тогда приложение не исполняется (шаг 725). Начинается процесс выгрузки приложения из беспроводного устройства (шаг 750). Предпочтительно также, чтобы список разрешений и идентификатор разработчика также выгружались из проводного устройства.
После шага 730 производится мониторинг исполнения приложения для определения, не выполняет ли оно недопустимых или ошибочных операций (шаг 735). Беспроводное устройство или платформа, которую использует беспроводное устройство, могут определить некоторые операции как недопустимые или ошибочные. К таким операциям могут относиться те, которые пытаются получить доступ к закрытым для них участкам или ячейкам памяти, которые используются другими программами или файлами. Кроме того, эти операции могут заключаться во вредном использовании ресурсов беспроводного устройства так, что вредят не только беспроводному устройству, но и другим устройствам в сети, к которой подключено это беспроводное устройство.
При попытке совершить такую недопустимую или ошибочную операцию исполнение приложения останавливается (шаг 745) и приложение выгружается из беспроводного устройства (шаг 750) предпочтительно вместе с идентификатором разработчика и списком разрешений. Как указано выше, альтернативно, процесс выгрузки может заключаться в прекращении выполнения приложения, но с сохранением его в беспроводном устройстве.
Если на шаге 735 не выполняется недопустимых или ошибочных операций, то приложению разрешается продолжать исполняться (шаг 740).
Используя механизмы сертификации, обнаружения модификаций, определения личности источника, присвоения разрешений и встраивая возможность выгрузки приложений, системы и способы в соответствии с настоящим изобретением повышают безопасность и защищенность распределения и исполнения приложений. Такие системы и способы могут использовать некоторые или все такие механизмы. Чем больше реализовано механизмов, тем выше степень безопасности.
В одном варианте разработчик посылает приложение на сервер. Разработчик может использовать цифровую подпись для защиты приложения от несанкционированного изменения. Сервер проверяет личность разработчика и выполняет сертификационное тестирование приложения. Приложение, список разрешений и идентификатор разработчика получают цифровую подпись сервера и вместе с этой подписью посылаются на беспроводное устройство. Перед исполнением приложения беспроводное устройство проверяет цифровую подпись на изменение и список разрешений на соответствие правилам, хранящимся в его памяти. В одном варианте такие проверки осуществляются перед каждой попыткой исполнить приложение на беспроводном устройстве. Если проверка показывает наличие изменений в приложении или отказ в разрешении на исполнение, приложение не исполняется и выгружается из беспроводного устройства. Более того, если во время исполнения приложение попытается выполнить недопустимую или ошибочную операцию, его исполнение будет прервано и оно будет выгружено из беспроводного устройства.
Вышеуказанное описание реализации настоящего изобретения представлено с целью иллюстрации. Оно не является исчерпывающим и не ограничивает объема настоящего изобретения описанной формой. В свете вышеизложенного возможны различные изменения и дополнения, которые также могут быть внесены в ходе реализации настоящего изобретения. Например, в описанном варианте используются программные средства, но другой вариант настоящего изобретения может быть реализован как комбинация программных или аппаратных средств или в виде только аппаратных средств. Настоящее изобретение может быть реализовано с помощью как объектно-ориентированных, так и не объектно-ориентированных систем программирования. Кроме того, аспекты настоящего изобретения описаны как хранимые в памяти, специалистам понятно, что такие аспекты могут храниться и на других типах машинных носителей, например в устройствах вторичной памяти, таких как жесткие диски, гибкие диски, оптические носители, несущая волна от Интернета или другая среда распространения, или другие формы ОЗУ и ПЗУ. Объем настоящего изобретения определяется формулой изобретения, которая представлена ниже.
Claims (53)
1. Способ распределения и исполнения приложений, содержащий шаги, на которых принимают приложение и идентифицирующую информацию, содержащую идентификатор, присвоенный приложению, который является идентификатором разработчика, сертифицируют приложение на соответствие заранее определенным критериям, присваивают приложению разрешение, которое является разрешением на исполнение приложения на определенном устройстве в определенной сети, передают приложение, разрешение и идентифицирующую информацию на устройство, использующее технологию обнаружения изменений, определяют, было ли приложение изменено во время передачи, вводят в память устройства данные, содержащие правило, определяющее, может ли принятое приложение быть исполнено на данном устройстве, с помощью разрешения и правила определяют, может ли приложение исполняться, исполняют приложение, выгружают приложение из устройства.
2. Способ по п.1, в котором на шаге исполнения приложения инициируют исполнение приложения на устройстве, осуществляю мониторинг исполнения приложения, и обнаруживают попытки приложения выполнить недопустимую операцию.
3. Способ по п.1, в котором приложению отказывают в разрешении на исполнение на устройстве.
4. Способ по п.1, по которому идентификационная информация извлекается устройством.
5. Способ по п.1, который также содержит шаг, на котором обнаруживают изменение в приложении.
6. Способ по п.1, который также содержит шаг, на котором обнаруживают изменение в разрешении.
7. Способ по п.1, по которому в технологии обнаружения изменений используют цифровую подпись.
8. Способ распределения и исполнения приложений, содержащий шаги, на которых принимают приложения и идентифицирующую информацию, содержащую идентификатор, присвоенный приложению, который является идентификатором разработчика, сертифицируют приложение на соответствие заранее определенным критериям, присваивают приложению разрешение, которое является разрешением на исполнение приложения на определенном устройстве в определенной сети, передают приложение, разрешение и идентифицирующую информацию на беспроводное устройство, вводят в память устройства данные, содержащие правило, определяющее может ли принятое приложение быть исполнено на данном устройстве, с помощью разрешения и правила определяют, может ли приложение исполняться, и исполняют приложение.
9. Способ по п.8, в котором на шаге исполнения приложения инициируют исполнение приложения на беспроводном устройстве, осуществляют мониторинг исполнения приложения, обнаруживают попытки приложения выполнить недопустимую операцию, и выгружают приложение из беспроводного устройства.
10. Способ по п.8, по которому приложению отказывают в разрешении на исполнение на беспроводном устройстве и который также содержит шаг, на котором выгружают приложение из устройства.
11. Способ по п.8, по которому идентификационная информация определяется беспроводным устройством.
12. Способ по п.8, по которому для передачи приложения, разрешения и идентификационной информации используют технологию обнаружения изменений.
13. Способ по п.12, по которому в технологии обнаружения изменений используют цифровую подпись.
14. Способ по п.12, который также содержит шаги, на которых обнаруживают изменения в приложении, переданном на устройство, и выгружают приложение из устройства.
15. Способ по п.12, который также содержит шаги, на которых обнаруживают изменение в разрешении, переданном на устройство, и выгружают приложение из устройства.
16. Способ распределения и исполнения приложений, содержащий шаги, на которых принимают приложение и идентификационную информацию, содержащую идентификатор, присвоенный приложению, который является идентификатором разработчика, присваивают приложению разрешение, которое является разрешением на исполнение приложения на определенном устройстве в определенной сети, передают приложение, разрешение и идентификационную информацию на устройство, используя технологию обнаружения изменений, определяют, было ли приложение изменено во время передачи, вводят в память устройства данные, содержащие правило, определяющее, может ли принятое приложение быть исполнено на данном устройстве, используя разрешение и правило определяют, может ли приложение исполняться, исполняют приложение и выгружают приложение из устройства.
17. Способ по п.16, в котором на шаге исполнения приложения инициируют исполнение приложения на беспроводном устройстве, осуществляют мониторинг исполнения приложения, обнаруживают попытки приложения выполнить недопустимые операции и выгружают приложение из беспроводного устройства.
18. Способ по п.16, по которому приложению отказывают в разрешении на исполнение на беспроводном устройстве и который также содержит шаг, на котором приложение выгружают из устройства.
19. Способ по п.16, по которому идентификационная информация определяется беспроводным устройством.
20. Способ по п.16, по которому для передачи приложения, разрешения и идентификационной информации используют технологию обнаружения изменений.
21. Способ по п.20, по которому технология обнаружения изменений использует цифровую подпись.
22. Способ по п.20, который также содержит шаги, на которых обнаруживают изменения в приложении, переданном на устройство, и выгружают приложение из устройства.
23. Способ по п.12, который также содержит шаги, на которых обнаруживают изменения в приложении, переданном на устройство, и выгружают приложение из устройства.
24. Система для распределения и исполнения приложения на беспроводном устройстве, содержащая центральный сервер, выполненный с возможностью принимать приложение и идентификатор разработчика, присваивать разрешения, ассоциированные с приложением, и передавать информацию о приложении на беспроводное устройство, сервер, выполненный с возможностью сертификации приложения на соответствие заранее определенным критериям, и беспроводное устройство, выполненное с возможностью принимать приложение и идентификатор разработчика и оценивать присвоенное разрешение.
25. Система по п.24, в которой центральный сервер также выполнен с возможностью передавать приложение на беспроводное устройство, используя технологию обнаружения изменений.
26. Система по п.24, в которой центральный сервер также выполнен с возможностью передавать разрешение на беспроводное устройство, используя технологию обнаружения изменений.
27. Система по п.24, в которой сервером сертификации приложений является центральный сервер.
28. Система по п.24, в которой беспроводное устройство выполнено с возможностью оценки присвоенного разрешения, используя правило, хранящееся в беспроводном устройстве.
29. Система для распределения и исполнения приложения на беспроводном устройстве, содержащая средство для приема приложения и идентифицирующей информации, содержащей идентификатор, присвоенный приложению, который является идентификатором разработчика, средство для присвоения приложению разрешения, которое является разрешением на исполнение приложения на определенном устройстве в определенной сети, средство для передачи приложения, разрешения и идентификационной информации на устройство с использованием технологии обнаружения изменений, средство для обнаружения изменений приложения, средство для хранения в устройстве данных, содержащих правило, определяющее, может ли принятое приложение быть исполнено на данном устройстве, средство для определения с помощью разрешения и правила, может ли приложение исполняться, средство для исполнения приложения, и средство для выгрузки приложения из устройства.
30. Способ выполнения распределения приложений, содержащий шаги, на которых принимают приложение и идентификационную информацию, содержащую идентификатор, присвоенный приложению, который является идентификатором разработчика, сертифицируют соответствие приложения заранее определенным критериям, присваивают разрешение приложению, которое является разрешением на исполнение приложения на определенном устройстве в определенной сети, передают приложение, разрешение и идентификационную информацию на устройство с использованием технологии обнаружения изменений, и инициируют запрос на выгрузку приложения из устройства.
31. Способ по п.30, который также содержит шаги, на которых оценивают принятое приложение и идентификационную информацию для определения личности разработчика приложения.
32. Способ по п.30, по которому в технологии обнаружения изменений используют цифровую подпись.
33. Способ выполнения распределения приложения, содержащий шаги, на которых принимают приложение и идентификационную информацию, содержащую идентификатор, присвоенный приложению, который является идентификатором разработчика, присваивают разрешение приложению, которое является разрешением на исполнение приложения на определенном устройстве в определенной сети, и передают приложение, разрешение и идентификационную информацию на устройство, используя технологию обнаружения изменений.
34. Способ по п.33, который также содержит шаг, на котором инициируют запрос на выгрузку приложения из устройства.
35. Способ по п.33, который также содержит шаг, на котором сертифицируют соответствие приложения заранее определенному критерию.
36. Способ по п.33, который также содержит шаг, на котором оценивают принятое приложение и идентификационную информацию для определения личности разработчика приложения.
37. Способ по п.33, по которому в технологии обнаружения изменений используют цифровую подпись.
38. Система для распределения приложения, содержащая центральный сервер, выполненный с возможностью прима приложения и идентификационной информации, содержащей идентификатор, присвоенный приложению, который является идентификатором разработчика, присвоения разрешения, которое является разрешением на исполнение приложения на определенном устройстве в определенной сети, передачи приложения с использованием технологии обнаружения изменений, и сетевое соединение с центральным сервером для приема приложения.
39. Система по п.38, в которой центральный сервер также выполнен с возможностью сертификации соответствия приложения заранее определенному критерию.
40. Система для распределения приложения, содержащая средство для приема приложения и идентификационной информации, содержащей идентификатор, присвоенный приложению, который является идентификатором разработчика, средство для сертификации соответствия приложения заранее определенному критерию, средство для присвоения приложению разрешения, которое является разрешением на исполнение приложения на определенном устройстве в определенной сети, и средство для передачи приложения, разрешения и идентификационной информации на устройство с использованием технологии обнаружения изменений.
41. Машиночитаемый носитель, содержащий выполняемые компьютером команды для распределения приложений, при которых принимают приложение и идентификационную информацию, содержащую идентификатор, присвоенный приложению, который является идентификатором разработчика, сертифицируют приложение на соответствие заранее определенному критерию, присваивают разрешение приложению, которое является разрешением на исполнение приложения на определенном устройстве в определенной сети, и передают приложение, разрешение и идентификационную информацию на устройство с использованием технологии обнаружения изменений.
42. Способ исполнения приложения на беспроводном устройстве, содержащий шаги, на которых сохраняют в устройстве данные, содержащие правило, определяющее, может ли принятое приложение быть исполнено на данном устройстве, принимают информацию, содержащую приложение, разрешение и идентификатор разработчика, присвоенный приложению, с использованием технологии обнаружения изменений; принимают запрос на исполнение приложения на беспроводном устройстве, оценивают принятую информацию для обнаружения изменений, если принятая информация не была изменена, оценивают разрешение, ассоциированное с приложением, и если разрешение дано, исполняют приложение.
43. Способ по п.42, по которому в технологии обнаружения изменений используют цифровую подпись.
44. Способ по п.42, который также содержит шаг, на котором осуществляют мониторинг исполнения приложения для обнаружения попыток выполнения недопустимых операций.
45. Способ по п.42, который также содержит шаг, на котором выгружают приложение из беспроводного устройства.
46. Способ исполнения приложения на беспроводном устройстве, содержащий шаги, на которых сохраняют в устройстве данные, содержащие правило, определяющее, может ли принятое приложение быть исполнено на данном устройстве, принимают информацию, содержащую приложение, разрешение и идентификатор разработчика, присвоенный приложению, с использованием технологии обнаружения изменений, принимают запрос на исполнение приложения на беспроводном устройстве, и оценивают разрешение, ассоциированное с приложением, и если информация была изменена, выгружают приложение из беспроводного устройства.
47. Способ по п.46, который также содержит шаги, на которых, если принятая информация не была изменена, оценивают разрешение, ассоциированное с приложением, и если разрешение выдано, исполняют приложение.
48. Способ по п.46, по которому в технологии обнаружения изменений используют цифровую подпись.
49. Способ по п.46, который также содержит шаг, на котором осуществляют мониторинг исполнения приложения для обнаружения попыток совершения недопустимых операций.
50. Способ по п.49, который также содержит шаг, на котором выгружают приложение из беспроводного устройства в случае попытки выполнения недопустимой операции.
51. Беспроводное устройство для исполнения приложений, содержащее ввод для приема приложения и разрешения, которое является разрешением на исполнение приложения на определенном устройстве в определенной сети, данных, содержащих правило, определяющее может ли принятое приложение быть исполнено для оценки разрешения, и ключ, хранящийся в запоминающем устройстве, для оценки цифровой подписи, при этом беспроводное устройство выполнено с возможностью исполнения приложения после оценки разрешения и цифровой подписи.
52. Беспроводное устройство для исполнения приложения, содержащее средство для хранения данных, содержащих правило, определяющее может ли принятое приложение быть исполнено для оценки разрешения, которое является разрешением на исполнение приложения на определенном устройстве в определенной сети, средство для приема информации, содержащей приложение, разрешение и идентификатор разработчика, присвоенный приложению, с использованием технологии обнаружения изменений, средство для приема запроса на исполнение приложения на беспроводном устройстве, средство для оценки принятой информации для обнаружения изменений в ней, средство для оценки разрешения, ассоциированного с приложением, если принятая информация не была изменена, и средство для исполнения приложения, если разрешение дано.
53. Машиночитаемый носитель, содержащий выполняемые компьютером команды для распределения приложений, при которых сохраняют данные, содержащие правило, определяющее, может ли принятое приложение быть исполнено, оценки разрешения, принимают информацию, содержащую приложение и идентификатор разработчика, присвоенный приложению, используя технологию обнаружения изменений, принимают запрос на исполнение приложения на беспроводном устройстве, оценивают принятую информацию для обнаружения изменений в принятой информации, если принятая информация не была изменена, оценивают разрешение, ассоциированное с этим приложением, и если разрешение дано, исполняют приложение.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/872,418 US7099663B2 (en) | 2001-05-31 | 2001-05-31 | Safe application distribution and execution in a wireless environment |
US09/872,418 | 2001-05-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2003137835A RU2003137835A (ru) | 2005-05-27 |
RU2295753C2 true RU2295753C2 (ru) | 2007-03-20 |
Family
ID=25359530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2003137835/09A RU2295753C2 (ru) | 2001-05-31 | 2002-05-23 | Безопасное распределение и выполнение приложений в беспроводной среде |
Country Status (20)
Country | Link |
---|---|
US (5) | US7099663B2 (ru) |
EP (2) | EP2163986B1 (ru) |
JP (2) | JP4795636B2 (ru) |
KR (1) | KR100634773B1 (ru) |
CN (1) | CN1258141C (ru) |
AR (1) | AR036043A1 (ru) |
AT (1) | ATE447739T1 (ru) |
AU (1) | AU2002312041B2 (ru) |
BR (1) | BRPI0209741B1 (ru) |
CA (1) | CA2448979C (ru) |
DE (1) | DE60234267D1 (ru) |
ES (1) | ES2334336T3 (ru) |
HK (1) | HK1069451A1 (ru) |
IL (1) | IL159117A0 (ru) |
MX (1) | MXPA03010890A (ru) |
NZ (1) | NZ529867A (ru) |
PE (1) | PE20030021A1 (ru) |
RU (1) | RU2295753C2 (ru) |
TW (1) | TWI252701B (ru) |
WO (1) | WO2002097620A2 (ru) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2483454C2 (ru) * | 2008-07-22 | 2013-05-27 | Сименс Индастри, Инк. | Разработка, тестирование и демонстрация решений автоматизации с использованием виртуальных компьютеров на основе web и vpn туннелирования |
Families Citing this family (130)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL133584A (en) * | 1999-12-19 | 2010-02-17 | Enco Tone Ltd | Method for the acoustic encodification of dynamic identification codes |
US7099663B2 (en) | 2001-05-31 | 2006-08-29 | Qualcomm Inc. | Safe application distribution and execution in a wireless environment |
JP2003050641A (ja) * | 2001-08-07 | 2003-02-21 | Nec Corp | プログラム管理システム、そのプログラム管理方法、及び情報管理プログラム |
US20030041125A1 (en) * | 2001-08-16 | 2003-02-27 | Salomon Kirk C. | Internet-deployed wireless system |
US8832754B2 (en) * | 2002-05-03 | 2014-09-09 | Tvworks, Llc | System and method for providing synchronized events to a television application |
JP2003337716A (ja) * | 2002-05-20 | 2003-11-28 | Ntt Docomo Inc | 電子機器、データ共用方法、プログラム及び記憶媒体 |
US6965674B2 (en) * | 2002-05-21 | 2005-11-15 | Wavelink Corporation | System and method for providing WLAN security through synchronized update and rotation of WEP keys |
GB0212314D0 (en) * | 2002-05-28 | 2002-07-10 | Symbian Ltd | Secure mobile wireless device |
US7965842B2 (en) * | 2002-06-28 | 2011-06-21 | Wavelink Corporation | System and method for detecting unauthorized wireless access points |
US7606242B2 (en) * | 2002-08-02 | 2009-10-20 | Wavelink Corporation | Managed roaming for WLANS |
US7522906B2 (en) | 2002-08-09 | 2009-04-21 | Wavelink Corporation | Mobile unit configuration management for WLANs |
US20080313282A1 (en) | 2002-09-10 | 2008-12-18 | Warila Bruce W | User interface, operating system and architecture |
US7139559B2 (en) * | 2002-12-09 | 2006-11-21 | Qualcomm Inc. | System and method for handshaking between wireless devices and servers |
US7793355B2 (en) | 2002-12-12 | 2010-09-07 | Reasearch In Motion Limited | System and method of owner control of electronic devices |
US7088237B2 (en) | 2003-02-14 | 2006-08-08 | Qualcomm Incorporated | Enhanced user privacy for mobile station location services |
KR100670723B1 (ko) * | 2003-02-21 | 2007-01-19 | 리서치 인 모션 리미티드 | 전자 장치들의 다중-레벨 제어 시스템 및 방법 |
AU2003233574B9 (en) * | 2003-05-17 | 2010-03-25 | Microsoft Corporation | Mechanism for evaluating security risks |
US7203967B2 (en) * | 2003-09-10 | 2007-04-10 | Qualcomm Incorporated | Methods and apparatus for content protection in a wireless network |
US8549166B2 (en) | 2004-03-01 | 2013-10-01 | Qualcomm Incorporated | Execution of unverified programs in a wireless, device operating environment |
CN100465889C (zh) * | 2004-04-29 | 2009-03-04 | 杭州斯达康通讯有限公司 | 将计算机程序下载至手机的方法 |
WO2005106678A1 (en) | 2004-04-30 | 2005-11-10 | Research In Motion Limited | System and method of operation control on an electronic device |
CN1311341C (zh) * | 2004-05-10 | 2007-04-18 | 杭州斯达康通讯有限公司 | 将计算机数据下载至手机时进行数字签名的方法 |
US7979706B1 (en) * | 2004-09-29 | 2011-07-12 | Rockwell Automation Technologies, Inc. | Systems and methods for queuing an action in industrial automation systems |
US20060093149A1 (en) * | 2004-10-30 | 2006-05-04 | Shera International Ltd. | Certified deployment of applications on terminals |
US7877744B2 (en) * | 2004-11-05 | 2011-01-25 | Qualcomm Incorporated | Method, software and apparatus for activating resident applications |
US20060107327A1 (en) * | 2004-11-16 | 2006-05-18 | Sprigg Stephen A | Methods and apparatus for enforcing application level restrictions on local and remote content |
DE102004058882A1 (de) * | 2004-12-06 | 2006-06-08 | Giesecke & Devrient Gmbh | Erzeugen von Programmcode in einem Ladeformat und Bereitstellen von ausführbarem Programmcode |
US20060149741A1 (en) * | 2005-01-04 | 2006-07-06 | Oracle International Corporation | Efficient Approach to Implement Applications on Server Systems in a Networked Environment |
JP4232767B2 (ja) * | 2005-03-14 | 2009-03-04 | セイコーエプソン株式会社 | ソフトウェア認証システムおよびソフトウェア認証プログラム、並びにソフトウェア認証方法 |
JP4727278B2 (ja) * | 2005-04-05 | 2011-07-20 | 株式会社エヌ・ティ・ティ・ドコモ | アプリケーションプログラム検証システム、アプリケーションプログラム検証方法およびコンピュータプログラム |
US7770785B2 (en) * | 2005-06-13 | 2010-08-10 | Qualcomm Incorporated | Apparatus and methods for detection and management of unauthorized executable instructions on a wireless device |
US8238352B2 (en) * | 2005-09-02 | 2012-08-07 | Cisco Technology, Inc. | System and apparatus for rogue VoIP phone detection and managing VoIP phone mobility |
US20070078907A1 (en) * | 2005-10-05 | 2007-04-05 | Ming-Tsung Chiang | Method for updating function of handheld apparatus through plug-and play (PnP) storage device |
US9573067B2 (en) * | 2005-10-14 | 2017-02-21 | Microsoft Technology Licensing, Llc | Mass storage in gaming handhelds |
US8045958B2 (en) | 2005-11-21 | 2011-10-25 | Research In Motion Limited | System and method for application program operation on a wireless device |
EP1788505A1 (en) * | 2005-11-21 | 2007-05-23 | Research In Motion Limited | System and method for application program operation on a wireless device |
EP1826944B1 (en) * | 2006-02-27 | 2009-05-13 | Research In Motion Limited | Method of customizing a standardized IT policy |
US8117441B2 (en) * | 2006-06-20 | 2012-02-14 | Microsoft Corporation | Integrating security protection tools with computer device integrity and privacy policy |
TW201251496A (en) | 2006-12-28 | 2012-12-16 | Interdigital Tech Corp | Efficient uplink operation with high instantaneous data rates |
US8126456B2 (en) * | 2007-01-17 | 2012-02-28 | Eagency, Inc. | Mobile communication device monitoring systems and methods |
US10045327B2 (en) | 2007-01-17 | 2018-08-07 | Eagency, Inc. | Mobile communication device monitoring systems and methods |
US8712396B2 (en) * | 2007-01-17 | 2014-04-29 | Eagency, Inc. | Mobile communication device monitoring systems and methods |
US9324074B2 (en) | 2007-01-17 | 2016-04-26 | Eagency, Inc. | Mobile communication device monitoring systems and methods |
US8875266B2 (en) * | 2007-05-16 | 2014-10-28 | Vmware, Inc. | System and methods for enforcing software license compliance with virtual machines |
US10181055B2 (en) | 2007-09-27 | 2019-01-15 | Clevx, Llc | Data security system with encryption |
US10783232B2 (en) | 2007-09-27 | 2020-09-22 | Clevx, Llc | Management system for self-encrypting managed devices with embedded wireless user authentication |
US11190936B2 (en) | 2007-09-27 | 2021-11-30 | Clevx, Llc | Wireless authentication system |
US10778417B2 (en) | 2007-09-27 | 2020-09-15 | Clevx, Llc | Self-encrypting module with embedded wireless user authentication |
US20090273438A1 (en) * | 2008-05-01 | 2009-11-05 | Delphi Technologies, Inc. | Remote monitoring, interrogation and control apparatus for stationary and mobile systems |
WO2009097350A1 (en) * | 2008-01-29 | 2009-08-06 | Palm, Inc. | Secure application signing |
JP2009253565A (ja) * | 2008-04-04 | 2009-10-29 | Hitachi Ltd | 携帯端末装置および携帯端末装置における無線通信方式の管理方法 |
US9342287B2 (en) | 2008-05-05 | 2016-05-17 | Apple Inc. | Software program ratings |
US9076176B2 (en) * | 2008-05-05 | 2015-07-07 | Apple Inc. | Electronic submission of application programs for network-based distribution |
US9531836B2 (en) * | 2008-12-18 | 2016-12-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Distributing an application via a network node |
CN105338106B (zh) * | 2008-12-18 | 2019-03-12 | 爱立信电话股份有限公司 | 分发应用 |
FR2943482B1 (fr) * | 2009-03-18 | 2011-05-27 | Bouygues Telecom Sa | Procede et systeme de securisation de demandes applicatives |
US8505084B2 (en) * | 2009-04-06 | 2013-08-06 | Microsoft Corporation | Data access programming model for occasionally connected applications |
JP5332838B2 (ja) * | 2009-04-07 | 2013-11-06 | ソニー株式会社 | 情報処理装置、および実行制御方法 |
US9197417B2 (en) * | 2009-04-24 | 2015-11-24 | Microsoft Technology Licensing, Llc | Hosted application sandbox model |
US8850211B2 (en) * | 2009-04-27 | 2014-09-30 | Qualcomm Incorporated | Method and apparatus for improving code and data signing |
US8433296B2 (en) | 2009-05-01 | 2013-04-30 | Ryan Hardin | Exclusive delivery of content within geographic areas |
US8522343B2 (en) * | 2009-12-21 | 2013-08-27 | Palm, Inc. | Removing an active application from a remote device |
DE102010006572A1 (de) * | 2010-02-02 | 2011-08-04 | Giesecke & Devrient GmbH, 81677 | Verfahren zum Ausführen einer Anwendung |
US8924461B2 (en) * | 2010-02-03 | 2014-12-30 | Symantec Corporation | Method, system, and computer readable medium for remote assistance, support, and troubleshooting |
US8315920B2 (en) * | 2010-03-09 | 2012-11-20 | At&T Intellectual Property I, L.P. | Method for automating onboarding of user generated ringback tones to sales distribution channel |
US8230268B2 (en) * | 2010-05-13 | 2012-07-24 | Bank Of America Corporation | Technology infrastructure failure predictor |
US8359284B2 (en) | 2010-05-13 | 2013-01-22 | Bank Of America Corporation | Organization-segment-based risk analysis model |
US8533537B2 (en) | 2010-05-13 | 2013-09-10 | Bank Of America Corporation | Technology infrastructure failure probability predictor |
JP5560110B2 (ja) * | 2010-06-16 | 2014-07-23 | Kddi株式会社 | 携帯端末およびプログラム |
BR112013004345B1 (pt) * | 2010-08-25 | 2020-12-08 | Lookout, Inc. | sistema e método para evitar malware acoplado a um servidor |
US20120053994A1 (en) * | 2010-08-30 | 2012-03-01 | Bank Of America | Organization resource allocation based on forecasted change outcomes |
US9342381B2 (en) | 2011-02-03 | 2016-05-17 | Symantec Corporation | Method and system for establishing a DLP-compliant environment |
US9880604B2 (en) | 2011-04-20 | 2018-01-30 | Microsoft Technology Licensing, Llc | Energy efficient location detection |
AU2012294372B2 (en) * | 2011-08-08 | 2016-03-03 | Bloomberg Finance Lp | System and method for electronic distribution of software and data |
US8856771B2 (en) * | 2011-08-19 | 2014-10-07 | International Business Machines Corporation | Protection for unauthorized firmware and software upgrades to consumer electronic devices |
US8776040B2 (en) | 2011-08-19 | 2014-07-08 | International Business Machines Corporation | Protection for unauthorized firmware and software upgrades to consumer electronic devices |
US9443258B2 (en) | 2011-08-26 | 2016-09-13 | Apple Inc. | Mass ingestion of content related metadata to an online content portal |
US8918841B2 (en) * | 2011-08-31 | 2014-12-23 | At&T Intellectual Property I, L.P. | Hardware interface access control for mobile applications |
US8898459B2 (en) | 2011-08-31 | 2014-11-25 | At&T Intellectual Property I, L.P. | Policy configuration for mobile device applications |
US9161225B2 (en) * | 2011-09-23 | 2015-10-13 | Blackberry Limited | Authentication procedures for managing mobile device applications |
US10135613B2 (en) * | 2012-01-13 | 2018-11-20 | Qualcomm Incorporated | Method and apparatus for generating a privilege-based key |
KR101308351B1 (ko) * | 2012-02-24 | 2013-09-17 | 주식회사 팬택 | 어플리케이션에 권한을 할당하는 단말기 및 상기 단말기의 권한 할당 방법 |
KR101900047B1 (ko) * | 2012-03-12 | 2018-09-18 | 삼성전자주식회사 | 애플리케이션이 필요로 하는 권한을 진단하는 방법 및 장치 |
TW201349009A (zh) | 2012-04-13 | 2013-12-01 | Ologn Technologies Ag | 用於數位通信之安全區 |
WO2013153437A1 (en) | 2012-04-13 | 2013-10-17 | Ologn Technologies Ag | Apparatuses, methods and systems for computer-based secure transactions |
EP2839400A4 (en) * | 2012-04-16 | 2016-01-06 | Intel Corp | RELIABLE USER INTERACTION |
TW201403375A (zh) | 2012-04-20 | 2014-01-16 | 歐樂岡科技公司 | 用於安全購買之安全區 |
GB201207816D0 (en) * | 2012-05-04 | 2012-06-13 | Vodafone Ip Licensing Ltd | Telecommunication networks |
CN103491056B (zh) * | 2012-06-12 | 2017-12-26 | 中兴通讯股份有限公司 | 应用权限的控制方法及装置 |
US9349015B1 (en) * | 2012-06-12 | 2016-05-24 | Galois, Inc. | Programmatically detecting collusion-based security policy violations |
US20140006781A1 (en) * | 2012-06-23 | 2014-01-02 | Pomian & Corella, Llc | Encapsulating the complexity of cryptographic authentication in black-boxes |
US9141783B2 (en) * | 2012-06-26 | 2015-09-22 | Ologn Technologies Ag | Systems, methods and apparatuses for the application-specific identification of devices |
US8862892B2 (en) * | 2012-07-31 | 2014-10-14 | Adobe Systems Incorporated | System and method for detecting a security compromise on a device |
US9619653B2 (en) | 2012-07-31 | 2017-04-11 | Adobe Systems Incorporated | System and method for detecting a security compromise on a device |
US8875303B2 (en) | 2012-08-02 | 2014-10-28 | Google Inc. | Detecting pirated applications |
WO2014051597A1 (en) * | 2012-09-28 | 2014-04-03 | Hewlett-Packard Development Company, L.P. | Application security testing |
US8938053B2 (en) | 2012-10-15 | 2015-01-20 | Twilio, Inc. | System and method for triggering on platform usage |
WO2014065784A1 (en) | 2012-10-23 | 2014-05-01 | Hewlett-Packard Development Company. L.P. | Controlling distribution and use of a developer application in a network environment |
CN104956326A (zh) | 2013-02-01 | 2015-09-30 | 惠普发展公司,有限责任合伙企业 | 基于抽象测试用户控制的测试脚本创建 |
WO2014141202A1 (en) | 2013-03-15 | 2014-09-18 | Ologn Technologies Ag | Systems, methods and apparatuses for securely storing and providing payment information |
US9998866B2 (en) | 2013-06-14 | 2018-06-12 | Microsoft Technology Licensing, Llc | Detecting geo-fence events using varying confidence levels |
US9820231B2 (en) * | 2013-06-14 | 2017-11-14 | Microsoft Technology Licensing, Llc | Coalescing geo-fence events |
US9948640B2 (en) | 2013-08-02 | 2018-04-17 | Ologn Technologies Ag | Secure server on a system with virtual machines |
JP6069160B2 (ja) * | 2013-10-07 | 2017-02-01 | 株式会社日立製作所 | 制御システム及び認証装置 |
JP2016540287A (ja) | 2013-10-18 | 2016-12-22 | ノキア テクノロジーズ オサケユイチア | 電子デバイスにおけるアプリケーションを動作させ、許可をモニタリングする方法とシステム |
US10783254B2 (en) * | 2014-10-02 | 2020-09-22 | Massachusetts Institute Of Technology | Systems and methods for risk rating framework for mobile applications |
KR20160080118A (ko) * | 2014-12-02 | 2016-07-07 | 주식회사 수산아이앤티 | 스타트 애플리케이션의 모바일 임베딩 방법, 스타트 애플리케이션의 모바일 임베딩을 수행하는 사용자 단말 및 컴퓨터 프로그램 |
CN104484608A (zh) * | 2014-12-16 | 2015-04-01 | 北京奇虎科技有限公司 | 一种应用程序的消息处理方法和装置 |
KR20160098912A (ko) * | 2015-02-11 | 2016-08-19 | 한국전자통신연구원 | 어플리케이션 퍼미션 재조정 방법 및 이를 수행하는 사용자 단말 |
GB2562923B (en) * | 2016-01-04 | 2020-02-12 | Clevx Llc | Data security system with encryption |
US10275183B2 (en) | 2016-02-24 | 2019-04-30 | Bank Of America Corporation | System for categorical data dynamic decoding |
US10366337B2 (en) | 2016-02-24 | 2019-07-30 | Bank Of America Corporation | Computerized system for evaluating the likelihood of technology change incidents |
US10366338B2 (en) | 2016-02-24 | 2019-07-30 | Bank Of America Corporation | Computerized system for evaluating the impact of technology change incidents |
US10216798B2 (en) | 2016-02-24 | 2019-02-26 | Bank Of America Corporation | Technical language processor |
US10067984B2 (en) | 2016-02-24 | 2018-09-04 | Bank Of America Corporation | Computerized system for evaluating technology stability |
US10430743B2 (en) | 2016-02-24 | 2019-10-01 | Bank Of America Corporation | Computerized system for simulating the likelihood of technology change incidents |
US10019486B2 (en) | 2016-02-24 | 2018-07-10 | Bank Of America Corporation | Computerized system for analyzing operational event data |
US10275182B2 (en) | 2016-02-24 | 2019-04-30 | Bank Of America Corporation | System for categorical data encoding |
US10223425B2 (en) | 2016-02-24 | 2019-03-05 | Bank Of America Corporation | Operational data processor |
US10366367B2 (en) | 2016-02-24 | 2019-07-30 | Bank Of America Corporation | Computerized system for evaluating and modifying technology change events |
US10387230B2 (en) | 2016-02-24 | 2019-08-20 | Bank Of America Corporation | Technical language processor administration |
KR101782539B1 (ko) | 2016-08-19 | 2017-09-28 | 주식회사 수산아이앤티 | 스타트 애플리케이션의 모바일 임베딩 방법, 스타트 애플리케이션의 모바일 임베딩을 수행하는 사용자 단말 및 컴퓨터 프로그램 |
US10467124B2 (en) * | 2016-12-19 | 2019-11-05 | General Electric Company | Certification process for cloud platform |
JP6691085B2 (ja) | 2017-09-20 | 2020-04-28 | ファナック株式会社 | アプリケーションセキュリティ管理システム及びエッジサーバ |
US10861600B2 (en) * | 2017-09-28 | 2020-12-08 | General Electric Company | Method and system for user-verifiable certification of software for medical devices |
US10747525B2 (en) * | 2018-03-09 | 2020-08-18 | International Business Machines Corporation | Distribution of a software upgrade via a network |
GB201805429D0 (en) * | 2018-04-03 | 2018-05-16 | Palantir Technologies Inc | Security system and method |
EP3712789A1 (en) * | 2019-03-22 | 2020-09-23 | Siemens Aktiengesellschaft | Method and administration device for administrating code artifacts for an industrial system |
JP2021099693A (ja) * | 2019-12-23 | 2021-07-01 | グローリー株式会社 | 有価媒体処理装置 |
WO2021260753A1 (ja) * | 2020-06-22 | 2021-12-30 | 日本電気株式会社 | 送信装置、受信装置、コンテナ伝送システム、方法、及びプログラム |
Family Cites Families (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5684841A (en) | 1979-12-13 | 1981-07-10 | Denki Kagaku Kogyo Kk | Electron gun |
US4919545A (en) | 1988-12-22 | 1990-04-24 | Gte Laboratories Incorporated | Distributed security procedure for intelligent networks |
US5276876A (en) * | 1990-05-16 | 1994-01-04 | International Business Machines Corporation | Registration of resources for commit procedures |
FR2662879B1 (fr) | 1990-05-30 | 1994-03-25 | Alcatel Cit | Procede de maintenance centralisee, pour un reseau de telephone sans fil. |
US6694359B1 (en) * | 1991-08-21 | 2004-02-17 | Unova, Inc. | Data collection and dissemination system |
DE69323926T2 (de) * | 1992-05-15 | 1999-09-30 | Addison M. Fischer | Verfahren und Vorrichtung zur Sicherheit eines Computersystem mit Programmberechtigungsdatenstrukturen |
FR2698510B1 (fr) | 1992-11-26 | 1994-12-23 | Schlumberger Ind Sa | Réseau de communication. |
WO1995014345A1 (en) * | 1993-11-15 | 1995-05-26 | Qualcomm Incorporated | A method for handling unrecognizable commands in a wireless environment |
SE502433C2 (sv) * | 1994-02-11 | 1995-10-16 | Nobelpharma Ab | Distansorgan för tandimplantat |
US5521958A (en) | 1994-04-29 | 1996-05-28 | Harris Corporation | Telecommunications test system including a test and trouble shooting expert system |
NO942031L (no) | 1994-06-01 | 1995-12-04 | Ericsson As Creative Engineeri | System for overvåkning av telefonnett og/eller datakommunikasjonsnett, spesielt mobiltelefonnett |
US5724425A (en) * | 1994-06-10 | 1998-03-03 | Sun Microsystems, Inc. | Method and apparatus for enhancing software security and distributing software |
US5987134A (en) | 1996-02-23 | 1999-11-16 | Fuji Xerox Co., Ltd. | Device and method for authenticating user's access rights to resources |
US5838910A (en) | 1996-03-14 | 1998-11-17 | Domenikos; Steven D. | Systems and methods for executing application programs from a memory device linked to a server at an internet site |
US5825877A (en) * | 1996-06-11 | 1998-10-20 | International Business Machines Corporation | Support for portable trusted software |
US5862474A (en) * | 1996-08-08 | 1999-01-19 | Qualcomm Incorporated | Programmable wireless modem |
US6026293A (en) * | 1996-09-05 | 2000-02-15 | Ericsson Inc. | System for preventing electronic memory tampering |
US5953654A (en) | 1996-11-01 | 1999-09-14 | Harris Corporation | Wireless communications system for identifying unauthorized mobile units |
US6167520A (en) * | 1996-11-08 | 2000-12-26 | Finjan Software, Inc. | System and method for protecting a client during runtime from hostile downloadables |
US5892904A (en) | 1996-12-06 | 1999-04-06 | Microsoft Corporation | Code certification for network transmission |
US6061346A (en) | 1997-01-17 | 2000-05-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Secure access method, and associated apparatus, for accessing a private IP network |
US6167522A (en) * | 1997-04-01 | 2000-12-26 | Sun Microsystems, Inc. | Method and apparatus for providing security for servers executing application programs received via a network |
JPH10301772A (ja) | 1997-04-30 | 1998-11-13 | Sony Corp | 情報処理装置および情報処理方法、並びに記録媒体 |
US5940590A (en) | 1997-05-31 | 1999-08-17 | International Business Machines Corporation | System and method for securing computer-executable program code using task gates |
US6496979B1 (en) * | 1997-10-24 | 2002-12-17 | Microsoft Corporation | System and method for managing application installation for a mobile device |
US6125447A (en) | 1997-12-11 | 2000-09-26 | Sun Microsystems, Inc. | Protection domains to provide security in a computer system |
US6163693A (en) | 1997-12-16 | 2000-12-19 | Ericsson, Inc. | Automated warranty registration |
GB2333864B (en) | 1998-01-28 | 2003-05-07 | Ibm | Distribution of software updates via a computer network |
US6259791B1 (en) * | 1998-02-26 | 2001-07-10 | Motorola, Inc. | Method and apparatus in a wireless messaging system for controlling a hierarchical provision of service |
US6493870B1 (en) * | 1998-03-20 | 2002-12-10 | Sun Microsystems, Inc. | Methods and apparatus for packaging a program for remote execution |
US6421781B1 (en) * | 1998-04-30 | 2002-07-16 | Openwave Systems Inc. | Method and apparatus for maintaining security in a push server |
US6339826B2 (en) | 1998-05-05 | 2002-01-15 | International Business Machines Corp. | Client-server system for maintaining a user desktop consistent with server application user access permissions |
KR100591098B1 (ko) | 1998-05-14 | 2006-06-19 | 가부시키가이샤 세가 | 정보 처리 장치, 정보 처리 방법과 정보 기록 매체 및정보 처리 시스템 |
IL124571A0 (en) | 1998-05-21 | 1998-12-06 | Miki Mullor | Method of restricting software operation within a licensed limitation |
JP3995338B2 (ja) | 1998-05-27 | 2007-10-24 | 富士通株式会社 | ネットワーク接続制御方法及びシステム |
US6256393B1 (en) | 1998-06-23 | 2001-07-03 | General Instrument Corporation | Authorization and access control of software object residing in set-top terminals |
SE9802423D0 (sv) * | 1998-07-06 | 1998-07-06 | Pascal Medical Ab | Anordning för behandling av Ménières sjukdom och liknande åkommor |
US6141010A (en) * | 1998-07-17 | 2000-10-31 | B. E. Technology, Llc | Computer interface method and apparatus with targeted advertising |
US6587684B1 (en) * | 1998-07-28 | 2003-07-01 | Bell Atlantic Nynex Mobile | Digital wireless telephone system for downloading software to a digital telephone using wireless data link protocol |
US6256493B1 (en) * | 1998-07-31 | 2001-07-03 | Motorola, Inc. | Selective call receiver and method for programming a selective call receiver |
US6694370B1 (en) * | 1998-08-01 | 2004-02-17 | International Business Machines Corporation | Computerized method and system for implementing distributed applications |
AU6401999A (en) | 1998-09-28 | 2000-04-17 | Argus Systems Group, Inc. | Trusted compartmentalized computer operating system |
US6609199B1 (en) | 1998-10-26 | 2003-08-19 | Microsoft Corporation | Method and apparatus for authenticating an open system application to a portable IC device |
US6158010A (en) | 1998-10-28 | 2000-12-05 | Crosslogix, Inc. | System and method for maintaining security in a distributed computer network |
US6052600A (en) * | 1998-11-23 | 2000-04-18 | Motorola, Inc. | Software programmable radio and method for configuring |
FI990461A0 (fi) | 1999-03-03 | 1999-03-03 | Nokia Mobile Phones Ltd | Menetelmä ohjelmiston lataamiseksi palvelimelta päätelaitteeseen |
FI990601A0 (fi) | 1999-03-17 | 1999-03-17 | Sonera Oy | Menetelmä ja järjestelmä tietoliikennejärjestelmässä |
JP2001028572A (ja) | 1999-03-19 | 2001-01-30 | Sanyo Electric Co Ltd | 情報配信システム |
US6463534B1 (en) | 1999-03-26 | 2002-10-08 | Motorola, Inc. | Secure wireless electronic-commerce system with wireless network domain |
WO2000072149A1 (en) | 1999-05-25 | 2000-11-30 | Motorola Inc. | Pre-verification of applications in mobile computing |
US6334056B1 (en) * | 1999-05-28 | 2001-12-25 | Qwest Communications Int'l., Inc. | Secure gateway processing for handheld device markup language (HDML) |
US6263434B1 (en) | 1999-09-21 | 2001-07-17 | Sun Microsystems, Inc. | Signed group criteria |
US6775536B1 (en) * | 1999-11-03 | 2004-08-10 | Motorola, Inc | Method for validating an application for use in a mobile communication device |
US7213247B1 (en) | 2000-01-10 | 2007-05-01 | Wind River Systems, Inc. | Protection domains for a computer operating system |
US6782527B1 (en) | 2000-01-28 | 2004-08-24 | Networks Associates, Inc. | System and method for efficient distribution of application services to a plurality of computing appliances organized as subnets |
US6615038B1 (en) * | 2000-04-28 | 2003-09-02 | Samsung Electronics Co., Ltd. | System and method for automatically creating and updating a mobile station configuration database in a wireless network |
US6728536B1 (en) | 2000-05-02 | 2004-04-27 | Telefonaktiebolaget Lm Ericsson | Method and system for combined transmission of access specific access independent and application specific information over public IP networks between visiting and home networks |
US6862696B1 (en) * | 2000-05-03 | 2005-03-01 | Cigital | System and method for software certification |
US20020107809A1 (en) | 2000-06-02 | 2002-08-08 | Biddle John Denton | System and method for licensing management |
US7131143B1 (en) | 2000-06-21 | 2006-10-31 | Microsoft Corporation | Evaluating initially untrusted evidence in an evidence-based security policy manager |
US6981281B1 (en) | 2000-06-21 | 2005-12-27 | Microsoft Corporation | Filtering a permission set using permission requests associated with a code assembly |
US7051366B1 (en) | 2000-06-21 | 2006-05-23 | Microsoft Corporation | Evidence-based security policy manager |
US7076557B1 (en) | 2000-07-10 | 2006-07-11 | Microsoft Corporation | Applying a permission grant set to a call stack during runtime |
US7350204B2 (en) | 2000-07-24 | 2008-03-25 | Microsoft Corporation | Policies for secure software execution |
US6628938B1 (en) | 2000-08-14 | 2003-09-30 | Koninklijke Philips Electronics N.V. | Wireless system, a method of selecting an application while receiving application specific messages and user location method using user location awareness |
US6931545B1 (en) | 2000-08-28 | 2005-08-16 | Contentguard Holdings, Inc. | Systems and methods for integrity certification and verification of content consumption environments |
US7130885B2 (en) * | 2000-09-05 | 2006-10-31 | Zaplet, Inc. | Methods and apparatus providing electronic messages that are linked and aggregated |
EP1340167A2 (en) * | 2000-11-28 | 2003-09-03 | 4thPass Inc. | Method and system for maintaining and distributing wireless applications |
US20020078380A1 (en) * | 2000-12-20 | 2002-06-20 | Jyh-Han Lin | Method for permitting debugging and testing of software on a mobile communication device in a secure environment |
US7174534B2 (en) * | 2001-01-22 | 2007-02-06 | Symbol Technologies, Inc. | Efficient system and method for running and analyzing multi-channel, multi-modal applications |
KR100614433B1 (ko) * | 2001-05-14 | 2006-08-22 | 엔티티 도꼬모 인코퍼레이티드 | 애플리케이션 관리 서버, 이동 단말 및 애플리케이션 관리 방법 |
US7099663B2 (en) | 2001-05-31 | 2006-08-29 | Qualcomm Inc. | Safe application distribution and execution in a wireless environment |
US7120429B2 (en) * | 2001-08-13 | 2006-10-10 | Qualcomm Inc. | System and method for licensing applications on wireless devices over a wireless network |
IL160342A0 (en) * | 2001-08-15 | 2004-07-25 | Qualcomm Inc | Test enabled application execution |
US6941134B2 (en) * | 2002-12-19 | 2005-09-06 | Cingular Wireless Ii, Llc | Automated device behavior management based on preset preferences |
US6999748B2 (en) * | 2002-12-19 | 2006-02-14 | Cingular Wireless Ii, Llc | Automated device behavior management based on network charging and rating conditions |
US7735120B2 (en) | 2003-12-24 | 2010-06-08 | Apple Inc. | Server computer issued credential authentication |
EP2020797B1 (en) | 2007-08-02 | 2016-06-15 | Apple Inc. | Client-server Opaque token passing apparatus and method |
US8701172B2 (en) | 2008-08-13 | 2014-04-15 | Apple Inc. | System and method for facilitating user authentication of web page content |
US8837716B2 (en) | 2009-02-02 | 2014-09-16 | Apple Inc. | Sensor derived authentication for establishing peer-to-peer networks |
WO2014208209A1 (ja) | 2013-06-25 | 2014-12-31 | 日産自動車株式会社 | ハイブリッド車両の制御装置及び制御方法 |
WO2016153977A1 (en) | 2015-03-22 | 2016-09-29 | Apple Inc. | Methods and apparatus for user authentication and human intent verification in mobile devices |
-
2001
- 2001-05-31 US US09/872,418 patent/US7099663B2/en not_active Expired - Lifetime
-
2002
- 2002-05-23 CA CA2448979A patent/CA2448979C/en not_active Expired - Lifetime
- 2002-05-23 RU RU2003137835/09A patent/RU2295753C2/ru active
- 2002-05-23 EP EP09174958.0A patent/EP2163986B1/en not_active Expired - Lifetime
- 2002-05-23 KR KR1020037002109A patent/KR100634773B1/ko active IP Right Grant
- 2002-05-23 EP EP02739391A patent/EP1438657B1/en not_active Expired - Lifetime
- 2002-05-23 WO PCT/US2002/016485 patent/WO2002097620A2/en active Application Filing
- 2002-05-23 AU AU2002312041A patent/AU2002312041B2/en not_active Expired
- 2002-05-23 AT AT02739391T patent/ATE447739T1/de not_active IP Right Cessation
- 2002-05-23 ES ES02739391T patent/ES2334336T3/es not_active Expired - Lifetime
- 2002-05-23 BR BRPI0209741A patent/BRPI0209741B1/pt active IP Right Grant
- 2002-05-23 IL IL15911702A patent/IL159117A0/xx unknown
- 2002-05-23 DE DE60234267T patent/DE60234267D1/de not_active Expired - Lifetime
- 2002-05-23 JP JP2003500736A patent/JP4795636B2/ja not_active Expired - Lifetime
- 2002-05-23 MX MXPA03010890A patent/MXPA03010890A/es active IP Right Grant
- 2002-05-23 NZ NZ529867A patent/NZ529867A/en not_active IP Right Cessation
- 2002-05-23 CN CNB028149742A patent/CN1258141C/zh not_active Expired - Lifetime
- 2002-05-30 PE PE2002000459A patent/PE20030021A1/es active IP Right Grant
- 2002-05-30 AR ARP020102027A patent/AR036043A1/es active IP Right Grant
- 2002-05-31 TW TW091111721A patent/TWI252701B/zh not_active IP Right Cessation
-
2005
- 2005-03-02 HK HK05101823A patent/HK1069451A1/xx not_active IP Right Cessation
-
2006
- 2006-08-28 US US11/467,877 patent/US7684792B2/en not_active Expired - Lifetime
-
2008
- 2008-09-17 JP JP2008238450A patent/JP4440983B2/ja not_active Expired - Lifetime
-
2010
- 2010-03-22 US US12/728,904 patent/US8112076B2/en not_active Expired - Fee Related
-
2012
- 2012-02-07 US US13/368,056 patent/US8588766B2/en not_active Ceased
-
2015
- 2015-11-18 US US14/945,210 patent/USRE48001E1/en not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2483454C2 (ru) * | 2008-07-22 | 2013-05-27 | Сименс Индастри, Инк. | Разработка, тестирование и демонстрация решений автоматизации с использованием виртуальных компьютеров на основе web и vpn туннелирования |
US9237070B2 (en) | 2008-07-22 | 2016-01-12 | Siemens Industry, Inc. | Development, test, and demonstration of automation solutions using web-based virtual computers and VPN tunneling |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2295753C2 (ru) | Безопасное распределение и выполнение приложений в беспроводной среде | |
US7096004B2 (en) | Test enabled application execution | |
AU2002312041A1 (en) | Safe application distribution and execution in a wireless environment | |
US20030051169A1 (en) | Using permissions to allocate device resources to an application | |
AU2002324717A1 (en) | Test enabled application execution | |
NZ548062A (en) | Test enabled application execution | |
AU2002326629A1 (en) | Using permissions to allocate device resources to an application |