Реклама в прикладных программах
Иллюстрации
Показать всеИзобретение относится к области рекламы в прикладных программах. Техническим результатом является повышение уровня конфиденциальности (приватности) в целевой рекламе. Система и способ обеспечивают отображение ориентированных на содержимое рекламных объявлений в приложениях, исполняющихся на компьютере конечного пользователя или клиенте. Чтобы смягчать проблемы приватности, одно или более рекламных объявлений могут быть сохранены на клиентском компьютере. Реклама может быть отображена на клиенте, основываясь на контексте, касающемся взаимодействия пользователя с клиентом. Частные данные пользователя не передаются на сервер, поскольку обработка ориентированной на содержимое рекламы может быть выполнена в отношении содержимого пользователя для того, чтобы определить, какие рекламные объявления отобразить. Различные формы рекламных объявлений могут быть отображены пользователю, когда клиент находится в режиме оффлайн или онлайн, чтобы обеспечить оптимальное использование взаимодействия с рекламными объявлениями и возможностями выставления счетов. Чтобы гарантировать, что рекламные объявления отображаются, когда содержимое отображается на клиенте, различные способы шифрования и расшифровки могут использоваться для того, чтобы смягчить проблему фальсификации кода отображения рекламы. 4 н. и 16 з.п. ф-лы, 10 ил.
Реферат
Область техники, к которой относится изобретение
Данное изобретение имеет отношение в общем случае к рекламе и, в частности, к рекламе в прикладных программах, которые исполняются на компьютере конечного пользователя в автономных (оффлайновых) и интерактивных (онлайновых) средах.
Предшествующий уровень техники
Реклама в общем случае является ключевым источником дохода на любом коммерческом рынке. Чтобы достигнуть такого количества потребителей, какое только возможно, рекламные объявления обычно передаются через объявления, телевидение, радио и печатные СМИ типа газет и журналов. Однако с появлением и развитием Интернета рекламодатели нашли новый и, возможно, менее дорогой носитель для того, чтобы достичь большого числа потенциальных клиентов в больших и разнообразных географических областях. Рекламные объявления в Интернете могут прежде всего быть замечены на Web-страницах или Web-сайтах так же, как во всплывающих окнах при посещении специфического сайта.
В дополнение к Web-сайтам в Интернете фирмы, заинтересованные в увеличении доходов, продолжают искать другие каналы, которые могут быть подходящими для рекламных объявлений. Один текущий режим доставки, например, вовлекает представление рекламы пользователю почтовой системы, когда пользователь просматривает сообщения в его системе. Это обычно делается тогда, когда поставщик программного обеспечения почтового сервера оказывает услугу бесплатно, типа многих основанных на Web почтовых служб. Предмет рекламы может быть выбран согласно содержимому поступающей почты. К сожалению, это ставит множество вопросов о приватности, особенно для адресата. Этот режим доставки может также быть проблематичным для рекламодателя, так как рекламные объявления могут теперь быть автоматически отфильтрованы и никогда не прочитаны получателем. Таким образом, это потенциально приведет к потере рекламных доходов так же, как и к потере потенциальных клиентов.
Типичные программные системы с поддержкой рекламы сегодня являются основанными на Web, типа основанной на Web почтовой системы, в которой поставщик услуг электронной почты владеет серверами, на которых сохраняется электронная почта, и посылает страницы HTML, содержащие содержимое почты, конечному пользователю, возможно, с объявлениями, внедренными в эти страницы HTML. В этом случае конечный пользователь уже принял решение доверять поставщику услуг с содержимом его данных и, возможно, сильно не волнуется о приватности системы этого поставщика, автоматически просматривающей данные для целей ориентированной на содержимое рекламы. Но в других возможных сценариях, типа бесплатного поддерживающего рекламу текстового процессора, данные обычно не сохраняются или не доступны для поставщика программного обеспечения. Таким образом, желательно найти путь для целевых рекламных объявлений к пользователям таким образом, чтобы приватность не была нарушена.
Сущность изобретения
Ниже представлено упрощенное описание сущности изобретения для того, чтобы обеспечить основное понимание некоторых аспектов изобретения. Это описание не является расширенным обзором изобретения. Оно не предназначено для того, чтобы идентифицировать ключевые/критические элементы изобретения или очертить объем изобретения. Единственная цель состоит в том, чтобы представить некоторые концепции изобретения в упрощенной форме в качестве вводной части к более подробному описанию, которое будет представлено ниже.
Данное изобретение обеспечивает систему и способ, которые обеспечивают доставку и представление ориентированных на содержимое рекламных объявлений в прикладных программах, таких как программы обработки текстов, программы для электронной почты или любое другое приложение, которое может быть исполнено на машине конечного пользователя. Ориентированные на содержимое рекламные объявления можно послать из сети или сервера на компьютер пользователя или клиент. В настоящее время ориентированная на содержимое реклама была сконцентрирована в интерактивных компьютерных средах, например, при просмотре Интернета либо отправке или получении сообщений через Интернет. Во всех этих сценариях пользователи признают, что их сообщения могут быть просмотрены сервером сообщений или поставщиком для того, чтобы определить, какие рекламные объявления показать им. Прикладные программы ставят другие сложные задачи для ориентированной на содержимое рекламы. Пользователи имеют тенденцию менее доверять просмотру сервером их документов, файлов и т.д. Кроме того, прикладные программы могут использоваться как автономно (в режиме оффлайн), так и интерактивно (в режиме онлайн), создавая, таким образом, дополнительные препятствия, которые необходимо преодолеть рекламодателям. Реклама может вызвать увеличение доходов и прибыли для бизнеса. Чтобы защищать свои инвестиции, рекламодатели хотят иметь некоторые гарантии, что их рекламные объявления отображаются через прикладные программы. Таким образом, другим препятствием является необходимость преодоления проблемы, касающейся подтверждения того, что код отображения рекламы не был изменен или не потерпел вмешательства в пределах прикладной программы.
Данное изобретение подходит к решению этих различных сложных задач по-разному. Относительно проблем приватности, изобретение задействует загрузку множества рекламных объявлений на компьютер пользователя с сервера (например, сети Интернет, сети интранет или другой сети). В соответствующее время ориентированные на содержимое рекламные объявления могут быть обработаны для, по меньшей мере, части частных данных пользователя, чтобы определить, какие рекламные объявления отобразить пользователю релевантно активной или неактивной прикладной программе (например, приложению обработки текстов). В результате частные данные пользователя не выдаются серверу.
Некоторые прикладные программы, типа программ электронной почты или других программ обмена сообщениями, позволяют данным сохраняться на сервере. В таких случаях данные могут быть сохранены в зашифрованной форме на сервере, и клиент может обладать ключом. Таким образом, сервер не должен видеть частные данные пользователя, но все еще может предоставлять целевую рекламу относительно таких данных. Это может быть частично достигнуто, загружая и расшифровывая желательные данные на клиент через клиент и затем исполняя ориентированные на содержимое рекламные объявления, сохраненные на клиенте, по отношению к расшифрованным данным.
Независимо от того, интерактивным или автономным является режим работы, рекламные объявления могут быть отображены пользователю, однако тип или формат рекламных объявлений может отличаться в зависимости от того, определен ли пользователь как работающий в интерактивном или автономном режиме. Когда пользователь работает в автономном режиме, есть несколько опций, доступных для рекламодателя, например, рекламирование брендов, рекламные объявления с оплатой за количество просмотров и/или пригодные для печати купоны. Эти форматы автономного режима могут быть загружены на компьютер пользователя и кэшированы, в то время как пользователь работает в интерактивном режиме. В некоторых случаях пользователь может быть в состоянии нажать на рекламное объявление для дополнительной информации, даже когда пользователь работает в автономном режиме. В этих случаях дополнительная информация, возможно, была предварительно кэширована вместе с содержимым автономного режима, в то время когда пользователь был в интерактивном режиме. Таким образом, когда пользователь нажимает на рекламу автономного режима, ему или ей может быть предоставлена дополнительная информация.
Когда пользователь повторно подключается к серверу, любое зарегистрированное действие, связанное с нажатием кнопки ввода во время работы в автономном режиме, можно послать соответствующей стороне через сервер. Кроме того, рекламные объявления могут быть обновлены на компьютере пользователя.
Чтобы убедиться, что ориентированные на содержимое рекламные объявления отображены на компьютере пользователя, когда содержимое данных пользователя (например, сообщения электронной почты) отображено в приложениях определенного вида, типа клиентов обмена сообщениями, могут использоваться способы кодирования. В частности, как сообщение (например, сообщение электронной почты), так и ориентированная на содержимое реклама(ы) могут быть зашифрованы на сервере. Когда доступ к таким сообщениям желателен пользователю, программное обеспечение клиента или клиент обмена сообщениями может расшифровать данные, используя ключ, который знает только клиент. Таким образом, клиент может расшифровать содержимое сообщения и рекламы и отобразить содержимое пользователю. Только клиентам, которые, как известно, отображают рекламу, предоставляется ключ расшифровки. Ключ расшифровки не используют совместно с пользователем для того, чтобы исключить подделку при отображении рекламных объявлений. Это обеспечивает дополнительную гарантию рекламодателям и рекламным провайдерам, что такие рекламные объявления фактически отображаются так, как предназначено. Как еще один уровень защиты, по меньшей мере часть клиентского программного обеспечения, удерживающего ключ, может быть также зашифрована.
В общем случае рекламные объявления или место для рекламы могут быть проданы через аукционную модель. Другие функциональные возможности защиты также могут использоваться для того, чтобы подтвердить, что программа отображения рекламы в пределах приложения не была изменена и что рекламные объявления показываются так, как было намечено рекламодателями. Отображение некоторых рекламных объявлений может быть подчинено лимиту времени ожидания или другим периодам, связанным с истечением срока действия. Когда достигнут лимит времени ожидания рекламы или истек срок ее действия, реклама может быть удалена из кэша компьютера или отмечена другим способом для того, чтобы препятствовать ее повторному отображению снова.
Для достижения предшествующих и связанных с ними целей определенные иллюстративные аспекты изобретения описаны здесь вместе со следующим описанием и приложенными чертежами. Эти аспекты показывают, тем не менее, несколько из различных путей, с помощью которых могут использоваться принципы изобретения, и данное изобретение предназначено для того, чтобы включать в себя все такие аспекты и их эквиваленты. Другие преимущества и новые признаки изобретения могут стать очевидными из нижеследующего подробного описания изобретения при рассмотрении его вместе с чертежами.
Перечень фигур чертежей
Фиг.1 - высокоуровневая блок-схема системы, которая обеспечивает отображение ориентированных на содержимое рекламных объявлений и которая смягчает проблемы приватности в соответствии с аспектом данного изобретения.
Фиг.2 - блок-схема системы, которая обеспечивает доставку и отображение ориентированных на содержимое рекламных объявлений на клиенте в зависимости от того, находится ли клиент в интерактивном или автономном режиме, в соответствии с аспектом данного изобретения.
Фиг.3 - блок-схема системы, которая обеспечивает управление функциональными возможностями любой прикладной программы на клиенте на основе уровня рекламирования, разрешенного пользователем, в соответствии с аспектом данного изобретения.
Фиг.4 - блок-схема системы, которая обеспечивает сохранение приватности содержимого, сохраненного на сервере при выполнении обработки ориентированной на содержимое рекламы на по меньшей мере части того содержания, к которому обращается клиент, в соответствии с аспектом данного изобретения.
Фиг.5 - блок-схема последовательности операций, иллюстрирующая примерный способ, которым обеспечивается доставка и отображение ориентированных на содержимое рекламных объявлений в приложении на машине клиента, в соответствии с аспектом данного изобретения.
Фиг.6 - блок-схема последовательности операций, иллюстрирующая примерный способ, которым обеспечивается обновление рекламных объявлений, сохраненных на клиенте по Фиг.5, когда клиент находится в интерактивном режиме, в соответствии с аспектом данного изобретения.
Фиг.7 - блок-схема последовательности операций, иллюстрирующая примерный способ, которым обеспечивается управление уровнем функциональных возможностей приложения на клиенте на основе уровня рекламы, разрешенного пользователем, в соответствии с аспектом данного изобретения.
Фиг.8 - блок-схема последовательности операций, иллюстрирующая примерный способ, которым обеспечивается гарантия того, что ориентированные на содержимое рекламные объявления, отобранные для отображения на исполняемом в клиенте приложении, отображаются в соответствии с аспектом данного изобретения.
Фиг.9 - блок-схема последовательности операций, иллюстрирующая примерный способ, которым дополнительно обеспечивается гарантия того, что ориентированные на содержимое рекламные объявления, отобранные для отображения на исполняемом в клиенте приложении, отображаются в соответствии с аспектом данного изобретения.
Фиг.10 иллюстрирует примерное окружение для реализации различных аспектов изобретения.
Подробное описание изобретения
Данное изобретение далее описывается со ссылкой на чертежи, в которых идентичные ссылочные номера используются для того, чтобы ссылаться на подобные элементы повсюду. В нижеследующем описании, в целях объяснения, многочисленные конкретные подробности сформулированы для того, чтобы обеспечить полное понимание сущности изобретения. Однако может быть очевидным, что данное изобретение может быть осуществлено на практике и без этих конкретных подробностей. В других случаях известные структуры и устройства показаны в форме блок-схемы для того, чтобы облегчить описание данного изобретения.
Как это используется в данном приложении, термины "компонент" и "система" предназначены для обозначения относящейся к компьютеру объектной сущности либо в виде аппаратных средств, либо в виде комбинации аппаратных средств и программного обеспечения, либо программного обеспечения, либо программного обеспечения в момент исполнения. Например, компонент может быть, но не в ограничительном смысле, процессом, выполняющимся в процессоре, процессором, объектом, исполняемым модулем, потоком исполняемого модуля, программой и компьютером. В качестве иллюстрации, как приложение, исполняющееся на сервере, так и сервер могут быть компонентом. Один или более компонентов могут постоянно находиться в процессе и/или потоке исполняемого модуля, и компонент может быть расположен на одном компьютере и/или распределен между двумя или более компьютерами.
Данное изобретение может включать в себя различные схемы и/или методику логического вывода вместе с выбором и/или представлением ориентированных на содержимое рекламных объявлений пользователям на основе содержимого активного документа или файлового объекта(ов) пользователей и/или географической, демографической информации и/или информации профиля пользователей. Как это используется здесь, термин "логический вывод" относится в общем случае к процессу определения или выведения состояний системы, окружения и/или пользователя на основе ряда наблюдений, зафиксированных через события и/или данные. Логический вывод может использоваться для того, чтобы идентифицировать конкретный контекст или действие, или может, например, генерировать распределение вероятности по состояниям. Логический вывод может быть вероятностным, то есть вычислением распределения вероятности по состояниям, представляющим интерес, на основе рассмотрения данных и событий. Логический вывод может также относиться к способам, используемым для того, чтобы составить высокоуровневые события из ряда событий и/или данных. Такой логический вывод приводит к конструированию новых событий или действий из ряда наблюдаемых событий и/или сохраненных данных событий, независимо от того, коррелированны ли или нет события сильно во временном отношении и исходят ли события и данные из одного или нескольких событий и источников данных.
Обратимся теперь к Фиг.1, где присутствует высокоуровневая блок-схема системы 100, которая обеспечивает отображение ориентированных на содержимое рекламных объявлений в соответствии с аспектом данного изобретения. Система 100 содержит компонент 110 приема рекламы, который может принимать одно или несколько ориентированных на содержимое рекламных объявлений из сети 120 или сервера. По меньшей мере подмножество рекламных объявлений может быть сохранено на клиенте, например, в хранилище 130 рекламных данных. Компонент 140 отображения рекламы может отображать по меньшей мере одно рекламное объявление из подмножества рекламных объявлений в зависимости от контекста, касающегося взаимодействия между пользователем и компьютером.
Практически система 100 смягчает проблемы приватности частично с помощью сохранения частных данных пользователя (например, содержимого документов, файлов и т.д. в приложении) вне поля зрения сервера или сети 120. Таким образом, когда пользователь читает документ в приложении обработки текстов, содержимое документа не читается сетью 120 для того, чтобы определить, какая целевая реклама наиболее близка к этому документу. Вместо этого множество рекламных объявлений может быть загружено и сохранено на компьютере пользователя (клиенте). Когда пользователь обращается к документу или файлу, клиент может просмотреть документ и исполнить ориентированный на содержимое рекламный процесс для того, чтобы определить и отобразить наиболее релевантные рекламные объявления, основываясь на содержимом документа пользователя. Следовательно, обращение к серверу не выполняется, и никакая информация не передается на сервер, пока пользователь не осуществляет щелчок по рекламе. Щелчок пользователя по рекламе может инициировать сервер для доступа и отправки большего количества связанной с рекламой информации пользователю, основываясь на данных щелчка.
Для некоторых приложений, в которых данные или содержимое сохраняются на сервере, содержимое может фактически быть сохранено в зашифрованной форме на сервере. Клиент поддерживает владение ключом так, чтобы сеть 120 или сервер 150, связанный с сетью, не видели частное содержимое документов пользователя, и все же может, тем не менее, давать ориентированную на содержимое рекламу по содержанию, сохраненному на сервере. Примером может быть приложение типа "резервирование в небе" или приложение "данные в облаке", в котором пользователь может хранить свое содержимое на сервере, доступном отовсюду. Содержимое может включать в себя любой сохраняемый объект, такой как документы, сообщения электронной почты, фотографии и т.п.
Обратимся теперь к Фиг.2, где демонстрируется система 200, которая обеспечивает отображение ориентированных на содержимое рекламных объявлений пользователям, работающим в автономном или интерактивном режиме, в соответствии с аспектом данного изобретения. Система 200 включает в себя компонент 210 управления, который может обнаружить и/или определить, находится ли клиент 220 в интерактивном или автономном режиме, и компонент 230 отображения рекламы, который может выбрать одно или более рекламных объявлений для отображения, основываясь на том, находится ли клиент 220 в интерактивном или автономном режиме. Когда клиент находится в автономном режиме, сеть 240 (например, Интернет) не может отслеживать щелчок по рекламному объявлению (например, для целей выставления счета), и новые рекламные объявления или связанную с рекламой информацию нельзя послать на клиент 220 для отображения пользователю. Таким образом, рекламные объявления по щелчку, такие как "нажмите здесь, чтобы купить эту книгу в Giantbookstore.com", являются в значительной степени, если не полностью, неэффективными, когда пользователь и клиент 220 находятся в автономном режиме.
Когда клиент 220 находится в автономном режиме, могут использоваться различные виды или форматы рекламных объявлений. Примеры включают в себя рекламирование бренда, такое как "Пейте Cola W", и основанную на телефоне рекламу. Тип основанной на телефоне рекламы включает в себя рекламные объявления с оплатой за вызов. Рекламные объявления с оплатой за вызов могут представлять сообщения типа "Звоните по 800-555-5555, чтобы получить Кредитную карточку Банка $". Представьте, например, что Банк $ дает объявление через Сети MNO. Сети MNO или Банк $ могут установить специальный телефонный номер, который является специфическим для этой рекламы. Сети MNO могут отслеживать весь трафик на этой телефонной линии, или Банк $ может посылать в Сети MNO их поступающий список вызовов и/или телефонные отчеты. В любом случае Сети MNO могут установить объем трафика, сгенерированного на телефонной линии в соответствии с рекламой, и выставить Банку $ счет на основе количества вызовов или на основании увеличения времени.
Пригодные для печати купоны могут также быть отображены как рекламные объявления. Независимо от типа задействуемых рекламных объявлений автономного режима они должны быть сохранены в базе 250 данных хранения объявлений клиента, в то время когда клиент находится в интерактивном режиме.
Хотя связанные со щелчком взаимодействия с сетью не выполнимы, когда работа идет в автономном режиме, пользователи все же могут осуществить щелчок по рекламным объявлениям автономного режима для того, чтобы рассмотреть дополнительное содержимое. Однако это дополнительное содержимое должно быть кэшировано на клиентском компьютере, в то время когда клиент находится в интерактивном режиме. Таким образом, когда пользователь осуществляет щелчок по рекламному объявлению автономной рекламы, ему или ей может быть направлена или показана подробная информация относительно этого рекламного объявления, предполагая, что эта информация была сохранена в памяти клиента перед переходом в автономный режим. Любые данные о щелчке (например, количество впечатлений от каждой рекламы и количество рекламных объявлений, которые были активированы пользователями посредством щелчка для получения дополнительной информации) могут быть зарегистрированы и/или прослежены, в то время когда клиент находится в автономном режиме.
Когда компонент 210 управления обнаруживает, что клиент вновь находится в интерактивном режиме, компонент 260 обновления может выборочно обновить рекламные объявления в базе 250 данных хранения рекламы. Обновления могут включать в себя удаление истекших рекламных объявлений, добавление новых рекламных объявлений и/или замену старых версий рекламных объявлений более новыми их версиями. Пользователю может требоваться периодически соединяться с сетью 240 для того, чтобы синхронизировать свои рекламные объявления. Например, пользователям может требоваться периодически повторно соединяться с сетью 240 для того, чтобы продолжить использование бесплатной версии прикладного программного обеспечения. Иначе некоторые функции в программном обеспечении могут быть заблокированы (например, устанавливая режим только для чтения), пока пользователь не установит соединение с сетью 240.
Обратимся теперь к Фиг.3, где проиллюстрирована система 300, которая обеспечивает управление функциональными возможностями любой прикладной программы на клиенте на основе уровня рекламы, разрешенного пользователем, в соответствии с аспектом данного изобретения. Система 300 включает в себя компонент 310 управления, который определяет уровень рекламы, позволенный пользователем на клиентском компьютере или машине 320. Более высокий уровень рекламы может предписать компоненту 330 управления приложением предоставлять полные функциональные возможности приложения машине 320 клиента. Однако более низкие уровни рекламы могут обусловить блокирование или иное ограничение одной или более функций приложения.
Обратимся теперь к Фиг.4, где представлена система 400, которая обеспечивает отображение ориентированных на содержимое рекламных объявлений в прикладных программах, в соответствии с аспектом данного изобретения. Система 400 включает в себя сервер 410 и по меньшей мере одну клиентскую машину 420. Сервер 410 хранит на себе зашифрованное содержимое и зашифрованные рекламные объявления 430, которые могут соответствовать такому содержимому. Когда некоторое содержимое от сервера 410 запрошено пользователем, такие зашифрованные данные можно послать клиенту 420, после чего оно может быть расшифровано компонентом 440 расшифровки и сохранено в подходящей базе 450 данных. Клиент 420 может использовать ключ расшифровки, который не показывают пользователю, чтобы гарантировать, что пользователь не делает и не имеет возможности вмешательства в отображение таких рекламных объявлений. Фактически программа или программный код, содержащий ключ расшифровки на клиенте, могут также быть зашифрованы в качестве дополнительной меры безопасности.
Система 400 может быть особенно важной для некоторых приложений, которые могут запускать код клиента на клиентском компьютере, пока он сообщается с сервером. Сервер может поддерживать рекламу. Программное обеспечение сервера может также захотеть доставить рекламные объявления в программное обеспечение клиента и убедиться в том, что они отображаются. Если использовался простой протокол, типа стандартного протокола электронной почты POP, то подсоединиться может любое клиентское программное обеспечение, и никакие рекламные объявления не будут обязательно отображены. Альтернативно может использоваться специальный протокол. Однако нечестный пользователь может создать клиентское программное обеспечение электронной почты, которое использует этот специальный протокол и электронную почту, отображаемую без рекламных объявлений. Таким образом, программное обеспечение сервера может зашифровать электронную почту, используя ключ, специфический для клиентского программного обеспечения.
Однако нечестный пользователь может декодировать программное обеспечение клиента и найти место, где секретный ключ сохранен, и затем создать свое собственное клиентское программное обеспечение, которое не отображает рекламные объявления. Альтернативно нечестный пользователь может декодировать программное обеспечение клиента и удалить часть кода, который отображает рекламные объявления. Чтобы предотвратить оба этих сценария, клиентское программное обеспечение может использовать технологию для того, чтобы скрыть секретный ключ, подобно технологии, используемой для Цифрового Управления Правами (DRM), чтобы скрыть ключи, и удостовериться в том, что ключевые части кода, особенно разделы, отображающие рекламу, не были изменены или в них никогда не вмешивались. Чтобы достигнуть этой цели, может использоваться множество способов. Например, сам программный код может шифроваться и дешифроваться в оперативном режиме ("на лету"). В частности, код, содержащий секретный ключ, может быть зашифрован. Прежде чем код будет расшифрован, клиент или некоторый другой системный компонент могут выполнить его проверку на предмет отладчиков или точек останова. Дополнительно может быть вставлен код, который выполняет проверку на основе контрольных сумм в отношении критических разделов, содержащих код рекламы, и оказывается не в состоянии расшифровать сообщение или иным образом правильно функционировать, если будут обнаружены нежелательные изменения. Наконец, может использоваться применение доверенных аппаратных средств для того, чтобы удостовериться в том, что код расшифровки остается секретным. Доверенные аппаратные средства могут подтвердить, что в рекламный код не вмешивались.
Может быть особенно удобно использовать криптографию на основе открытого ключа для шифрования. Открытый ключ можно свободно передать программному обеспечению сервера, в то время как частный ключ может быть сохранен (зашифрован) на клиенте. Может быть отдельный открытый ключ для всего клиентского программного обеспечения, или может быть одна пара открытый ключ/частный ключ для каждого пользователя клиентского программного обеспечения. Использование криптографии на основе открытого ключа позволяет множеству серверов отображать рекламу для заданного клиента. Например, может быть продана версия приложения электронной почты, которое работало бы со многими различными почтовыми серверами. Открытые ключи могут быть подписаны и подвергаться проверкам на предмет аннулирования. Таким образом, клиент может соединиться с сервером и передать свой подписанный открытый ключ. Сервер может проверить подпись и затем использовать открытый ключ для того, чтобы доставить зашифрованное содержимое, используя специальный API, которым сообщение шифруется с открытым ключом, и отправляется реклама. Реклама должна быть зашифрована с содержимым сообщения, чтобы предотвратить изменение. Информацию об открытом ключе можно было бы дать различным почтовым серверам, не волнуясь, что они могут создать версии клиентского программного обеспечения без рекламных объявлений (например, ориентированных на содержимое рекламных объявлений). Сервер может вместо этого использовать открытый ключ для того, чтобы передать клиенту ключ сеанса для симметрического алгоритма кодирования и затем зашифровать данные и рекламу, используя этот ключ сеанса, который обеспечивает подобную защиту, но может и более эффективную.
Если неоправданно высокое число клиентов использует конкретный открытый ключ, то этот открытый ключ может быть аннулирован и помещен в список аннулированных сертификатов. Этот список может проверяться или к нему могут обращаться периодически, чтобы определить, стал ли сертификат открытого ключа ненадлежащим.
Различные методики в соответствии с данным изобретением будут теперь описаны через ряд действий, и можно понять и оценить, что данное изобретение не ограничено порядком действий, поскольку некоторые действия в соответствии с данным изобретением могут произойти в другом порядке и/или одновременно с другими действиями, отличаясь от показанного и описанного здесь. Например, специалисты в данной области техники поймут и оценят, что способ может быть альтернативно представлен как ряд взаимодействующих состояний или событий, например, в диаграмме состояний. Кроме того, не все проиллюстрированные действия могут быть обязаны осуществлять методику в соответствии с данным изобретением.
Обратимся теперь к Фиг.5, где представлена блок-схема последовательности операций примерного способа 500, которым обеспечивается отображение ориентированных на содержимое рекламных объявлений в прикладных программах, в соответствии с аспектом данного изобретения. Способ 500 задействует сохранение рекламных объявлений на машине клиента на этапе 510. Например, рекламные объявления могут быть загружены из Интернета или другой сети или сервера и сохранены на клиенте. На этапе 520 способ 500 может определить, находится ли клиент в интерактивном или автономном режиме. По меньшей мере подмножество рекламных объявлений, сохраненных на клиенте, может быть отображено пользователю, основываясь на состоянии клиента (автономном или интерактивном), на этапе 530. Таким образом, различные формы рекламных объявлений могут быть отображены пользователю, когда он работает в автономном режиме, так как способность пользователя взаимодействовать с какой-либо рекламой может быть несколько ограничена. Например, рекламодатель может захотеть отобразить рекламные объявления на основе бренда или телефона, а не рекламные объявления на основе щелчка, когда клиент находится в автономном режиме.
Перейдем к Фиг.6, где показан примерный способ 600, которым обеспечивается обновление рекламных объявлений, сохраненных на клиенте Фиг.5, когда клиент находится в интерактивном режиме. В интерактивном режиме рекламные объявления, сохраненные на клиенте, могут быть выборочно обновлены на этапе 610. Например, рекламные объявления, для которых истек "лимит времени ожидания" или срок действия, могут быть удалены из хранилища клиента и заменены более актуальными рекламными объявлениями. Кроме того, рекламные объявления могут быть отобраны для того, чтобы быть посланными в хранилище клиента, основываясь на информации профиля пользователя, включая, но не в ограничительном смысле, демографическую и/или географическую информацию пользователя.
Обратимся теперь к Фиг.7, где проиллюстрирована блок-схема последовательности операций примерного способа 700, которым обеспечивается управление уровнем функциональных возможностей приложения на клиенте. Способ 700 задействует прием одного или нескольких ориентированных на содержимое рекламных объявлений на клиентском компьютере на этапе 710 и сохранение по меньшей мере подмножества этих рекламных объявлений на клиентском компьютере на этапе 720. На этапе 730 может быть определен уровень рекламы, разрешенный пользователем на клиенте, и уровень функциональных возможностей по меньшей мере одного приложения, исполняющегося на клиенте, может регулироваться или управляться на этапе 740, основываясь на уровне рекламы, разрешенном пользователем.
На Фиг.8 изображена блок-схема последовательности операций, демонстрирующая примерный способ 800, которым обеспечивается гарантия того, что ориентированные на содержимое рекламные объявления, отобранные для отображения на исполняющемся в клиенте приложении, отображаются в соответствии с аспектом данного изобретения. Способ 800 задействует доставку содержимого и рекламных объявлений на машину клиента на этапе 810 и гарантирование отображения этих рекламных объявлений, если и/или когда упомянутое содержимое отображается, на этапе 820.
Примерному способу 900, как показано на Фиг.9, можно следовать для дополнительного обеспечения гарантии того, что ориентированные на содержимое рекламные объявления, отобранные для отображения на исполняющемся в клиенте приложении, отображаются. Способ 900 может продолжиться шифрованием содержимого, причем используемое шифрование может задействовать открытый ключ так, что только доверенные клиенты имеют соответствующие частные ключи. Кроме того, сертификат подлинности для открытого ключа может быть предоставлен доверенной стороной. На этапе 920 способ 900 может отслеживать вмешательства в связанные с рекламой приложения, исполняющиеся на клиенте. Если обнаружена какая-нибудь фальсификация, функциональные возможности по меньшей мере одного приложения на клиенте могут быть ограничены, основываясь на обнаруженном уровне фальсификации (на этапе 930).
Чтобы обеспечивать дополнительный контекст для различных аспектов данного изобретения, Фиг.10 и следующее обсуждение предназначены для того, чтобы обеспечить краткое, общее описание подходящего рабочего окружения 1010, в котором могут быть реализованы различные аспекты данного изобретения. В то время как изобретение было описано в общем контексте машиноисполняемых команд типа программных модулей, исполняемых одним или более компьютерами или другими устройствами, специалисты в данной области техники оценят, что изобретение может также быть осуществлено в комбинации с другими программными модулями и/или как комбинация аппаратных средств и программного обеспечения.
В общем случае, однако, программные модули включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.д., которые выполняют специфические задачи или реализуют конкретные типы данных. Рабочее окружение 1010 является только одним примером подходящего окружения и не предназначено для того, чтобы налагать какое-либо ограничение относительно возможностей использования или функциональных возможностей изобретения. Другие известные компьютерные системы, среды и/или конфигурации, которые могут быть подходящими для использования с изобретением, включают в себя, но не в ограничительном смысле, персональные компьютеры, карманные или переносные устройства, многопроцессорные системы, системы на основе микропроцессора, программируемую бытовую электронику, сетевы