CN102282565A - 用于隐私保护的具有双脚本引擎的浏览器 - Google Patents
用于隐私保护的具有双脚本引擎的浏览器 Download PDFInfo
- Publication number
- CN102282565A CN102282565A CN2010800048956A CN201080004895A CN102282565A CN 102282565 A CN102282565 A CN 102282565A CN 2010800048956 A CN2010800048956 A CN 2010800048956A CN 201080004895 A CN201080004895 A CN 201080004895A CN 102282565 A CN102282565 A CN 102282565A
- Authority
- CN
- China
- Prior art keywords
- script
- script engine
- engine
- special
- public
- 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.)
- Granted
Links
- 238000013515 script Methods 0.000 title claims abstract description 287
- 230000009977 dual effect Effects 0.000 title 1
- 238000004891 communication Methods 0.000 claims description 31
- 238000011022 operating instruction Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 8
- 238000000034 method Methods 0.000 description 8
- 244000035744 Hura crepitans Species 0.000 description 6
- 235000014510 cooky Nutrition 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 239000000945 filler Substances 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2816—Controlling appliance services of a home automation network by calling their functionalities
- H04L12/2818—Controlling appliance services of a home automation network by calling their functionalities from a device located outside both the home and the home network
-
- 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
-
- 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/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2807—Exchanging configuration information on appliance services in a home automation network
- H04L12/2814—Exchanging control software or macros for controlling appliance services in a home automation network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2105—Dual mode as a secondary aspect
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Automation & Control Theory (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
- Storage Device Security (AREA)
- Information Transfer Between Computers (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种数据处理系统具有浏览器,该浏览器具有用于运行脚本的脚本引擎装置。该脚本引擎装置实现公共脚本引擎和专用脚本引擎。如果该脚本不需要访问该系统处的预定资源,则该浏览器被配置为让该公共脚本引擎运行该脚本。如果该脚本需要访问该预定资源,则该浏览器被配置为让该专用脚本引擎运行该脚本。仅仅该专用脚本引擎具有用于使得该脚本能够访问该预定资源的接口。该脚本引擎装置被配置为阻止该专用脚本引擎将数据通信到公共脚本引擎或该数据处理系统外的未被批准的服务器。
Description
技术领域
本发明涉及包括具有用于运行脚本的脚本引擎装置的运行时间环境的数据处理系统、涉及包括脚本引擎装置的运行时间环境、涉及包括计算机可运行指令的计算机程序产品、以及涉及表示包括运行控制指示的脚本的数据结构。
背景技术
联网的电子设备的使用已经变得越来越流行。在家庭网络领域中,提供远程用户接口用于UPnP(通用即插即用)网络中的消费电子(CE)设备。远程用户接口使得用户能够经由UPnP家庭网络远程控制其它的UPnP设备上的应用,并且还使得用户能够使用连接到因特网的CE设备与因特网服务交互。这样的因特网服务的示例是用户可以从其下载内容信息(诸如电影)的因特网服务。对于有关UPnP的更多背景,参见例如WO 2005/002139。
考虑涉及的因特网服务的众多供应商、不同类型的服务和众多的消费设备供应商,最好尽可能将通信协议和用户接口标准化以便为用户提供最好的体验。
一个这样的标准是CEA-2014(也称为Web4CE),消费电子协会(CEA)标准。例如参见“Web4CE : Accessing Web-based Applications on Consumer Devices”,W. Dees和P. Shrubsole,WWW 2007/ Poster Paper,主题:Systems,1303-1304页。该标准对于UPnP网络和因特网上的远程用户接口指定了基于网络的协议和基于XHTML的内容格式(称为CE-HTML)。CE-HTML基于普通的开放因特网语言,诸如Javascript 1.5、XHTML 1.0和CSS TV Profile 1.0。CE-HTML对于交互服务指定了内容格式和脚本语义,并且定义了将托管和呈现那些服务的浏览器环境。CE-HTML的当前版本的标准化主要在两个标准化体中驱动向前,即在消费电子协会(CEA)和开放IPTV论坛(OIPF)中。CEA-2014具有两个主要应用:第一它允许消费者通过UPnP家庭网络远程控制其它的UPnP设备上的应用。第二它允许消费者使用连接到因特网的消费设备来与因特网服务或基于网络的应用交互。用户交互可以仅仅使用远程控制、包含兼容CEA-2014的浏览器的设备(例如,媒体适配器、TV或移动电话)的键或触摸屏而发生。
通常,网络浏览器用来以HTML格式呈现电子文档,但是已经开发了专用语言的主机来经由嵌入在该HTML文档中的可运行内容控制浏览器的操作。可运行内容向浏览器添加了例如交互性和自动化。这些专用语言的示例是:ECMAScript,一种表面上类似于Java的通用程序脚本语言;层叠样式表(CSS),其使得能够从内容中提取样式元数据;XML,可以用于内容与样式元数据结合,作为HTML的替换方式;和XSLT,一种将XML内容变换成新的形式的表现语言。技术已经演变得包括XML和JavaScript脚本的组合以改善用户对响应性的主观印象。文档对象模型标准保证了所有浏览器以可预测的方式对相同的JavaScript作出响应(来源:Wikipedia)。此外,浏览器环境可以由插件扩展以显示外来内容(诸如,Adobe Flash)和/或与之交互。外来内容可以是可视的或不可视的并且可以提供可以由脚本引擎使用的脚本API。因此,网络浏览器提供用于网络应用并且用于运行嵌入在电子文档中的(例如,从服务器下载的)脚本的客户方运行时间环境。对于有关脚本的更多背景,同样参见例如WO 2006/106414。
嵌入在电子文档中的脚本可能被文档供应者滥用以篡改该文档被下载于其上的系统或获得关于系统的用户的隐私敏感信息。也就是说,运行在下载的文档中接收的脚本可能妨碍系统的安全和用户的隐私。
V. Anupam和A. Mayer的论文“Secure Web scripting”,Internet Computing IEEE Vol.2, issue 6, Nov/Dec 1998,pp. 46-55讨论了明确的安全模型。建议的模型已被实现用于Mozilla浏览器源代码中的JavaScript。它由“安全的”翻译器并且基于三个基本构成块实现:访问控制、上下文的独立性和信赖管理。访问控制调节脚本可以访问用户的机器上的什么数据以及以什么模式访问。上下文的独立性保证了运行在不同的上下文中(例如,同时在不同的浏览器窗口中或顺序地在相同的浏览器窗口中)的两个脚本不能任意访问彼此的数据。信赖管理调节在同时运行在不同的上下文中的脚本当中如何建立和终止信赖。不同的用户需要不同程度的隐私和安全,当与网络服务器交互时其转变为不同程度的灵活性。这些差别可以用不同的、用户选择的安全策略表示。选择的安全策略为脚本提供填充单元。通过将名称空间分割成不可访问的、只读和可写的项,访问控制保证了在浏览的同时脚本仅仅能访问浏览器和窗口相关数据的不危害用户的隐私的那些部分。该安全策略还调节对外部接口的访问。此外,上下文的独立性保证了在不同的上下文中的脚本当中不存在“隐藏通道”。例如,如果可写的项在上下文改变期间存留(如当前JavaScript中的情况那样),则它可以用作可访问协作网站的、用户不可见的(虽然不持久的)“cookie”。如果第二上下文处于第一上下文的访问控制列表(ACL)中,则由用户在某一窗口的第一上下文中提供的数据(例如,通过在此上下文的HTML文档中填表)仅仅可用于第二上下文中的脚本。但是,任何其它上下文中的脚本不能访问此数据。
上述WO2006/106414讨论了具有脚本对象的域安全。此公开公开了一种提供具有脚本对象的域安全的方法。该方法包括:当具有第一拥有者的第一脚本对象试图访问具有第二拥有者的第二脚本对象时,产生异常;对第二拥有者产生询问对第二脚本对象的访问权限的授予的对话;以及执行是否授予第一脚本对象对第二脚本对象的访问权限的指令。该指令响应于对第二拥有者产生的对话。关于术语“拥有者”:电子文档的拥有者是发布该文档的域。表示本地资源(例如,客户端数据库或文件)的任何对象的拥有者是本地用户。如已知的,在此上下文之内的例外是发生改变软件指令的运行的正常流程的状况。被设计用于处理异常的计算机代码被称为“异常处理器”。
WO 2005/031568涉及通过网络浏览器在相同的用户界面中呈现远程和本地服务和信息。网络浏览器包含ECMAScript引擎。此引擎由通过ECMAScript扩展库与设备本机环境通信的ECMAScript扩展模块(核心JavaScript语言的标准化的版本)扩展。这允许ECMAScript环境被扩展有以本机代码实现的新的类和方法(有点像Java中的Java本机接口(Java Native Interface, JNI))。ECMAScript引擎和ECMAScript扩展模块可以被有条件地编译成可能在任何软件平台上的网络浏览器的版本。一旦网络浏览器的版本已被创建为使得能够实现ECMAScript扩展功能,就可以通过将专门编写的ECMAScript扩展库与指定哪些网页将能够访问该扩展的许可文件一起放在电子设备上的某一目录中,来扩展ECMAScript环境。出于安全的原因,该文件同样重要。
发明内容
CE公司、网络运营商和服务供应商当前正在开发将IPTV(因特网协议电视)和基于交互式网络的服务引入连接的电视的标准。在此背景内,本发明人已经考虑了允许由服务供应商在因特网上提供的服务实际控制家庭网络中的UPnP设备的情况。本发明人已经特别考虑了隐私的问题。
基于它们的发现,本发明人提倡安装安全性系统以便保证第三方服务在它们有权去做时仅仅控制家庭内网络功能。本发明人此外提倡通过避免第三方服务可能被滥用以通过与家庭内网络中的设备的交互来获得隐私敏感信息,来保证维持最终用户的隐私。
因此本发明人建议使用运行时间环境模型,例如浏览器、操作系统或Java虚拟机或修改现有运行时间环境模型,其解决安全和隐私问题二者,满足为了经由CE-HTML控制UPnP设备而指定的全套要求,并且支持由来自于(第三方)服务供应商的脚本控制家庭网络中的UPnP设备。
本发明的实施例基于为浏览器提供双脚本引擎(或提供具有两个不同的模式的脚本引擎的两个单独的实例)以便实现下列属性。提供公共脚本引擎,其实现当前主流浏览器(包括XMLHttpRequest脚本对象)的脚本引擎的完整功能并且提供对将数据(包括例如被编码为串的脚本)从公共脚本引擎通信到专用脚本引擎的脚本支持。提供专用脚本引擎以实现当前主流浏览器的脚本引擎的完整功能,其另外支持可以用于访问隐私敏感功能的扩展的脚本API,诸如上述用于控制家庭网络中的UPnP设备的脚本API。专用脚本引擎不提供对与公共脚本引擎的数据通信的脚本支持,并且例如通过禁止到家庭网络外的未被批准的服务器的XMLHttpRequest调用来阻止到家庭网络外的共享存储器、其它程序、或未被批准的服务器的通信。不存在事件从一个脚本引擎到另一个脚本引擎的传播。
到家庭网络外的服务器的通信的批准可以基于用户的每事件批准和/或用户和/或运行时间环境的开发者/部署者的预先(例如,每服务器、每域等等)批准而发生。预先批准可以通过运行时间环境的配置(例如,通过维持本地或远程存储的免除对来自于专用脚本引擎的数据通信的限制的服务器或服务器域的列表)获得或间接地从与用户、外部服务器和/或从其获得脚本的数据源有关的安全简档或证书导出。
更具体地说,本发明的实施例涉及包括具有用于运行脚本的脚本引擎装置的运行时间环境的数据处理系统(例如,家庭网络)。运行时间环境包括例如浏览器、Java虚拟机、操作系统等等。脚本引擎装置实现公共脚本引擎和专用脚本引擎。运行时间环境被配置为,如果脚本不需要访问系统中的预定资源,则由公共脚本引擎运行脚本,以及如果脚本需要访问该预定资源,则由专用脚本引擎运行脚本。该预定资源包括例如超出正常的浏览器沙盒的范围的数据处理系统的硬盘驱动器或另一个主存储器或UPnP家庭网络上的数据。仅仅专用脚本引擎具有用于使得脚本能够访问该预定资源的接口(例如,脚本应用程序接口或API)。脚本引擎装置被配置为阻止专用脚本引擎将数据通信到公共脚本引擎或数据处理系统外的服务器,除非这样的通信已被批准或者通常到服务器的通信已被批准。不存在事件从一个脚本引擎到另一个脚本引擎的传播。
因此,如果脚本由公共脚本引擎运行,则脚本不能访问资源,因为它不具有适当的API。如果脚本由专用脚本引擎运行,则它确实能访问该预定资源。但是,脚本不能使得从该预定资源检索出的数据通信到公共脚本引擎或外部服务器,除非例如由于缺乏用于这些目的的适当的接口或拒绝使用这些接口来通信到未被批准的外部服务器的请求而被批准。结果,保证了在预定资源处的数据的隐私。
在本发明的实施例中,脚本引擎装置通过具有两个可用的脚本引擎来实现公共脚本引擎和专用脚本引擎,每个脚本引擎具有上面列出的有关属性。例如,专用脚本引擎可以被实现为例如对浏览器的支持XHTML和CSS的插件和缺乏将数据通信到未被批准的外部服务器、共享存储器或公共脚本引擎的任何接口的特殊的专用ECMAScript引擎实例。浏览器的ECMAScript引擎可以用作公共脚本引擎。如同已知的,插件可以用于向现有软件添加API。可替换地,脚本引擎装置包括有选择地可配置为两个操作模式(公共模式和专用模式)之一的脚本引擎。在公共模式中,脚本引擎就像它是公共脚本引擎一样工作,以及在专用模式中,脚本引擎就像它是专用脚本引擎一样工作。
选择公共或专用脚本引擎中的哪一个来使得运行脚本的过程可以用各种方式实现。
在第一方式中,脚本具有文件名扩展,其指示是否让它运行在专用脚本引擎上。文件名扩展由运行时间环境翻译,该运行时间环境于是确定将调用专用和公共脚本引擎中的哪一个。例如,在HTML文件中,通过它的包括脚本的文件名扩展的路径来引用脚本。如果脚本是Javascript,则根据脚本需要被运行的上下文,它可以具有文件名扩展“.js”或“.xjs”。如果文件名扩展是“.js”,则运行时间环境将此翻译为公共脚本引擎是运行此脚本的脚本引擎。如果文件名扩展是“.xjs”,则运行时间环境将此翻译为专用脚本引擎将运行此脚本。
在第二方式中,脚本被嵌入到另一个可运行文件中或被另一个可运行文件引用,该另一个可运行文件具有明确的声明,指定专用脚本引擎将被调用以便运行脚本。该明确的声明可以包括说明声明,例如具有指定哪一个脚本引擎将用来翻译脚本的类型属性的XHTML脚本元素,或专用过程声明,例如脚本之内的“switchToPrivateMode ()”或“privateScript.run (script)”。
在第三方式中,脚本被嵌入到另一个可运行文件中的声明中或被该另一个可运行文件中的声明参考,该另一个可运行文件中的声明暗含地需要调用专用脚本引擎以便运行嵌入的或参考的脚本。此声明可以是例如指定与该预定资源有关的MIME类型的HTML <object>元素。例如,假定与UPnP家庭网络的控制有关的运行时间环境插件由MIME类型"application/upnpcontrol"标识,则包括此MIME类型的HTML对象元素的可运行文件暗含地指定该嵌入的或参考的脚本将被在该专用脚本引擎中运行。另一种暗含地指定需要调用专用脚本引擎的声明包括对仅仅在专用脚本引擎的上下文中支持的函数或方法的调用。例如,假定"readHDDContents()"仅仅由专用引擎在预定资源上支持,则文件中的声明“readHDDContents”的出现暗含地用信号通知需要在专用引擎中执行文件的进一步运行。
本发明的以上实施例涉及数据处理系统。这些实施例商业上与设备制造者、PC制造商、机顶盒制造商等等有关。
本发明的另一个实施例涉及具有用在这样的数据处理系统中的脚本引擎装置的运行时间环境。该运行时间环境包括例如浏览器、操作系统或Java虚拟机。这样的实施例商业上与软件供应者有关。
本发明的另一个实施例涉及包括计算机可运行指令的计算机程序产品,该计算机可运行指令在运行时被设置为在数据处理系统的工作使用期间实现该运行时间环境。该软件可以在诸如半导体存储器(例如,USB棒)上之类的数据载体或光盘上提供。该软件还可以作为经由因特网的下载提供。
本发明的又一个实施例涉及表示在以上说明的数据处理系统处运行的脚本的数据结构。如同已知的,数据结构指示数据元素之间的物理或逻辑关系,被设计用于支持特定的数据处理功能。在这种意义上,本发明中的脚本表示数据结构。本发明的数据结构包括运行控制指示以便使得能够在用于运行脚本的公共脚本引擎和专用脚本引擎之间选择。如上所述,运行控制指示包括在例如脚本的文件名扩展、其中嵌入要在专用脚本引擎处运行的脚本的另一个可运行文件中的明确声明、或暗含地用信号通知需要在专用脚本引擎中运行嵌入的或参考的脚本的另一个可运行文件中的声明内。此实施例商业上与将访问数据处理系统处的隐私敏感资源的这样的脚本的供应商有关。
附图说明
通过举例并且参考附图来进一步详细说明本发明,其中图1是本发明中的系统的框图。
具体实施方式
网络浏览器通常用于以HTML格式呈现电子文档,但是已经开发了专用语言的主机来经由嵌入在该HTML页中的可运行内容控制浏览器的操作。可运行内容向浏览器添加了例如交互性和自动化。这些专用语言的示例是:ECMAScript,一种表面上类似于Java的通用程序脚本语言;层叠样式表(CSS),其使得能够从内容中提取样式元数据;XML,可以用于内容与样式元数据结合,作为HTML的替换方式;和XSLT,一种将XML内容变换成新的形式的表现语言。技术已经演变得包括XML和JavaScript脚本的组合以改善用户对响应性的主观印象。文档对象模型标准保证了所有浏览器以可预测的方式对相同的JavaScript作出响应(来源:Wikipedia)。因此,网络浏览器提供用于网络应用并且用于运行嵌入在电子文档中的(例如,从服务器下载的)脚本的客户方环境。对于有关脚本的更多背景,同样参见例如上述的WO 2006/106414。
嵌入在HTML文档中的脚本可能被文档供应商滥用以篡改该文档被下载于其上的系统或获得关于系统的用户的隐私敏感信息。
图1是本发明中的系统100的框图。系统100包括数据处理系统102,这里还称为客户端102,其具有用于经由数据网络108与服务器106数据通信的网络接口104。客户端102例如是个人计算机、机顶盒、家庭网络等等。客户端102包括运行时间环境110,例如浏览器、操作系统或Java虚拟机。运行时间环境110具有用于运行脚本的脚本引擎装置。例如,运行时间环境110包括浏览器,并且脚本在例如由服务器106提供或经由USB棒或经由PC提供的电子HTML文档中接收。脚本引擎装置实现公共脚本引擎112和专用脚本引擎114。如果脚本不需要访问客户端102处的预定资源,例如超出硬盘驱动器(HDD)124或UPnP家庭网络126上的正常的(浏览器)沙盒的范围的数据,则运行时间环境110被配置为让脚本由公共脚本引擎112运行。如果脚本需要访问预定资源124或126,则运行时间环境110被配置为让脚本由专用脚本引擎114运行。
存在几种实现此选择性的运行的方式,如下进一步讨论的,但是目前假定运行时间环境110被这样配置。
如果脚本不需要访问超出正常的(浏览器)沙盒的范围的HDD 124或UPnP家庭网络126上的数据,则脚本由脚本引擎112运行。例如,指定在浏览器中呈现的网页中的网络资源的动画的脚本不需要访问用于此目的的HDD 124或UPnP家庭网络126。
如果脚本确实需要访问超出正常的(浏览器)沙盒的范围的HDD 124上的数据或UPnP家庭网络126上的数据,则脚本由专用脚本引擎114运行。例如,脚本扫描和管理存储在家庭网络中的UPnP媒体服务器上的多媒体内容。
公共脚本引擎112不具有到与HDD 124上的超出正常的浏览器沙盒的范围的数据交互的软件应用122或与UPnP家庭网络126交互的UPnP控制点128的接口,例如脚本应用程序接口(API)。在另一方面,专用脚本引擎114确实具有到软件应用122的可以访问HDD 124的脚本API 120和可以访问UPnP家庭网络126的脚本API 130。专用脚本引擎114阻止与服务器106的数据通信,除非到服务器106的通信已被批准,而公共脚本引擎确实具有不进行此区分的通信接口(未示出)。
到家庭网络外的服务器的通信的批准可以基于用户的每事件批准和/或用户和/或运行时间环境的开发者/部署者的预先(例如,每服务器、每域等等)批准而发生。预先批准可以通过运行时间环境的配置(例如,通过维持本地或远程存储的免除对来自于专用脚本引擎的数据通信的限制的服务器或服务器域的列表)获得或间接地从与用户、外部服务器和/或从其获得脚本的数据源有关的安全简档或证书导出。
图1的图示出了其中公共脚本引擎112和专用脚本引擎114被实现为分开的脚本引擎的情况。例如,专用脚本引擎114被实现为例如对浏览器的支持XHTML和CSS的插件和阻止未被批准的到外部服务器106的数据通信并且缺乏将数据通信到诸如cookies之类的共享存储器或公共脚本引擎112的任何接口的特殊的专用ECMAScript引擎实例。浏览器的ECMAScript引擎可以用作公共脚本引擎112。如同已知的,插件可以用于向现有软件添加API。为完整起见,cookies被认为是用于来源于相同的域的服务的在(浏览器)沙盒的范围内的持久的共享存储器。
在本发明的实施例中,由运行时间环境110接收的脚本被默认路由到公共脚本引擎112用于被运行,除非运行时间环境可以例如通过脚本的文件名扩展或脚本的分析,来确定脚本引擎112和114中将用于运行脚本的适当的一个。如果例如脚本包括请求在专用脚本引擎114中运行的明确声明,则公共脚本引擎112被配置为有条件地将脚本转发到专用脚本引擎114。运行时间环境110翻译该文件名扩展并且基于它确定将在脚本引擎112和114中的哪一个中运行该脚本。
例如,在HTML文件中,通过它的包括脚本的文件名扩展的路径来引用脚本。如果脚本是Javascript,则它可以具有文件名扩展“.js”或“.xjs”。如果文件名扩展是“.js”,则运行时间环境110确定公共脚本引擎112是运行此脚本的脚本引擎。如果文件名扩展是“.xjs”,则运行时间环境110将此翻译为专用脚本引擎114将运行该脚本,并且将该脚本转发到专用脚本引擎114以运行。运行时间环境110可以使用此作为切换模式的触发器,以使得由HTML文件(包括之前下载的.js文件)包括和/或引用的所有脚本将在专用脚本引擎114中而不是公共脚本引擎112中运行。
作为另一个示例,脚本被嵌入到另一个脚本中,该另一个脚本具有明确的声明,指定专用脚本引擎112将被调用以便运行嵌入的脚本。公共脚本引擎112运行另一个脚本并且终究得出该明确的声明。公共脚本引擎112被配置为在经由引擎112和114之间的单向接口(未示出)运行该明确的声明时将嵌入的脚本经由单向接口转发到专用脚本引擎114,参见上文。也就是说,使得专用脚本引擎能够将数据通信到专用脚本引擎114,但是不使得专用脚本引擎114能够将数据通信到公共脚本引擎114。脚本引擎112和114之间的单向数据通信接口可以通过利用允许运行在公共脚本引擎112中的脚本向该插件发送数据的数据通信方法扩展插件接口来实现。
作为另一个示例,表示脚本的对象(在面向对象的程序设计的上下文中)用它的类型或类来指定。在脚本中宣告的类型指示它将使用HDD 124还是UPnP家庭网络126。如果类型指示脚本是将运行在UPnP家庭网络126上的或使用到UPnP家庭网络126的API 130的应用,则公共脚本引擎112将脚本经由单向接口转发到专用脚本引擎114以便运行脚本。这是因为类型或类被预定或预配置为是隐私敏感的,并且因此暗含地需要调用专用脚本引擎114以便运行嵌入的或参考的脚本。此声明可以是例如指定与该预定资源有关的MIME类型的HTML对象元素。例如,假定与UPnP家庭网络的控制有关的运行时间环境插件由MIME类型"application/upnpcontrol"标识,则包括此MIME类型的HTML<object>元素的可运行文件暗含地指定该嵌入的或参考的脚本将被在该专用脚本引擎114中运行。另一种类型的暗含地指定需要调用专用脚本引擎114的声明包括对仅仅在专用脚本引擎114的上下文中支持的函数或方法的调用。例如,假定"readHDDContents()"仅仅由专用引擎114在预定资源上支持,则文件中的声明“readHDDContents”的出现暗含地用信号通知需要在专用脚本引擎114中执行文件的进一步运行。
因此,由于脚本引擎112和114的数据通信能力的特异性,除非这样的通信已被批准,否则保留在客户端102的资源124或126处的隐私敏感数据不能经由外部供应者提供的脚本(例如在从服务器106检索的且在浏览器110中呈现的电子html文档中)对服务器106可用。如果脚本由引擎112运行,则不存在对预定资源124和126的访问。如果脚本由引擎114运行,则脚本能访问预定资源124和126。但是,由于用于此目的的接口仅仅局限于到被批准的服务器的通信这一事实,因此没有办法将从资源124和126检索的数据通信到服务器106,除非这样的通信已被批准。
在以上示例中,脚本引擎112和114已被实现为两个单独的引擎。作为可替换方式,脚本引擎112和114通过有选择地可配置为两个操作模式(公共模式和专用模式)之一的单个脚本引擎来实现。在公共模式中,脚本引擎就像它是公共脚本引擎112一样工作,以及在专用模式中,脚本引擎就像它是专用脚本引擎114一样工作。第二可替换方式是将公共和专用脚本引擎112和114实现为同一脚本引擎的逻辑上单独的实例。例如,假定主流浏览器用作具有支持对来源于不同的域的脚本的不同许可的授予的安全性系统的运行时间环境110。然后,公共脚本引擎112可以被实现为浏览器的正常的脚本引擎,其中添加朝向专用脚本引擎114的单向通信接口。专用脚本引擎114可以通过配置浏览器的脚本引擎,以使得需要在专用脚本引擎114中运行的脚本实际上在特定域的上下文中运行、而不管外部脚本来源于的域如何来实现。授予运行在此域之内的脚本通过浏览器插件控制预定资源的特权,但是阻止其将数据通信到公共脚本引擎112或数据处理系统102外的服务器(诸如服务器106),除非这样的通信已被批准。
Claims (7)
1.一种数据处理系统(102),其包括具有用于运行脚本的脚本引擎装置的运行时间环境(110),其中:
所述脚本引擎装置实现公共脚本引擎(112)和专用脚本引擎(114);
所述运行时间环境被配置为:如果脚本不需要访问所述系统处的预定资源(124;126),则使所述公共脚本引擎运行所述脚本;
所述运行时间环境被配置为:如果脚本需要访问所述预定资源,则使所述专用脚本引擎运行所述脚本;
仅仅所述专用脚本引擎具有用于使得所述脚本能够访问所述预定资源的接口(120;130);以及
所述脚本引擎装置被配置为阻止所述专用脚本引擎将数据通信到公共脚本引擎或所述数据处理系统外的服务器(106),除非这样的通信已被批准。
2.根据权利要求1所述的数据处理系统,其中所述脚本引擎装置包括作为所述公共脚本引擎工作的第一脚本引擎和作为所述专用脚本引擎工作的第二脚本引擎。
3.根据权利要求1所述的数据处理系统,其中所述脚本引擎装置包括可配置的脚本引擎,以用于当被配置在第一模式时作为所述公共脚本引擎工作并且用于当被配置在第二模式时作为所述专用脚本引擎工作。
4.根据权利要求1所述的数据处理系统,其中所述运行时间环境包括浏览器、Java虚拟机和操作系统中的至少一个。
5.一种运行时间环境(110),其具有在根据权利要求1所述的数据处理系统中使用的脚本引擎装置。
6.一种包括计算机可运行指令的计算机程序产品,所述计算机可运行指令在运行时被设置为在数据处理系统的工作使用期间实现根据权利要求1所述的运行时间环境。
7.一种数据结构,其表示用于被运行在根据权利要求1所述的数据处理系统中的脚本,其中所述数据结构包括运行控制指示以便使得能够在用于运行所述脚本的公共脚本引擎和专用脚本引擎之间进行选择。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14564609P | 2009-01-19 | 2009-01-19 | |
US61/145646 | 2009-01-19 | ||
US17280109P | 2009-04-27 | 2009-04-27 | |
US61/172801 | 2009-04-27 | ||
PCT/IB2010/050127 WO2010082161A1 (en) | 2009-01-19 | 2010-01-13 | Browser with dual scripting engine for privacy protection |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102282565A true CN102282565A (zh) | 2011-12-14 |
CN102282565B CN102282565B (zh) | 2016-08-03 |
Family
ID=42027806
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080004895.6A Active CN102282565B (zh) | 2009-01-19 | 2010-01-13 | 用于隐私保护的具有双脚本引擎的浏览器 |
Country Status (8)
Country | Link |
---|---|
US (1) | US9258136B2 (zh) |
EP (1) | EP2387765B1 (zh) |
JP (1) | JP5676477B2 (zh) |
KR (1) | KR101786060B1 (zh) |
CN (1) | CN102282565B (zh) |
BR (1) | BRPI1004942B1 (zh) |
RU (1) | RU2556338C2 (zh) |
WO (1) | WO2010082161A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102842006A (zh) * | 2012-07-09 | 2012-12-26 | 华为软件技术有限公司 | 扩展脚本对象的访问控制方法及其访问控制系统和终端 |
CN103268442A (zh) * | 2013-05-14 | 2013-08-28 | 北京奇虎科技有限公司 | 一种实现安全访问视频网站的方法和装置 |
WO2014198118A1 (en) * | 2013-06-09 | 2014-12-18 | Tencent Technology (Shenzhen) Company Limited | Method and device for protecting privacy information with browser |
CN105893863A (zh) * | 2015-11-30 | 2016-08-24 | 乐视致新电子科技(天津)有限公司 | 一种隐私信息保护方法及装置 |
CN109997143A (zh) * | 2016-09-30 | 2019-07-09 | 迈克菲有限责任公司 | 敏感数据的安全共享 |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8225061B2 (en) * | 2009-07-02 | 2012-07-17 | Apple Inc. | Method and apparatus for protected content data processing |
US8689181B2 (en) | 2010-11-23 | 2014-04-01 | Axeda Corporation | Scripting web services |
US8464350B2 (en) * | 2011-03-14 | 2013-06-11 | International Business Machines Corporation | System and method for in-private browsing |
US10466989B2 (en) | 2011-09-02 | 2019-11-05 | Microsoft Technology Licensing, Llc. | Fast presentation of markup content having script code |
US9015851B2 (en) * | 2012-04-23 | 2015-04-21 | Google Inc. | Electronic book content protection |
US20140053064A1 (en) | 2012-08-16 | 2014-02-20 | Qualcomm Incorporated | Predicting the usage of document resources |
US9898445B2 (en) * | 2012-08-16 | 2018-02-20 | Qualcomm Incorporated | Resource prefetching via sandboxed execution |
US9589149B2 (en) * | 2012-11-30 | 2017-03-07 | Microsoft Technology Licensing, Llc | Combining personalization and privacy locally on devices |
RU2584507C1 (ru) * | 2014-12-19 | 2016-05-20 | Закрытое акционерное общество "Лаборатория Касперского" | Способ обеспечения безопасного выполнения файла сценария |
US10671760B2 (en) * | 2015-02-27 | 2020-06-02 | Arash Esmailzadeh | Secure and private data storage |
US10572691B2 (en) | 2015-04-28 | 2020-02-25 | Microsoft Technology Licensing, Llc | Operating system privacy mode |
US10462145B2 (en) | 2016-07-15 | 2019-10-29 | The Directv Group, Inc. | Method and apparatus for controlling access to custom browser functionality |
US10481876B2 (en) | 2017-01-11 | 2019-11-19 | Microsoft Technology Licensing, Llc | Methods and systems for application rendering |
US10394584B2 (en) * | 2017-12-18 | 2019-08-27 | Atlassian Pty Ltd | Native execution bridge for sandboxed scripting languages |
US12026249B2 (en) * | 2021-02-19 | 2024-07-02 | Capital One Services, Llc | Methods, media, and systems for screening malicious content from a web browser |
US11972000B2 (en) | 2021-08-06 | 2024-04-30 | Arash Esmailzadeh | Information dispersal for secure data storage |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6931546B1 (en) * | 2000-01-28 | 2005-08-16 | Network Associates, Inc. | System and method for providing application services with controlled access into privileged processes |
CN1744605A (zh) * | 2004-08-30 | 2006-03-08 | 三星电子株式会社 | 能实现环球网服务的数字视/音频处理装置、方法及系统 |
US20070226773A1 (en) * | 2006-03-21 | 2007-09-27 | Novell, Inc. | System and method for using sandboxes in a managed shell |
CN101553771A (zh) * | 2006-10-23 | 2009-10-07 | 奥多比公司 | 绘制超文本标记语言内容 |
Family Cites Families (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6317742B1 (en) * | 1997-01-09 | 2001-11-13 | Sun Microsystems, Inc. | Method and apparatus for controlling software access to system resources |
US6308275B1 (en) * | 1998-07-10 | 2001-10-23 | At Home Corporation | Web host providing for secure execution of CGI programs and method of doing the same |
JP3563619B2 (ja) | 1998-12-04 | 2004-09-08 | 株式会社東芝 | アプリケーション機能指定装置及び記憶媒体 |
US6608634B1 (en) | 1999-12-23 | 2003-08-19 | Qwest Communications International, Inc. | System and method for demonstration of dynamic web sites with integrated database without connecting to a network |
US7051119B2 (en) * | 2001-07-12 | 2006-05-23 | Yahoo! Inc. | Method and system for enabling a script on a first computer to communicate and exchange data with a script on a second computer over a network |
US6978445B2 (en) * | 2001-09-28 | 2005-12-20 | Siebel Systems, Inc. | Method and system for supporting user navigation in a browser environment |
US7401235B2 (en) * | 2002-05-10 | 2008-07-15 | Microsoft Corporation | Persistent authorization context based on external authentication |
US7987491B2 (en) * | 2002-05-10 | 2011-07-26 | Richard Reisman | Method and apparatus for browsing using alternative linkbases |
US7343626B1 (en) * | 2002-11-12 | 2008-03-11 | Microsoft Corporation | Automated detection of cross site scripting vulnerabilities |
GB0227993D0 (en) | 2002-12-02 | 2003-01-08 | Ncr Int Inc | A system and method for enabling communication between a web browser and a software agent infrastructure |
JP4685004B2 (ja) | 2003-06-30 | 2011-05-18 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | URIへのUPnPAVメディアサーバ・オブジェクトIDの埋め込み |
WO2005031568A1 (en) | 2003-09-26 | 2005-04-07 | Opera Software Asa | Presenting remote and local information in a web browser |
US7676560B2 (en) * | 2003-10-24 | 2010-03-09 | Microsoft Corporation | Using URI's to identify multiple instances with a common schema |
US7444678B2 (en) * | 2003-10-28 | 2008-10-28 | Aol Llc | Securing resources from untrusted scripts behind firewalls |
JP2005148977A (ja) | 2003-11-13 | 2005-06-09 | Canon Software Inc | プログラム実行環境設定システムおよびプログラム提供サーバ装置およびクライアント装置および呼制御サーバ装置およびプログラム実行環境設定方法およびプログラムおよび記録媒体 |
US7401230B2 (en) * | 2004-03-31 | 2008-07-15 | Intel Corporation | Secure virtual machine monitor to tear down a secure execution environment |
WO2005109184A1 (en) * | 2004-05-08 | 2005-11-17 | Intel Corporation | Firmware interface runtime environment protection field |
US7908653B2 (en) * | 2004-06-29 | 2011-03-15 | Intel Corporation | Method of improving computer security through sandboxing |
US7831995B2 (en) * | 2004-10-29 | 2010-11-09 | CORE, SDI, Inc. | Establishing and enforcing security and privacy policies in web-based applications |
US7593980B2 (en) * | 2004-11-30 | 2009-09-22 | Cisco Technology, Inc. | Application server system and method |
US20060248537A1 (en) | 2005-04-06 | 2006-11-02 | Nokia Corporation | System and method for domain security with script objects |
US8078740B2 (en) * | 2005-06-03 | 2011-12-13 | Microsoft Corporation | Running internet applications with low rights |
US7707635B1 (en) * | 2005-10-06 | 2010-04-27 | Trend Micro Incorporated | Script-based pattern for detecting computer viruses |
US7836303B2 (en) * | 2005-12-09 | 2010-11-16 | University Of Washington | Web browser operating system |
KR101282117B1 (ko) * | 2006-07-25 | 2013-07-03 | 삼성전자주식회사 | 공유 네트워크 환경에서 범용 플러그 앤 플레이 서비스를위한 장치 및 방법 |
US8353031B1 (en) * | 2006-09-25 | 2013-01-08 | Symantec Corporation | Virtual security appliance |
US8490117B1 (en) * | 2006-10-23 | 2013-07-16 | Adobe Systems Incorporated | Bridging script engines |
WO2008073618A2 (en) * | 2006-11-06 | 2008-06-19 | Devicevm, Inc. | Instant on platform |
US20080133722A1 (en) * | 2006-12-04 | 2008-06-05 | Infosys Technologies Ltd. | Parallel dynamic web page section processing |
US20080148298A1 (en) * | 2006-12-18 | 2008-06-19 | Palm, Inc. | System and Methods for Providing Granular Security for Locally Running Scripted Environments and Web Applications |
US8484742B2 (en) * | 2007-01-19 | 2013-07-09 | Microsoft Corporation | Rendered image collection of potentially malicious web pages |
US20080189767A1 (en) * | 2007-02-01 | 2008-08-07 | Microsoft Corporation | Accessing file resources outside a security boundary |
WO2008098174A1 (en) * | 2007-02-09 | 2008-08-14 | Novarra, Inc. | Method and apparatus for providing information content for display on a client device |
EP1975830A1 (en) * | 2007-03-30 | 2008-10-01 | British Telecommunications Public Limited Company | Distributed computer system |
US8024790B2 (en) * | 2007-04-11 | 2011-09-20 | Trend Micro Incorporated | Portable secured computing environment for performing online confidential transactions in untrusted computers |
US8001551B2 (en) * | 2007-04-24 | 2011-08-16 | Microsoft Corporation | Providing localized resources for client-side script execution |
US8763115B2 (en) * | 2007-08-08 | 2014-06-24 | Vmware, Inc. | Impeding progress of malicious guest software |
US7748609B2 (en) * | 2007-08-31 | 2010-07-06 | Gemalto Inc. | System and method for browser based access to smart cards |
US8160247B2 (en) * | 2007-09-27 | 2012-04-17 | Adobe Systems Incorporated | Providing local storage service to applications that run in an application execution environment |
US8307443B2 (en) * | 2007-09-28 | 2012-11-06 | Microsoft Corporation | Securing anti-virus software with virtualization |
US7979909B2 (en) * | 2007-12-03 | 2011-07-12 | Wells Fargo Bank | Application controlled encryption of web browser data |
US8635701B2 (en) * | 2008-03-02 | 2014-01-21 | Yahoo! Inc. | Secure browser-based applications |
US8272059B2 (en) * | 2008-05-28 | 2012-09-18 | International Business Machines Corporation | System and method for identification and blocking of malicious code for web browser script engines |
US8108912B2 (en) * | 2008-05-29 | 2012-01-31 | Red Hat, Inc. | Systems and methods for management of secure data in cloud-based network |
US8250666B2 (en) * | 2008-07-03 | 2012-08-21 | Sap Ag | Method and apparatus for improving security in an application level virtual machine environment |
US8136158B1 (en) * | 2008-07-21 | 2012-03-13 | Google Inc. | User-level segmentation mechanism that facilitates safely executing untrusted native code |
US8413139B2 (en) * | 2009-03-11 | 2013-04-02 | Microsoft Corporation | Programming model for application and data access and synchronization within virtual environments |
US8505084B2 (en) * | 2009-04-06 | 2013-08-06 | Microsoft Corporation | Data access programming model for occasionally connected applications |
US8839138B1 (en) * | 2009-12-21 | 2014-09-16 | Symantec Corporation | Systems and methods for transitioning between user interface environments |
-
2010
- 2010-01-13 US US13/143,573 patent/US9258136B2/en active Active
- 2010-01-13 RU RU2011134494/08A patent/RU2556338C2/ru active
- 2010-01-13 WO PCT/IB2010/050127 patent/WO2010082161A1/en active Application Filing
- 2010-01-13 JP JP2011545822A patent/JP5676477B2/ja active Active
- 2010-01-13 KR KR1020117019165A patent/KR101786060B1/ko active IP Right Grant
- 2010-01-13 CN CN201080004895.6A patent/CN102282565B/zh active Active
- 2010-01-13 BR BRPI1004942A patent/BRPI1004942B1/pt active IP Right Grant
- 2010-01-13 EP EP10702348.3A patent/EP2387765B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6931546B1 (en) * | 2000-01-28 | 2005-08-16 | Network Associates, Inc. | System and method for providing application services with controlled access into privileged processes |
CN1744605A (zh) * | 2004-08-30 | 2006-03-08 | 三星电子株式会社 | 能实现环球网服务的数字视/音频处理装置、方法及系统 |
US20070226773A1 (en) * | 2006-03-21 | 2007-09-27 | Novell, Inc. | System and method for using sandboxes in a managed shell |
CN101553771A (zh) * | 2006-10-23 | 2009-10-07 | 奥多比公司 | 绘制超文本标记语言内容 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102842006A (zh) * | 2012-07-09 | 2012-12-26 | 华为软件技术有限公司 | 扩展脚本对象的访问控制方法及其访问控制系统和终端 |
CN103268442A (zh) * | 2013-05-14 | 2013-08-28 | 北京奇虎科技有限公司 | 一种实现安全访问视频网站的方法和装置 |
CN103268442B (zh) * | 2013-05-14 | 2015-12-23 | 北京奇虎科技有限公司 | 一种实现安全访问视频网站的方法和装置 |
WO2014198118A1 (en) * | 2013-06-09 | 2014-12-18 | Tencent Technology (Shenzhen) Company Limited | Method and device for protecting privacy information with browser |
CN105893863A (zh) * | 2015-11-30 | 2016-08-24 | 乐视致新电子科技(天津)有限公司 | 一种隐私信息保护方法及装置 |
CN109997143A (zh) * | 2016-09-30 | 2019-07-09 | 迈克菲有限责任公司 | 敏感数据的安全共享 |
Also Published As
Publication number | Publication date |
---|---|
EP2387765B1 (en) | 2018-05-23 |
JP2012515390A (ja) | 2012-07-05 |
BRPI1004942A8 (pt) | 2017-10-03 |
RU2011134494A (ru) | 2013-03-10 |
RU2556338C2 (ru) | 2015-07-10 |
BRPI1004942A2 (zh) | 2017-08-08 |
BRPI1004942B1 (pt) | 2020-04-07 |
KR101786060B1 (ko) | 2017-10-16 |
US9258136B2 (en) | 2016-02-09 |
KR20110117171A (ko) | 2011-10-26 |
JP5676477B2 (ja) | 2015-02-25 |
EP2387765A1 (en) | 2011-11-23 |
CN102282565B (zh) | 2016-08-03 |
WO2010082161A1 (en) | 2010-07-22 |
US20110283363A1 (en) | 2011-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102282565A (zh) | 用于隐私保护的具有双脚本引擎的浏览器 | |
US8291475B2 (en) | Secure cross-domain communication for web mashups | |
EP2691907B1 (en) | Methods and apparatus for blocking usage tracking | |
US8056092B2 (en) | Method and apparatus for widget-container hosting and generation | |
CN104903860B (zh) | 第三方应用脚本能力 | |
US11537760B2 (en) | Web application execution with secure elements | |
KR20110014164A (ko) | 온라인 광고 서비스 | |
US8931052B2 (en) | Operation of mobile device as trusted mobile web client or trusted mobile web server | |
KR20150119003A (ko) | 제 3 자 애플리케이션 통신 에이피아이 | |
CN103036871B (zh) | 浏览器应用插件支持装置和方法 | |
WO2009088685A1 (en) | Secure and extensible policy-driven application platform | |
US20080281921A1 (en) | Systems and methods for inter-domain messaging | |
US20130074160A1 (en) | Method of controlling information processing system, computer-readable recording medium storing program for controlling apparatus | |
CN101978674A (zh) | 用于显示由客户端生成的信息的方法 | |
KR101265164B1 (ko) | 브랜딩을 위한 단축 url 브라우징 제공시스템, 그 제공방법, 및 웹 클라이언트 | |
CN106548090A (zh) | 一种网络文件保护方法及web服务器 | |
JP2006209568A (ja) | 情報フィルタリング装置、情報フィルタリング方法、プログラムおよび記録媒体 | |
KR100926780B1 (ko) | 유무선 위젯 서비스 시스템 및 그 방법 | |
US20090254631A1 (en) | Defining clippable sections of a network document and saving corresponding content | |
EP3432244A1 (en) | Anti adblock solution vpaid | |
KR20110022244A (ko) | 웹 기반의 어플리케이션 제어 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |