CN105359453A - 基于匿名服务器的用户设置保护 - Google Patents

基于匿名服务器的用户设置保护 Download PDF

Info

Publication number
CN105359453A
CN105359453A CN201380075939.8A CN201380075939A CN105359453A CN 105359453 A CN105359453 A CN 105359453A CN 201380075939 A CN201380075939 A CN 201380075939A CN 105359453 A CN105359453 A CN 105359453A
Authority
CN
China
Prior art keywords
application data
signature server
revised
processor
identifier
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
Application number
CN201380075939.8A
Other languages
English (en)
Other versions
CN105359453B (zh
Inventor
X.陈
Z.许
李博鑫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN105359453A publication Critical patent/CN105359453A/zh
Application granted granted Critical
Publication of CN105359453B publication Critical patent/CN105359453B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4532Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2103Challenge-response

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Bioethics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Virology (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

在本文中描述了用于验证应用数据修改的系统和方法。在一个示例中,一种方法包括检测计算设备中的已修改应用数据并确定该已修改应用数据并非源自于自动程序。该方法还包括向签名服务器发送标识符和已修改应用数据。此外,该方法包括从签名服务器接收包括标识符和已修改应用数据的已加密数据。附加地,该方法包括将已加密数据存储在计算设备中。

Description

基于匿名服务器的用户设置保护
背景技术
许多软件应用可以基于与用户偏好有关的信息来执行操作。例如,某些软件应用可基于用户设置来执行操作。在某些示例中,每个软件应用可以在计算设备上存储数据,诸如用户设置。在某些实施例中,恶意软件可以更改所存储的数据,其可以促使用户无意中访问恶意网站或下载恶意文件等。
发明内容
下面提出了简化的概要以便提供本文所述的某些方面的基本理解。本概要并不是要求保护的主题的全面概述。本概要并不意图标识要求保护的主题的关键或重要元素,也未描绘要求保护的主题的范围。本概要的唯一目的是以简化的形式提出要求保护的主题的某些概念作为稍后提出的更详细描述的前奏。
本文描述的实施例提供了一种用于验证应用数据修改的方法。该方法可以包括检测计算设备中的已修改应用数据,并确定该已修改应用数据并非源自于自动程序。该方法还可以包括向签名服务器(signing server)发送标识符和已修改应用数据。此外,该方法可以包括从签名服务器接收包括标识符和已修改应用数据的已加密数据。另外,该方法可以包括将已加密数据存储在计算设备中。
另一实施例提供了用于验证应用数据修改的一个或多个计算机可读存储介质,其包括多个指令,在所述指令被处理器执行时可以促使处理器检测计算设备中的已修改应用数据。所述多个指令还可以促使处理器从签名服务器请求挑战响应测试(challenge-response test),以确定已修改应用数据并非源自于自动程序。附加地,所述多个指令可以促使处理器响应于对挑战响应测试的正确响应而向签名服务器发送标识符和已修改应用数据。此外,所述多个指令可以促使处理器从签名服务器接收包括标识符和已修改应用数据的已加密数据并将所述已加密数据存储在计算设备中。
另一实施例提供了一种用于验证应用数据修改的计算设备,其包括用以执行处理器可执行代码的处理器和存储处理器可执行代码的存储设备,其中,所述处理器可执行代码在被处理器执行时可以促使处理器检测计算设备中的已修改应用数据。所述处理器可执行代码还可以促使处理器从签名服务器请求挑战响应测试,以确定已修改应用数据并非源自于自动程序。另外,所述处理器可执行代码可以促使处理器响应于对挑战响应测试的正确响应而向签名服务器发送标识符和已修改应用数据。此外,所述处理器可执行代码可以促使处理器从签名服务器接收包括标识符和已修改应用数据的已加密数据。处理器可执行代码还可以促使处理器将已加密数据存储在计算设备中。
另一实施例提供了一种用于验证应用数据修改的签名服务器,其包括用以执行处理器可执行代码的处理器和存储处理器可执行代码的存储设备,其中,所述处理器可执行代码在被处理器执行时促使处理器检测来自计算设备的标识符和已修改应用数据。所述处理器可执行代码还可以促使处理器向计算设备发送挑战响应测试,并且响应于接收到对挑战响应测试的正确响应而将标识符和已修改应用数据加密。此外,所述处理器可执行代码还可以促使处理器将已修改标识符和已加密应用数据发送到计算设备。
附图说明
通过参考附图可以更好地理解以下详细描述,附图包含公开主题的许多特征的特定示例。
图1是可以验证应用数据修改的计算系统的示例的框图;
图2是用于验证计算设备中的应用数据修改的示例性方法的过程流程图;
图3是用于在签名服务器中验证应用数据修改的方法的示例的过程流程图;
图4是与签名服务器通信以验证用于web浏览器的已修改应用数据的计算系统的示例的框图;以及
图5是示出了可验证应用数据修改的有形计算机可读存储介质的框图。
具体实施方式
许多应用将用户设置存储在存储应用数据的存储器区域中。所存储的用户设置可以在用户没有发起用户设置修改的情况下被软件应用修改。在某些示例中,软件应用可以使用诸如隐藏用户界面之类的欺诈技术来诱使用户无意中修改用户设置。软件应用然后可以得到对计算设备的各种应用和硬件部件的控制。
在本文中描述了用于验证应用数据修改的各种方法。如在本文中提及的应用数据可以包括用户设置、web浏览器中的主页偏好、web浏览器中的搜索引擎偏好、或者由应用存储的用户数据等。在某些实施例中,计算设备可以检测到已修改应用数据。在某些示例中,计算设备可以验证恶意软件应用并未修改应用数据。例如,计算设备可以与签名服务器通信,所述签名服务器可提供挑战响应测试以验证已修改应用数据并非源自于恶意软件应用。在某些实施例中,服务器发起的挑战响应测试可以包括全自动区分计算机和人类的图灵测试(在本文中也称为CAPTCHA)、验证电子邮件、文本消息或者可以确定软件应用是否已经修改了应用数据的任何其它适当方法。
作为文前内容,附图中的某些图在称为功能性、模块、特征、元件等的一个或多个结构部件的上下文中描述了概念。图中所示的各种部件可以以任何方式实现,例如用软件、硬件(例如,分立逻辑部件等)、固件等或者这些实现方式的任何组合。在一个实施例中,各种部件可反映相应部件在实际实现方式中的使用。在其它实施例中,可由许多实际部件来实现图中所图示的任何单个部件。图中的任何两个或更多单独部件的描绘可反映由单个实际部件执行的不同功能。下面所讨论的图1提供了关于可用来实现图中所示的功能的一个系统的细节。
其它图以流程图形式描述了各概念。以这种形式,某些操作被描述为组成以某个次序执行的不同方框。这样的实现方式是示例性且是非限制性的。可以将本文所述的某些方框集中在一起并在单个操作中执行,可以将某些方框分解成多个组成框,并且可以以与本文所图示的不同次序来执行某些方框,所述次序包括执行方框的并行方式。流程图中所示的方框可以用软件、硬件、固件、手动处理等或者这些实现方式的任何组合来实现。如本文所使用的硬件可包括计算机系统、分立逻辑部件(诸如专用集成电路(ASIC))等以及其任何组合。
关于术语,短语“被配置成”涵盖可以将任何种类的结构部件构造成执行所标识的操作的任何方式。可以将结构部件配置成使用软件、硬件、固件等或其任何组合来执行操作。
术语“逻辑”涵盖用于执行任务的任何功能性。例如,流程图中所图示的每个操作对应于用于执行该操作的逻辑。可以使用软件、硬件、固件等或其任何组合来执行操作。
如本文所利用的术语“部件”、“系统”、“客户端”等意图指代计算机相关实体,其或是硬件、软件(例如,在执行中)和/或固件,或是其组合。例如,部件可以是在处理器上运行的过程、对象、可执行文件、程序、函数、库、子例程和/或计算机或软件与硬件的组合。以举例说明的方式,在服务器上运行的应用和服务器两者可以是部件。一个或多个部件可以常驻于过程内,并且部件可以定位于一个计算机上和/或分布在两个或更多计算机之间。
此外,可将要求保护的主题实现为使用标准编程和/或工程技术来产生软件、固件、硬件或其任何组合以控制计算机实现公开主题的方法、设备或制品。如本文所使用的术语“制品”意图涵盖可从任何有形计算机可读设备或介质访问的计算机程序。
计算机可读存储介质可以包括但不限于磁存储设备(例如,硬盘、软件以及磁条等)、光盘(例如,紧凑式盘(CD)以及数字多功能盘(DVD)等)、智能卡以及闪存设备(例如,卡、棒以及密钥驱动器等)。相反地,计算机可读介质一般地(即,非存储介质)可附加地包括通信介质,诸如用于无线信号等的传输介质。
图1是可以验证应用数据修改的计算系统的示例的框图。计算系统100可以是例如移动电话、膝上型计算机、台式计算机或平板计算机等。计算系统100可包括适合于执行所存储的指令的处理器102以及存储可被处理器102执行的指令的存储器设备104。处理器102可以是单核处理器、多核处理器、计算集群或任何数目的其它配置。存储器设备104可以包括随机存取存储器(例如,SRAM、DRAM、零电容器RAM、SONOS、eDRAM、EDO RAM、DDR RAM、RRAM、PRAM等)、只读存储器(例如,掩模式ROM、PROM、EPROM、EEPROM等)、闪存或任何其它适当存储器系统。被处理器102执行的指令可被用来验证应用数据修改。
处理器102可通过系统总线106(例如,PCI、ISA、PCI-Express、HyperTransport®、NuBus等)连接到适合于将计算系统100连接到一个或多个I/O设备110的输入/输出(I/O)设备接口108。I/O设备110可包括例如键盘、手势识别输入设备、话音识别设备以及指向设备,其中,所述指向设备可包括触摸板或触摸屏等。I/O设备110可以是计算系统100的内置部件,或者可以是外部连接到计算系统100的设备。
处理器102也可通过系统总线106链接到显示设备接口112,其适合于将计算系统100连接到显示设备114。显示设备114可包括作为计算系统100的内置部件的显示屏。显示设备114还可包括计算机监视器、电视或投影仪等,其外部连接到计算系统100。网络接口卡(NIC)116也可适合于通过系统总线106将计算系统100连接到网络(未描绘)。
存储装置118可以包括硬盘驱动器、光驱、USB闪速驱动器、驱动器阵列或其任何组合。存储装置118可包括客户端侧逻辑120,其可以验证已修改应用数据并非源自于自动程序。如在本文中提及的自动程序包括可以在不通知用户的情况下自动地修改应用数据的任何应用。在某些实施例中,客户端侧逻辑120可以包括保护机制,其防止应用数据的未授权修改,诸如用于web浏览器的默认主页设置等。例如,客户端侧逻辑120可以存储已加密应用数据,其可以被与当前应用数据相比较。如果已加密应用数据不同于当前应用数据,则客户端侧逻辑120可以验证自动程序并未修改当前应用数据。在某些实施例中,客户端侧逻辑120从签名服务器122检索挑战响应测试,以验证自动程序并未修改当前应用数据。挑战响应测试可以包括CAPTCHA测试或者使用诸如电子邮件地址或电话号码等之类的任何适当联系人信息发送的字母数字字符串等。
在某些实施例中,客户端侧逻辑120可以响应于接收到对挑战响应测试的正确响应而向签名服务器122发送标识符和已修改应用数据。在某些示例中,标识符可以包括标识计算设备的字母数字字符串。签名服务器122可以将标识符和已修改应用数据加密,并将已加密数据发送到客户端侧逻辑120。在某些实施例中,客户端侧逻辑120可以将包括已修改应用数据和标识符的已加密数据存储在存储装置118中。客户端侧逻辑120可以通过将已加密数据解密并将所存储的应用数据与当前应用数据相比较来检测未来的已修改应用数据。
应理解的是,图1的框图并不意图指示计算系统100将包括图1中所示的所有部件。而是,计算系统100可以包括更少的或图1中未图示出的附加部件(例如,附加应用、附加模块、附加存储器设备、附加网络接口等)。附加地,签名服务器122还可包括图1中未图示出的附加部件(例如,处理器124、存储装置126等)。例如,签名服务器122可包括适合于执行所存储的指令的处理器124以及存储可被处理器124执行的指令的存储装置126。此外,客户端侧逻辑120的任何功能性可以部分地或完全地在硬件和/或在处理器102中实现。例如,可用专用集成电路将功能性实现在处理器102中实现的逻辑中或者任何其它设备中。
图2是用于验证计算设备中的应用数据修改的示例性方法的过程流程图。可以用诸如图1的计算系统100之类的任何适当的计算设备来执行方法200。
在方框202处,客户端侧逻辑120可以检测计算设备中的已修改应用数据。例如,客户端侧逻辑120可以检测用于web浏览器的已修改默认主页、用于web浏览器的默认搜索提供商或者用于任何适当应用的任何其它已修改应用数据。在某些实施例中,客户端侧逻辑120可以通过将当前应用数据值与所存储的应用数据值相比较来检测已修改应用数据。例如,客户端侧逻辑120可存储已加密应用数据,其包括默认应用数据或先前加密的应用数据。客户端侧逻辑120可将已加密应用数据解密,以确定当前应用数据已被修改。
在方框204处,客户端侧逻辑120可以确定已修改应用数据并非源自于自动程序。在某些实施例中,客户端侧逻辑120可以通过使用挑战响应测试来确定已修改并非自动地源自于应用。如上文所讨论的,挑战响应测试可以包括CAPTCHA测试、经由电子邮件或文本消息发送的字母数字字符串或任何其它适当的挑战响应测试。在某些实施例中,客户端侧逻辑120从签名服务器122请求挑战响应测试。在某些示例中,如果签名服务器122并未针对登录凭证而提示客户端侧逻辑120,则挑战响应测试可以是匿名的。如果客户端侧逻辑120接收到对挑战响应测试的正确响应,则客户端侧逻辑120可确定已修改应用数据并非源自于自动程序。如果已修改应用数据并非源自于自动程序,则过程流程在方框206处继续。如果已修改应用数据源自于自动程序,则过程流程在方框208处结束。
在方框206处,客户端侧逻辑120可以向签名服务器122发送标识符和已修改应用数据。如上文所讨论的,标识符可以包括可以标识计算设备的任何适当字母数字。在某些实施例中,标识符可以使得签名服务器122能够验证先前并未从自动程序导出对挑战响应测试的响应。
在方框210处,客户端侧逻辑120可以从签名服务器122接收包括标识符和已修改应用数据的已加密数据。在某些实施例中,可以用诸如RSA等任何适当的加密方法将标识符和已修改应用数据加密。签名服务器122还可向客户端侧逻辑120发送公钥,使得客户端侧逻辑120可以将已加密数据解密。
在方框212处,客户端侧逻辑120可以将已加密数据存储在计算设备中。例如,客户端侧逻辑120可以将已加密数据存储在存储用于应用的应用数据(诸如操作系统的注册表)的存储器区域、存储器设备或者任何适当的存储设备中。在某些实施例中,可以使用已加密数据来检测未来的已修改应用数据。
图2的过程流程图并未意图指示方法200的步骤将以任何特定次序执行,或者在每种情况下都将包括方法200的所有步骤。此外,取决于特定应用,可在方法200内包括任何数目的附加步骤。例如,客户端侧逻辑120可以在确定已修改应用数据并非源自于自动程序之前向签名服务器122发送标识符和已修改应用数据。
图3是用于在签名服务器中验证应用数据修改的方法的示例的过程流程图。方法300可以用 诸如图1的签名服务器122之类的任何适当的计算设备来实现。
在方框302处,签名服务器122可以检测到来自计算设备的标识符和已修改应用数据。如上文所讨论的,标识符可以包括可以标识计算设备的任何适当字母数字。已修改应用数据可包括任何适当的用户设置、web浏览器中的主页偏好或由应用存储的用户数据等。
在方框304处,签名服务器122可以将挑战响应测试发送到计算设备。如上文所讨论的,挑战响应测试可以包括CAPTCHA测试或者经由电子邮件或文本发送到客户端侧逻辑120的任何适当字母数字字符串等。该挑战响应测试还可包括基于在客户端侧逻辑120与签名服务器122之间同步的安全令牌来请求时间相关的伪随机数。挑战响应测试可以通过向用户提供自动程序不能检测的信息来验证自动程序并未修改应用数据。例如,自动程序可能不能将来自CAPTCHA测试的图像解密,或者检测到经由电子邮件或文本消息发送的字母数字字符串。在某些实施例中,签名服务器122可以在预定时间段之后或者在一次求解尝试之后使CAPTCHA测试无效,以便使得自动程序更加难以确定对CAPTCHA测试的正确响应。
附加地,如果标识符是复制本,则签名服务器122也可以检测到自动程序修改了应用数据。在某些示例中,签名服务器122可以存储每个标识符,并确定从客户端侧逻辑120是否接收到了复制的标识符。在某些实施例中,复制的标识符可以使得签名服务器122能够验证对挑战响应测试的响应由自动程序提供。
在方框306处,签名服务器122可以响应于接收到对挑战响应测试的正确响应而将标识符和已修改应用数据加密。在某些实施例中,加密可以包括存储在客户端侧逻辑120中的公钥和存储在签名服务器122中的私有加密密钥。签名服务器122可实现任何适当的非对称加密技术等,以将标识符和已修改应用数据加密。例如,签名服务器122可以使用任何适当位数的私有加密密钥以及RSA加密方法来将标识符和已修改应用数据加密。
在方框308处,签名服务器122可以将已加密的标识符和已修改应用数据发送到计算设备。在某些实施例中,计算设备可存储该已加密的标识符和已修改应用数据。已加密的标识符和已修改应用数据可以使得计算设备能够检测到未来的未认证的已修改应用数据。
图3的过程流程图并未意图指示方法300的步骤将以任何特定次序执行,或者在每种情况下都将包括方法300的所有步骤。此外,取决于特定应用,可在方法300内包括任何数目的附加步骤。例如,签名服务器122还可生成公共加密密钥,并将该公共加密密钥发送到计算设备。
图4是与签名服务器通信以验证用于web浏览器的已修改应用数据的计算系统的示例的框图。在某些实施例中,计算设备402可以是任何适当的计算设备,诸如图1的计算系统100。附加地,签名服务器404可以是任何适当的计算设备,诸如图1的签名服务器122。
在某些实施例中,web浏览器406可以检测到用以从web地址(在本文中也称为URL)检索信息的指令。在某些示例中,客户端侧逻辑408可以监控(如由圆圈1所指示的)web浏览器406将从其检索信息的每个web地址。在某些实施例中,如果客户端侧逻辑408检测到主页的选择,则客户端侧逻辑408可以(如由圆圈2所指示的)将主页的web地址(其可以被存储为当前应用数据410)与存储器414中的已加密应用数据412相比较。已加密应用数据410可以对应于最后授权的应用数据,诸如最后授权的主页。例如,最后授权的主页可包括默认主页设置或先前被签名服务器404认证的主页。如果当前应用数据410不同于已加密应用数据412,则客户端侧逻辑408确定当前应用数据410已被修改。
在某些示例中,客户端侧逻辑408可使用存储在存储器414中的公钥416将已加密应用数据412解密。在某些实施例中,客户端侧逻辑408还可以从已加密应用数据412检索标识符。如上文所讨论的,标识符可以包括标识计算设备的任何适当字母数字字符串。
在某些实施例中,客户端侧逻辑408指导web浏览器406响应于比较当前应用数据410和已加密应用数据412而从web地址检索内容。例如,如果当前应用数据410和已加密应用数据412是相同的,则客户端侧逻辑408可以确定当前应用数据410未被修改。客户端侧逻辑408可指导(如由圆圈3所指示的)web浏览器从存储在当前应用数据410中的主页web地址检索信息。如果客户端侧逻辑408确定当前应用数据410并不与已加密应用数据412相同,则客户端侧逻辑408可以指导(如由圆圈3所指示的)web浏览器406从存储在已加密应用数据412中的web地址检索信息而替代于从存储在当前应用数据410中的web地址检索信息。在某些实施例中,客户端侧逻辑408还可提示用户用已加密应用数据412来替换当前应用数据410。
在某些实施例中,web浏览器406可以(如由圆圈4所指示的)通过网络418从web地址检索信息。例如,web浏览器406可以从存储在当前应用数据410或已加密应用数据412中的web地址检索信息。在某些实施例中,web浏览器406可将从web地址检索到的信息发送到客户端侧逻辑408,其可以显示用户界面,所述用户界面包括存储在当前应用程序410和已加密应用数据412中的值以及从web地址检索的信息。该用户界面可请求用于将存储在已加密应用数据412中的web地址改变成存储在当前应用数据410中的web地址的指示。
如果客户端侧逻辑408接收到用于改变存储在已加密应用数据412中的web地址的指示,则客户端侧逻辑408可以连接到签名服务器404。在某些示例中,签名服务器404可以通过向客户端侧逻辑408提供诸如CAPTCHA测试、文本消息或电子邮件等挑战响应测试来验证自动程序并未修改当前应用数据410。在某些实施例中,签名服务器404可以使用诸如JavaScript或HTTPS等任何适当的编程语言或协议来从客户端侧逻辑408检索解决方案。挑战响应测试可以被签名服务器404周期性地修改,以保护其免受由自动程序进行的机器求解尝试。附加地,签名服务器404可以确保诸如CAPTCHA图像之类的挑战响应测试不能在预定超时时段之后接受响应,并且挑战响应测试不能被重新使用。
在某些实施例中,签名服务器404可以响应于接收到对挑战响应测试的正确解决方案而从客户端侧逻辑408接收存储在当前应用数据410中的标识符和已修改应用数据。签名服务器404可以使用私有加密密钥420来将从客户端侧逻辑408接收到的已修改应用数据和标识符加密。签名服务器404可以(如由圆圈5所指示的)已加密信息以已加密的方式发送到客户端侧逻辑408。在某些实施例中,签名服务器404可以使用具有任何适当大小的加密密钥的任何适当的非对称加密技术,以生成已加密数据。签名服务器404还可以在计算设备402上安装证书,因此计算设备402可以验证已加密数据。
图4的框图不意图指示将以任何特定次序在计算设备402和签名服务器404的部件之间传输指令或数据。此外,可在计算设备402与签名服务器404之间传输任何数目的附加指令。例如,自动程序可阻止对签名服务器网际协议地址的访问。在某些实施例中,客户端侧逻辑408可以通过对签名服务器404进行试通(ping)而检测签名服务器网际协议地址是否被阻止。此外,自动程序可能会拦截对挑战响应测试的响应,并用不同的值来替换已修改应用数据。作为响应,客户端侧逻辑408可以通过验证协议来显示已修改应用数据值,以防止应用数据的未授权修改。在某些实施例中,自动程序还可使用网络代理来修改应用数据。作为响应,客户端侧逻辑408可以周期性地更新加密技术和哈希协议。在某些实施例中,客户端侧逻辑408还可以向反病毒软件发送信息以指示自动程序是否常驻于计算设备402中。
图5是示出了可验证应用数据修改的有形计算机可读存储介质500的框图。该有形计算机可读存储介质500可被处理器502通过计算机总线504访问。此外,有形计算机可读存储介质500可包括指引处理器502执行本方法的步骤的代码。
在本文中讨论的各种软件部件可被存储在有形计算机可读存储介质500上,如图5中所指示的。例如,有形计算机可读存储介质500可以包括客户端侧逻辑506。在某些实施例中,客户端侧逻辑506可以验证对应用数据的修改不是由自动程序执行的。
应理解的是,取决于特定应用,在有形计算机可读存储介质500内可包括图5中未示出的任何数目的附加软件部件。虽然已用特定于结构特征和/或方法的语言描述了主题,但应理解的是,在所附权利要求中限定的主题不一定限于上文描述的特定结构特征或方法。相反地,上文描述的特定结构特征和方法是作为实现权利要求的示例性形式而公开的。

Claims (10)

1.一种用于验证应用数据修改的方法,包括:
检测计算设备中的已修改应用数据;
确定所述已修改应用数据并非源自于自动程序;
向签名服务器发送标识符和已修改应用数据;
从签名服务器接收包括标识符和已修改应用数据的已加密数据;以及
将已加密数据存储在计算设备中。
2.权利要求1的方法,其中,确定已修改应用数据并非源自于自动程序包括:
基于联系人信息,向用户发送字母数字字符串;以及
接收所述字母数字字符串作为输入。
3.权利要求1的方法,其中,确定已修改应用数据并非源自于自动程序包括:
从签名服务器请求挑战响应测试;
接收挑战响应测试;以及
检测对挑战响应测试的正确响应。
4.权利要求1的方法,其中,将已加密数据存储在计算设备中包括将已加密数据存储在存储应用数据的存储器区域中。
5.一个或多个用于验证应用数据修改的计算机可读存储介质,其包括多个指令,所述指令在被处理器执行时促使处理器:
检测计算设备中的已修改应用数据;
从签名服务器请求挑战响应测试,以确定已修改应用数据并非源自于自动程序;
响应于对挑战响应测试的正确响应,向签名服务器发送标识符和已修改应用数据;
从签名服务器接收包括标识符和已修改应用数据的已加密数据;以及
将已加密数据存储在计算设备中。
6.一种用于验证应用数据修改的计算设备,包括:
处理器,其用以执行处理器可执行代码;
存储设备,其存储处理器可执行代码,其中,所述处理器可执行代码在被所述处理器执行时促使处理器:
  检测计算设备中的已修改应用数据;
  从签名服务器请求挑战响应测试,以确定已修改应用数据并非源自于自动程序;
  响应于对挑战响应测试的正确响应,向签名服务器发送标识符和已修改应用数据;
  从签名服务器接收包括标识符和已修改应用数据的已加密数据;以及
  将已加密数据存储在计算设备中。
7.一种用于验证应用数据修改的签名服务器,包括:
处理器,其用以执行处理器可执行代码;
存储设备,其存储处理器可执行代码,其中,所述处理器可执行代码在被所述处理器执行时促使处理器:
  检测来自计算设备的标识符和已修改应用数据;
  向计算设备发送挑战响应测试;
  响应于接收到对挑战响应测试的正确响应,将已修改应用数据加密;以及
  将已加密的已修改应用数据发送到所述计算设备。
8.权利要求7的签名服务器,其中,所述标识符使得所述签名服务器能够标识从计算设备发送的请求。
9.权利要求7的签名服务器,其中,所述挑战响应测试包括全自动区分计算机和人类的图灵测试。
10.权利要求7的签名服务器,其中,所述挑战响应测试包括:
基于联系人信息,向用户发送字母数字字符串;以及
接收所述字母数字字符串作为输入。
CN201380075939.8A 2013-04-24 2013-04-24 基于匿名服务器的用户设置保护 Active CN105359453B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/074586 WO2014172850A1 (en) 2013-04-24 2013-04-24 Anonymous server based user settings protection

Publications (2)

Publication Number Publication Date
CN105359453A true CN105359453A (zh) 2016-02-24
CN105359453B CN105359453B (zh) 2019-07-02

Family

ID=51790982

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380075939.8A Active CN105359453B (zh) 2013-04-24 2013-04-24 基于匿名服务器的用户设置保护

Country Status (4)

Country Link
US (1) US9825971B2 (zh)
EP (1) EP2989745B1 (zh)
CN (1) CN105359453B (zh)
WO (1) WO2014172850A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10270820B2 (en) * 2015-08-18 2019-04-23 Microsoft Technology Licensing, Llc Impromptu community streamer
US11146534B1 (en) * 2020-04-07 2021-10-12 Microsoft Technology Licensing, Llc Implementing a client-side policy on client-side logic

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090282483A1 (en) * 2008-05-12 2009-11-12 Bennett James D Server based malware screening
US20110047620A1 (en) * 2008-10-21 2011-02-24 Lookout, Inc., A California Corporation System and method for server-coupled malware prevention
CN102414689A (zh) * 2009-04-27 2012-04-11 高通股份有限公司 用于改进代码和数据签署的方法和设备
CN102546607A (zh) * 2010-12-15 2012-07-04 微软公司 在云上提供安全服务

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8676922B1 (en) * 2004-06-30 2014-03-18 Google Inc. Automatic proxy setting modification
US7702107B1 (en) 2005-07-27 2010-04-20 Messing John H Server-based encrypted messaging method and apparatus
US7957532B2 (en) * 2006-06-23 2011-06-07 Microsoft Corporation Data protection for a mobile device
US9848276B2 (en) * 2013-03-11 2017-12-19 Rovi Guides, Inc. Systems and methods for auto-configuring a user equipment device with content consumption material

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090282483A1 (en) * 2008-05-12 2009-11-12 Bennett James D Server based malware screening
US20110047620A1 (en) * 2008-10-21 2011-02-24 Lookout, Inc., A California Corporation System and method for server-coupled malware prevention
CN102414689A (zh) * 2009-04-27 2012-04-11 高通股份有限公司 用于改进代码和数据签署的方法和设备
CN102546607A (zh) * 2010-12-15 2012-07-04 微软公司 在云上提供安全服务

Also Published As

Publication number Publication date
US20160050218A1 (en) 2016-02-18
US9825971B2 (en) 2017-11-21
WO2014172850A1 (en) 2014-10-30
EP2989745A4 (en) 2017-04-05
CN105359453B (zh) 2019-07-02
EP2989745B1 (en) 2020-09-23
EP2989745A1 (en) 2016-03-02

Similar Documents

Publication Publication Date Title
US10873573B2 (en) Authenticating a user and registering a wearable device
US10467622B1 (en) Using on-demand applications to generate virtual numbers for a contactless card to securely autofill forms
JP6282349B2 (ja) ウェブサイトにログインしている端末がモバイル端末であるかどうかを決定するための方法およびシステム
CN104604204B (zh) 在同步通信中安全地操控服务器证书错误
KR102039219B1 (ko) 디바이스의 독립적인 프로세서들을 통한 데이터 검증
US10484372B1 (en) Automatic replacement of passwords with secure claims
WO2015062362A1 (zh) 用户登录的方法、设备及系统
WO2019010100A1 (en) DETECTION OF IDENTIFIERS COMPROMISED DURING ATTACK BY IDENTIFIERS JAM
US10789372B2 (en) Primary device, an accessory device, and methods for processing operations on the primary device and the accessory device
KR20210121068A (ko) 클립보드에 복사할 카드 데이터를 보안 생성하기 위한 카드 탭
WO2017020386A1 (zh) 指纹校验方法及装置
US9893891B2 (en) Identity verification using key pairs
US10587594B1 (en) Media based authentication
CN110889131B (zh) 一种文件共享系统
TW202019124A (zh) 管理使用者憑證系統、方法及媒介
JP5013352B2 (ja) 情報生成システム及びその方法
CN105359453A (zh) 基于匿名服务器的用户设置保护
US10311240B1 (en) Remote storage security
US20150007292A1 (en) User authentication utilizing patterns
KR20200071880A (ko) IoT 시스템에서의 개인정보수집 동의 절차 제공 방법 및 이를 수행하는 장치들
CN104796253A (zh) 独立密码验证方法及装置、存储介质
KR20240024805A (ko) 비접촉식 카드로 생성된 고유 리소스 로케이터의 서버측 리디렉트
US8666369B2 (en) Mobile phone provided with a secured identification system
TWM500291U (zh) 電子裝置與伺服器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CI01 Publication of corrected invention patent application

Correction item: First inventor

Correct: S. Chen

False: X . Chen

Number: 08

Volume: 32

CI02 Correction of invention patent application

Correction item: First inventor

Correct: S. Chen

False: X . Chen

Number: 08

Page: The title page

Volume: 32

ERR Gazette correction
GR01 Patent grant
GR01 Patent grant