经由次级或经分割信令通信路径的许可证发放和证书分发的制作方法

文档序号:7758308阅读:128来源:国知局
专利名称:经由次级或经分割信令通信路径的许可证发放和证书分发的制作方法
技术领域
本发明一般涉及会话管理,并且具体地涉及通过多个不同类网络来协调许可证发 放(licensing)会话管理。
背景技术
为了保护售卖给公众的软件中的软件制造商的版权,制造商通常将软件许可给 购买者。另外,在许多应用中,购买者选择仅针对软件中必须由制造商选择性地使能的某 些特征进行支付。本领域中正存在的问题是防止非法地或未经许可使用软件;即,问题是 防止软件在未经授权的硬件上被盗版并使用并且/或者以其他方式防止经授权客户驱动 (actuate)该客户未进行支付的特征。另一正存在的问题是如何电子地分发软件同时避免 拒绝服务攻击、中间人(man-in-the-middle)攻击以及其它形式的攻击。已提出了多种方法来防止对软件的未经授权使用和/或攻击。在一种方法中,需要密钥来使能软件。这种解决方案未解决拷贝问题,因为密钥通 常被印刷在软件的包装上,并且任何人都可以将软件安装其希望的那么多次数,尽管这可 能是违法的。在另一方法中,使用特殊的硬件或“硬件锁”(dongle)。硬件锁是连接到计算机的 串行或并行端口的特殊硬件。运行在计算机上的软件向硬件锁发送随机数。硬件锁执行秘 密计算(下面称为“基于特征的计算结果”)并返回结果。软件进行相似的计算;如果两个 计算相匹配,则软件继续运行。为了令人满意地工作,响应必须包括特征和版本信息。虽然 防止了受黑客攻击,然而当硬件锁出故障时硬件锁的使用是麻烦的。在硬件锁出故障的情 况中,系统暂停工作直到可以在原地物理地获得新的硬件锁为止。此外,一旦制成,则硬件 锁就被固定了。如果将其用于特征驱动,则针对所购买的每个附加特征需要新的硬件锁。另一方法是自由地分发⑶-ROM盘。当⑶-ROM被插入计算机时,计算机经由因特 网或拨号连接自动地连接到远程服务器以接收特定于机器的密钥。替代地,密钥被存储在 CD ROM上。密钥对软件解锁以使得其可以在该计算机被使用。远程服务器还可以从计算机 用户获取必要的支付信息。该方法对于某些类型的软件不能良好地起作用,因为其未提供 对使用同一软件应用的不同特征的授权而且也不依赖于被请求的软件的版本。另外,其未 提供对个人作出这样的请求的必要授权,并且不能防止黑客的攻击。另一方法要求软件在被安装时或者第一次执行时记录与计算机系统的预定硬件 组件有关的序列号信息(例如,媒体访问控制或MAC地址)和/或从瞬时目标计算机状态 信息生成的唯一标识符,其被包括在电子许可证中。利用由目标计算机收集的信息,许可证 发放服务器生成并提供许可证给目标计算机。存在的问题在于如何以安全的方式来交换所 收集的信息和许可证。其它方法是以加密的形式或者经由加密会话来分发软件和/或许可证信息并且/ 或者需要用户在使用被许可的软件的同时维持与厂商的数据连接。然而,在以安全方式分 发加密密钥时产生了问题。当密钥被提供给客户时,客户可以将软件与密钥一起提供给他人,由此准许了对软件的广范围盗版。要求用户将敏感数据潜在地上载到厂商站点引发了 安全问题。软件许可证发放中的另一问题是在企业环境中维护对软件的控制。许多企业许可 证发放方法正在使用,包括固定许可证(其准许应用仅在某些指定的计算机上执行)和浮 动许可证(其准许一定数目的应用仅在有限数目的计算机上执行任一次)。在后一方法中, 一种常见的许可证发放方案使用受厂商所维护的许可证服务器控制的一组固定的许可证。 许可证信息与关于哪些应用正在使用以及多少单元仍可用的信息一起被维护在许可证数 据库中。当需要应用时,其开始运行。嵌入在应用中的代码首先从服务器请求许可证或许 可证验证(validation)以辅助应用的执行。服务器检查许可证数据库,并且当适当数目的 许可证可用时,准予请求。当请求被接收并且许可被授予时,相关信息被记录到文件中以跟 踪对各种应用的使用。由于要执行的计算机必须通过不可信网络联系许可证发放服务器, 因此安全性仍然是需要关注的问题。软件许可证发放中的另一问题是通过部分地禁用防火墙保护来准许许可证发放 交易,从而危害局域网的安全。黑客可以通过安全性受到危害的网关更容易地引入恶意代 码。为了解决安全问题,已开发出了量子加密术。量子加密术是一种形式的加密术,其 采用光子的量子性质通过公共信道以良好的保密性来交换随机密钥。量子加密术具有多种 成本和实践的限制。

发明内容
这些以及其它需求通过本发明的各个实施例和配置得到了解决。本发明一般涉及 使用不同类型网络上的分离的通信路径来处理与许可证交易有关的载体和控制信令。在第一实施例中,一种方法包括以下步骤(a)通过第二通信路径建立将被许可的客户计算组件与许可证发放服务器之间的 第二会话,所述第二通信路径在因特网上;(b)通过第一通信路径建立客户和所述客户计算组件中的至少一者与所述许可证 发放服务器之间的第一会话,所述第一通信路径在数字电话网络上;(c)由处理器通过所述第一通信路径发送第一许可证信息;以及(d)由处理器通过所述第二通信路径发送第二许可证信息,其中,所述第一许可证 信息和所述第二许可证信息准许所述客户计算组件运行。在另一实施例中,许可证发放服务器包括处理器,该处理器可操作来经由第二通信路径并且通过第二通信形态(communication modality)来建立与 将被许可的客户计算组件的第二会话;经由第一通信路径并且通过第一通信形态来建立与客户的第一会话,所述第一通 信形态和所述第二通信形态不同;经由所述第一通信路径发送和/或接收第一许可证信息;以及经由所述第二通信路径发送和/或接收第二许可证信息,其中,所述第一许可证 信息和所述第二许可证信息准许所述客户计算组件运行。在又一实施例中,一种计算组件包括
6
将被许可的软件应用;以及处理器,可操作来经由第二通信路径并且通过第二通信形态来建立与将被许可的客户计算组件的
第一会话;经由第一通信路径并且通过第一通信形态来建立与客户的第一会话,所述第一通 信形态和所述第二通信形态不同;经由所述第一通信路径发送和/或接收第一许可证信息;以及经由所述第二通信路径发送和/或接收第二许可证信息,其中,所述第一许可证 信息和所述第二许可证信息准许所述软件应用运行。在一种配置中,第一许可证信息包括用以认证计算组件的数字证书。许可证发放 服务器包括证书授权体。在一种配置中,会话控制信令与载体通信的分离被用于许可证和/或证书的分 发。媒体或内容与封套程序(wrapper)或安装程序示范(installshield) —起经由因特网 被发送,该封套程序或安装程序示范使用加密信息和许可证以及经由PSTN的许可证/证书 分发。所有许可证/证书以及加密信息和密钥经由PSTN被发送,或者替代地被分开在因特 网与PSTN之间的很多种路径中。优选地,对客户或端用户隐藏如下事实存在另一连接形 态,并且许可证和/或证书的下载与媒体或内容分开地进行。可以取决于哪一种更适合于 内容/媒体和安全性需要,来使安装封套程序或安装程序示范(通常与内容或媒体一起被 传送)显而易见或者简单地指示系统更新正在进行。在另一配置中,用于许可证/证书以及加密算法或密钥的信令和载体被分开在不 使用相同网络的任何两个通信形态之间。射频(“RF”)相对于有线,因特网相对于PSTN等 等是可能的。本领域技术人员将理解,其它组合也是可能的。在这种情况中,至少一些重要 的加密信息经由更安全的信道来发送,例如有线或无线PSTN或RF链路,而不经由因特网。在又一配置中,定期的许可证/证书更新和管理是利用同一双通信形态方法来进 行的。这包括对另外被许可的特征和/或最初被发送的那些许可证/证书的更新的下载。在又一配置中,篡改警报信息经由信令通信模式(例如经由PSTN)来发送。本发明可以提供取决于特定配置的多个优点。作为示例,本发明可以提供用于防 止对经许可软件和硬件的未授权分发的安全方法。如量子加密术的原理所示的,不同通信 模式的使用可以大幅提高安全性。可以使两个分离模式的使用自动化,因此对于用户来说 是无缝的。由于许可证信息的传输被分开在信令信道和载体信道之间,因此减弱了任何攻 击的有效性。该机制可以平衡利用现有的北美编号计划(“NANP”)和国际电话联盟(“ITU”) 的E. 164标准,来表示被重新计划(re-purpose)来结合基于因特网的许可证发放交易使用 的、可靠的经调节的“通话会话,,标识和控制机制。现有的电话协议准许控制信令和媒体信 息两者被发送。该机制可以向许可证发放交易中的各个端点提供控制信令而不会不适当地 增加分组延迟,如可能会由病毒检视安全应用引入的。本发明通过准许许多许可证发放交 易通过PSTN被执行,可以避免选择性地废弃安全网关。这对于在客户获得了初始许可证之 后执行的正在进行的许可证发放检查尤其适用。本发明可以通过将第一和第二通信路径的 分叉点移到客户的计算组件和许可证发放服务器,来提供增加的益处。将从这里包含的(一个或多个)发明的公开中清楚这些和其它优点。
短语“至少一个”、“一个或多个”以及“和/或”是在运用时既连接又分离的开放 式表达。例如,表述“A、B和C中的至少一个”、“A、B或C中的至少一个”、“A、B和C中的一 个或多个”、“A、B或C中的一个或多个”以及“A、B和/或C”中的每个的意思是A单独的、 B单独的、C单独的、A和B —起、A和C 一起、B和C 一起或者A、B和C 一起。术语“一”或“一个”实体指代一个或多个该实体。这样,术语“一”(或“一个”)、 “一个或多个”和“至少一个”在这里可以互换使用。还要注意,术语“包含”、“包括”和“具 有”可以互换使用。如这里使用的术语“自动的”及其变体是指当任何处理或操作被执行时,在没有 实质性人类输入的情况下完成该处理或操作。然而,如果输入是在处理或操作的执行之前 被接收的,则即使处理或操作的执行使用了实质性的或非实质性的人力输入,处理或操作 也可以是自动的。如果人力输入对处理或操作将如何被执行产生了影响,则认为该输入是 实质性的。同意处理或操作的执行的人力输入不被认为是“实质性的”。术语“通信形态”是指一种类型网络上的通信路径。不同类型的网络不仅涉及不 同协议而且涉及不同安全等级。例如,一种网络类型是PSTN,另一网络类型是射频网络(例 如蜂窝网络),另一网络类型是因特网,等等。术语“通信路径”是指网络节点之间的单向或双向连接。通信路径可以具有一个 或多个信道。如这里使用的术语“计算机可读介质”是指参与向处理器提供指令供执行的任何 有形存储和/或传输介质。这种介质可以采取许多形式,包括但不限于非易失性介质、易失 性介质以及传输介质。非易失性介质例如包括NVRAM或者磁盘或光盘。易失性介质包括动 态存储器,例如主存储器。计算机可读介质的常见形式例如包括软盘、柔性磁盘、硬盘、磁带 或任何其它磁介质,磁光介质、CD-ROM、任何其它光介质,打孔卡、纸带、任何其它具有孔图 案的物理介质,RAM、PROM和EPROM,FLASH-EPR0M,类似存储卡的固态介质,任何其它存储器 芯片或存储器盒,如下面将描述的载波,或者计算机可以读取的任何其它介质。电子邮件的 数字附件或其它自容式信息文档或文档组被认为是等效于有形存储介质的分布式介质。当 计算机可读介质被配置为数据库时,将明白,该数据库可以是任何类型的数据库,例如关系 数据库、层次化数据库、面向对象的数据库等等。因此,认为本发明包括其中存储了本发明 的软件实现方式的有形存储介质或分布式介质以及现有技术认可的等同物和后继介质。这里使用的术语“确定”、“计算”和“运算”及其变体可互换使用,并且包括任何类 型的方法、处理、数学操作或技术。术语“许可证信息”是指作为许可证发放交易的一部分被交换的任何信息,例如包 括要被许可的软件应用、软件更新、特征和/或修改。许可证信息包括但不限于安装程序示 范或封套程序、许可证、许可证书、PKI证书、对称或非对称加密密钥以及其它密码信息、将 在密钥生成中使用的瞬时状态信息,或从计算组件收集的(一个或多个)序列号、软件激活 密钥(用以激活经许可的软件和/或安装程序示范)、许可证验证密钥(用以验证许可证)、 基于特征的计算结果、许可证验证询问和/或响应、许可证跟踪信息,以及对以固定或浮动 许可证方案来执行经许可软件的准许。这里使用的术语“模块”是指能够执行与该元件相关联的功能的任何公知的或以 后开发出的硬件、软件、固件、人工智能、模糊逻辑或硬件与软件的组合。此外,虽然根据示
8例性实施例描述了本发明,然而,应当理解,可以单独地要求保护本发明的各个方面。前面是本发明的简化概述以提供对本发明各个方面的了解。该概述既不是对本发 明及其各个实施例的广泛性综述也不是全面性综述。既不旨在标识出本发明的重要的或关 键性元素也不旨在记述本发明的范围,而是以简化的形式将本发明的所选概念呈现作为对 下面将呈现的更详细描述的介绍。如将会理解的,通过单独或组合地利用上面阐述的或下 面将详细描述的一个或多个特征,还可以作出本发明的其它实施例。


图1是根据实施例的网络体系结构的框图;以及图2A和2B是根据实施例的总体的流程图。
具体实施例方式图1是示出根据一个实施例的网络体系结构。该体系结构包括由不可信网络 108(其是分组交换广域不可信或公共分布处理或数据网络,例如因特网)分离的客户和厂 商企业网络100和104,以及数字电话网络112(例如蜂窝网络和/或公共交换电话网络 (“PSTN”))。客户企业网络100包括客户计算组件116、安全网关120、将计算组件116与 安全网关120互连的LAN(或可信网络)124,以及电话网络128。厂商企业网络104包括通 过LAN 124互连的安全网关120、许可证发放服务器136和许可证发放数据库132,以及电 话网络128。尽管客户是参考企业网络来描述的,但是将明白,本发明的教导同样适用于作 为客户的个人消费者。围绕各个局域网及其节点的虚线100和104表示非军事化区(“DMZ”, De-Militarized Zone)或分界区或周界网络。如将理解的,DMZ是将组织的外部服务包 含或暴露到较大的不可信网络,例如因特网中的物理或逻辑子网。其向组织的局域网提供 增加的安全层,从而使得外部攻击者仅能访问DMZ中的装备而不能访问整个局域网中的装 备。提供给外部网络中的外部用户的任何服务被放置在DMZ中,尤其是web服务器、邮件服 务器、FTP服务器、VoIP服务器和DNS服务器。计算组件116是分组交换设备,例如个人计算机、膝上型计算机、个人数字助理、 有线或无线通信设备,以及用于将信息呈现给客户企业网络100并从客户企业网络100接 收来自订户的输入的其它设备。优选地,计算组件116能够参与语音和非语音通信方法两 者。更优选地,计算组件116被装配有web浏览器。示例性通信设备包括在个人计算机、膝 上型或笔记本计算机上操作的Avaya公司的IP软电话 ,以及9610和9620 IP电话。安全网关120允许或控制对网络的访问。网关,也称为协议转换器,被配备用于与 使用不同协议的另一网络接口连接。网关可以按照需要而包括诸如协议转化器、阻抗匹配 设备、速率转换器、故障隔离器和信号转化器之类的设备,以提供系统互操作性。网关还可 以包括被配置为基于一组规则及其它标准来准许、拒绝、加密、解密或代理不同安全域之间 的所有计算机流量的安全应用,例如防火墙。网关120可以被或者可以不被配置为使控制 信令或载体流量通过,并且还可以或可以不由用户响应于通过各个LAN 124接收的命令被 重新配置。许可证发放服务器136是负责控制并管理客户计算组件116的许可证发放和/或在计算组件116上执行的软件应用的受软件控制的计算设备。尽管许可证发放在下面是参 考被描述为硬件的计算组件来讨论的,然而将明白,本发明的教导同样适用于计算组件上 的许可证发放软件应用。许可证发放服务器136包括位于计算机可读存储器中的许可证发 放授权体(authority) 150、许可证生成和验证模块154以及会话协调模块140,许可证发放 授权体150监督许可证发放功能,包括认证、目标计算组件信息收集、密钥生成以及目标计 算组件上的活动(例如软件和许可证安装),许可证生成和验证模块154生成新的许可证并 且验证新的和已有的许可证,会话协调模块140创建、关联、管理并协调通过PSTN 112和不 可信网络128的同时和/或顺序的会话。许可证发放数据库132包括多个客户和被许可计算组件的许可证发放信息。许可 证发放信息包括客户标识和许可证文件。许可证文件在计算组件的情况中通常包括必须出 现在要验证其许可证的计算组件的组件上以及要进行操作的计算组件上的序列号(例如 在计算组件中的处理器的序列号必须在许可证文件中)、名称、型号和/或经许可计算组件 的版本、计算组件的数据网络(电子)地址、计算组件116或者与客户企业相关联的有线或 无线语音通信设备的电话网络(电子)地址,以及经许可特征的标识和能力。为了与许可证发放服务器136交互,计算组件116包括位于计算机可读存储器中 的会话协调模块140、许可证发放封装模块160和封套程序安装模块164,许可证发放封装 模块160从许可证发放服务器136接收许可证信息并且将该信息封装到有效许可证中,封 套程序安装模块164与许可证发放授权体150交互,在本地监督被许可软件(如果有的话) 的安装,并且与客户代表交互。交互包括向代表或用户提供反馈,并且协调PSTN 112上的 许可证信息的交换以及不可信网络使能的会话、证书交换、密钥交换以及从目标计算组件 116的许可证信息收集。会话协调模块140、许可证发放封装模块160和封套程序或安装程 序示范164(以下称为“封套程序安装模块”)中的一个或多个可以通过计算组件116、通过 将安装在计算组件116上的软件(例如当软件在可移除存储器介质上时)来提供,或者通 过PSTN 112、不可信网络108或其组合由许可证服务器136进行推送或者从许可证服务器 136进行拉取来提供。电话网络128可以包括用于建立无线和/或有线数字通讯连接的多种组件,包括 一个或多个电话干道(多电话)线、媒体服务器、交换机(例如PBX)、无线电话网络接入 点(例如来自Avaya公司的AP-7 和AP-8 )、媒体网关(例如来自Avaya公司的G150 、 G250TM、G350 、G450 、G600TM、G650 、G700TM 以及 G860TM 端 口 网络和集成网关 )。会话协调模块140通常实现用于调制解调器使能的PSTN通信路径和/或用于无 线电话或蜂窝网络上的所选通讯方法的会话创建、管理和协调。在一种示例性配置中,模块 140通过计算组件116与许可证发放服务器136之间的PSTN使能的通信会话来发送用于 不可信网络108的会话安全信息(例如,要使用的安全协议和加密参数(对称或非对称加 密/解密密钥和加密算法))、认证信息(例如数字证书)以及从计算组件116收集的许可 证信息(例如,瞬时状态信息(将用在密钥生成中)或(一个或多个)序列号)、软件激活 密钥(用以激活经许可的软件或安装封套程序)、许可证验证密钥(用以验证许可证)、基 于特征的计算结果、许可证验证询问和响应、许可证跟踪信息,以及对以固定或浮动许可证 方案来执行经许可软件的准许,等等。为了提供增强的安全水平,许可证发放模块通过PSTN 112和不可信网络使能的会话通信路径来交换许可证封装和/或封套程序安装模块、许可
10证和其它类型的许可证信息和/或经许可的软件。换言之,许可证有关的数据的第一部分 通过第一(电路交换或PSTN使能的)网络通信路径来传送并且许可证有关的数据的第二 部分通过第二(分组交换或不可信网络使能的)网络通信路径来传送。会话协调是通过将与计算组件116和/或客户企业网络100相关联的电话地址和 与计算组件116相关联的IP地址进行配对来执行的。如将理解的,电话号码是通过诸如北 美编号计划(“NANP”)和国际电话联盟(“ITU”)164标准之类的合适标准来定义的。 利用每个端点的电话地址/IP地址的配对,可由计算模块140将通过第一通信路径的第一 会话的第一信号与通过第二通信路径的第二信号相关联。在一种配置中,电话号码/IP地址配对是通过根据电子编号(“ENUM”)协议(或 ITU E. 164标准)将电话号码转换为相对应的IP地址来确定的。来自IETF的ENUM协议将 电话号码转换为IP地址并且反之将IP地址转换为电话号码,以使得其可由因特网的DNS 系统(类似于传统的网站域)进行解析。例如,完全规范的电话号码1-215-555-1234将变 为4. 3. 2. 1. 5. 5. 5. 5. 1. 2. 1. el64. arpa。数字被翻转,因为DNS从右向左读取(首先读取 URL中的诸如.com之类的顶级域)。ENUM记录可以保存与设备有关的诸如其是否可接收文 本消息或者是否具有因特网能力之类的属性。现在参考图2A和2B描述各个模块的操作。在步骤200中,计算组件116通过不可信网络108建立会话或第二通信路径。在 一种配置中,将被许可的组件是软件并且在会话期间被购买。在另一配置中,会话跟随在另 一会话中的或者来自于临街店面零售商的组件购买之后。在可选步骤204中,由许可证发放服务器136对计算组件116进行认证。如将理 解的,认证可以作为会话建立的一部分在步骤200中执行。认证可以包括例如经由超文本 传送协议(“HTTP”)安全套接字层(“SSL”)会话交换支付信息。在一种配置中,在建立 了第一通信路径之后,利用第一和第二通信路径来交换支付信息。例如,用户的信用卡号将 通过更安全的PSTN 112而非不可信网络108来传送。在可选步骤208中,许可证发放服务器136将许可证封装模块160和/或安装封 套程序164提供给计算组件116。在一种配置中,模块160和164中的一者或两者在被购买 时通过计算组件116来提供或者被提供在包含所购买的将被许可软件的外部存储器存储 设备上。在另一配置中,模块160和164的整体或者多个部分通过不同会话的第一和第二 通信路径来提供。在此配置中,在模块中的一者或两者的第二部分通过第二通信路径被提 供之后,模块中的一者或两者的第一部分通过第一通信路径来提供。在步骤212中,计算组件116中的处理器执行其用来确定计算组件116的配置的 安装封套程序的一部分。通过该操作,处理器标识出配置参数,例如调制解调器的存在、无 线接入卡(例如,订户标识模块(“SIM”)卡)的存在、未使用的存储器(随机存取存储器) 容量、处理器速度和操作系统规范。对于经许可的软件,对系统要求的顺应对于适当的软件 执行是重要的。在判决菱形216中,计算组件116中的处理器在执行安装封套程序的同时判断计 算组件116是否配备有调制解调器。当配备有时,在步骤220,会话协调模块140利用调制 解调器协议通过PSTN 112建立通信会话。当未配备时,处理器前进到判决菱形224。在判决菱形224中,处理器在执行安装封套程序的同时判断计算组件116是否配备有无线接入卡。当配备有时,会话协调模块140前进到步骤220并且通过PSTN 112建立 无线(蜂窝)通话。安装封套程序通过经由电话网络128模拟双音多频(“DTMF”)信号来 建立通话。在一种配置中,被拨打的号码是与位于厂商企业网络中的虚拟终端相关联的号 码。到虚拟终端的通话由许可证发放服务器136接收。在另一配置中,标识符被包括在通 话设立信号中以将该通话标识为许可证有关的通话。在该情况中,通话被引导至许可证服 务器136。当未配备调制解调器或无线接入卡时,封套程序安装模块164在步骤228中请 求用户手动拨打电话地址以发起会话。在一种配置中,被拨打的号码是与交互式响应单元 (“IRU”)相关联的号码。利用预定交互式逻辑,IRU请求用户经由计算组件116上的键盘 输入由许可证发放服务器136在后续步骤中提供的信息,或者经由呼叫语音通信设备上的 键区输入许可证发放服务器136在后续步骤中所请求的信息。在其它配置中,许可证发放服务器136判断用户是否具有用于PSTN112和因特网 连接的一个或多个双工线路。如果用户仅有单条线路,则两个会话不能同时发生。在该情 况中,许可证发放服务器136使得进行顺序会话,其中,在一个会话期间发送一些许可证发 放信息,并且在该会话终止之后,建立另一会话。随后在另一会话期间发送其它许可证发放 fn息ο在步骤232中,许可证发放服务器136可选地将通话号码与许可证发放数据库132 中的许可证信息相比较以确认计算组件116的数据地址与通话号码一一对应。这种配对通 常是根据与计算组件116或用户或两者的先前交互来确定的。在一种配置中,用户在通话 之前在经由不可信网络108的会话期间提供与组件或客户企业网络相关联的电话号码。在 另一配置中,许可证授权体确定计算组件116的数据地址的相对应电话号码(例如,NANP和 E. 164)。在另一配置中,用户利用DTMF数字通过电话键区来输入在另一会话中涉及的计算 组件116的IP地址。该步骤防止了由其它未经许可的人对经许可软件的重复使用。还可 以执行其它类型的认证。例如,计算组件116和服务器136的数字证书和/或对称或非对 称密钥可以通过第一和/或第二通信路径来交换。优选公钥基础架构(“PKI”)。PKI使用 通过可信授权体获得并共享的非对称和私有加密密钥对。还可以采用使用对称密钥的认证 技术。还可以通过将用户的声纹(voice print)映射到关联于客户的声纹,来经由第一通 信路径执行语音认证。可以利用第一通信路径来采用许多其它通信技术。同样在步骤232,许可证发放服务器136和计算组件中的会话协调模块140将第一 通信路径上的进入呼叫与第二通信路径上的另一会话相关联。地址配对准许第一和第二通 信路径的每端处的模块确定从第一端点的第一电话号码抵达的任何媒体和来自第一端点 的第一 IP地址的任何媒体都是来自共同源的,反之亦然。在步骤236,由会话协调模块140协商用于第一通信路径的会话参数。尽管在此 步骤中可以协商许多与会话有关的参数,然而所协商的主要参数涉及何种类型的许可证信 息将通过路径交换。被交换的信息的类型可以取决于所发现的计算组件116的配置(例 如,当存在调制解调器或无线接入卡时通过第一通信路径交换的信息通常与不存在调制解 调器或卡时交换的信息不同并且比其多)和/或所确定的与计算组件116的用户或企业本 身相关联的信任程度。当用户和/或企业不具有与厂商的先前的许可证发放关系时,从厂 商的角度看,该用户和/或企业与当用户和/或企业具有与厂商的先前的许可证发放关系 时相比具有较低的信任等级。可以协商的其它与会话有关的参数包括会话中所支持的媒体类型(例如,音频、视频、文本、静止图像、动画和交互性内容形式)、加密技术和参数(例 如,密钥交换、加密算法或密码以及数字证书)、压缩技术和参数(例如,编解码器规范和选 项)、QoS参数(例如,抖动、延迟和分组丢失)、GoS参数、将使用的具体通信路径,以及网络 资源消耗(例如,所需要的带宽)。现在参考图2B,计算组件116和许可证发放服务器136在步骤238中利用第一和 第二通信路径两者来交换许可证信息。需要较高级安全性的许可证信息通过第一通信路径 来传送,而需要较低级安全性的信息通过第二通信路径来传送,较高级安全性例如是加密 密钥、从计算组件116收集的瞬时状态信息(将用在密钥生成中)或(一个或多个)序列 号、软件激活密钥(用以激活经许可的软件和/或安装封套程序)、许可证验证密钥(用以 验证许可证)、基于特征的计算结果、许可证验证询问和/或响应、许可证跟踪信息,以及对 以固定或浮动许可证方案来执行经许可软件的准许,等等。在一种配置中,第一组许可证文件通过第一通信路径被传递给计算组件116,并且 第二(不同)组许可证文件通过第二通信路径被传递给计算组件116。例如,内容经由因特 网被分发,并且证书和/或许可证的协调、分发、管理和安装经由基于PSTN的信令信道来进 行。在另一示例中,经由因特网分发许可证和/或证书的一部分并且经由PSTN 112分发一 部分的密码组合也是可能的。如将理解的,经由不同信任等级的网络的两个并发的会话准 许用于实现与许可证有关的交易的无穷多种组合和排列。在当新的或经更新的许可证被提供给计算组件116时执行的步骤242中,许可证 生成和验证模块生成用于许可证的文件并将其发送给计算组件116,并且许可证封装模块 160将文件装配到存储在计算组件116的计算机可读存储器中的许可证中。与许可证生成 和验证模块154的许可证验证握手确认了许可证已由封装模块适当地装配成。在步骤246中,许可证发放服务器136更新许可证发放数据库132中与客户相关 联的相关记录。以这种方式,诸如许可证跟踪信息之类的所选会话属性及其它信息当前被 维护在许可证发放数据库132中。在步骤250中,会话被终止。如将理解的,步骤的顺序并不是至关重要的。例如,可在经由不可信网络108的第 二通信路径之前建立经由PSTW12的第一通信路径。在另一示例中,判决菱形216和224 被颠倒以使得在调制解调器会话之前优先建立蜂窝通话。当使企业服务器位于通话的任一端时,在利用用于控制信令的连接终止了各方之 后,可以使通过PSTN112的连接保持活跃并被缓存。该连接的持续准许该连接的各端处的 企业网络中的相同或其它端点在不同时刻使用该连接。缓存连接可以减少建立连接所需的 时间和处理资源。已描述了与通信会话协调和管理有关的本发明的示例性系统和方法。为了避免不 必要地模糊本发明,前面的描述省略了多个已知的结构和设备。这种省略不被解释为是对 所要求保护的本发明的范围的限制。阐述了具体细节以提供对本发明的理解。然而应当理 解,还可以以这里阐述的具体细节以外的多种方式来实施本发明。此外,虽然这里所示的示例性实施例示出系统的各个组件位于一处,然而,系统的 某些组件可以远程地位于诸如LAN和/或因特网之类的分布式网络的很远部分处,或在专 用系统内。因此,应当理解,系统的组件可以组合到一个或多个设备中(例如服务器或端点),或者共同位于分布式网络(例如,模拟和/或数字通信网络、分组交换网络或电路交换 网络)的具体节点处。如从上面的描述中可以明白的,出于计算效率的原因,系统的组件可 以在不影响系统的运行的情况下被布置在组件的分布式网络内的任何位置。例如,各个组 件可以位于诸如PBX之类的交换机和媒体服务器、网关中、一个或多个通信设备中、一个或 多个用户的驻地(premises)处或它们的某种组合。类似地,系统的一个或多个功能部件可 以被分布在(一个或多个)通讯设备和相关联的计算设备之间。此外,应当理解,连接元件的各种链路可以是有线或无线链路或它们的任何组合, 或者能够向以及从被连接的元件提供和/或传输数据的任何其它已知或以后开发出的(一 个或多个)元件。这些有线或无线链路还可以是安全链路并且能够传输加密的信息。用作 链路的传输介质例如可以是用于电信号的任何适当的载波,包括同轴电缆、铜线和光纤,并 且可以采取声波或光波的形式,例如在无线电波和红外数据通信期间生成的那些波。此外,虽然已经关于具体的事件序列讨论并图示说明了流程图,然而应当明白,可 以在对本发明的操作没有实质性影响的情况下对该序列进行改变、添加和省略。可以使用本发明的多种变更和修改。可以提供本发明的一些特征而不提供其它特 征。例如,在一个备选实施例中,本发明的系统和方法结合如下装置来实现专用计算 机、编程微处理器或微控制器和(一个或多个)外围集成电路元件、ASIC或其它集成电路、 数字信号处理器、诸如分立元件电路之类的硬连线电路或逻辑电路、诸如PLD、PLA、FPGA、 PAL之类的可编程逻辑器件或门阵列、任何类似装置,等等。一般地,能够实现这里所述的方 法的任何(一个或多个)设备或装置可以用来实现本发明的各个方面。可用于本发明的示 例性硬件包括计算机、手持设备、电话(例如,蜂窝、因特网使能的、数字、模拟、混合以及其 它电话)以及本领域中已知的其它硬件。这些设备的一些包括处理器(例如,单个或多个 微处理器)、存储器、非易失性存储装置、输入设备和输出设备。此外,包括但不限于分布式 处理或组件/对象分布式处理、并行处理或虚拟机处理的备选软件实现方式也可以被构建 来实现这里描述的方法。在另一实施例中,可以结合利用对象的软件或面向对象的软件开发环境来容易地 实现所公开的方法,这些软件和开发环境提供了在各种计算机或工作站平台上使用的可移 植源代码。替代地,可以用使用标准逻辑电路或VLSI设计的硬件来部分地或全部地实现所 公开的系统。是用硬件还是软件来实现根据本发明的系统取决于系统的速度和/或效率要 求、具体的功能,以及所利用的具体软件或硬件系统或微处理器或微计算机系统。在又一实施例中,可以用被存储在存储介质中,并且在与控制器和存储器协同操 作的经编程通用计算机、专用计算机、微处理器等上运行的软件来部分地实现所公开的方 法。在这些情况中,本发明的系统和方法可以被实现为被嵌入在个人计算机上的程序(例 如小应用程序(applet)、JAVA 或CGI脚本)、驻留在服务器或计算机工作站上的资源、被 嵌入在专用测量系统或系统组件等中的例程等等。还可以通过将系统和/或方法物理地结 合到软件和/或硬件系统中来实现本系统。虽然本发明参考特定的标准和协议描述了在实施例中实现的组件和功能,然而, 本发明不局限于这些标准和协议。这里未提到的其它类似标准和协议是存在的并且认为被 包括在本发明中。此外,这里提到的标准和协议以及这里未提到的标准和协议定期地被更快或更有效的具有基本上相同功能的等同物所替代。这些具有相同功能的取代标准和协议 被认为是包括在本发明中的等同物。本发明在各个实施例、配置和方面中包括基本上如这里示出和描述的组件、方法、 处理、系统和/或装置,包括各种实施例、其子组合以及子集。本领域技术人员在理解了本 公开之后将明白如何作出和使用本发明。在各个实施例、配置和方面中,本发明包括在 缺少这里未示出和/或描述的项目时或者在其各种实施例、配置或方面中(包括在缺少诸 如在先前的设备或处理中例如为了提高性能、获得改善并/或减小实现成本所使用的项目 时),提供设备和处理。前面对本发明的讨论是为了说明和描述的目的而呈现的。前面的讨论不旨在将本 发明限制为这里公开的一种或多种形式。在前面的详细描述中,例如,为了简化本公开,在 一个或多个实施例、配置或方面中将本发明的各个特征成组在一起。在除上面讨论的那些 以外的本发明的替代实施例、配置或方面中,可以将本发明的实施例、配置或方面的特征相 组合。本公开的方法不应被解释为反映了如下意图所要求保护的发明需要比在每项权利 要求中明确记述的特征更多的特征。而是,如下面的权利要求所反映的,创造性方面在于比 前面所公开的单个实施例、配置或方面的所有特征少。因此,下面的权利要求由此被结合到 该详细描述中,其中,每个权利要求独立地作为本发明的单独的优选实施例。此外,尽管本发明的说明书包括了对一个或多个实施例、配置或方面以及某些变 更和修改的描述,然而,例如在理解了本公开之后可能落在本领域技术人员的技术和知识 内的其它变更、组合和修改也在本发明的范围之内。希望获得将所允许程度内的替代实施 例、配置或方面包括在内的权利,其包括针对所要求保护的那些的替代、互换和/或等同的 结构、功能、范围或步骤,而无论这里是否公开了这些替代、互换和/或等同的结构、功能、 范围或步骤,并且不意图向公众贡献任何可专利的主题。
1权利要求
1.一种方法,包括(a)通过第二通信路径建立将被许可的客户计算组件与许可证发放服务器之间的第二 会话,所述第二通信路径在因特网上;(b)通过第一通信路径建立客户和所述客户计算组件中的至少一者与所述许可证发放 服务器之间的第一会话,所述第一通信路径在数字电话网络上;(c)由处理器通过所述第一通信路径发送第一许可证信息;以及(d)由处理器通过所述第二通信路径发送第二许可证信息,其中,所述第一许可证信息 和所述第二许可证信息准许所述客户计算组件运行。
2.如权利要求1所述的方法,其中,所述第一许可证信息包括用于不可信网络的会话 安全信息以及加密密钥中的至少一者,其中,所述第一许可证信息包括如下信息中的至少 一个所述计算组件的瞬时状态信息、从所述计算组件收集的序列号、用以激活经许可的软 件的软件激活密钥、用以验证许可证的许可证验证密钥、基于特征的计算结果、许可证验证 询问、许可证验证响应、许可证跟踪信息、信用卡号以及对执行经许可软件的准许,并且其 中,所述第二许可证信息包括经加密的许可证,并且所述方法还包括由所述计算组件中的处理器将与所述计算组件相关联的第一呼叫号码和所述计算组 件的第一 IP地址相关联;以及由所述许可证发放服务器中的处理器将与所述许可证发放服务器相关联的第二呼叫 号码和所述许可证发放服务器的第二 IP地址相关联,由此通过所述第一通信路径和所述 第二通信路径接收的信令得到协调。
3.如权利要求1所述的方法,其中,所述第一许可证信息包括用以认证所述计算组件 的数字证书,其中,所述第一许可证信息包括如下信息中的至少一个所述计算组件的瞬时 状态信息、从所述计算组件收集的序列号、用以激活经许可的软件的软件激活密钥、用以验 证许可证的许可证验证密钥、基于特征的计算结果、许可证验证询问、许可证验证响应、许 可证跟踪信息、信用卡号以及对执行经许可软件的准许,并且其中所述许可证发放服务器 包括证书授权体。
4.如权利要求1所述的方法,还包括确定所述计算组件的配置;以及应用下面的规则根据第一规则,当所述计算组件包括调制解调器时,利用调制解调器协议来建立所述第一会话;根据第二规则,当所述计算组件包括无线接入卡时,利用蜂窝通讯协议来建立所述第 一会话;以及根据第三规则,当所述计算组件既不包括调制解调器也不包括无线接入卡时,由客户 手动地拨打与所述许可证发放服务器相关联的电话号码来建立所述第一会话,其中,所述 第一规则适用时与所述第三规则适用时相比,所述第一许可证信息不同。
5.一种包括处理器可执行指令的计算机可读介质,当所述处理器可执行指令被执行 时,执行权利要求1的步骤。
6.一种许可证发放服务器,包括处理器,可操作来经由第二通信路径并且通过第二通信形态来建立与将被许可的客户计算组件的第二 会话;经由第一通信路径并且通过第一通信形态来建立与客户和所述客户计算组件中的至 少一者的第一会话,所述第一通信形态和所述第二通信形态不同; 经由所述第一通信路径发送和/或接收第一许可证信息;以及 经由所述第二通信路径发送和/或接收第二许可证信息,其中,所述第一许可证信息 和所述第二许可证信息准许所述客户计算组件运行。
7.如权利要求6所述的服务器,其中,所述第一许可证信息包括用以认证所述计算组 件的数字证书,其中,所述第一许可证信息包括如下信息中的至少一个所述计算组件的瞬 时状态信息、从所述计算组件收集的序列号、用以激活经许可的软件的软件激活密钥、用以 验证许可证的许可证验证密钥、基于特征的计算结果、许可证验证询问、许可证验证响应、 许可证跟踪信息、信用卡号以及对执行经许可软件的准许,并且其中所述许可证发放服务 器包括证书授权体。
8.如权利要求6所述的服务器,其中,所述第一通信形态是数字电话网络,其中,所述 第二通信形态是因特网,其中,所述第一许可证信息包括用于不可信网络的会话安全信息 以及加密密钥中的至少一者,其中,所述第一许可证信息包括如下信息中的至少一个所述 计算组件的瞬时状态信息、从所述计算组件收集的序列号、用以激活经许可的软件的软件 激活密钥、用以验证许可证的许可证验证密钥、基于特征的计算结果、许可证验证询问、许 可证验证响应、许可证跟踪信息、信用卡号以及对执行经许可软件的准许,并且其中所述第 二许可证信息包括经加密的许可证,并且其中所述处理器还可操作来确定所述计算组件的配置; 应用下面的规则根据第一规则,当所述计算组件包括调制解调器时,利用调制解调器协议来建立所述第一会话;根据第二规则,当所述计算组件包括无线接入卡时,利用蜂窝通讯协议来建立所述第 一会话;以及根据第三规则,当所述计算组件既不包括调制解调器也不包括无线接入卡时,请求客 户手动地拨打与所述许可证发放服务器相关联的电话号码来建立所述第一会话;以及将与所述计算组件相关联的呼叫号码和与所述计算组件相关联的IP地址相关联,由 此经由所述第一通信路径和所述第二通信路径接收的信令得到协调。
9.一种计算组件,包括 将被许可的软件应用;以及 处理器,可操作来经由第二通信路径并且通过第二通信形态来建立与将被许可的客户计算组件的第二 会话;经由第一通信路径并且通过第一通信形态来建立与客户和所述客户计算组件中的至 少一者的第一会话,所述第一通信形态和所述第二通信形态不同; 经由所述第一通信路径发送和/或接收第一许可证信息;以及 经由所述第二通信路径发送和/或接收第二许可证信息,其中,所述第一许可证信息和所述第二许可证信息准许所述软件应用运行。
10.如权利要求9所述的计算组件,其中,所述第一通信形态是数字电话网络,其中,所 述第二通信形态是因特网,其中,所述第一许可证信息包括用于不可信网络的会话安全信 息、用以认证所述计算组件的数字证书以及加密密钥中的至少一者,其中所述第二许可证 信息包括经加密的许可证,其中,所述第一许可证信息包括如下信息中的至少一个所述计 算组件的瞬时状态信息、从所述计算组件收集的序列号、用以激活经许可的软件的软件激 活密钥、用以验证许可证的许可证验证密钥、基于特征的计算结果、许可证验证询问、许可 证验证响应、许可证跟踪信息、信用卡号以及对执行经许可软件的准许,并且其中所述处理 器还可操作来确定所述计算组件的配置; 应用下面的规则根据第一规则,当所述计算组件包括调制解调器时,利用调制解调器协议来建立所述第一会话;根据第二规则,当所述计算组件包括无线接入卡时,利用蜂窝通讯协议来建立所述第 一会话;以及根据第三规则,当所述计算组件既不包括调制解调器也不包括无线接入卡时,请求客 户手动地拨打与所述许可证发放服务器相关联的电话号码来建立所述第一会话;以及将与所述许可证发放服务器相关联的呼叫号码和所述许可证发放服务器的IP地址相 关联,由此经由所述第一通信路径和所述第二通信路径接收的信令得到协调。
全文摘要
本发明公开了经由次级或经分割信令通信路径的许可证发放和证书分发。在一个实施例中,本发明涉及使用不同类型网络上的分离的通信路径来处理与许可证交易有关的载体和控制信令。
文档编号H04L29/06GK102006276SQ20101026535
公开日2011年4月6日 申请日期2010年8月26日 优先权日2009年8月26日
发明者保罗·若勒·麦克里斯, 大卫·S·莫赫尔, 罗格·L·托尼斯, 道格拉斯·W·斯沃特兹 申请人:阿瓦雅公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1