利用软件名声的软件授权的制作方法

文档序号:6455779阅读:206来源:国知局
专利名称:利用软件名声的软件授权的制作方法
技术领域
本技术领域一般涉及授权软件,且更具体地涉及经由例如密码验证技术利 用软件的名声来授权软件。
背景
当今,在下载软件或打开应用程序时,消费者将信任基于该软件的发行者
或发布者。例如,消费者可能信任MICROSOFT 而可能不信任未知发行者。 然而,仅基于发行者的信任并不保证该软件不是恶意软件。消费者可接受已密 码地或数字地签名的和/或具有真品证书(CoA)的软件。然而,经数字签名的 软件仍可能是恶意的。除了对传入软件或在执行之前执行恶意软件检测应用程 序之外,消费者、信息技术(IT)专业人士、开发者等没有用于将信任基于软 件本身的机制。
概述
提供本概述以便以简化的形式介绍将在以下说明性实施例的详细描述中 进一步描述的一些概念。部分地根据软件的名声来授权软件。数字签名作为为 软件提供凭证的机制来对待。使用软件凭证和其他机制来将被称为名声的元数 据绑定到软件。名声用于授权。例如,如果软件已知是恶意的,诸如,病毒、 间谍软件、root kit等,则在确定是接受还是不接受该软件时考虑该软件的名声 (用于安装、用于启动、用于执行、用于运行时等)。如果软件源自一已知的 源并且已知是好的,则在确定该软件是可接受的还是不可接受时也考虑该名 声。在一示例实施例中,软件是根据该软件的名声和该软件的有效性(例如, 作者/发布者中的信用等级)来授权的。结合基于数字签名和真品证书(CoA)
的机制利用软件的名声来确定软件的有效性。如果软件的名声是可接受的并且 该软件是有效的(例如,软件的作者和/或发布者是可信的),则授权该软件。 软件的名声可本地地和/或远程地确定。例如,本地IT部门可确定软件的名声,
6和/或可以向名声确定服务查询软件的名声。


以上概述以及以下详细描述在结合附图阅读时可被更好地理解。出于说明 利用名声的软件授权的目的,在附图中示出了其示例性构造;然而,利用名声 的软件授权不限于所公开的具体方法和手段。
图1是用于利用软件的名声来授权软件的一示例系统的图示。 图2是用于利用名声来授权软件的一示例过程的流程图。 图3是软件被阻塞的通知的一示例用户界面(UI)的图示。 图4是软件被阻塞的通知的一示例用户界面(UI)的另一图示。 图5是用于同步利用名声来授权软件的一示例计算设备的图示。 图6是用于同步利用名声来授权软件的一示例性计算环境。详细描述
提供了一种标识软件的名声的机制;由此提供了接受或拒绝软件的操作的 能力。该机制可在各种时刻利用,诸如在安装软件之前和/或在执行软件(例如, 运行时)之前等。该机制通过早期发现攻击来提供针对攻击的主动防御并减少 正在发生的攻击和/或故障的影响。该机制还提供了撤销软件的能力。
在一示例实施例中,诸如代码、软件包、安装包装、动态链接库(DLL) 等的软件通过验证软件并确定软件的名声来授权。统称为软件的有效性的软件 的完整性和源利用数字签名或任何合适的手段来验证。软件的名声可本地地 (例如,本地IT组或系统管理员策略)和/或远程地(例如,名声确定服务) 确定。软件的名声指示软件的意图而不是软件的作者和/或发布者的凭证。
图1是用于利用软件的名声来授权软件的示例系统的图示。在一示例场景 中,用户可将软件从网络14下载到处理器12,和/或该用户可将软件从存储介 质18插入到处理器12。在接受该软件之前,确定该软件的名声和有效性。用 户可根据该软件的名声和有效性来决定安装和/或执行该软件。在一示例实施例 中,向名声确定服务20査询软件的名声。可查询多个名声确定服务。名声确 定服务20能够响应于该查询提供软件的名声的指示。与其相结合,或另选地, 可以向企业服务16查询软件的名声。企业服务服务16能够响应于该査询提供 软件的名声的指示。与其相结合,或另选地,可以向企业服务16査询软件的 名声。可根据关于软件的数字签名和/或真品证书(CoA)来确定软件的有效性。 软件有效的判定意味着该软件的作者和/或发布者是可信的。通过利用对有效性 和名声的判定,用户和/或处理器12可确定该软件是可接受的还是不可接受的。 处理器12可包括任何合适的处理器。例如,处理器12可包括手持式设备、多 处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型计算机、 大型计算机等。处理器12可包括诸如掌上计算机、个人数字助理(PDA)、 袖珍PC、移动电话等便携式设备。此外,处理器12可包括其中任务由通过通 信网络链接的远程处理设备来执行的分布式计算环境。在这一分布式计算环境 中,程序模块可以位于本地和远程存储器存储设备中。网络14可以是可从其 下载软件的任何合适的源,诸如,例如因特网或局域网(LAN)等。软件的名声的任何合适的服务。在一示 例实施例中,名声确定服务20可包括远程实体,但并不限于此。名声确定服
务20可监视各种软件和软件包的状态并利用该状态来提供软件的名声的指示。 例如,名声确定服务20可经由其监视过程发现一特定版本的软件包已被报告 为受到病毒感染。当向名声确定服务20查询该软件包的名声时,名声确定服 务20可提供名声的指示,该名声的指示是根据该软件包的某些版本已被报告 为例如恶意软件、间谍软件、特洛伊木马、受到病毒感染、与具有坏名声的软 件相关联等的知识来确定的。
企业服务16也能够,或另选地,确定和/或提供软件的名声。虽然并不限 于此,但企业服务16可包括例如,本地IT部门或系统管理员。企业服务16 可查询诸如,例如名声确定服务20等服务,和/或以与名声确定服务20相似的 方式确定软件的名声。
在一示例实施例中,根据社区投票来确定软件的名声。软件的用户得到提 供关于软件的评论的机会。评论可由软件的用户明确地提供给收集实体,诸如 例如,名声确定服务20等。在一示例实施例中,用户可同意可自动收集和提 供关于用户就该软件的使用和体验的统计数据。关于特定软件包的统计数据可 包括,例如,阻塞该软件包的用户数量和/或下载该软件包的用户数量。
软件的名声会受到关联的影响。例如,如果具有好名声的软件与具有坏名 声的软件交互,则好软件的名声就会被玷污。即,名声可从好变为坏。例如, 软件对象可访问一URI以下载病毒、间谍软件、特洛伊软件、恶意软件等。如 果检测到该交互,则相应地调整该软件对象的名声(例如,表示为坏)。
在一示例实施例中,名声被分配给软件的名称。名称可以是软件包的名称 (例如,应用程序和版本号)。名称可以是强名称,诸如从对软件执行散列函 数所得的散列值等。将散列值用作软件的名称允许标识软件。
在一示例实施例中,结合软件的有效性利用软件的名声来授权软件。在该 示例实施例中,根据诸如密码地签名软件等已知的数字验证技术来确定软件的 源和有效性。如果软件被确定为有效,则意味着该软件的作者和/或发布者是可 信的。如果软件被确定为无效,则意味着该软件的作者和/或发布者是不可信的。 在该示例实施例中,存在代码签署生态系统,其中用户和/或开发者能够数字地
9签署其自己的代码并信任其内部公钥基础结构(PKI)。开发者可通过数字证 书、密钥和软件开发工具包(SDK)工具来签署其自己的代码。开发者可发放 用于签署代码的证书。在该示例性实施例中,名声基于可靠的且确定性的社区
审阅/投票、和/或独立的产品审阅和分析,诸如,例如通过名声确定服务20等。
经由该代码签署生态系统,好软件将增长,将生成对好软件的信任,并且软件 的社区名声将变为可接受的且普遍存在的。并且,可预防和检测拒绝服务和社 区名声欺诈检测。
图2是用于利用软件名声来授权软件的一示例过程的流程图。在步骤22 处接收软件。软件可由例如处理器12来接收。软件可从例如网络14和/或存储 介质18接收。在步骤24处,确定所接收到的软件是否有效。即,确定所接收 到的软件的发布者和/或作者中的信用等级。如果所接收到的软件被确定为有 效,则作者/发布者是可信的。如果所接收到的软件被确定为无效,则作者/发 布者是不可信的。在一示例实施例中,密码地确定软件的有效性。即,根据与 软件相关联的数字签名和/或CoA来确定软件的有效性。数字签名和CoA在本 领域中是已知的。如果该软件在步骤26处被确定为无效(例如,软件的作者/ 发布者不可信),则在步骤28处提供警告。该警告可以按任何适当的方式来 提供。在一示例实施例中,将不会安装/加载所接收到的软件并且提供指示该软 件正被阻塞的指示。图3是软件由于作者和/或发布者不可信而正被阻塞的通知 的一示例用户界面(UI)的图示。
如果软件在步骤26处被确定为有效(例如,软件的作者/发布者是可信的), 则在步骤30处确定软件的名声。在一示例实施例中,调用/査询诸如,例如名 声确定服务20等服务来确定软件的名声。在一示例实施例中,向诸如,例如 IT部门或系统管理员等本地服务查询软件的名声。可以诸如从本地服务和远程 服务、多个远程服务、或其组合接收多个名声。如果接收了多个名声,则它们 可以按任何适当的方式聚集。例如,每一接收到的名声可被分配一权重,并且 可确定多个名声的加权平均值。然后可使用所聚集的名声来授权软件。
如果该软件被确定为是不可接受的(步骤32),则在步骤28处提供警告。 该警告可以按任何适当的方式来提供。在一示例实施例中,将不会安装/加载所 接收到的软件并且提供指示该软件正被阻塞的指示。图4是软件因为该软件由于其名声而被认为是不可接受的而正被阻塞的通知的一示例用户界面(UI)的
图示。如果该软件被确定为是可接受的(步骤32),则可任选地在步骤34处
提供该结果的指示。该结果的指示可以按任何适当的方式来提供,诸如,例如 在显示器上呈现通知等。然后可安装/执行该软件。
图5是用于利用软件名声来授权软件的一示例计算设备36的图示。在一 示例实施例中,计算设备36被用作图1所示的处理器12。计算设备36包括处 理部分38、存储器部分40和输入/输出部分42。处理部分38、存储器部分40 和输入/输出部分42被耦合在一起(耦合未在图5中示出)以允许其间的通信。 计算设备36能够执行与通过利用软件的名声来授权软件相关联的操作。例如, 处理部分38能够,如上所述,经由输入/输出部分42来接收软件、确定软件的 名声、确定软件的有效性、以及根据所确定的名声和所确定的有效性来授权软 件。存储器部分40能够存储与利用名声来授权软件相关联的所有参数,诸如, 例如软件、软件名称、以及软件名声等。
输入/输出部分42能够提供和/或接收如上所述用于利用软件的名声来授 权软件的数据。输入/输出部分42可接收软件并将软件提供给处理部分38。输 入/输出部分42可提供关于软件的名声的请求/查询。响应于请求/查询,或未 经请求地,输入/输出部分42可接收指示软件的名声的信号。输入/输出部分 42可从和/或向诸如,例如其他计算设备、网络(例如,图1中的网络14)、 企业服务(例如,图1中的企业服务16)、名声确定服务(例如,图1中的名 声确定服务20)和存储介质(例如,图1中的存储介质18)等各种实体接收 和/或提供信息。
取决于处理器的确切配置和类型,存储器部分40可以是易失性的(如 RAM和/或高速缓存)44、非易失性的(如ROM、闪存等)46、或其组合。 计算设备36可以具有附加特征/功能。例如,计算设备36可包括附加存储(可 移动存储48和/或不可移动存储50),包括但不限于,磁盘或光盘、磁带、闪 存、智能卡或其组合。诸如存储器部分40、 44、 46、 48和50等计算机存储介 质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据这样 的信息的任意方法或技术来实现的易失性和非易失性、可移动和不可移动介 质。计算机存储介质包括,但不限于,RAM、 ROM、 EEPROM、闪存或其它
11存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁 带、磁盘存储或其它磁性存储设备、兼容通用串行总线(USB)的存储器、智 能卡、或能用于存储所需信息且可以由计算设备36访问的任何其它介质。任 何这样的计算机存储介质都可以是计算设备36的一部分。
计算设备36还可包含通信连接56,其允许计算设备36与另一计算设备、 本地服务(例如,企业服务)、远程服务(例如,名声确定服务)或其组合进 行通信。通信连接56是通信介质的一个示例。通信介质通常以诸如载波或其 它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或 其它数据,且包含任何信息传递介质。术语"已调制数据信号"指的是其一个 或多个特征以在信号中编码信息的方式被设定或更改的信号。作为示例而非限 制,通信介质包括有线介质,诸如有线网络或直接线连接,以及无线介质,诸 如声学、RF、红外线和其它无线介质。如此处所使用的术语计算机可读介质包 括存储介质和通信介质两者。计算设备36也可具有诸如键盘、鼠标、笔、语 音输入设备、触摸输入设备等输入设备54。也可以包括诸如显示器、扬声器、 打印机等输出设备52。
利用名声来授权软件的各实施例可以在计算设备(例如,计算设备36) 上执行。图6和以下讨论提供了其中可实现这一计算设备的合适计算环境的简 要概括描述。尽管并非必需,但利用软件名声来授权软件的各方面可以在诸如 程序模块等由诸如客户机工作站或服务器等计算机执行的计算机可执行指令 的一般上下文中描述。 一般而言,程序模块包括执行特定任务或实现特定抽象 数据类型的例程、程序、对象、组件、数据结构等。此外,利用名声来授权软 件可用其它计算机系统配置来实施,包括手持设备、多处理器系统、基于微处 理器的系统或可编程消费电子产品、网络PC、小型机、大型机等。此外,利 用名声来授权软件也可以在其中任务由通过通信网络链接的远程处理设备来 执行的分布式计算环境中实施。在分布式计算环境中,程序模块可以位于本地 和远程存储器存储设备中。
计算机系统可被大致分为三个组件分组硬件组件、硬件/软件接口系统 组件、以及应用程序组件(也被称为"用户组件"或"软件组件")。在计算 机系统的各实施例中,硬件组件可包括中央处理单元(CPU)621 、存储器(ROM
12664和RAM625两者)、基本输入/输出系统(BIOS) 666、以及诸如键盘640、 鼠标642、监视器647和/或打印机(未示出)等各种输入/输出(I/O)设备。 硬件组件包括计算机系统的基本物理基础结构。
应用程序组件包括各种软件程序,包括但不限于编译器、数据库系统、文 字处理程序、商用程序、视频游戏等。应用程序提供用于利用计算机资源来解 决问题、提供解决方案、及处理各种用户(机器、其他计算机系统和/或最终用 户)的数据的手段。
硬件/软件接口系统组件包括(并且在某些实施例中只包括)操作系统, 其本身在大多数情况下包括外壳和内核。"操作系统"(OS)是担当应用程序 和计算机硬件之间中介的特殊程序。硬件/软件接口系统组件还可以包括虚拟机 管理器(VMM)、公共语言运行库(CLR)或其功能等效物、Java虚拟机(JVM) 或其功能等效物、或者作为对计算机系统中的操作系统的替换或补充的其他这 样的软件组件。硬件/软件接口系统的目的在于提供用户可在其中执行应用程序 的环境。
硬件/软件接口系统通常在启动时被加载到计算机系统中,并且之后管理 计算机系统中的所有应用程序。应用程序通过经由应用程序接口 (API)请求
服务来与硬件/软件接口系统交互。某些应用程序使得最终用户能够经由诸如命 令语言或图形用户界面(GUI)等用户界面来与硬件/软件接口系统交互。
硬件/软件接口系统传统上执行用于应用程序的各种服务。在其中多个程 序同时运行的多任务硬件/软件接口系统中,硬件/软件接口系统确定各应用程 序应该以何种次序运行以及在作为轮换切换至另一应用程序之前应该允许每 一个应用程序运行多长时间。硬件/软件接口系统还管理多个应用程序之间的内 部存储器的共享,并且处理来自诸如硬盘、打印机和拨号端口等附连硬件设备 的输入以及对其的输出。硬件/软件接口系统还将关于操作的状态和可能已发生 的任何错误的消息发送给每一个应用程序(并且在特定情况下发送给最终用 户)。硬件/软件接口系统还可卸载批作业(例如,打印)的管理以使得启动应 用程序免除该工作并能够继续执行其他处理和/或操作。在能提供并行处理的计 算机上,硬件/软件接口系统还管理程序的划分以使其能在同时在多于一个的处 理器上运行。硬件/软件接口系统外壳(被称为"外壳")是到硬件/软件接口系统的交 互式最终用户接口。(外壳也称为"命令解释程序",或在操作系统中被称为 "操作系统外壳")。外壳是可直接由应用程序和/或最终用户访问的硬件/软 件接口系统的外层。与外壳相反,内核是直接与硬件组件交互的硬件/软件接口 系统的最内层。
如图6所示,示例性通用计算系统包括常规计算设备660等,该计算设备
包括处理单元621、系统存储器662和将包括系统存储器的各种系统组件耦合 到处理单元621的系统总线623。系统总线623可以是几种类型的总线结构中 的任何一种,包括存储器总线或存储控制器、外围总线、以及使用各种总线体 系结构中的任一种的局部总线。系统存储器包括只读存储器(ROM) 664和随 机存取存储器(RAM) 625。基本输入/输出系统(BIOS) 666被存储在ROM 664 中,它包含帮助在诸如启动期间在计算设备660内的元件之间传递信息的基本 例程。计算设备660还可包括对硬盘(未示出)读写的硬盘驱动器627、对可 移动磁盘629 (例如,软盘、移动存储)读写的磁盘驱动器628 (例如,软盘)、 以及对诸如CD-ROM或其它光学介质的可移动光盘631读写的光盘驱动器 630。硬盘驱动器627、磁盘驱动器628和光盘驱动器630分别通过硬盘驱动器 接口 632、磁盘驱动器接口 633和光盘驱动器接口 634来连接到系统总线623。 驱动器及其相关联的计算机可读介质为计算设备660提供了对计算机可读指 令、数据结构、程序模块和其它数据的非易失性存储。虽然此处所描述的示例 性环境采用了硬盘、可移动磁盘629和可移动光盘631,但本领域的技术人员 可以理解,在示例性操作环境中也可以使用可储存可由计算机访问的数据的其 它类型的计算机可读介质,如磁带盒、闪存卡、数字视频盘、贝努利盒式磁带、 随机存取存储器(RAM)、只读存储器(ROM)等等。同样,该示例性环境 还可包括诸如热传感器和安全或火警系统等许多类型的监控设备,以及其它信 息源。
多个程序模块可被存储在硬盘、磁盘629、光盘631 、ROM 664或RAM 625 中,包括操作系统635、 一个或多个应用程序636、其它程序模块637和程序 数据638。用户可通过诸如键盘640和定点设备642 (例如,鼠标)等输入设 备将命令和信息输入到计算设备660中。其它输入设备(未示出)可以包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些和其它输入设备通
常由耦合至系统总线的串行端口接口 646连接至处理单元621,但也可以由其 它接口,诸如并行端口、游戏端口或通用串行总线(USB)连接。监视器647 或其它类型的显示设备也经由接口,诸如视频适配器648连接至系统总线623。 除了监视器647之外,计算机通常包括其它外围输出设备(未示出),诸如扬 声器或打印机等。图6的示例性环境还包括主机适配器655、小型计算机系统 接口 (SCSI)总线656和连接到SCSI总线656的外部存储设备662。
计算设备660可使用至诸如远程计算机649等一个或多个远程计算机的逻 辑连接在网络化环境中操作。远程计算机649可以是另一计算设备(例如,个 人计算机)、服务器、路由器、网络PC、对等设备或其它常见的网络节点, 且通常包括上文相对于计算设备660描述的许多或所有元件,尽管在图6中只 示出了存储器存储设备650(软盘)。图6所描绘的逻辑连接包括局域网(LAN) 651和广域网(WAN) 652。这样的网络环境常见于办公室、—企业范围计算机 网络、内联网和因特网。
当在LAN联网环境中使用时,计算设备660通过网络接口或适配器653 连接至LAN651。当在WAN联网环境中使用时,计算设备660可包括调制解 调器654或用于通过诸如因特网等广域网652来建立通信的其它装置。或为内 置或为外置的调制解调器654经由串行端口接口 646连接到系统总线623。在 网络化环境中,相对于计算设备660描绘的程序模块或其部分可被储存在远程 存储器存储设备中。可以理解,所示的网络连接是示例性的,且可以使用在计 算机之间建立通信链路的其它手段。
虽然可以想象利用软件的名声来授权软件的众多实施例尤其适用于计算 机化的系统,但本文并不旨在将本发明限于这些实施例。相反,此处所使用的 术语"计算机系统"旨在包括能够存储和处理信息和/或能够使用所存储的信息 来控制设备本身的行为或执行的任何及所有设备,而不管那些设备本质上是电 子的、机械的、逻辑的、还是虚拟的。
此处所述的各种技术可结合硬件或软件,或在适当时以其组合来实现。由 此,利用软件的名声来授权软件的方法和装置或其某些方面或部分可采取包含 在诸如软盘、CD-ROM、硬盘驱动器或任何其它机器可读存储介质等有形介质
15中的程序代码(即,指令)的形式,其中当程序代码被加载到诸如计算机等机 器内并由其执行时,该机器成为用于利用软件的名声来授权软件的装置。
如果需要,程序可以用汇编语言或机器语言来实现。在任何情况下,语言 可以是编译的或解释的语言,且与硬件实现相结合。利用软件的名声来授权软 件的方法和装置也可以经由以通过某种传输介质传输的程序代码的形式体现 的通信来实现,比如通过电线或电缆、通过光纤或经由任何其它传输形式,其
中,当程序代码由诸如EPROM、门阵列、可编程逻辑器件(PLD)、客户计
算机等机器接收、加载并执行时,该机器成为用于利用软件的名声来授权软件 的装置。当在通用处理器上实现时,程序代码与处理器相结合来提供一种用于 调用利用软件的名声的软件授权的功能的独特装置。另外,结合利用软件的名 声来授权软件使用的任何存储技术总是可以是硬件和软件的组合。
尽管结合各附图的示例实施例描述了利用软件的名声来授权软件,但是可 以理解,可以使用其它类似的实施例,或可以对所描述的实施例进行修改或添 加来执行利用软件的名声的软件授权的相同功能而不背离本发明。因此,此处 所描述的利用软件的名声来授权软件不应限于任何单个实施例,而是应该根据 所附权利要求书的广度和范围来解释。
权利要求
1. 一种授权方法,包括接收软件(22);确定所接收到的软件的名声(30);确定所述软件的发布者和作者中的至少一个中的信用(24);以及如果所接收到的软件的名声被确定为可接受并且所述发布者和作者中的至少一个被确定为可信,则授权所接收到的软件(32、34)。
2. 如权利要求1所述的方法,其特征在于,所述信用是密码地确定的。
3. 如权利要求1所述的方法,其特征在于,所述信用包括标识所述软件的 发布者和作者中的至少一个。
4. 如权利要求1所述的方法,其特征在于,还包括请求所接收到的软件的 名声。
5. 如权利要求4所述的方法,其特征在于,还包括响应于请求所述名声, 接收指示分别由用于确定所述软件的名声的至少一个名声确定服务来确定的 名声的至少一个信号。
6. 如权利要求4所述的方法,其特征在于,还包括响应于请求所述名声 接收分别指示所接收到的软件的名声的多个信号; 聚集所述多个信号所指示的名声以生成聚集名声;以及 根据所述聚集名声来授权所接收到的软件。
7. 如权利要求1所述的方法,其特征在于,所接收到的软件包括所述软件 的名声的指示。
8. 如权利要求1所述的方法,其特征在于,所接收到的软件的名声根据所接收到的软件的特性来确定,所述特性包括以下各项之一所接收到的软件不包括数字签名并且不包括所述数字签名的发布者的指示;所接收到的软件包括数字签名并且不包括所述数字签名的作者的指示; 所接收到的软件包括数字签名并且包括所述软件的作者的身份的指示;以及所接收到的软件包括由用于确定所述软件的名声的名声确定服务发布的 数字签名。
9. 一种授权系统(12、 36),包括 用于接收软件的输入/输出部分(42);以及 处理器部分(38),用于确定所接收到的软件的名声(30);确定所接收到的软件的发布者和所接收到的软件的软件作者中的至 少一个中的信用(24);如果所接收到的软件的名声被确定为可接受并且所述发布者和作者 中的至少一个被确定为可信,则授权所接收到的软件(32、 34)。
10. 如权利要求9所述的系统,其特征在于,还包括显示器部分,所述 处理器部分还用于经由所述显示器部分来呈现所述名声的指示。
11. 如权利要求9所述的系统,其特征在于,所述处理器部分还用于密 码地确定所述信用。
12. 如权利要求9所述的方法,其特征在于,所述处理器部分还用于通 过标识所述软件的发布者和作者中的至少一个来确定所述信用。
13. 如权利要求9所述的系统,其特征在于,所述输入/输出部分还用于 提供对所接收到的软件的名声的请求。
14. 如权利要求13所述的系统,其特征在于,所述输入/输出部分还用 于响应于对所述名声的请求,接收指示分别由用于确定所述软件的名声的至少 一个名声确定服务来确定的名声的至少一个信号。
15. 如权利要求13所述的系统,其特征在于所述输入/输出部分还用于响应于对所述名声的请求,接收分别指示所接 收到的软件的名声的多个信号;以及 所述处理器部分还用于聚集所述多个信号所指示的名声以生成聚集名声;以及根据所述聚集名声来授权所接收到的软件。
16. 如权利要求9所述的系统,其特征在于,所接收到的软件包括所述 软件的名声的指示。
17. 如权利要求9所述的系统,其特征在于,所述处理器部分还用于根 据所接收到的软件的特性来确定所接收到的软件的名声,所述特性包括以下各 项之一所接收到的软件不包括数字签名并且不包括所述数字签名的发布者的指示;所接收到的软件包括数字签名并且不包括所述数字签名的作者的指示; 所接收到的软件包括数字签名并且包括所述软件的作者的身份的指示;以及所接收到的软件包括由用于确定所述软件的名声的名声确定服务发布的 数字签名。
18. —种其上存储有用于授权软件的计算机可执行指令的计算机可读 介质,所述计算机可执行指令用于执行以下步骤接收软件(22);确定所接收到的软件的名声(30);确定所述软件的发布者和作者中的至少一个中的信用(24);以及 如果所接收到的软件的名声被确定为可接受并且所述发布者和作者中的 至少一个被确定为可信,则授权所接收到的软件(32、 34)。
19. 如权利要求18所述的计算机可读介质,其特征在于,所述计算机 可执行指令还用于执行以下步骤请求所接收到的软件的名声;响应于请求所述名声,接收指示分别由用于确定所述软件的名声的至少一 个名声确定服务来确定的名声的至少一个信号;如果接收到分别指示所接收到的软件的名声的多个信号,则聚集所述多个 信号所指示的名声以生成聚集名声;以及根据所述聚集名声来授权所接收到的软件。
20. 如权利要求18所述的计算机可读介质,其特征在于,所接收到的 软件的名声根据所接收到的软件的特性来确定,所述特性包括以下各项之一所接收到的软件不包括数字签名并且不包括所述数字签名的发布者的指示;所接收到的软件包括数字签名并且不包括所述数字签名的作者的指示; 所接收到的软件包括数字签名并且包括所述数字签名的作者的身份的指 示;以及所接收到的软件包括由用于确定所述软件的名声的名声确定服务发布的 数字签名。
全文摘要
根据软件的名声来授权软件。经由数字签名和/或CoA来确定软件的作者和/或发布者中的信用,并且利用软件的名声来确定软件的意图。软件的名声可经由诸如企业IT部门等本地服务和/或经由名声确定服务来确定。当下载了或将要执行软件时,使用与该软件相关联的数字签名和/或CoA来确定作者/发布者中的信用。如果该作者/发布者被确定为可信,则调用确定该软件的名声的服务。软件可取决于该软件的名声以及作者/发布者的可信度来安装和/或执行。
文档编号G06F17/00GK101512512SQ200780032404
公开日2009年8月19日 申请日期2007年8月6日 优先权日2006年8月31日
发明者D·B·克罗斯, S·菲尔德, T·V·库瑞恩 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1