CN102027472A - 选择性地保护网络浏览器上广告显示的方法与系统 - Google Patents
选择性地保护网络浏览器上广告显示的方法与系统 Download PDFInfo
- Publication number
- CN102027472A CN102027472A CN2009801174493A CN200980117449A CN102027472A CN 102027472 A CN102027472 A CN 102027472A CN 2009801174493 A CN2009801174493 A CN 2009801174493A CN 200980117449 A CN200980117449 A CN 200980117449A CN 102027472 A CN102027472 A CN 102027472A
- Authority
- CN
- China
- Prior art keywords
- image
- node
- dom tree
- tab file
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F16/986—Document structures and storage, e.g. HTML extensions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/212—Monitoring or handling of messages using filtering or selective blocking
-
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- Databases & Information Systems (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- General Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Digital Computer Display Output (AREA)
- Document Processing Apparatus (AREA)
Abstract
一种选择性地保护网络浏览器上的广告显示的方法和系统,定义了所述经解释的标记文件的特定显示区域,获得所述经解释的标记文件的DOM树,所述DOM树包括父节点和子节点;每个节点都与可显示元素相关联,在DOM树中识别其可显示元素包括所述特定显示区域的一组子节点,在DOM树中识别包括所述一组子节点的第一父节点,将与所述识别出的第一父节点相关联的可显示元素转换成图像,生成包括所述图像的第二父节点,通过删除所述识别出的一组子节点并通过用所述第二父节点替代所述识别出的第一父节点而将该DOM树修改成经修改的DOM树。
Description
技术领域
本发明总体上涉及数据处理,特别地涉及用于网络浏览的系统和方法。
背景技术
互联网上许多公司的商业模型主要依赖客户端网络浏览器上的广告显示。使得能够拦截或跳过这些广告的解决方案的出现大大地危害了这种主流收益来源。
广告代表了许多网站和公司的主要收益来源。在其中广告被大规模拒绝(甚至是大公司的“目标明确的”、有效的或者信息性广告)的情况下,将不再有免费的内容或者服务。目前,只有技术上最精通的用户知道这种广告拦截技术,但是将这种工具缺省地集成到大量销售的网络浏览器中将导致其商业模型依赖于广告的公司的巨大损失。因此,最重要的是能够找到一条途径来保护网络浏览器上广告的显示,并且避免在如今数字网络及其相关联的日益发展的广告拦截能力中广告可能的死亡。实际上,随着广告拦截技术(所谓的广告拦截器)的使用日益增多,完全远离广告似乎也是有可能的。
广告是嵌入到网页中的文字区域、静止图像、动画图像或者甚至是视频。当广告观众的成员(为了不丧失一般性,称为“观看者”或者“用户”)通过点击来选择这些广告中的一个时,嵌入的超文本链接一般将观看者指引到广告商的网站(“点击通过(click-through)”过程)。
看起来,越来越多的消费者厌烦了侵入式的行销。尽管有些行业玩家试图平衡“不恼人的”和“信息性的”广告,但消费者还是被灌满了高度使人分散注意力的广告。实际上,很少有简单易读、非侵入式的文字广告。相反,广告常常是让用户感到太具侵入性的flash或者动画gif标题(进入弹出式(pop-up)、关闭背投式(pop-under)等广告有时候覆盖了期望的内容),而且闪动的图形使得很难阅读页面上其它地方的实际文字;大多数时候所传递的广告是不合适的(所谓有目标性的广告常常失败);它们用杂讯分散了读者的注意力。大多数时候,锚定用户目标隐含跟踪习惯并危害隐私。
出于以上的所有原因,越来越多的用户使用所谓的广告拦截器。从用户的观点看,广告拦截的好处包括更干净外观的网页、更低的资源使用率(带宽),而且页面的加载据称也会加速(许多页面被设计成首先加载大量的广告)。本领域目前水平包括许多使得可以跳过或者除去网络浏览器上的广告的广告拦截技术,例如纯文本浏览器、进入弹出(或者关闭弹出)拦截器、广告服务器URL的黑名单、文字过滤工具(其基于关键字,以阻止加载广告文件)、脚本拦截器、CSS规则的使用(以便隐藏特定的HTML和XHTML元素),等等。
并不单单涉及广告拦截技术。用于构建个性化网页的提取技术的使用、RSS的使用和混搭(mashup)的使用也包括广告的跳过。个性化网页的使用使得可以提取精确的内容区域并在个性化页面中聚集这些提取出的内容。然后,用户就不需要再次观看原始页面,从而在有广告的情况下就跳过了广告。一种非常接近的技术依赖于加载整个页面并且仅仅利用框架和/或<DIV>标签来显示它们,从而隐藏不想要的内容。这后一种可能性也呈现了缺陷,尽管内容没有显示给用户,但(就广告商的观点看),独特访问者的个数没有改变。利用RSS馈送(RSS代表“简易联合机制(Really Simple Syndication)”),类似的机制操作。实际上,RSS馈送的出现深度改变了互联网的本质,它不再是数据的存放,而是数据的流动。重要的是需要注意,根据这种RSS模型,内容提供者不控制馈送,这意味着他们可以选择通过RSS馈送将什么内容提供给他们的用户。同样,感谢新出现的机制,现在用户可以免费提取网络内容的部分,而无需任何限制。换句话说,网络用户不再需要访问瓶颈页面(包含许多广告的主页或者入口)。在这种环境下,内容提供者可能降低为原始数据的提供者,极少有机会使他们的商业获利。例如,一种技术(有时候称为RSS生成器)使得可以从任何网页提取馈送。然而,其它技术允许不仅收集RSS馈送,而且还组合它们(RSS Remixer工具使得可以过滤、搜索、混合,等等)。已经尝试将有目标性的广告嵌入到联合馈送中(广告将在包含广告商预先选择的关键字的RSS条目或者博客博文(blog post)中提供),但(基于关键字的或者涉及其它技术的)文字过滤也会挫败这种尝试。最后,所谓混搭的使用也对在线广告造成了威胁。由于API(应用编程接口),应用程序本身也可以聚集。而且,特别地,广告可以在内容重新混合的过程中被除去。
在相反的方面(即,保护广告的显示),看起来很少有可用的技术性解决方案。为了绕过URL黑名单,一种已知的方法在于URL地址混杂技术。因为可能的协作过滤(就象基于窥视的反兜售技术)的反应性,所以这种解决方案不总是有效的。随机地址的使用也造成限制(学习能力)。由于一些缺陷(例如在Gecko中),有些网站可以访问SCRIPT和IMG标签中的chrome://地址,并检测安装在浏览器上的广告拦截附件(add-on)。然后,它们可以拒绝为客户提供服务,但这些缺陷逐渐被修复,而且广告拦截器实施针对这些缺陷的工作。
除了这种普通的技术方法,只有非技术性的方法。例如,对许可行销方法进行测试(实际上,用户可以指定广告,而不是广告指定用户),但这些方法对于大规模市场的应用并不好。广告商或者其合作者也尝试基于用户剖析的其它方法来传递更好感知形式的广告,但这会危害到隐私。如果不出现可靠的解决方案来保护广告的显示,广告格式可能发展成这些视上下文的、交互的、基于许可的和指定目标的消息传送,以保持消费者的注意力并帮助使激怒和“失谐”最小化。有少数内容或服务提供商也试图通过证明这将会带走为用户提供内容和服务而辛勤工作的人的收益,来警告用户由于使用广告拦截技术所带来的损害。有时,他们会要求用于访问其网站的特定许可协议。结果是,这些(非技术性的)方法没有一种能有效地应对广告拦截技术和/或RSS馈送的使用和/或个性化网页的使用,并且最终不能保护收益流。
迫切需要使得能够保护网络浏览器上的广告显示的方法,尤其需要标记文件阅读器。
发明内容
根据本发明的一种实施方式,提供了根据所附独立权利要求1所述的一种保护广告显示的方法。
根据本发明的另一种实施方式,提供了根据所附独立权利要求11所述的一种保护广告显示的系统。
概括地说,本发明的实施方式使用如下若干技术的有价值的组合来保护经解释(interpret)或执行的标记文件中感兴趣的一个或多个特定区域的显示:重写DOM树的技术;图像生成和变更的使用,这平衡了图像识别和文本分析技术(例如OCR)的技术限制;脚本语言代码的使用,这使得可以保存对于标记文件有些修改后的部分可能已经丢失的用户交互。
在许多优点当中,本发明的一个实施方式战胜了大多数现有的图像识别技术,并战胜了大多数现有的语义或文本分析技术(这些技术有可能用来拦截或跳过广告)。换句话说,本发明的实施方式使得可以保护广告的显示,因为它战胜了语义技术(对图像是无效的)并充分利用了图像识别技术的限制(封装在较大图像中的广告是不可检测的)。但也要强调,不仅仅涉及广告:本发明的实施方式解决了其中一个或多个特定区域(例如文本或图形)需要被保护(需要保存所显示数据的完整性)的每一种情形。这将进一步详细讨论。
本发明实施方式的另一个好处还在于其为网络浏览器避免执行任何恶意代码(如果有的话)的能力。它实际上提供了对抗恶意软件的一种令人感兴趣的保护。如今的互联网倍受危险,其中就有恶意软件代码。利用网络浏览器访问网页的用户会不经意地执行恶意代码,从而危害到其本地机器(立即地或者在不久的将来)。一般的恶意代码包括病毒、随后下载并安装按键记录器(keylogger)的木马(Trojan)、间谍软件(spyware)等。然后,隐私和财务数据就处于危险当中,而且,如果没有远程用于非法目的的话,硬件设备也会被物理损坏。使用实现所述方法的两层体系结构使得可以避免在浏览器侧执行恶意代码(网络浏览器不再接收具有不可靠代码的标记页面,但接收修改后的标记文件)。非常出乎意料的是,恶意软件(malware)和广告是绑定的:由于商业关系的复杂结构,恶意代码据称能通过在线广告大规模入侵(恶意内容入侵到合法的广告传递流中)。本发明的实施方式保护广告的显示并同时避免恶意代码执行。保证网络浏览器不执行任何恶意代码,同时保证内容提供商能保护其广告。这是一种双赢的操作,打开了许多令人感兴趣的商业机会。总之,利用所公开的技术,包括潜在的恶意代码的标记文件的部分可以被除去(不安全的标记文件可以被转换成更安全的标记文件)。
本发明的实施方式还使得可以保存编码在原始标记文件中的用户交互。通过使用适应性的脚本语言代码,用户交互实际上有可能对有些区域维持可行而对其它特定区域禁止(不存在)。因为它对用户交互所提供的控制,所以这种变化是非常有价值的。交互可以保持不变(例如,用户将仍然能够拷贝和粘贴内容)、部分改变或者完全除去。这提供了更多的灵活性。
另一个优点(如果使用两层体系结构的话)是它仅仅需要标准的浏览器。在客户端,它不需要任何附加的插件、部件或者本地软件。在网络浏览器之上也不需要附加的软件。因此,本公开内容是第一种不需要浏览器修改(未修改浏览器的使用)就能工作的方法。它可以直接在如今的浏览器中使用,因此应用可以是立即的。
还有另一个优点是它使得可以有快速且低成本的互联网访问。它为网络浏览器减少了进入标记文件的负担和复杂性(它减少了代码元素中所包含的可能的缺陷或错误)。如今,许多设备(移动电话、台式PC,等等)具有有限的CPU容量。因为(除了没有恶意的脚本语言代码之外)修改后的标记文件大多数包含图像文件,所以运行在所述设备上的浏览器或者阅读器几乎只需要能够显示图像。因此,它使得具有有限的计算和存储器资源的移动设备能够远程浏览。
根据本发明的一种实施方式,最后提供了根据所附权利要求9所述的计算机程序和根据所附权利要求10所述的计算机可读介质。
优选实施方式在所附从属权利要求中限定。
通过考察附图和具体描述,本发明的更多优点对于技术人员将变得清楚。任何附加的优点都要结合在其中。
附图说明
现在将参考以下附图描述本发明的实施方式,附图中:
图1示出了标记文件的可显示元素和脚本语言代码;
图2示出了标记文件和与其关联的DOM树;
图3提供了DOM树和与其关联的节点的表示;
图4示出了对DOM树进行的第一种修改的例子;
图5示出了对DOM树进行的第二种修改的例子;
图6说明了各种子图像生成模式;
图7说明了可选的两层体系结构;
图8示出了代理服务器上的操作;
图9说明了体系结构选项。
具体实施方式
为了方便描述,标识一个图中元素的任何标号在任何其它图中都表示相同的元素。
以下文本在广告拦截的环境下给出了具体实施例,但是应当理解,不是要限定到这种特定的领域,而且它可以同等地扩展到例如计算机安全(恶意代码除去、反搜找(anti-crawling)工具,等等)、互联网访问、内容个性化与编辑、数据转换、软件服务化传递、数字权限管理、可信计算等领域。
作为定义,“DOM”表述应当理解为用以指文档的逻辑结构的方式。因此,所述表述可以由例如“逻辑结构”或者“层次结构”或者“结构”的表述来代替。例如,“DOM树”可以理解为“逻辑结构的树”。为了简明与清晰,使用例如“DOM”和“DOM树”的表述。
图1示出了标记文件的可显示元素和脚本语言代码。
现在参考图1,该图示出了根据本公开内容将被修改和使用的对象。
该图示出了包括一组可显示元素(110)和脚本语言代码(120)的标记文件(100)。
标记文件(100)通常是二进制文件,但它可以格式化的本质存在。它通常是经网络发送和/或在存储器中本地检索的;它可以完全或部分地在本地生成。在优选实施例中,标记文件(100)是HTML或PHP或XML文件。网页实际上包括(可显示的)内容和指令或嵌入的信息(例如元信息、超链接地址、Javascript)。
根据某些实施例,对可显示元素(110)的确定可以相对地或者绝对地考虑。当从阅读器的解释得出时,该确定可以说是相对的。例如,HTML标记文件的一组可显示元素将通过在网络浏览器(或者网络浏览器实例器)中加载和解释所述标记文件来确定。尽管在市场上所存在的网络浏览器所执行的不同解释之间存在趋同性,但是可以看到,不同的网络浏览器可能导致不同的解释(并因此导致不同的可显示元素组)。就此而言,解释被认为是相对的。另一种方法将网络浏览器的不同行为集成到共同的呈现(render)模型(绝对解释)中。简而言之,这些可显示元素全部都是将到达用户眼睛或者对这种最终显示有用的元素。因此,可显示元素(110)可以是例如图像、视频区域和文本区域的元素。“可显示元素”表述旨在覆盖将最终被用户看到的元素。因此,它涵盖了包括可能的进一步操作(例如过滤或掩饰)的情况,这进一步的操作可能在由所述方法执行的操作之后发生。
根据某种实施例,关于脚本语言代码(120),可以看到表述“脚本语言代码”指示标记文件(100)中所包含的所有软件代码的指令或行。具体地说,它包括形成由机器籍由/用于解释所述标记文件而可理解的指令的所有字符集。换句话说,它包括不旨在被标记文件的最终用户或观看者直接看到的所有数据(例如脚本或者元数据);但是,此外,它还包括间接地对可显示元素的显示有用的所有数据(例如<DIV>HTML标签)。脚本语言代码(120)常常封装在标记文件中(或者可以与其关联并进一步检索)。代码元素通常封装在标记文件中,但不总是这样。实际上,现代的编程技术(例如Ajax)可以使用对代码程序的动态检索。因此,在有些情况下,可能有必要检索与最初封装在标记文件中的代码元素集动态关联的代码元素块。例如,浏览器中的用户动作可能暗示对标记文件的进一步修改(通过从服务器检索新指令,或者通过访问本地资源;例如通过为XML文件定义包括外部文件的全部或部分的能力的“Xinclude”)。为此,有必要首先解释标记文件。解析标记文件还使得能够得到DOM树,该DOM树将根据本发明的实施例被操纵和修改。这后一点在下一部分中讨论。
现在参考图2,图2示出了解释后的标记文件(200)、可显示元素(201)、DOM树(210)和DOM树的特定节点(211)。
所谓的DOM(文档对象模型)是将元素(例如,XML或者HTML)称为对象的一种方式。它是用于表示HTML或XML和相关格式的一种独立于平台和独立于语言的标准对象模型。特别地,文档对象模型是JavaScript看待包含HTML页面的方式。DOM定义文档的逻辑结构和文档被访问和操纵的方式。因此,文档的逻辑结构由于所谓的DOM树而被定义。DOM树的部分称为节点。换句话说,DOM将文档作为树结构(节点树)给出,将元素、属性和文本都定义为节点。于是,DOM树可以看作是节点的集合,每个节点与标记文件的语言脚本文件的子集相对应(一个节点可以包括或者对应于脚本/程序、脚本/程序的片段或者包括如图像的可显示元素的任何其它对象)。节点树将XML文档示出为一组节点和它们之间的连接。根据DOM,XML文档中的每件事物都是节点。整个文档是文档节点。每个XML元素是元素节点。XML元素中的文本是文本节点。每个属性是属性节点。注释是注释节点。
为了得到标记文件的DOM树,需要标记文件解析器。实际上,解析器将文档加载到计算机的存储器中。一旦加载了文档,文档的数据就可以利用DOM来操纵,DOM将XML文档看作树。在Microsoft的XML解析器(COM部件)和Mozilla浏览器中所使用的XML解析器之间有些不同,但所描述的方法和系统应用到所有浏览器和解析器。
标记文件(200)包括可显示元素(201)。DOM树(210)是标记文件(200)的DOM树。DOM树(210)包括一组节点。DOM树(210)的特定节点(211)对应于标记文件(200)的可显示元素(201)。
在图2中,标记文件(200)被例示为网页。可显示元素(201)被例示为广告图像。如图2所例示的,DOM树(210)包括多个(父和子)节点。特定节点(211)包含<IMG>标签。它所指代的图像是广告图像。
应当强调的是,图2只提供了一个例子。DOM树和关联的标记文件可以复杂得多。对应于节点的可显示元素可以是诸如静止图像、动画图像、Flash或Shockwave对象、视频对象、文本区域等的元素。
现在参考图3a和3b。图3a是包括多个可显示元素的标记文件的例子的表示,其中多个可显示元素对应于DOM树节点。图3b是对应于所考虑的标记文件的DOM树的表示(接着在前面图2中开发的例子)。
在DOM树中,顶节点称为根。除根之外的每个节点都只有一个父节点。一个节点可以有任何个数的子节点。叶是没有子节点的节点。兄弟节点是具有相同父节点的节点。每个节点都有名称、值和类型(元素、属性、文本、注释、文档)。从给定的节点,有可能得到其它相关的节点(子节点(childNodes)、父节点(parentNode)、第一个子节点(firstChild)、最后一个子节点(lastChild)、下一个兄弟节点(nextSibling)、前一个兄弟节点(previousSibling))。
在图3a和3b所开发的例子中,节点(3000)是根节点。节点(3100、3200、3300、3400)是根节点(3000)的子节点。节点(3310、3320)是节点(3300)的子节点。节点(3321、3322)是节点(3320)的子节点。节点(3100、3200、3300、3400)是兄弟节点。节点(3310、3320)是兄弟节点。节点(3321、3322)是兄弟节点。
如图2所例示的,特定节点(3321)包括广告图像。应当强调的是,所提出的图只提供了一个例子。可以有多个其显示要被保护的区域。这些区域可以位于所解释的标记文件的任何位置。
现在参考图4a和4b,图4a和4b示出了前面图3的元素,通过应用所公开的方法和系统进行了修改。
解析器(见图1的说明)支持遍历节点树、访问节点与其属性值、插入和删除节点及将节点树转换回XML的所有必需的功能。有可能获得、设置、除去、代替、创建、添加和克隆节点。DOM允许任意修改。程序员可以构建文档,导航它们的结构,并添加、修改或删除元素和内容。本发明的实施例使用这种机制,以便保护所解释或执行的标记文件的感兴趣的特定区域的显示。
根据本发明,公开了一种修改包括一个或多个可显示元素的经解释标记文件的DOM树的方法;所述方法包括如下步骤:定义所述经解释的标记文件的特定显示区域;获得所述经解释的标记文件的DOM树,所述DOM树包括至少一个父节点和多个子节点;每个节点与至少一个所述可显示元素相关联;在DOM树中识别其可显示元素包括至少一部分所述特定显示区域的一组所述子节点;在DOM树中识别包括所述一组子节点的第一父节点;将与所述识别出的第一父节点相关联的所有可显示元素转换成主图像;生成包括所述主图像的第二父节点;通过删除所述识别出的一组子节点并通过用第二父节点代替所识别出的第一父节点,将DOM树修改成经修改的DOM树。
对DOM树或节点的操纵旨在覆盖诸如获得、检索、插入、替代、删除、附加、除去、规格化、创建、克隆、读取、使能、禁用、点击、选择、清除、占据(populate)、传播、交换等的动作或命令。操纵节点可能是棘手的,因为它可能构建无效的树结构(可选的验证工具或步骤),但是通过直接作用于文档树,获得了速度和效率。
在图3所开发的例子中,定义了经解释的标记文件的特定显示区域:包含广告图像的节点(3321)(<IMG>节点)。在DOM树中识别出其可显示元素包括所述特定显示区域的一组子节点:这组子节点(3320、3300)包含该广告图像。在DOM树中识别出包括所述一组子节点的至少一个节点的第一父节点:节点(3320)(应当指出,节点3320是节点3321和3322的父节点,而节点3320还是节点3300的子节点)。与识别出的第一父节点(3320)相关联的可显示元素被转换成(主)图像。生成包括所述(主)图像的第二父节点(4000)。然后,相应地修改DOM树:子节点(3321、3322和3320)被删除并被所生成的第二父节点(4000)替代。
诸如“replaceChild()”(和/或“nodeValue”属性和/或“replaceData()”和/或“setAttribute()”等)的方法可以用于在节点中检索、替代或附加数据(或者修改整个节点)。这种方法提出许多参数,使得有更多灵活性,使得可以用新的<Y>元素替代第一<X>元素。
所生成的图像捕捉什么显示给了用户。这可以利用几种技术实现,例如通过访问视频缓冲器(大多数时候,操作系统本身就提供这种特征),或者通过由浏览器/解析器或者甚至是由Java API提供的功能(例如,类别JEditorPane和Swing HTML包扩展)。
DOM图像对象表示嵌入的图像。对于HTML文档中<IMG>标签的每个实例,都创建图像对象。图像对象的属性是:align(设置或者返回如何根据周围的文字对准图像)、alt(如果浏览器不能显示图像的话,则设置或者返回要显示的可选文本)、border(设置或者返回图像周围的边界)、complete(返回浏览器是否已经完成加载图像)、height(设置或者返回图像的高度)、hspace(设置或者返回图像左侧和右侧商的空白空间)、id(设置或者返回图像的id)、isMap(返回图像是否是服务器侧的图像映射)、long Desc(设置或者返回到包含该图像描述的文档的URL)、lowsrc(设置或者返回到图像的低分辨率版本的URL)、name(设置或者返回图像的名称)、src(设置或者返回图像的URL)、usemap(设置或者返回客户端图像映射的usemap属性的值)、vspace(设置或者返回图像上部和下部上的空白空间)、width(设置或者返回图像的宽度)。
如图4b中所例示的,除了节点(3300)的子节点(3310)和节点(3300)的新子节点(4000)之外,修改后的DOM树现在包含兄弟节点(3100、3200、3300、3400)。随后将讨论进一步的图像处理步骤。
现在参考图5a和5b,该图5a和5b示出了通过应用所公开方法而带来的进一步修改。这次,生成新节点(5000)。图5a示出了节点(5000)包含捕捉到节点(3300)的内容(即前面图4a和4b中节点(4000)和(3310)的内容)的(主)图像。图5b示出了对DOM树的对应重写。
在所提出的例子中,对应于图5a中节点(3300)的(主)图像的表面显著优于对应于图4a中节点(3320)的先例图像的表面。现在讨论这种扩展的效果。首先,在图5b的大得多的表面上绘制对应于节点(3321)的广告图像的可理解数据:图像匹配技术将有可能失败(见下一部分的解释);其次,节点(3300)中可能的恶意代码被除去了并且被无害的静止图像替代;第三,编码在所考虑的节点中的用户交互被除去了(关于图8的部分将描述如何和为什么要保存交互)。
可以看到,DOM树的总体层次结构暗示了关于标记文件的“图像冻结”方面的约束:所述“冻结”可以只垂直和/或水平地传播。(俄罗斯套娃中的)结构可以是非常复杂的并且可以涉及大量节点。在所提出的例子中,节点(3300)和(3400)可以收集到更大的图像中;或者三个节点(3100)、(3200)和(3300)收集到单个图像中;或者甚至整个根节点(3000)同样收集到单个图像中。
现在参考图6,该图例示了各种可选的图像生成模式。图6a、6b和6c示出了节点(3300)和图像(600、610、620、630、6400、6401、6402、...、6265)。
图6a例示了根据特定实施例的其中生成单个图像(600)(以虚线表示)的情况。单个(主)图像(600)表示包括其子节点的节点(3300)的可显示元素的全体;关于所考虑的节点,它可以看作是“背景”图像。
图6b例示了根据其它实施例的其中可显示元素被转换成多个子图像(610、611、612)的情况。换句话说,图像(600)可以进一步分成多个子图像(从原始获得的“图像映射”)。应当强调,获得不对应于(或者复制)可显示元素的原始布置的子图像的部署可能是有价值的。换句话说,图像生成的现有模式可以得益于不复制底层的DOM树结构(通过具有与标记文件可显示元素的表观显示结构的不协调图像映射)。这加强了所提出的方法与系统对抗广告拦截(或过滤)技术的鲁棒性。如可以从图6b看到的,图像(610、620、630)不对应于DOM树的底层结构。
图6c例示了另一实施例,其中可显示元素被转换成非常多子图像(620、621、622、623、...),最终涉及随机(不断改变和复杂的映射)且为相邻或叠置的图像。子图像之间的交叠实际上是可能的而且甚至是希望的。
根据某些实施例,通过诸如卷积运算、形态运算、几何运算、直方图运算、α合成运算等的运算,图像(600)或者任何一个所生成的子图像(610、611、620、621、622、...)可以被进一步修改或改变。战胜文本分析工具(语义、OCR等)及图像识别工具(模式匹配、边缘点等)是本发明的一个优点。例如,每个所生成的图像或者子图像都可以修剪、模糊、以稀有格式编码、变换成黑白图像、变形等。噪声也可以添加到图像或者子图像中。应当强调,对从标记文件的可显示元素导出的图像或子图像进行的所述操作(例如,调整大小、划分、分离、分区、收集、分组、变形、加噪声、离散化、重新采样、混杂、灰度调整等)可以许多种方式组合,所述操作旨在加强所提出的机制对抗可能的广告拦截技术的鲁棒性。特别地,根据某些实施例,以上操作可以应用到可显示元素的全体或者只选择性地应用到这些可显示元素的子集。而且,已经在最终用户的可读性与分析和拦截所得图像和/或子图像的更大难度之间找到了折衷。可读性计分系统可以帮助执行这些操作。
在图6a上,节点(3300)的元素被呈现成以虚线例示的图像(600)。根据本发明的一种特定可选实施例,图6b和6c例示了各种子图像生成模式。实际上,标记文件的可显示元素可以以多种方式转换成一个(图6a)或多个图像,即,子图像(图6b和6c)。需要强调的是,在优选实施例中,生成单个图像(600;图6a)足以在快速容易实现的同时保护广告的显示。根据其它实施例,生成多个图像(子图像)。这不是强制的,它只是加强了该方法和系统的鲁棒性。对于战胜文本或图像识别系统,这种可选的划分实际上可以是很有价值的。为此,一个或多个子图像也可以例如通过诸如变形、灰度调整、重新编码、调整大小、加噪声、离散化、重新采样或者混杂的操作来变更。图像变更可以随机地或者由规则判决或判决逻辑(硬件或软件实现)来驱动。执行这种变更的判决逻辑将得益于建立客户浏览器简档的数据库、测试市场上可以获得的广告拦截器集合、获得关于带宽和服务约束的统计等。分级机制(广告传递的成功、统计等)也可以(实时地或者非实时地)实现。网页的重新格式化将是可变的,而不是恒定的:每个页面都可以在提供之前被重新设计。
现在讨论这种图像生成的某些优点。这种图像生成过程的突出优点是它允许保护对标记文件中所包含的广告的显示。实际上,它战胜了所谓广告拦截器所使用的所有技术,其中包括文本分析技术和图像识别技术。因为包含文本的可显示元素已经被呈现为图像,因此没有语义或文本过滤工具随后能执行任何分析。这些工具可理解的数据已经被简单地抹去了。尽管如此,还有人尝试执行OCR分析(分析图像,以提取所包含的文本),但这些工具对图像的质量非常敏感而且消耗大量的计算资源。适应性的图像修改将容易地战胜这种可能性(通过添加噪声或者通过将图像稍微变形,在用户的可读性和增加OCR或其它分析工具的复杂性之间寻找折衷)。按照图像识别技术,它们处于非常早的阶段。有人尝试隔离图像区域和文本区域,然后应用图像匹配技术(即,将所隔离的图像与已知的广告图像的数据库进行比较,以决定所述隔离的图像是否是广告图像)。看起来就算不是不可能,也很难检测包含在另一个更大图像中的广告图像。与整个表面相比,广告图像的表面越大,图像识别(或匹配)执行得越差。110%图像中所包含的广告将比400%图像中所包含的图像更容易被检测和识别(识别显著地落在平均25%的阈值之内)。甚至先进的图像识别技术,就象所谓的模式匹配技术(旨在通过使用边缘点检测和其它技术来自动地隔离图像中感兴趣的对象)实践中也会失败。就象文本分析技术的使用,这些图像识别技术对CPU和存储器太敏感,因此不能在实时或密集的环境下提供好的解决方案。相同的分析可以用于在电影中产生放置(许多年内将不可能检测并删除电影中的商标)。
在图6a和6b中,优点源自难以隔离类似的区域和因此导致的难以执行有效的图像识别技术。在图6c中,优点来自难以搜集足够的图像执行图像识别技术和文本/光学字符识别分析。
因此,将可显示元素呈现成一个或多个图像带来了许多优点。依赖于适当的智能映射,针对广告拦截技术的系统的鲁棒性可以优化,而且可以极大地保护对广告的显示。给定一个或多个要保护的区域,将选择一个或另一个图像生成模式。换句话说,已知要放置广告的区域(例如,根据由广告商提供的数据),则有可能优化图像映射,使得图像识别技术给出最低可能的性能。由于广告商可以为附加服务付费(例如,确切地说是为保护它们特定广告的显示),因此这种特征允许令人感兴趣的商业模型。它还使得能够优先化对图像文件的显示(根据显示优先级的顺序发送图像;例如,可以首先显示所生成的包含广告的图像文件;这种特征在考虑带宽参数的时候是有用的,等等)。
最后,提供了另一种通过变形、灰度调整、重新编码、调整大小、加噪声、离散化、重新采样或者混杂来变更一个或多个图像的技术。
现在参考图7,该图示出了本发明实施例的原理。
根据某种实施例,该图示出了网络服务器(700)、代理服务器(710)和网络浏览器(730)。
该图示出了一个例子,其中网络浏览器(730)的查询在步骤(701)处被代理服务器(710)接收(或者解释,见图7)。在步骤(702),代理服务器(710)通过网络(未示出)将查询发送到网络服务器(700)。在步骤(703),响应于该查询(702),网络服务器通过网络(未示出)发送标记文件。代理接收标记文件并根据本发明的所述实施例对标记文件进行一系列操作,最终在在步骤(704)通过网络(未示出)将修改后的标记文件发送到浏览器(730)。网络浏览器(730)解释修改后的标记文件。
图7仅仅是作为例子提供的。许多选项和可选方案将进一步讨论。特别地,可以涉及利用不同协议的一个或多个网络,其可以随时间改变并且可以是本质上不同的(RTC、ADSL、Fiber、T1、Wimax、UMTS、Wifi等)。
图8示出了代理上的操作。
现在参考图8。根据某种实施例,该图示出了浏览器实例器(800)、图像文件生成器(810)、DOM生成器(820)和标记文件构建器(830)。
根据某些实施例,由网络服务器(700)提供的标记文件被浏览器实例器(800)接收。浏览器实例器(800)解释标记文件,即,在阅读器或浏览器中执行标记文件。在解析之后,DOM生成器(820)构造该标记文件的DOM树。DOM生成器(820)适于操纵和/或修改DOM树(通过诸如节点删除、节点替代等的操作)。DOM生成器(820)与图像文件生成器(810)交互,其中图像文件生成器(810)适于呈现来自标记文件DOM树的一个或多个节点的一个或多个图像(子图像)。换句话说,图像文件生成器与DOM生成器(820)交互,其中DOM生成器(820)输出修改后的DOM树(即,脚本语言代码;HTML、PHP、XML代码或数据)。
根据某些实施例,标记文件构建器(830)随后根据DOM生成器(820)的修改后的DOM树和图像文件生成器(810)生成的图像(或者子图像的集合)构造修改后的标记文件,带有附加的脚本语言代码。所述脚本语言代码适于使得其上执行该代码的用户终端发送定义用户控制光标的位置的坐标信息。此外,脚本语言代码还可以进一步修改成,使得其上执行该代码的用户终端发送定义用户控制光标的点击动作的动作信息。脚本语言代码还编码已经生成的图像的相关位置(如果呈现了多个子图像的话)。
然后,修改后的标记文件被网络浏览器(720)接收并解释。响应于用户的指向器动作,浏览器实例器(800)复制用户的动作。换句话说,浏览器实例器(800)模拟在对应的浏览实例或会话中在给定坐标处的用户控制动作(点击)。最后,浏览器实例器(800)查询网络服务器(700),且过程相应地继续用以交互地浏览互联网。
根据某种实施例,尽管网络服务器(700)所提供的原始标记文件包含一组可显示元素并对应于原始的DOM树,但由代理服务器(710)输出的修改后的标记文件包含由图像文件生成器(810)生成的一个附加图像(或者多个附加的图像)、由标记文件构建器(830)生成的一个新(且简易的(light))脚本语言代码。修改后的标记文件还具有新的数据结构,因为它已经根据修改后的DOM树重新构造了。
根据某些实施例,关于由标记文件构建器(830)生成的脚本语言代码,进一步看到它可以修改成使得其上执行该代码的用户终端持续地(为了预取,即,预期标记文件中所给出的链接中所指的标记文件的请求,以加速响应时间)或者周期性地(通过刷新机制)发送所述坐标信息。可以想起,已经生成的图像文件的相对位置构成了由标记文件构造器(830)所生成的脚本语言代码的一部分。根据某些实施例,关于光标坐标和/或动作(点击)的信息可以关于任何一个所生成的图像或者在修改后的标记文件中以绝对坐标定义。根据其它实施例,由标记文件构建器(830)所生成的脚本语言代码可以进一步修改成对图像文件生成器(810)生成的图像的子集或者甚至对单个图像(子图像)的子区域发送坐标和点击;换句话说,用户交互性有可能对有些区域维持,而对其它特定区域禁止(不存在)。这种变化是非常有价值的,因为它对用户交互提供了控制。
按照图像的生成,如进一步参考图6所描述的,根据某种实施例,公开了运行在网络浏览器中的实例和运行在浏览器实例器中的实例之间的一种类型的镜像。这种镜像使得有进一步的可能性。在标记文件是HTTP标记文件的情况下,当执行HTML请求时,关于浏览器本身的信息被发送(类型、颜色、分辨率...)。通常,这种类型的指纹被发送一次,但是,这种信息可以定期检索。因此利用(java)script代码,有可能分析页面的分辨率并(通过调整图像的大小)相应地呈现图像文件。根据某些实施例,由本发明实施例所生成的图像可以是与原始标记文件的那些可显示元素相同大小。但是,根据其它实施例,依赖于目标阅读器或者浏览器的显示区域,它们也可以更大或者更小。在图像文件大于目标阅读器或者浏览器的显示区域的情况下,所述目标阅读器或者浏览器将使用标准的滚动选项来显示原始标记文件的完整图像。最后,根据其它实施例,cookie的使用对于存储用户控制的坐标、存储关于网络浏览器的信息(类型、颜色、分辨率...)、设置自动刷新机制等是有价值的。
根据某些实施例,依赖于网络浏览器,标记文件的可显示元素的图像呈现可以稍微不同。原理上,HTML是标准的,因此最终HTML页面的呈现在市场上可以获得的浏览器中是一致的。但在实践当中,在由不同网络浏览器所执行的不同呈现之间可能存在差异。所公开的操作可以致力于考虑这些差异。
现在参考图9,该图考虑体系结构选项和可选方案。
本公开内容示出了优选的两层体系结构,其中代理服务器执行本发明特定实施例的步骤(DOM树修改与图像生成)。但是所提出的机制的实现可以根据以下将进一步讨论的多得多的可能性来执行。
需要关于代理和浏览器经济性的介绍性考虑。浏览器可以广泛地理解为“阅读器”。浏览器设计成将标记文件呈现成可对用户显示的元素并执行代码元素。实际上,网络浏览器是安装在台式计算机或者移动设备上并且适于执行脚本程序(大部分是JavaScript)、解析并显示网页的软件程序。从技术和法律的角度看,有些网络浏览器是开放源(象Firefox),而其它是专属的(互联网)。开放源与专属之间的区别是很重要的,因此专属软件使得可以控制软件代码的开发,开放源软件的情况就不是这样。例如,专属媒体播放器可以禁止快进,由此强迫用户观看视频广告(通常位于视频文件的开始)。而对于开放源软件(即,可以访问和修改的软件代码),这是不可能的,因为软件代码可以被改变成使得跳过广告。更一般地说,这对于任何DRM(数字权限管理)系统都是成立的,其中DRM系统必然需要至少一部分封闭的软件代码(与任何人都可以获得的开放源代码相反,它受到秘密保护)。理论上说,专属浏览器将能够选择性地使能广告拦截(无特定的附件可用,等等)。开放源网络浏览器的情况更加简单,因为叉(fork)可以在任何时间出现,从而允许这种特定的附件。广告拦截经济性的另一个重要方面是商业利益。众所周知的开放源浏览器主要是由大广告公司提供资金的(因此没有什么动机和兴趣在它的浏览器上启用广告拦截器的缺省集成)。但是,叉(所述开放源浏览器的修改后的发布)可以在任何时候出现。根据其自己的兴趣或者合同,专属网络浏览器有可能选择性地启用有些广告而禁用其它广告。例如,对于Microsoft Internet Explorer,技术上有可能拦截Google AdwordsTM并只允许它自己平台的广告。出于所有这些原因,执行本发明实施例的步骤的代理服务器的使用是非常有价值的(但不是强制的)。
图9示出了各种配置下的网络服务器(700)、代理服务器(710)和网络浏览器(720)。逻辑上讲,代理服务器(710)位于网络服务器(700)和网络浏览器之间。物理上讲,代理服务器(710)和网络浏览器(700)可以运行在相同的物理机器上,如图9a中所示出的。但是利用运行网络浏览器(720)本身的本地机器上的虚拟机器不总是可能的,而且图9b示出了其中代理服务器(710)和网络服务器(700)运行在相同物理机器上的情况。图9c示出了其中网络服务器(700)、代理服务器(710)和网络浏览器(720)运行在三个不同的物理机器上的最后一种情况。
代理通常是硬件实现的,但它也可以是软件实现的。因此,本发明实施例的步骤可以部分地在网络浏览器(720)上实现,部分地在代理服务器(710)上实现,部分地在网络服务器(700)上实现(或者其组合)。
根据某些实施例,由于代理服务器将看到网络服务器上的所有查询(网络浏览器的账号、密码和所访问过的页面都将通过网络浏览器查询发送到代理服务器),因此高度推荐代理由可信方来运行(除非使用OpenID或者其它匿名机制)。可以使用认证机制(从强认证到简单的注册;散列值可以用于图像文件的传输)。
因为网络服务器(内容提供者)的管理员和广告商之间的协议,所以图9a预期是一种简单容易的实现。在优选实施例中,关于这种实现模式,网络浏览器没有什么内容要讲(所执行的操作将是透明的,即,浏览器将仅仅接收修改后的标记文件,而查询将容易地被代理服务器截取)。这种配置的优点是网络浏览器有保证不执行任何恶意代码,而内容提供者有保证保护其广告。这是一种打开许多令人感兴趣的商业机会的双赢操作。
图9b说明了根据某种实施例的另一种可能性。实现本发明实施例的程序可以以比网络浏览器高的层次(例如,操作系统)执行。或者,它可以以插件或者附件的形式实现。这种程序的执行或者存在甚至可能是例如网络服务器需要的(例如,不对不兼容的浏览器提供)。浏览器可以同意所述步骤的存在或者不同意。例如,这种程序的存在和执行(通过市场上的“广告安全”浏览器附件)可能是广告商所需的,以便允许网页的递送(在这种情况下,浏览器的用户例如可以同意安装这种附件)。根据某些实施例,它还可以以恶意软件的形式实现,这种形式将不经浏览器用户的同意而执行所述步骤。根据其它实施例,它还可以对应于在专属浏览器(用户对该浏览器几乎没有控制)中实现本发明实施例。
由于代理服务器可以充当例如恶意软件(中间者攻击,为了保护广告的显示,最终违背浏览器的意愿或者不经过其同意),因此图9c说明了更复杂的情况。根据某些实施例,这还说明了代理服务器通过网络可能的互利性,或者代理充当网络服务器的按需资源并为网络浏览器提供对互联网的可靠访问。
关于所提出的两层体系结构,可以阐明进一步的观察:修改后的标记文件可以(在有些情况下)排它地包含内容服务器的地址(外部网络服务器的URL,即,不实现所述方法),而且,在这种情况下,当解释修改后的标记文件时,网络浏览器将直接查询这些内容服务器(例如,HTTP GET请求)。这是开放的系统。例如,所述方法的这种用途的场景对应于“按需”这种单发方式,以保护网页的显示。但是,修改后的标记文件也可以排它地包括实现所述方法的代理的地址,而且,在这种情况下,所述代理将进一步利用用以检索所请求的内容的地址翻译器进行修改。这是封闭的系统,强迫网络浏览器只查询实现所述系统的代理。一旦网络浏览器查询了这种代理,它就被限制并且将只能看到(通过本方法或者其它)重新设计过的内容。最后一种可能性是让修改后的标记文件既包含内容服务器的地址(用于直接查询)又包含代理的地址(用于间接查询)。这三种可能性依赖于要确定的策略(决定所述系统是封闭的还是开放的策略;或者决定它以哪种程度部分开放或封闭的策略)。
现在讨论可选实施例。
乍一看,本发明的某些实施例可以看作不相关技术之间的配合:图像生成技术与DOM树修改机制。换句话说,除了图像生成处理机制外,本发明的实施例还结合了DOM树修改机制。
根据某种实施例,提供了一种(选择性地,另外)保护广告显示的系统。该系统涉及网络服务器、代理服务器和客户端浏览器。响应于第一客户端浏览器查询,代理服务器从网络服务器请求对应的标记文件;在接收到所述标记文件后,代理服务器就在浏览器中解释所述标记文件,获得DOM树并将解释过的(执行过的)标记文件的一部分变换成图形图像;然后,代理服务器根据修改后的DOM树构建包含所述图形图像的修改后的标记文件(及可选的稍微重新设计的脚本语言代码,适于发送定义用户控制光标的位置的坐标信息和所述用户控制光标的动作信息(例如,点击))。最后,客户端网络浏览器显示并解释修改后的标记文件。
根据本发明的特定实施例,在阅读器或者浏览器中解释(或者呈现)标记文件定义(或者呈现)标记文件的可显示元素。解释过的标记文件可以整个地或者部分地“冻结”到图像中。换句话说,有可能用其关联的图像来替代解释过的标记文件的某些区域或者子部分,并通过/同时相应地修改标记文件的脚本语言代码在修改后的标记文件中包括所述图像。原始的和修改后的标记文件在被解释(呈现)时看起来是完全一样的,但是脚本语言代码将是大不相同的。修改后的标记文件实际上包含与已被呈现的图像相关联的修改后的(和简化的)脚本语言代码。此外,所述图像可以被进一步变换(图像可以随机地或者不是随机地被划分,灰度调整,等等)。这种灵活的“冻结”是通过对标记文件的DOM树的操纵实现的。假定解释过的标记文件的子部分要“冻结”,就分析标记文件的DOM树。定义对应于这个子部分的子节点。然后,还定义包括这些子节点的父节点。选择一个父节点,且将与这个父节点相对应的可显示元素集转换成图像。所选的父节点被包括该图像的节点替代,由此保留被解释过的标记文件的布局不变。
根据本发明的另一种实施例,公开了一种观看互联网内容的方法,来自远程代理服务器响应于请求从互联网检索的网页的图像在远程代理服务器处被呈现,其中网页包含文本和图形。
根据某些实施例,公开了一种鲁棒的代理互联网浏览方法,根据该方法,代理服务器:将表示要被浏览的站点的图像数据发送到用户机器上的标准网络浏览器用以进行显示;利用运行在浏览器上的脚本捕捉鼠标命令。
在优选实施例中,标记文件是HTML(超文本标记语言)或者PHP页面,但可以看到可以预期更广泛的情况。实际上,本公开内容同等地适用于除万维网之外的其它环境。因此,本发明的范围旨在覆盖电子通信的所有形式。
通过定义,所公开的技术适用于任何类型的标记文件,不管是在什么环境下。例如,在移动/无线环境下,该技术适用于WML页面。本发明覆盖了所有已知的标记语言,例如XHTML(良好形式的XML)、DocBook、MathML、SVG、Open eBook、TEI、XBA、SGML、XML及其它明确地设计为支持描述性标记语言的系统。可以看到,大多数浏览器本质上支持除HTML之外的多种格式,而且可以通过插件的使用扩展成支持更多。类似地,本公开内容可以应用到包括当前网络接口开发的许多技术;应用到包括Java中的Applet的网页,其中由于有JVM(Java虚拟机),因此Applet可以在网页上执行;应用到包括RIA(丰富互联网应用)的网页,其中RIA可以在AJAX(异步JavaScript和XML)中开发和/或通过使用象Flash或者WPF/E的技术(需要经过修改的插件)。最后,还可应用到现在使用RDA(丰富桌面应用)的网络接口,其中RDA需要虚拟机(Eclipse RCP、NetBeans、Java Web Start、Mozilla XULRunner、Adobe AIR或者Microsoft SmartClient)或者与诸如Flash/Flex/ActionScript或者HTML/JavaScript/CSS/AJAX的技术一起使用。应注意,XUL是基于W3C标准XML 1.0的XML语言。用XUL写的应用是基于特征化为HTML 4.0的附加的W3C标准技术;级联类型表(CSS)1和2;文档对象模型(DOM)级1和2;JavaScript 1.5,包括ECMA-262第3版(ECMAscript);XML 1.0。
根据某些实施例,所述方法不限制到纯网络环境;例如电子消息传送可以实现本发明的实施例(电子邮件客户端接收许多广告,其中广告的有效显示是要受发送者保护的)。电子邮件(电子消息)由于可以是HTML格式,因此也可以被覆盖。根据其它实施例,本公开内容还应用到应用程序套件,而不仅仅是网络浏览器:应用程序也可以嵌入广告。例如,广告可以嵌入到pdf阅读器中(pdf是实际上的标准,而且,根据pdf文件的上下文和内容,广告尤其可以适于最终用户)。根据范例SaaS/软件即服务,软件通过互联网被递送而且任何软件应用都可以作为标记文件(HTML页面)出现。类似地,游戏环境也越来越多地提供嵌入式广告。广告拦截技术可以在这些环境中出现,而且本公开内容将使得能够保护广告的显示。根据某些实施例,本公开内容实际上针对所有阅读器(来自文档的内容可以在“内容呈现应用或者设备”上被呈现。内容呈现应用的例子包括互联网浏览器(例如,Explorer或者Netscape)、媒体播放器(例如,MP3播放器、Realnetworks流音频文件播放器,等等)、阅读器(例如,Adobe Acrobat pdf阅读器),等等。)
根据某些实施例,本公开内容对于保护所谓的混搭也是有价值的。混搭在用户的浏览器中混合并合并来自多个内容提供者的内容(数据和代码),以提供高价值的网络应用。利用很容易获得的客户端JavaScript库(和诸如AJAX的编程范例),网络应用越来越依赖客户端(浏览器)上的可扩展脚本。混搭开发人员一般使用网络应用代理服务器,其中代理服务器从不同的服务器获取内容并将其提供给混搭或者通过直接包括来自不同源的代码。通过分离并收集内容,存在所包含或附加的广告被除去或者跳过的风险。普通浏览器平台的本质安全模型允许内容被分离,即,广告被除去。通过使用所公开的图像生成机制,有可能使内容不可分离(封装内容),并接着在这些混搭环境中保护广告的显示。与这些图像生成技术相关联地,进一步的代码重写机制可以使用JavaScript重写,其中JavaScript重写可以组合静态分析和动态代码重写(由于JavaScript的自修改本质),操作在重写代理中执行。
更一般地说,除了图像的生成以外,所描述的脚本语言代码重新设计机制还应用到在可视化与编程之间可以进行区别的任何情形。通过类比捕捉或者视频缓冲器访问,图像映射/生成将总是有可能的。接下来,本描述公开了一种可以在每次底层编程代码可以被访问的时候应用的技术(由于它使得可以保护收入流,这将是更有可能的情况)。如果代码元素(底层程序和指令)可以被访问(例如由于API),那么它们就可以被修改(甚至是实时的),而且所提出的机制可以保护广告的显示。即使底层程序不能被访问,它也可以被学习、模拟、预期、计算,等等。接下来,重新编程也可以实现(学习的步骤已经添加到解决方案的当前范围)。
现在讨论可选地可以与本发明实施例组合的先进特征。
DOM检查工具是可以在市场上获得的。这种工具将大大得益于实现本发明的实施例:例如,根据本发明的实施例,Mozilla DOM Inspector的扩展可以允许直接地修改并保存标记文件,即,通过将一个或多个节点的内容转换成一个或多个图像、修改DOM树、并将所生成的图像直接包含到修改后的标记文件中。这种开发将允许用户在编辑操作时(在图像中)“冻结”他们的文档的部分。在许多优点中,它将允许用户阻止其内容的图像转换部分的搜找和索引(因为spider(搜寻)程序或者bot(重复执行)不分析图像的像素)。它还允许禁止内容的最终观众的任何拷贝/粘贴操作(当标记文件被递送时)。
本发明实施例的另一种可能用途将包括修复包含错误的标记文件。如果(例如在脚本中)检测到错误,则根据本发明实施例将包含错误的节点的内容转换为图像将使得生成没有错误的标记文件。
利用图像生成提供了许多令人感兴趣的机会,因为它暗示了对标记文件的可能的能力控制。例如,对应于节点的图像已经被呈现,将有可能将所述图像放到安全的服务器上并对所考虑图像的访问需要认证和或付费。然后,将有可能选择性地以更多的灵活性保护给定文件的部分。根据事先授予用户或者机器的权限,类似的机制将实现对内容或者内容部分的有条件访问。
除了图像生成,<usemap>标签的使用也是有价值的。usemap属性指向界定图像部分的映射。这允许重新编码URL和链接,并接下来控制文档的交互。
关于“节点控制”,还有可能实现细粒度机制(决定一个节点有效还是无效、重新编码节点事件,等等)。关于“DOM树控制”,可以考虑令人感兴趣的可能性。例如,虚拟协助(daemon)或者软件程序检查修改并解析后的标记文件的DOM树的完整性,以便允许(或者不允许)最终显示给用户。这种DOM树简档可以使用“签名”,例如一组字符或值。有可能设置“最佳实践”数据库,包含(对过滤技术)鲁棒的DOM树简档。对DOM路径的控制提供了类似的优点。
现在讨论其他考虑。
首先,与本发明的实施例结合,数据中心软件代码(软件即服务模型)的非常频繁的更新可能是有用的。实现本发明实施例的广告商实际上可以非常频繁地更新数据中心软件代码,其中软件代码将内容和服务递送到消费者(例如以网络邮件)。接下来,通过相应地更新广告拦截器插件或者附件代码,广告拦截器可能试图学习并修改,但是变化的频率会阻碍广告拦截。
其次,如果与本发明的实施例结合,则处理加密的浏览会话(例如,SSL)看起来是令人感兴趣的可能性。其想法在于为了接受提供内容,服务提供商会检查所递送内容的完整性(由此,将保护对所有内容的显示,包括广告);因此,可以使用几种机制,包括散列值的使用。可以看到,在这种环境下(例如,在https下的网络邮件中)广告拦截器仍然能成功地跳过广告。其原因是附件和插件在客户端上的内容破译之后和对用户的最终可视呈现之前运行(仅仅涉及数据传输层)。换句话说,进一步的过滤步骤将总是允许修改内容,直到客户端浏览器的非常末端,除非在用户机器上设置了非常末端的控制。换句话说,加密机制与所描述的本发明实施例的组合是令人感兴趣的(图像加密,等等)。
第三,本发明实施例可以与提供由可信计算机制引发的参数或者约束结合:例如,某些网络可以拒绝向不兼容的浏览器提供网页。这涉及例如用于操作系统更新的机制。通过验证认可的或者认证的客户端的使用,网站将自己感到满意,用户已经被迫观看了一定数量的广告(一种可能的系统将检查认证的DOM树的完整性)。相反,有可能使用黑名单机制(通过不向使用未授权提取、过滤或者DOM修改机制或技术的禁止的代理、spider或者识别出的代理提供服务)。但是,代理弹回(或者数据高速缓冲)技术又能够战胜这些黑名单方法。然而,进一步的对策将包括需要递送内容的精确路径。具体地说,用户将必须访问预定的链接路径(这对于精确遵循的bot或者spider,将是不可能的),以便能够接收相关的内容(否则期望的内容将不被递送)。DOM树修改可以致力于考虑这些方面和规则。类似地,有可能创建专属加密文件格式,这种格式只有“认可的”软件才能读取,而且其解密密钥必须从网络服务器获得(该密钥是非常难以通过逆向设计来恢复的)。
关于可信计算范例的开发趋于控制计算机设备;OS(深)层可以变成使能广告递送的最后一层。
第四,DOM的重写提供了许多令人感兴趣的机会。例如,生成单个图像(和关联的非常简化的DOM树)和使用其作为背景图像同时在上面叠加可能的视频区域(在前景中,如果标记文件是HTML标记文件,则利用<DIV>标签,即,修改的DOM树)将是有价值的。有可能想象更广范围的间接应用,例如在前景中使用图像来禁用对嵌入的视频播放器中的快进按钮的访问,以防止用户跳过视频中的广告(通过例如刷新,这种操作可以是暂时的,或者是永久的)。
本发明可以采取完全硬件实施例、完全软件实施例或者既包含硬件元素又包含软件元素的实施例。在优选实施例中,本发明是以软件实现的,这包括但不限于固件、驻留软件、微代码,等等。在高性能系统中,例如,与图像生成处理绑定到一起的虚拟化机制的硬件实现可以证明是有利的。
此外,本发明可以采取可以从计算机可用或者计算机可读介质访问的计算机程序产品的形式,其中的介质提供由计算机或者任何指令执行系统使用或者与其结合的程序代码。为了这种描述,计算机可用或者计算机可读介质可以是能够包含、存储、传送、传播或者传输由指令执行系统、装置或者设备使用或者与其结合的程序的任何装置。
Firefox是Mozilla Foundation的商标。
Internet Explorer是Microsoft公司的商标。
Google是Google公司的商标。
其它的公司、产品或者服务名称可以是其它的商标或者服务标记。
Claims (11)
1.一种修改经解释的标记文件的DOM树的方法,其中所述经解释的标记文件包括一个或多个可显示元素,所述方法包括如下步骤:
定义所述经解释的标记文件的特定显示区域,
获得所述经解释的标记文件的DOM树,所述DOM树包括至少一个父节点和多个子节点;每个节点都与至少一个所述可显示元素相关联,
在所述DOM树中识别一组子节点,该组子节点的可显示元素包括所述特定显示区域的至少一部分,
在所述DOM树中识别包括所述一组子节点的第一父节点,
将与所述识别出的第一父节点相关联的所有可显示元素转换成主图像,
生成包括所述主图像的第二父节点,
通过删除所述识别出的一组子节点并通过用所述第二父节点替代所述识别出的第一父节点,将所述DOM树修改成经修改的DOM树。
2.如权利要求1所述的方法,还包括根据所述经修改的DOM树构造经修改的标记文件的步骤。
3.如权利要求1或2所述的方法,其中所述主图像进一步划分成多个子图像。
4.如前面任何一项权利要求所述的方法,还包括通过诸如变形、灰度调整、重新编码、调整大小、加噪声、离散化、重新采样或者混杂的操作改变所述主图像或者至少一个所述子图像的步骤。
5.如前面任何一项权利要求所述的方法,所述经修改的标记文件还包括脚本语言代码,该脚本语言代码适于使其上执行该代码的用户终端发送定义用户控制光标的位置的坐标信息。
6.如前面任何一项权利要求所述的方法,其中,所述脚本语言代码还适于使其上执行该代码的用户终端发送定义用户控制光标的点击动作的动作信息。
7.如前面任何一项权利要求所述的方法,其中标记文件是HTML、PHP或者XML文件。
8.如前面任何一项权利要求所述的方法,还包括提供主图像和解释经修改的标记文件的步骤。
9.一种计算机程序,包括当所述计算机程序在合适的计算机设备上执行时用于执行根据权利要求1至8中任何一项所述方法的步骤的指令。
10.一种计算机可读介质,该计算机可读介质上编码有根据权利要求9所述的计算机程序。
11.一种系统,包括适于执行根据权利要求1至8中任何一项所述方法的步骤。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP08305188 | 2008-05-21 | ||
EP08305188.8 | 2008-05-21 | ||
PCT/EP2009/054645 WO2009141201A1 (en) | 2008-05-21 | 2009-04-20 | Method and system to selectively secure the display of advertisements on web browsers |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102027472A true CN102027472A (zh) | 2011-04-20 |
Family
ID=41040598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009801174493A Pending CN102027472A (zh) | 2008-05-21 | 2009-04-20 | 选择性地保护网络浏览器上广告显示的方法与系统 |
Country Status (9)
Country | Link |
---|---|
US (1) | US8086957B2 (zh) |
EP (1) | EP2291804A1 (zh) |
JP (1) | JP5308516B2 (zh) |
KR (1) | KR20110009675A (zh) |
CN (1) | CN102027472A (zh) |
CA (1) | CA2695819C (zh) |
IL (1) | IL208791A0 (zh) |
TW (1) | TWI461937B (zh) |
WO (1) | WO2009141201A1 (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103299301A (zh) * | 2011-06-17 | 2013-09-11 | 乐天株式会社 | 信息处理装置、信息处理方法、信息处理程序、以及记录了信息处理程序的记录介质 |
CN104657474A (zh) * | 2015-02-16 | 2015-05-27 | 北京搜狗科技发展有限公司 | 一种广告展示方法、广告查询服务器及客户端 |
CN104768045A (zh) * | 2015-03-26 | 2015-07-08 | 百视通网络电视技术发展有限责任公司 | 基于电视应用程序的光标控制方法及系统 |
CN105530248A (zh) * | 2015-12-07 | 2016-04-27 | 珠海市君天电子科技有限公司 | 一种媒体广告拦截方法和装置 |
JP2016099942A (ja) * | 2014-11-26 | 2016-05-30 | 日本電信電話株式会社 | コンテンツ表示方法、コンテンツ表示装置、及びプログラム |
CN106371842A (zh) * | 2016-08-31 | 2017-02-01 | 北京字节跳动科技有限公司 | 一种网页转化跟踪方法和系统 |
CN106407262A (zh) * | 2016-08-24 | 2017-02-15 | 百度在线网络技术(北京)有限公司 | 信息展现方法及装置 |
CN107526757A (zh) * | 2016-10-13 | 2017-12-29 | 腾讯科技(北京)有限公司 | 页面图形文件的展示方法和装置 |
CN107609093A (zh) * | 2017-09-08 | 2018-01-19 | 东软集团股份有限公司 | 一种数据库表监控方法、装置、设备和存储介质 |
CN107957909A (zh) * | 2016-10-17 | 2018-04-24 | 腾讯科技(深圳)有限公司 | 一种信息处理方法、终端设备及服务器 |
CN108243249A (zh) * | 2018-01-04 | 2018-07-03 | 网宿科技股份有限公司 | 一种网页广告的防屏蔽方法、内容分发网络及客户端 |
CN111061973A (zh) * | 2013-11-21 | 2020-04-24 | 谷歌有限责任公司 | 加速文档加载 |
CN111149368A (zh) * | 2017-10-03 | 2020-05-12 | 高通股份有限公司 | 用于浸入式媒体数据的内容来源描述 |
CN111835706A (zh) * | 2020-05-27 | 2020-10-27 | 平安普惠企业管理有限公司 | 浏览器恶意扩展的检验方法、装置及计算机设备 |
CN113283216A (zh) * | 2021-05-31 | 2021-08-20 | 平安国际智慧城市科技股份有限公司 | 网页内容显示方法、装置、设备及存储介质 |
Families Citing this family (126)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8285590B2 (en) * | 2000-06-23 | 2012-10-09 | Ecomsystems, Inc. | Systems and methods for computer-created advertisements |
US7886226B1 (en) * | 2006-10-03 | 2011-02-08 | Adobe Systems Incorporated | Content based Ad display control |
US8868499B2 (en) * | 2007-08-15 | 2014-10-21 | Salesforce.Com, Inc. | Method and system for pushing data to subscribers in an on-demand service |
US8516590B1 (en) | 2009-04-25 | 2013-08-20 | Dasient, Inc. | Malicious advertisement detection and remediation |
US9154364B1 (en) * | 2009-04-25 | 2015-10-06 | Dasient, Inc. | Monitoring for problems and detecting malware |
US8555391B1 (en) | 2009-04-25 | 2013-10-08 | Dasient, Inc. | Adaptive scanning |
US9336319B2 (en) * | 2009-09-11 | 2016-05-10 | Ebay Inc. | Data file and rule driven synchronous or asynchronous document generation |
US8296183B2 (en) * | 2009-11-23 | 2012-10-23 | Ecomsystems, Inc. | System and method for dynamic layout intelligence |
KR101672445B1 (ko) * | 2010-03-19 | 2016-11-04 | 삼성전자주식회사 | 컨텐츠 전송 시스템에서 컨텐츠 재생 제어 방법 및 장치 |
US8875285B2 (en) * | 2010-03-24 | 2014-10-28 | Microsoft Corporation | Executable code validation in a web browser |
US8776169B2 (en) | 2010-03-30 | 2014-07-08 | Authentic8, Inc. | Disposable browsers and authentication techniques for a secure online user environment |
US9312969B2 (en) * | 2010-04-15 | 2016-04-12 | North Eleven Limited | Remote server system for combining audio files and for managing combined audio files for downloading by local systems |
WO2011130868A1 (en) | 2010-04-19 | 2011-10-27 | Hewlett-Packard Development Company, L. P. | Segmenting a web page into coherent functional blocks |
CA2706743A1 (en) * | 2010-06-30 | 2010-09-08 | Ibm Canada Limited - Ibm Canada Limitee | Dom based page uniqueness indentification |
TWI435235B (zh) * | 2010-11-04 | 2014-04-21 | Inst Information Industry | 電腦蠕蟲治療系統以及方法以及儲存電腦蠕蟲治療方法之電腦可讀取記錄媒體 |
US8909697B2 (en) | 2010-11-29 | 2014-12-09 | Hughes Network Systems, Llc | Computer networking system and method with javascript execution for pre-fetching content from dynamically-generated URL and javascript injection to modify date or random number calculation |
US9529896B2 (en) * | 2011-01-18 | 2016-12-27 | Netspark Ltd | Hierarchical online-content filtering device and method |
US20170068728A1 (en) * | 2011-01-18 | 2017-03-09 | Netspark Ltd. | Hierarchal Online-Content Filtering Device and Method |
EP2508970B1 (en) * | 2011-04-05 | 2015-02-25 | BlackBerry Limited | Electronic device and method of controlling same |
EP2732602A2 (en) * | 2011-04-20 | 2014-05-21 | IBT Internet Bussiness Technologies - Informática, S.A. | Methods and systems for real-time web tracking and marketing |
US20130254649A1 (en) * | 2011-06-07 | 2013-09-26 | Michael O'Neill | Establishing user consent to cookie storage on user terminal equipment |
US8700985B2 (en) * | 2011-06-20 | 2014-04-15 | Google Inc. | Collecting user feedback about web pages |
JP5747686B2 (ja) * | 2011-06-30 | 2015-07-15 | 大日本印刷株式会社 | レイアウト編集プログラム、レイアウト編集装置及びレイアウト編集方法 |
US8635518B1 (en) * | 2011-07-21 | 2014-01-21 | Google Inc. | Methods and systems to copy web content selections |
US9251287B2 (en) * | 2011-08-26 | 2016-02-02 | International Business Machines Corporation | Automatic detection of item lists within a web page |
US8468145B2 (en) * | 2011-09-16 | 2013-06-18 | Google Inc. | Indexing of URLs with fragments |
US9418292B2 (en) | 2011-10-04 | 2016-08-16 | Here Global B.V. | Methods, apparatuses, and computer program products for restricting overlay of an augmentation |
CN102541534B (zh) * | 2011-10-21 | 2014-09-10 | 鼎捷软件股份有限公司 | 移动设备网页窗体生成方法 |
US20130160120A1 (en) * | 2011-12-20 | 2013-06-20 | Yahoo! Inc. | Protecting end users from malware using advertising virtual machine |
CA2763316C (en) * | 2012-01-06 | 2014-09-30 | Microsoft Corporation | Enabling performant cascading operations |
US8966359B2 (en) * | 2012-01-26 | 2015-02-24 | International Business Machines Corporation | Web application content mapping |
EP2847686B1 (en) * | 2012-05-07 | 2019-10-30 | Digital Guardian, Inc. | Enhanced document and event mirroring for accessing content |
US9225583B1 (en) * | 2012-07-31 | 2015-12-29 | Instart Logic, Inc. | Efficient delivery of content by virtualization of static interaction with the document object model |
US9330072B1 (en) | 2012-09-26 | 2016-05-03 | Google Inc. | Serving content for a space based on a probabilistic distribution |
US9442912B1 (en) | 2012-09-26 | 2016-09-13 | Google Inc. | Estimating the number of content items to fill an online space before distributing the content items to the online space |
US9164966B1 (en) | 2012-10-24 | 2015-10-20 | Google Inc. | Determining sizes of content items |
US9171182B2 (en) | 2012-10-31 | 2015-10-27 | Tata Consultancy Services Limited | Dynamic data masking |
GB2507749A (en) * | 2012-11-07 | 2014-05-14 | Ibm | Ensuring completeness of a displayed web page |
US8978110B2 (en) | 2012-12-06 | 2015-03-10 | Airwatch Llc | Systems and methods for controlling email access |
US9021037B2 (en) | 2012-12-06 | 2015-04-28 | Airwatch Llc | Systems and methods for controlling email access |
US8862868B2 (en) | 2012-12-06 | 2014-10-14 | Airwatch, Llc | Systems and methods for controlling email access |
US8826432B2 (en) | 2012-12-06 | 2014-09-02 | Airwatch, Llc | Systems and methods for controlling email access |
US10902179B2 (en) * | 2012-12-10 | 2021-01-26 | Microsoft Technology Licensing, Llc | Modification of file graphic appearance within a collection canvas |
US9158800B2 (en) | 2012-12-21 | 2015-10-13 | Google Inc. | Providing content items for non-standard content item slots |
US9002821B2 (en) | 2013-01-16 | 2015-04-07 | Google Inc. | Indexing application pages of native applications |
US9584543B2 (en) * | 2013-03-05 | 2017-02-28 | White Ops, Inc. | Method and system for web integrity validator |
US20140281854A1 (en) * | 2013-03-14 | 2014-09-18 | Comcast Cable Communications, Llc | Hypermedia representation of an object model |
US9146972B2 (en) | 2013-03-15 | 2015-09-29 | Google Inc. | Ranking of presentation modes for particular content |
US9338143B2 (en) | 2013-03-15 | 2016-05-10 | Shape Security, Inc. | Stateless web content anti-automation |
US9178908B2 (en) | 2013-03-15 | 2015-11-03 | Shape Security, Inc. | Protecting against the introduction of alien content |
US9225737B2 (en) | 2013-03-15 | 2015-12-29 | Shape Security, Inc. | Detecting the introduction of alien content |
US8996520B2 (en) | 2013-03-15 | 2015-03-31 | Google Inc. | Ranking of native application content |
US20140283038A1 (en) | 2013-03-15 | 2014-09-18 | Shape Security Inc. | Safe Intelligent Content Modification |
US9787686B2 (en) | 2013-04-12 | 2017-10-10 | Airwatch Llc | On-demand security policy activation |
US20140325338A1 (en) * | 2013-04-24 | 2014-10-30 | Yadwire Technologies Ltd. | Displayable content insertion system |
KR102081367B1 (ko) | 2013-04-24 | 2020-04-14 | 에스케이플래닛 주식회사 | 광고 문서 관리를 위한 장치 및 방법 |
US9135346B2 (en) | 2013-06-07 | 2015-09-15 | Google Inc. | Index data for native applications |
US9398105B2 (en) * | 2013-08-16 | 2016-07-19 | Nosto Solutions Ltd. | Method for providing a third party service associated with a network-accessible site using a single scripting approach |
US9426234B2 (en) * | 2013-08-16 | 2016-08-23 | Nosto Solutions Ltd | Method for providing a third party service associated with a network accessible site |
US9311407B2 (en) | 2013-09-05 | 2016-04-12 | Google Inc. | Native application search results |
JP6234168B2 (ja) * | 2013-10-31 | 2017-11-22 | イクス株式会社 | 広告動画再生システム、及び、広告動画再生方法 |
US9270647B2 (en) | 2013-12-06 | 2016-02-23 | Shape Security, Inc. | Client/server security by an intermediary rendering modified in-memory objects |
KR102210824B1 (ko) * | 2013-12-17 | 2021-02-01 | 에스케이플래닛 주식회사 | 광고 표시 시스템 및 그 방법, 그리고 이에 적용되는 장치 |
KR20150072819A (ko) | 2013-12-20 | 2015-06-30 | 삼성전자주식회사 | 전자장치에서 디지털 콘텐츠를 디스플레이하기 위한 방법 및 장치 |
CA2838911C (en) | 2014-01-09 | 2020-05-05 | Ibm Canada Limited - Ibm Canada Limitee | Tracking javascript actions |
US8954583B1 (en) | 2014-01-20 | 2015-02-10 | Shape Security, Inc. | Intercepting and supervising calls to transformed operations and objects |
US9225729B1 (en) | 2014-01-21 | 2015-12-29 | Shape Security, Inc. | Blind hash compression |
WO2015117267A1 (en) | 2014-02-07 | 2015-08-13 | Google Inc. | Systems and methods for automatically creating content modification scheme |
US9608870B1 (en) | 2014-02-28 | 2017-03-28 | Google Inc. | Deep link verification for native applications |
US9251224B2 (en) | 2014-03-04 | 2016-02-02 | Google Inc. | Triggering and ranking of native applications |
US9652508B1 (en) | 2014-03-05 | 2017-05-16 | Google Inc. | Device specific adjustment based on resource utilities |
US10061796B2 (en) | 2014-03-11 | 2018-08-28 | Google Llc | Native application content verification |
US9544329B2 (en) | 2014-03-18 | 2017-01-10 | Shape Security, Inc. | Client/server security by an intermediary executing instructions received from a server and rendering client application instructions |
US9645980B1 (en) | 2014-03-19 | 2017-05-09 | Google Inc. | Verification of native applications for indexing |
US9524347B1 (en) | 2014-04-01 | 2016-12-20 | Google Inc. | Automatically implementing an application in response to a search query |
US9513961B1 (en) | 2014-04-02 | 2016-12-06 | Google Inc. | Monitoring application loading |
US9361635B2 (en) * | 2014-04-14 | 2016-06-07 | Yahoo! Inc. | Frequent markup techniques for use in native advertisement placement |
US8997226B1 (en) | 2014-04-17 | 2015-03-31 | Shape Security, Inc. | Detection of client-side malware activity |
US9507806B1 (en) | 2014-04-30 | 2016-11-29 | Instart Logic, Inc. | Efficient delivery of image files |
US9679075B1 (en) * | 2014-04-30 | 2017-06-13 | Instart Logic, Inc. | Efficient delivery of animated image files |
US9210171B1 (en) | 2014-05-29 | 2015-12-08 | Shape Security, Inc. | Selectively protecting valid links to pages of a web site |
US9083739B1 (en) | 2014-05-29 | 2015-07-14 | Shape Security, Inc. | Client/server authentication using dynamic credentials |
US9405910B2 (en) | 2014-06-02 | 2016-08-02 | Shape Security, Inc. | Automatic library detection |
US9767159B2 (en) | 2014-06-13 | 2017-09-19 | Google Inc. | Ranking search results |
EP3161682A1 (en) | 2014-06-24 | 2017-05-03 | Google, Inc. | Search results for native applications |
US10210263B1 (en) | 2014-06-24 | 2019-02-19 | Google Llc | Native application search results |
US10013496B2 (en) | 2014-06-24 | 2018-07-03 | Google Llc | Indexing actions for resources |
EP3161678B1 (en) | 2014-06-25 | 2020-12-16 | Google LLC | Deep links for native applications |
US9892190B1 (en) | 2014-06-25 | 2018-02-13 | Google Inc. | Search suggestions based on native application history |
US10409884B2 (en) * | 2014-07-02 | 2019-09-10 | The Nielsen Company (Us), Llc | Methods and apparatus to identify sponsored media in a document object model |
US9003511B1 (en) | 2014-07-22 | 2015-04-07 | Shape Security, Inc. | Polymorphic security policy action |
US9438625B1 (en) | 2014-09-09 | 2016-09-06 | Shape Security, Inc. | Mitigating scripted attacks using dynamic polymorphism |
US9582600B1 (en) * | 2014-09-23 | 2017-02-28 | Amazon Technologies, Inc. | Cloud browser DOM-based client |
US9740791B1 (en) | 2014-09-23 | 2017-08-22 | Amazon Technologies, Inc. | Browser as a service |
US9800602B2 (en) | 2014-09-30 | 2017-10-24 | Shape Security, Inc. | Automated hardening of web page content |
US20170315971A1 (en) * | 2014-10-06 | 2017-11-02 | Symmetric Co., Ltd. | Program for displaying webpage, terminal device, and server device |
EP3021274A1 (en) * | 2014-11-11 | 2016-05-18 | Tata Consultancy Services Limited | Data privacy management |
JP6514897B2 (ja) * | 2015-01-16 | 2019-05-15 | Kddi株式会社 | 受信機、表示方法及びプログラム |
US20160239880A1 (en) * | 2015-02-17 | 2016-08-18 | Pagefair Limited | Web advertising protection system |
JP6433339B2 (ja) * | 2015-03-02 | 2018-12-05 | キヤノン株式会社 | 情報処理システム、サーバ装置、制御方法およびプログラム |
US9608975B2 (en) | 2015-03-30 | 2017-03-28 | Shape Security, Inc. | Challenge-dynamic credential pairs for client/server request validation |
US9986058B2 (en) | 2015-05-21 | 2018-05-29 | Shape Security, Inc. | Security systems for mitigating attacks from a headless browser executing on a client computer |
WO2017007705A1 (en) | 2015-07-06 | 2017-01-12 | Shape Security, Inc. | Asymmetrical challenges for web security |
WO2017007936A1 (en) | 2015-07-07 | 2017-01-12 | Shape Security, Inc. | Split serving of computer code |
KR20170006432A (ko) * | 2015-07-08 | 2017-01-18 | 삼성전자주식회사 | 웹 컨텐츠 표시 방법 및 이를 지원하는 전자 장치 |
US9348671B1 (en) | 2015-07-23 | 2016-05-24 | Google Inc. | Monitoring application loading |
US10324600B2 (en) * | 2015-07-27 | 2019-06-18 | Adp, Llc | Web page generation system |
US10742764B2 (en) | 2015-07-27 | 2020-08-11 | Adp, Llc | Web page generation system |
US10417317B2 (en) | 2015-07-27 | 2019-09-17 | Adp, Llc | Web page profiler |
US10579687B2 (en) * | 2015-09-01 | 2020-03-03 | Google Llc | Providing native application search results with web search results |
SG11201803927SA (en) * | 2015-11-13 | 2018-06-28 | Playground Xyz Ip Pty Ltd | A method and system for distributing electronic publishing content |
US20170237823A1 (en) * | 2015-12-07 | 2017-08-17 | Blockthrough Inc. | System and method for transforming online content |
US10437917B2 (en) | 2017-04-28 | 2019-10-08 | Microsoft Technology Licensing, Llc | Web page nonintrusive content protection on user device |
US10664648B2 (en) * | 2017-12-08 | 2020-05-26 | Ca, Inc. | Webpage rendering using a remotely generated layout node tree |
CN110020318B (zh) * | 2017-12-26 | 2022-09-23 | 腾讯科技(深圳)有限公司 | 关键词与扩展阅读行为的处理方法、浏览器及电子设备 |
CN109062543B (zh) * | 2018-06-07 | 2022-03-15 | 爱云保(上海)科技有限公司 | 一种路由器帮助信息的优化处理系统及其方法 |
US10296552B1 (en) * | 2018-06-30 | 2019-05-21 | FiaLEAF LIMITED | System and method for automated identification of internet advertising and creating rules for blocking of internet advertising |
KR102173178B1 (ko) * | 2018-08-09 | 2020-11-02 | 주식회사 고려미디어 | 온라인상 문서를 사용자가 보기 편리한 문서로 가공하는 방법 |
CN111448587B (zh) * | 2018-08-16 | 2023-11-10 | 花瓣云科技有限公司 | 一种广告图片的显示方法、上传方法及装置 |
US11263028B2 (en) | 2019-03-27 | 2022-03-01 | Citrix Systems, Inc. | Providing user interface (UI) elements in virtual machine sessions at reduced latency |
US11263029B2 (en) | 2019-03-27 | 2022-03-01 | Citrix Systems, Inc. | Providing user interface (UI) elements having scrollable content in virtual machine sessions at reduced latency and related methods |
US11281478B2 (en) | 2019-03-27 | 2022-03-22 | Citrix Systems, Inc. | Providing user interface (UI) elements having an ordered hierarchy of graphical control elements in virtual machine sessions at reduced latency and related methods |
US11509688B1 (en) * | 2019-06-25 | 2022-11-22 | NortonLifeLock Inc. | Virtual ad blocking on a computing device |
CN111221513B (zh) * | 2020-01-03 | 2023-04-18 | 北京字节跳动网络技术有限公司 | 一种调整层叠样式表的方法、装置、介质和电子设备 |
CN114896531B (zh) * | 2022-04-27 | 2023-03-24 | 北京聚通达科技股份有限公司 | 图像处理的方法、装置、电子设备及存储介质 |
US20240126978A1 (en) * | 2022-10-14 | 2024-04-18 | Google Llc | Determining attributes for elements of displayable content and adding them to an accessibility tree |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6393407B1 (en) * | 1997-09-11 | 2002-05-21 | Enliven, Inc. | Tracking user micro-interactions with web page advertising |
KR100467240B1 (ko) * | 2000-08-17 | 2005-01-24 | 주식회사 이노티브 | 영상 데이터 디스플레이 시스템 및 방법 |
US8392827B2 (en) * | 2001-04-30 | 2013-03-05 | International Business Machines Corporation | Method for generation and assembly of web page content |
AU2003202130A1 (en) * | 2002-02-04 | 2003-09-02 | Mobileaware Technologies Limited | Document transformation |
CA2414053A1 (en) * | 2002-12-09 | 2004-06-09 | Corel Corporation | System and method for manipulating a document object model |
WO2005098664A1 (en) * | 2004-04-08 | 2005-10-20 | Justsystems Corporation | Processing documents in multiple markup representations |
US7617294B1 (en) * | 2004-08-02 | 2009-11-10 | Sun Microsystems, Inc. | Method and apparatus for reducing latency involved in retrieving web page components |
CN101052986A (zh) | 2004-08-02 | 2007-10-10 | 佳思腾软件公司 | 将文档的一种表述的改变反映到另一种表述的文档处理和管理方法 |
US7913163B1 (en) * | 2004-09-22 | 2011-03-22 | Google Inc. | Determining semantically distinct regions of a document |
US20060206919A1 (en) * | 2005-03-10 | 2006-09-14 | Axalto Sa | System and method of secure login on insecure systems |
US7409636B2 (en) * | 2005-07-29 | 2008-08-05 | Microsoft Corporation | Lightweight application program interface (API) for extensible markup language (XML) |
WO2007019571A2 (en) * | 2005-08-09 | 2007-02-15 | Compography, Inc. | Methods and apparatuses to assemble, extract and deploy content from electronic documents |
WO2007099544A2 (en) * | 2006-03-01 | 2007-09-07 | Infogin Ltd. | Methods and apparatus for enabling use of web content on various types of devices |
GB2443469A (en) * | 2006-11-03 | 2008-05-07 | Messagelabs Ltd | Detection of image spam |
-
2009
- 2009-04-08 US US12/420,184 patent/US8086957B2/en not_active Expired - Fee Related
- 2009-04-20 CN CN2009801174493A patent/CN102027472A/zh active Pending
- 2009-04-20 KR KR1020107025520A patent/KR20110009675A/ko not_active Application Discontinuation
- 2009-04-20 EP EP09749691A patent/EP2291804A1/en not_active Withdrawn
- 2009-04-20 JP JP2011509909A patent/JP5308516B2/ja not_active Expired - Fee Related
- 2009-04-20 CA CA2695819A patent/CA2695819C/en active Active
- 2009-04-20 WO PCT/EP2009/054645 patent/WO2009141201A1/en active Application Filing
- 2009-05-18 TW TW098116437A patent/TWI461937B/zh not_active IP Right Cessation
-
2010
- 2010-10-18 IL IL208791A patent/IL208791A0/en unknown
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103299301A (zh) * | 2011-06-17 | 2013-09-11 | 乐天株式会社 | 信息处理装置、信息处理方法、信息处理程序、以及记录了信息处理程序的记录介质 |
CN111061973A (zh) * | 2013-11-21 | 2020-04-24 | 谷歌有限责任公司 | 加速文档加载 |
US11809511B2 (en) | 2013-11-21 | 2023-11-07 | Google Llc | Speeding up document loading |
CN111061973B (zh) * | 2013-11-21 | 2024-03-29 | 谷歌有限责任公司 | 加速文档加载 |
JP2016099942A (ja) * | 2014-11-26 | 2016-05-30 | 日本電信電話株式会社 | コンテンツ表示方法、コンテンツ表示装置、及びプログラム |
CN104657474A (zh) * | 2015-02-16 | 2015-05-27 | 北京搜狗科技发展有限公司 | 一种广告展示方法、广告查询服务器及客户端 |
CN104768045B (zh) * | 2015-03-26 | 2018-01-16 | 百视通网络电视技术发展有限责任公司 | 基于电视应用程序的光标控制方法及系统 |
CN104768045A (zh) * | 2015-03-26 | 2015-07-08 | 百视通网络电视技术发展有限责任公司 | 基于电视应用程序的光标控制方法及系统 |
CN105530248A (zh) * | 2015-12-07 | 2016-04-27 | 珠海市君天电子科技有限公司 | 一种媒体广告拦截方法和装置 |
CN106407262A (zh) * | 2016-08-24 | 2017-02-15 | 百度在线网络技术(北京)有限公司 | 信息展现方法及装置 |
CN106371842A (zh) * | 2016-08-31 | 2017-02-01 | 北京字节跳动科技有限公司 | 一种网页转化跟踪方法和系统 |
CN106371842B (zh) * | 2016-08-31 | 2018-10-23 | 北京字节跳动科技有限公司 | 一种网页转化跟踪方法和系统 |
CN107526757A (zh) * | 2016-10-13 | 2017-12-29 | 腾讯科技(北京)有限公司 | 页面图形文件的展示方法和装置 |
CN107526757B (zh) * | 2016-10-13 | 2020-04-07 | 腾讯科技(北京)有限公司 | 页面图形文件的展示方法和装置 |
CN107957909A (zh) * | 2016-10-17 | 2018-04-24 | 腾讯科技(深圳)有限公司 | 一种信息处理方法、终端设备及服务器 |
CN107957909B (zh) * | 2016-10-17 | 2022-01-07 | 腾讯科技(深圳)有限公司 | 一种信息处理方法、终端设备及服务器 |
CN107609093B (zh) * | 2017-09-08 | 2020-12-18 | 东软集团股份有限公司 | 一种数据库表监控方法、装置、设备和存储介质 |
CN107609093A (zh) * | 2017-09-08 | 2018-01-19 | 东软集团股份有限公司 | 一种数据库表监控方法、装置、设备和存储介质 |
CN111149368A (zh) * | 2017-10-03 | 2020-05-12 | 高通股份有限公司 | 用于浸入式媒体数据的内容来源描述 |
CN108243249A (zh) * | 2018-01-04 | 2018-07-03 | 网宿科技股份有限公司 | 一种网页广告的防屏蔽方法、内容分发网络及客户端 |
CN111835706A (zh) * | 2020-05-27 | 2020-10-27 | 平安普惠企业管理有限公司 | 浏览器恶意扩展的检验方法、装置及计算机设备 |
CN111835706B (zh) * | 2020-05-27 | 2023-11-10 | 深圳市胜来信息技术有限公司 | 浏览器恶意扩展的检验方法、装置及计算机设备 |
CN113283216A (zh) * | 2021-05-31 | 2021-08-20 | 平安国际智慧城市科技股份有限公司 | 网页内容显示方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20090292984A1 (en) | 2009-11-26 |
JP2011525272A (ja) | 2011-09-15 |
TW201003438A (en) | 2010-01-16 |
IL208791A0 (en) | 2010-12-30 |
CA2695819A1 (en) | 2009-11-26 |
JP5308516B2 (ja) | 2013-10-09 |
CA2695819C (en) | 2018-01-02 |
WO2009141201A1 (en) | 2009-11-26 |
EP2291804A1 (en) | 2011-03-09 |
KR20110009675A (ko) | 2011-01-28 |
US8086957B2 (en) | 2011-12-27 |
TWI461937B (zh) | 2014-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102027472A (zh) | 选择性地保护网络浏览器上广告显示的方法与系统 | |
US8812959B2 (en) | Method and system for delivering digital content | |
US9324085B2 (en) | Method and system of generating digital content on a user interface | |
US8935609B2 (en) | Method and system to secure the display of advertisements on web browsers | |
US20090158141A1 (en) | Method and system to secure the display of a particular element of a markup file | |
KR101367928B1 (ko) | 컨테이너 문서로의 원격 모듈 편입 | |
Storey et al. | The future of ad blocking: An analytical framework and new techniques | |
US9916293B2 (en) | Module specification for a module to be incorporated into a container document | |
US9558289B2 (en) | Securely rendering online ads in a host page | |
US20070136201A1 (en) | Customized container document modules using preferences | |
CN105940654A (zh) | 特权静态被托管的web应用 | |
US20150244737A1 (en) | Detecting malicious advertisements using source code analysis | |
CN102591965B (zh) | 一种黑链检测的方法及装置 | |
Zhou et al. | Understanding and monitoring embedded web scripts | |
US20160239880A1 (en) | Web advertising protection system | |
US20160125474A1 (en) | Preinstall partner revenue sharing | |
Antonelli et al. | Drop-down menu widget identification using HTML structure changes classification | |
Zhao et al. | Llm app store analysis: A vision and roadmap | |
KR20210144659A (ko) | 부정 조작 방지된(Tamper-proof) 상호 작용 데이터 | |
Fouquet et al. | Breaking bad: Quantifying the addiction of web elements to JavaScript | |
CN104077353A (zh) | 一种黑链检测的方法及装置 | |
KR101102851B1 (ko) | 사용자 단말 장치의 설정 해상도와 컨텐츠 제공 서버에서 제공하는 기본 해상도의 차이로 인해 생기는 웹 페이지의 여백 영역에 추가 컨텐츠를 제공하기 위한 방법, 시스템 및컴퓨터 판독 가능한 기록 매체 | |
Zhu et al. | Ad fraud categorization and detection methods | |
Snyder | Improving Web Privacy And Security with a Cost-Benefit Analysis of the Web API | |
Abouollo | Canvas Fingerprinting: A State of the Art |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110420 |