[发明专利]标识出可因子分解的代码有效
申请号: | 201110449093.2 | 申请日: | 2011-12-28 |
公开(公告)号: | CN102592087A | 公开(公告)日: | 2012-07-18 |
发明(设计)人: | D·基洛夫斯基;B·利夫希茨;G·梅德文斯基;V·盖加拉;K·雷;J·林德 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F21/00 | 分类号: | G06F21/00 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 罗婷婷 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 标识 因子 分解 代码 | ||
技术领域
本发明涉及计算机程序的反盗版技术。
背景技术
用于个人计算机的计算机程序易于反向工程。例如,可通过编辑程序的机器码来检测并禁用这种程序中的许可实施码。结果,一旦计算机程序进入市场,敌意用户可以对它的保护机制进行反向工程并产生功能上表现为与真实副本等效、但是反盗版实施被禁用的新的副本。
反盗版技术的新近发展已经导致了分拆计算反盗版方法的发展。分拆计算方法涉及将程序划分或因子分解成两个或更多个片段,这些片段在彼此的远程执行。例如,在一些实施例中,程序的较小的、功能上重要的片段定位在服务器上,而程序的其余部分则定位在客户机上。客户机将执行程序至控制流引向服务器部分的那一点。客户机然后可以准备适当的数据来作为输入,并对存在于服务器处的功能作出远程的过程调用。如果程序的客户机副本是经授权的,那么服务器执行该调用并向客户机返回结果。另一方面,如果客户机副本是未经授权的或者如果服务器检测到篡改尝试,那么服务器将拒绝执行调用或者将以与它对经授权的客户机所执行的调用不同的方式来执行调用,由此中断客户机上的程序执行。
发明内容
公开了涉及自动标识出潜在地放置在分拆计算的计算环境中的远程计算设备上的一个或多个计算机程序功能的各个实施例。例如,一个公开的实施例在计算设备上提供了一种确定程序中的代码的、要定位在该代码的其他部分的远程的可因子分解的部分以阻碍对该程序的非经授权的使用的方法。该方法包括:在计算设备上接收程序的代码的一表示的输入;对所述代码的所述表示执行分析,该分析包括静态分析和动态分析中的一个或多个;以及,基于对所述代码的所述分析,输出通过所述分析确定的一个或多个功能的列表来作为要定位在远程的候选功能。
提供本发明内容以便以简化形式介绍在以下具体实施方式中进一步描述的一些概念。本发明内容并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。此外,所要求保护的主题不限于解决在本公开的任一部分中所提及的任何或所有缺点的实现。
附图说明
图1示出了经因子分解的程序的使用环境的示例的实施例。
图2示出了以使性能与反盗版顾虑平衡的方式来标识出程序中的可因子分解的代码的方法的实施例。
图3示出了描绘计算设备的一实施例的框图。
具体实施方式
在出于反盗版顾虑而查找定位在代码的另一部分的远程的代码的一部分时,可能难以定位在经因子分解后会有效地阻止盗版但并不会使程序的经授权版本的性能被影响到有害的程度的代码。对于诸如视频游戏之类大的、复杂的应用,此任务尤其困难。例如,期望定位在远程的经因子分解的代码具有难以推断的功能性,使得在向该代码提供已知输入时,该代码可提供不容易与输入相关的输出。而且,期望不存在对程序性能具有充分负面影响的经因子分解的代码,因为俘获这种经因子分解的代码将使程序所提供的用户体验的质量的显著降级。这些顾虑可能偏好相对大的和/或复杂的功能的因子分解。
另一方面,并不期望将经因子分解的代码移动至对应用的经授权的版本的用户体验过度有害的远程网络位置。例如,期望控制往返程时间和数据在客户机和服务器之间来回传递的等待时间,并减少与将经因子分解的代码主存在服务器上相关联的计算资源和/或经济成本。这些顾虑可能偏好相对小的和/或简单的功能的因子分解。
针对这些冲突的顾虑,公开了涉及自动标识出应用中用于因子分解的、可平衡这些顾虑的功能的实施例。此处还公开了涉及将这些功能的列表呈现给用户以允许用于划分的一个或多个功能的最终选择的人类确认。应当理解,此处用于描述经因子分解的代码的术语“功能”等可表示与程序的其余部分分开的任何代码部分。在讨论对代码部分的自动标识之前,参考图1描述了示例使用环境的实施例。使用环境100包括其上正运行有程序代码104的经授权的副本的第一客户机设备(客户机A 102),以及其上正运行有程序代码的未经授权的副本107的第二客户机106。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110449093.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:设备识别方法及主设备模块和从设备模块
- 下一篇:共享对象表示