CN1519676A - 在多用户许可环境中制止软件盗版的系统与方法 - Google Patents

在多用户许可环境中制止软件盗版的系统与方法 Download PDF

Info

Publication number
CN1519676A
CN1519676A CNA2004100035030A CN200410003503A CN1519676A CN 1519676 A CN1519676 A CN 1519676A CN A2004100035030 A CNA2004100035030 A CN A2004100035030A CN 200410003503 A CN200410003503 A CN 200410003503A CN 1519676 A CN1519676 A CN 1519676A
Authority
CN
China
Prior art keywords
user
enterprise
license
file
software
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
CNA2004100035030A
Other languages
English (en)
Other versions
CN100407087C (zh
Inventor
C���Ŷ��ǿ���
C·古恩亚克谛
K·E·哈特莱里德
N·张
谭晓曦
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 Corp
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 Corp filed Critical Microsoft Corp
Publication of CN1519676A publication Critical patent/CN1519676A/zh
Application granted granted Critical
Publication of CN100407087C publication Critical patent/CN100407087C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

将一唯一的多用户许可密钥(VLK)提供给一多用户许可所有人。将一签订的文件与被许可的软件一起提供给多用户许可所有人,所述文件包含VLK和从多用户许可所有人所提交的计算机环境信息得到的数据。以任意类型的相当大的文件,将许可文件存储在一中央位置中,诸如在安装服务器上或在本地客户机上。紧接着登录,读取许可文件,激活认证的数据和系统。如果不能认证许可数据,则连接的系统或者在宽限期内完全运行,或者以减少的功能运行直至认证成功为止。如果系统是不连接的,则系统只能以不连接的特性运行直至再次加入网络为止。在完全离线的安装中,由多用户许可所有人使用软件销售商指派的专用VLK和软件销售商提供的安全硬件设备生成许可文件。软件包的分发方法、VLK和许可文件可以是灵活的,包括但不限于单一或多个介质。

Description

在多用户许可环境中制止软件盗版的系统与方法
技术领域
本发明涉及软件盗版制止领域,且特别是在使用多用户许可密钥(VLK)软件的多用户许可领域。
背景技术
软件盗版是每年花费软件销售商大量财富的全球性问题。一种被称为不负责的拷贝(casual copying)的盗版形式是在多台计算机上共享和安装软件,违反终端用户许可协议。产品激活是减少这种类型盗版的一种方式。
产品激活一般依靠向软件销售商提交安装标识码(installationidentification code)和/或硬件标识符(hardware identifier)。软件销售商在响应时返回一激活确认码(activation confirmation code)。在产品激活的一种类型中,为盒装软件(boxed software)的每个包提供唯一的产品密钥。通常,在一段宽限期后(安装软件后在没有激活软件的情况下运行的一段时间),消费者必须联系软件销售商激活他的软件拷贝。未能这么做经常导致软件的未激活或软件功能被降低。通常唯一的产品密钥(unique product key)用于生成唯一的产品标识码(product identification code),它可结合一个散列化的与硬件有关的值来生成专用于该软件所运行的机器的安装标识码。使软件运行的激活确认(activation code)通常返回给消费者。在这点上,激活确认还可以是一个许可文件(license file),或一个表示许可的二进制数。在每次登录时,被许可的软件检查以审视它是否本质上运行在它被激活的同一硬件上。如果检查失败,在再次运行该软件前要求重新激活。
团体消费者一般购买多用户许可(volume license)。对于可能在其范围内有上百或上千台机器的团体消费者,为每套被安装的软件拷贝联系软件销售商以接收机器指定激活码不是切实可行的。因此,典型地,多用户许可所有人不必联系软件销售商以激活他们的软件,因为当检测到多用户许可密钥时软件绕过激活要求。因此,同一个多用户许可密钥能用于许多不同的计算机,它们在宽限期期满前或后都不需要激活以使软件运行。多用户许可密钥这样的便利特性使它对于成为一个有吸引力的目标。
如果有使多用户许可密钥盗版更困难的方法将是有益的。
概述
为多用户许可所有人随同被许可的软件提供一软件销售商签署文件(software-vendor-signed file),该文件包含企业专用VLK(enterprise-specific)、一许可ID(license ID)、网络环境绑定散列(network environmentbinding hash)及任何策略数据(policy data)。这个企业专用许可文件既可被存储在中央服务器诸如在安装服务器上,或者也可被存储在本地机器中。这个企业专用许可文件可以是相当大的(例如超过1.44MB因而文件将不适合于软盘)。在一个实施例中,自动化安装脚本能够查阅企业专用VLK许可文件,或者能够在安装过程之后或期间通过一些其它方法(例如手工或自动文件拷贝操作)配置VLK许可文件。脚本包含企业专用许可文件的位置。紧接着登录,读取企业专用许可文件,激活认证的数据和软件。如果软件系统不能在网络连接期间验证许可数据,软件在宽限期内将继续是全功能的,过期后软件将以减少的功能模式运行,或者用户可向软件销售商请求一个签订的延长期。如果当机器与网络断开时不能验证环境绑定,系统将继续只以与网络断开的特性运行,直至它重新加入网络。宽限期标志被标记在唯一于软件所安装的每个操作系统(OS)安装的位置。能通过软件确认这个标志。
如果企业不能从软件销售商获得签订的VLK许可文件,企业可用软件销售商提供的硬件设备,例如智能卡,生成许可文件。通过不必向软件销售商提交其计算环境特征而自己生成许可文件,企业不需要损害计算环境的安全特征。
附图说明
图1是一个典型的计算环境,在这个环境中可实现本发明的各个方面;
图2是一个方框图,说明按照本发明的一个实施例的典型的用于制止软件盗版的典型强制环境绑定系统;
图3是一个方框图,说明按照本发明的一个实施例的用于制止软件盗版的典型离线系统;以及
图4是按照本发明的一个实施例的在强制环境绑定系统中用于制止软件盗版的典型方法的流程图。
详细说明
典型计算环境
图1及下列讨论旨在提供可实现本发明的合适计算环境的简单基本的描述。但应该理解,预期手持的、便携式的及其它各种计算装置可结合本发明一起使用。虽然下面描述的是通用计算机,但这只是一个例子,且本发明只要求具有网络服务器互操作性和交互性的瘦客户机。这样,本发明可实现于网络化主机化服务(networked hosted service)的环境中,在网络化主机化服务中,只牵涉到很小或最小的客户机资源,例如,一网络化环境,在其中客户机设备只用作到万维网的浏览器或接口。
尽管不要求,还能够通过应用编程接口(API)实现本发明,由开发者使用,并/或包括在网络浏览软件中,将以计算机可执行指令诸如程序模块的一般背景中描述网络浏览软件,这些指令可由一或多个计算机执行,诸如客户工作站、服务器或其它设备。一般地,程序模块包括可完成具体任务或实现具体抽象数据类型的例程、程序、对象、组件、数据结构等等。典型地,程序模块的功能可以随意地结合或分布在各种实施例中。而且,本领域熟练技术人员将明白本发明可实践于其它计算机系统配置。其它适合于本发明使用的著名计算系统、环境和/或配置包括但不限于,个人计算机(PC)、自动播音机器人(automatedteller machine)、服务器计算机、手持或膝上型设备、多处理器系统、基于微处理器的系统、可编程消费电子产品、网络PC、小型机、大型机等等。本发明还可实践于分布式计算环境中,在分布式计算环境中,任务是由通过通信网络或数据传输介质连接起来的远程处理设备完成的。在分布式计算环境中,程序模块可以位于本地和远程计算机存储介质中,包括内存存储设备在内。
图1这样示出了一个可实现本发明的合适的计算系统环境100的例子,如以上所阐明的,计算系统环境100只是合适的计算环境的一个例子,并且不是想要暗示任何关于本发明使用或功能的限制。计算环境100也不应被解释为具有对任何与典型操作环境100中所示组件的任意一个或组合有关的依赖关系或要求。
参考图1,实现本发明的典型系统包括一个以计算机110的形式的通用计算装置。计算机110的部件可包括,但不限于,处理单元120、系统存储器130和连接包括系统内存在内的各种系统部件至处理单元120的系统总线121。系统总线121可以是任意各种类型的总线结构,包括使用任何多种多样总线结构的存储总线或存储控制器、外部设备总线及局部总线。作为实例,而非限制,这样的结构包括工业标准结构(Industry Standard Bus)(ISA)总线、微通道结构(Micro Channel Architecture)(MCA)总线、增强型ISA(Enhanced ISA)(EISA)总线、视频电子标准协会(Video Electronics Standards Association)(VESA)局域总线及周边元件扩展接口(Peripheral Component Interconnect)(PCI)总线(也称为夹层(Mezzanine)总线)。
计算机110一般包括多种多样计算机可读介质。计算机可读介质可为任何能由计算机110访问的可用介质,且包括易失的和非易失的介质、可移动和不可移动介质。作为实例,而不是限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括以任何方法或技术实现的、用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的易失的和非易失的、可移动或不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储技术、CDROM、数字通用盘(DVD)或其它光盘存储器、磁盒、磁带、磁盘存储或其它磁存储设备、或任何其它可用于存储想要的信息且能被计算机110访问的介质。通信介质一般包含计算机可读指令、数据结构、程序模块或诸如载波或其它传输机制这样的调制数据信号中的其它数据,并包括任意信息传送介质。术语“调制的数据信号”意思是具有以在信号中编码信息的方式设置或改变的一或多个特性的信号。作为实例,但不是限制,通信介质包括诸如有线网络或直接有线连接这样的有线介质、和诸如声波、RF、红外线及其它无线介质这样的无线介质。以上任意的组合也包括在计算机可读介质的范围内。
系统存储器130包括以易失的和/或非易失的存储器形式的计算机存储介质,诸如只读存储器(ROM)131和随机存取存储器(RAM)132。基本输入/输出系统133(BIOS),包含帮助在计算机110内部元件间传送信息的基本例程,诸如在启动期间的例程,一般存储在ROM131中。RAM132一般包含可立即存取的和/或正由处理单元120操作的数据和/或程序模块。作为实例,而不是限制,图1a示出了操作系统134、应用程序135、其它程序模块136和程序数据137。
计算机110还可包括其它可移动/不可移动、易失的/非易失的计算机存储介质。只是作为实例,图1a示出了读写不可移动、非易失的磁介质的硬盘驱动器141、读写可移动的、非易失的磁盘152的磁盘驱动器151,以及读写诸如CD ROM或其它光介质这样的可移动、非易失的光盘156的光盘驱动器155。其它可用于典型操作环境的可移动/不可移动、易失/非易失的计算机存储介质包括,但不限于,磁盒、闪存卡、数字通用盘、数字视频带、固态RAM、固态ROM等等。硬盘驱动器141一般通过不可移动的存储器接口诸如接口140连接至系统总线121,而磁盘驱动器151和光盘驱动器155一般通过可移动的存储器接口诸如接口150连接至系统总线121。
上述的和在图1中所示的驱动器及其相关的计算机存储介质为计算机110提供计算机可读指令、数据结构、程序模块和其它数据的存储。在图1中,例如,硬盘驱动器141被示为存储操作系统144、应用程序145、其它程序模块146和程序数据147。注意这些组件可以与操作系统134、应用程序135、其它程序模块136及程序数据137相同或者不同。操作系统144、应用程序145、其它程序模块146和程序数据147在这里给出不同数字,至少说明了它们是不同的拷贝。用户可通过诸如键盘162和一般称为鼠标、轨迹球或触摸垫的定点设备161这样的输入设备,输入命令和信息至计算机110。其它输入设备(未示出)可包括话筒、操纵杆、游戏垫、卫星天线、扫描仪等等。这些和其它输入设备常常通过连接至系统总线121的用户输入接口160连接到处理单元120上,但也可通过诸如并行口、游戏端口或通用串行总线(USB)这样的其它接口和总线结构连接。
显示器191或其它类型的显示设备通过一个接口诸如视频接口190,也连接至系统总线121。图形接口182诸如北桥(Northbridge)也可连接至系统总线121。北桥是一与CPU或主机处理单元120通信的芯片组,并且承担加速图形接口(AGP)通信的责任。一或多个图形处理单元(GPU)184可与图形接口182通信。在这点上,GPU184通常包括单片存储器,诸如寄存器,并且GPU184与视频存储器186通信。但是,GPU184只是协处理器的一个例子,且因而各种协处理设备可包括在计算机110中。显示器191或其它类型的显示设备也通过接口诸如视频接口190连接至系统总线121,它可轮流与图像存储器186通信。除了显示器191,计算机还可包括诸如扬声器197和打印机196等其它外部输出设备,这些可通过输出外部设备接口195连接。
计算机110可使用至诸如远程计算机180这样的一或多台远程计算机的逻辑连接运行于网络环境中。远程计算机180可以是个人计算机、服务器、路由器、网络PC、对等设备或其它普通网络节点,且一般包括许多或所有相对于计算机110所述的组件,尽管只有内存存储设备181在图1中示出。图1中所示的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但还可包括其它网络。这样的网络环境在办公室、企业级计算机网络、企业内部互联网及因特网上是平常的。
当用于LAN网络环境时,计算机110通过网络接口或适配器170连接至LAN171。当用于WAN网络环境时,计算机110一般包括建立在诸如因特网这样的WAN173上通信的调制解调器172或其它工具。调制解调器172,它可以是内置的或外置的,可通过用户输入接口160或其它合适的机制连接至系统总线121。在网络化环境中,相对于计算机110所述的程序模块或其部分可存储在远程内存存储设备中。作为实例,但非限制,图1将远程应用程序185示为驻留在内存存储设备181上。将理解的是所示的网络连接是典型的,并且其它在计算机间建立通信连接的方法也是可用的。
本领域普通技术人员之一能够理解计算机110或其它客户机设备能够被配置为计算机网络的一部分。在这点上,本发明适合于任何计算机系统,这些计算机系统具有任意数量的存储器或存储单元,以及在任意数量的存储单元或卷上出现的任意数量的应用程序和过程。本发明可应用于具有配置在网络环境中的服务器计算机和客户机计算机的、具有远程或本地存储的环境。本发明还可应用于独立的、具有编程语言功能、解释和执行能力的计算装置。
制止软件盗版的系统和方法
图2是依照本发明一个实施例的制止软件盗版的强制环境绑定分发(environment-binding-enforced distribution)系统的方框图。服务器204或销售商202可以通过网络连接至一或多台客户机206或208,诸如通过WAN、LAN(有线的或无线的)、企业内部互联网、因特网或其它适当的网络。在图2中,虚线示出可替换的本发明实现,说明服务器204是可选的,因为它的角色是为了初始许可文件发现(initial license file discovery),并且对于本发明的实现不是必需的。
软件销售商可在一些介质诸如但不限于CDROM上提供多用户许可所有人(volume license holder)一份多用户被许可软件212的拷贝。伴随着软件212的可以是企业专用的或多用户许可所有人专用的VLK222。在本发明的一个实施例中,VLK222被嵌在一个相对大的文件中,这个文件被称为许可文件(licensefile)224。可以基于,例如,公司和被许可给公司的产品的标识符来构造许可文件224,并可包括像域名控制器(domain controller)(DC)的名称、激活目录(active directory)(AD)等的散列的环境绑定信息。在一典型实施例中,许可文件是相对大的系统文件。所选择的具体文件类型可以是任意类型的文件类型,包括但不限于图像或声音文件格式。VLK222可以嵌在数据的任何地方,然后在一个实施例中用私有密钥签字以生成许可文件224。在本发明的一个实施例中,为防止把许可文件224拷贝到软盘上,许可文件224的大小大于1.44兆字节(MB),诸如例如2MB。在本发明的一个实施例中,在只包含许可文件224并具有不同于包含关联软件212的CDROM的卷标的CDROM上提供许可文件224。
在上述环境中,在客户机206、208等之间分发许可所有人的软件212。在登录时,驻留在客户机206、208等上的激活代码(activation code)读取许可文件224的内容来验证许可文件224还没有被篡改。如在此所使用的,激活(activation)指用于验证软件许可数据的过程、网络环境绑定,以及使软件在不需要进一步绑定确认的一段时间内能够运行的过程。在这点上,在软件安装过程中,可将VLK222和/或许可文件224传输至客户机208或客户机206,例如,通过服务器204。验证过程包括针对在许可(license)中所定义的绑定(binding)或策略(policy)检查许可。从服务器位置接收许可文件是可选的。
可通过检查文件签名来验证许可文件224的完整性。如果许可文件224没有被篡改过,即如果验证了完整性,则允许软件运行。如果许可文件224已被篡改,软件将在减少功能的模式中运行。
对于亲自安装大量机器的管理员而言,软件的大规模配置通常太浪费和太消耗时间。另外,管理者常常不想要终端用户亲自激活他们的机器。因此,因而通常使用自动化的或远程过程使这样的安装自动化。
多用户被许可软件(volume licensed software)的激活可在安装期间执行或稍后的时间执行。自动答复文件(unattended answer file)是一文本文件,用于协同软件安装例程绕过正常的安装提示。自动文件能够,例如,或者通过目标机器的局域网络(LAN)或者通过因特网,代表终端用户,自动输入VLK、配置代理设定并自动激活系统。也能在安装后用命令行脚本执行激活。
当在206、208等客户机上安装多用户被许可软件时,可在自动文件的帮助下准备安装映像(installation image)。自动文件是一执行自动安装的专用脚本。通过执行脚本将软件212安装在206、208等客户机机器上。脚本将许可文件224的位置设置到一列已知位置中,包括服务器204。可替换地,如果文件是安装映像的部分,可将许可文件224拷贝到客户机机器上。紧接着登录,读取许可文件224,激活认证数据和客户机机器206、208等。如果许可文件224中指定的环境特征在系统连接时不能被验证,系统将继续在宽限期内起运行。超过宽限期,系统可在减少的功能模式中运行或可向软件销售商202请求延期。如果在系统不连接时不能验证许可数据,则软件将继续只以不连接的特性运行,直至系统再次加入网络为止。
在各种实施例中,当在宽限期内且有网络连接,但本发明的系统不能确认环境时,系统可联系一中央位置(central location),这个位置能检查泄漏(leakage)并准予宽限期的一个附加期(additional term)。例如,可将许可文件和HWID的散列传输至中央位置,且服务器能针对黑名单(black list)检查这个散列,然后将一带有永久日期的已签署的许可向下发送至客户机位置。
在这点上,在一个实施例中,如果VLK文件检查失败,则结果是失败的。在另一个实施例中,如果VLK文件检查失败,则可分析VLK许可文件,然后可在各种列出的服务器中对新的许可文件进行搜索。
在黑箱操作(black-op)情况下,企业不能从软件销售商结合VLK环境获得许可证。这样,在一个实施例中,在黑箱操作情况下,企业可生成由软件销售商所发行的部分硬件(piece(s) of hardware)签字的其自己的许可文件。
图3是依照本发明一个实施例的制止软件盗版的企业离线系统250的方框图。在离线系统中,企业接收VLK222和软件销售商202提供安全硬件设备252。硬件设备252能够执行签字操作,以生成在格式上与许可文件224同样的许可文件225。在客户机机器206和208上安装多用户被许可软件、激活处理和许可确认过程与在图2中所述相同,在其中签署VLK许可文件并且同样来自软件销售商。与图2中一样,在图3中,虚线示出本发明可替换的实现。
图4是一使在强制环境绑定系统中软件盗版更为困难的方法的流程图。在步骤402中,接收企业专用VLK及其关联的许可文件。为在一或多个客户机机器上的安装,可准备关联多用户被许可软件的安装映像。在步骤404,企业专用或多用户许可所有人专用的许可文件可存储在中央服务器或配置到客户机机器。企业专用或多用户许可所有人专用的许可文件对于关联于服务器的客户机机器是不可自由访问的。可准备专用脚本来完成自动安装(unattendedinstallation)。
在步骤406,将软件安装在一或多个客户机机器上。在步骤408,脚本将许可文件的位置设置在系统中一列已知的位置中,或者配置在客户机机器上,或者通过向客户机机器发布许可文件位置,例如通过窗口管理接口(windowsmanagement interface)(WMI)或通过硬编码注册密钥(hardcoded registrykey)。在步骤410,紧接着登录,激活例程检索许可文件的位置。在许可文件在远程服务器上的情况下,脚本可任选地验证许可文件的位置,例如,通过比较互联网协议(IP)地址。在步骤412,激活例程从许可文件读取数据,验证数据是可信的,验证在许可文件中所指定的环境特征,并激活软件。如果在许可文件中所指定的环境特征在系统连接时不能被验证,则系统将继续在宽限期内运行。超过宽限期,系统在减少的功能模式中运行或终端用户可向软件销售商请求延期。如果在系统不连接时不能验证许可数据,则软件将继续只以不连接的特性运行,直至系统再次加入网络为止。
注意,前述的实例只是为了说明而提供的,而决不能解释为对本发明的限制。还要注意,有多种多样实现本发明的方法,例如,合适的API、工具包、驱动程序代码、操作系统、控件、独立的或可下载的软件对象等,它可使应用程序和服务能够依照本发明获得许可信息。本发明既从API(或其它软件对象)观点、又从与在此所述的VLK许可技术通信相连的软件或硬件对象考虑使用本发明。这样,在此所述的各种本发明实现可具有全部是硬件的、部分硬件部分软件的以及软件的方面。
如上面提到的,尽管本发明的典型实施例是结合各种计算装置和网络结构描述的,但根本概念可应用于任何想要制止盗版的计算装置或系统中。这样,依照本发明的编码/解码数据技术可应用于多种多样的应用程序和设备。例如,本发明的算法和硬件实现可应用于计算装置的操作系统,作为设备上独立的对象、另一对象的部分、可重用控件、可从服务器下载的对象、设备或对象与网络间的“中间人(middle man)”、分布式对象、硬件、在存储器中以及前述任意项的组合等等提供。尽管在此选择了典型编程语言、名称和实例来代表各种选择,但并不是想要限制这些语言、名称和实例。至于为实现本发明涉及使用控件的实施例,本发明不限于.NET的提供(provision),而应该被认为在依照本发明实现盗版制止目标的软件(和/或硬件)的任意部分的更广泛的环境中。本领域一般技术人员之一将理解,存在提供实现由本发明各种实施例实现的相同、相似或等价功能的结果代码(object code)和术语的无数方法。本发明还可结合线上拍卖或投标站点(on-line auction or bidding site)实现。
如所提到的,可结合硬件或软件或,在合适的地方,用二者结合来实现在此所述的各种技术。这样,本发明的方法和装置或它们的某些方面或部分可表现为包含在诸如软盘、CD-ROM、硬盘驱动器或任何其它机器可读存储介质这样的实际介质中的程序代码(例如,指令)的形式,在其中,当程序代码由诸如计算机这样的机器载入并执行时,机器就变成实施本发明的一个装置。在程序代码在可编程计算机上执行的情况下,计算装置一般将包括处理器、处理器可读的存储介质(包括易失的和非易失的存储器和/或存储部件)、至少一个输入设备以及至少一个输出设备。可利用本发明的盗版制止技术的一或多个程序,例如通过数据处理API、可重用控件等等的使用,更适宜以高水平程序上的或面向对象的编程语言与计算机系统通信来实现。然而,能以汇编或机器语言来实现程序,如果愿意的话。在任何情况下,语言可以是编译或解释语言,并可与硬件实现相结合。
本发明的方法和装置还可通过包含在一些传输介质上传输的程序代码形式中的通信来实施,诸如在电线或电缆上、通过光纤或通过任何形式的传输,在其中,当由一机器,诸如EPROM、门阵列、可编程逻辑设备(PLD)、客户机计算机、录像机等,或者具有以上典型实施例中所述信号处理能力的接收机,在接收和载入以及执行程序代码时,成为实施本发明的一个装置。当在通用处理器上实现时,程序代码结合处理器提供一唯一的装置,该装置运行以调用本发明的功能。此外,结合本发明使用的任何存储技术总可以是硬件和软件的组合。
尽管已结合不同形态的较佳实施例描述本发明,应该理解,可使用其它的相似实施例,或可在不偏离本发明的情况下,对所述实施例进行修改或添加来完成本发明的相同功能。例如,尽管在诸如对等网络化环境这样的网络环境的背景中描述本发明的典型网络环境,但本领域熟练技术人员将认识到本发明并不限于此,且如在本申请中所述的方法可应用于任何计算装置或环境中,诸如有线的或无线的,游戏控制台、手持计算机、便携计算机等,并可应用于通过通信网络连接并在网络上交互的任意数量的这样的计算装置。而且,应该强调多种多样的计算机平台,包括手持设备操作系统和其它应用程序专用的操作系统,都是预期的,尤其是无线网络设备数量继续激增。更进一步,本发明可在或横跨一组处理芯片或设备上实现,且可类似地横跨一组设备实现存储。因此,本发明不应受限于任何单一的实施例,而应该在按照所附权利要求书的广度和范围内来解释。

Claims (34)

1.在多用户许可环境中制止软件盗版的计算机实现的方法,其特征在于,它包括:
接收嵌入在一企业专用多用户许可文件内的企业专用多用户许可密钥;
认证所述企业专用多用户许可文件;以及
在至少一计算装置上激活与所述多用户许可密钥相关的软件包。
2.如权利要求1所述的方法,其特征在于,所述企业专用多用户许可密钥和所述企业专用多用户许可文件与所述软件包关联,用于安装在多个包括所述至少一个计算装置的计算装置上。
3.如权利要求2所述的方法,其特征在于,还包括在所述至少一个计算装置上安装所述软件包。
4.如权利要求3所述的方法,其特征在于,安装所述软件包是使用用于无人自动(attended)安装的脚本来执行的。
5.如权利要求4所述的方法,其特征在于,在所述脚本文件中指定的多用户许可密钥及其关联的多用户许可文件允许一宽限期。
6.如权利要求5所述的方法,其特征在于,如果所述机器在线连接且许可数据不能被验证时,则所述系统在宽限期内继续是全功能的。
7.如权利要求6所述的方法,其特征在于,如果所述机器在线连接且许可数据不能被验证时,则所述系统在减少的功能模式中运行。
8.如权利要求5所述的方法,其特征在于,如果不能验证许可数据且机器连接在因特网上时,则所述终端用户可请求签名的用于宽限期的延期。
9.如权利要求4所述的方法,其特征在于,所述脚本文件在所述至少一计算装置的注册中设置纯文本的多用户许可密钥。
10.如权利要求9所述的方法,其特征在于,不能单独使用所述纯文本的多用户许可密钥来激活所述软件包。
11.如权利要求2中所述的方法,其特征在于,还包括在所述至少一个计算装置上存储所述企业专用多用户许可文件的位置。
12.如权利要求2所述的方法,其特征在于,所述文件包括大于1.5兆字节。
13.如权利要求1中所述的方法,其特征在于,还包括在一中央位置中存储所述企业专用多用户许可文件。
14.如权利要求13所述的方法,其特征在于,所述中央位置在一服务器上。
15.如权利要求13所述的方法,其特征在于,保护所述中央位置不受所述至少一计算装置的用户的直接访问。
16.如权利要求1所述的方法,其特征在于,所述企业专用多用户许可文件包括从一个其中随机嵌入有企业专用多用户许可密钥的文件中导出的数据。
17.如权利要求1所述的方法,其特征在于,用一私人密钥签署所述企业专用多用户许可文件。
18.如权利要求1所述的方法,其特征在于,在一个第一CDROM上提供所述企业专用多用户许可文件。
19.如权利要求18所述的方法,其特征在于,所述第一CDROM只包含所述企业专用多用户许可文件。
20.如权利要求18所述的方法,其特征在于,包含所述企业专用多用户许可文件的所述第一CDROM与一第一卷标(volume label)关联。
21.如权利要求20所述的方法,其特征在于,在一个第二CDROM上提供所述软件包,所述第二CDROM与一第二卷标关联,并且所述第一卷标不同于所述第二卷标。
22.如权利要求1所述的方法,其特征在于,所述企业专用多用户许可文件在与所述软件包相同的CDROM上。
23.如权利要求1所述的方法,其特征在于,所述企业专用许可文件由所述企业而非软件销售商生成。
24.如权利要求23所述的方法,其特征在于,所述企业从所述软件销售商接收专用多用户许可密钥。
25.如权利要求23所述的方法,其特征在于,所述企业使用至少一个软件销售商提供的硬件设备来生成所述许可证。
26.如权利要求25所述的方法,其特征在于,所述硬件设备能够生成不对称密钥和操作数字签名。
27.如权利要求1所述的方法,其特征在于,如果不能验证许可数据且所述机器不能在线连接,则所述系统是全功能的。
28.一种计算机可读介质,其特征在于,它包括用于执行如权利要求1所述的方法的计算机可执行指令。
29.一种经调制的数据信号,其特征在于,它传送用于实施如权利要求1所述的方法的计算机可执行指令。
30.一种制止软件盗版的系统,其特征在于,它包括:
与嵌入在企业专用多用户许可文件内的企业专用多用户许可密钥关联的软件包;
用于存储所述企业专用多用户许可文件的第一计算装置;
运行所述软件包的第二计算装置;以及
激活例程,用于在响应认证所述企业专用多用户许可文件时,激活所述第二计算装置上的所述软件包。
31.如权利要求30所述的系统,其特征在于,所述第一计算装置和所述第二计算装置是同一计算装置。
32.如权利要求30所述的系统,其特征在于,所述企业专用多用户许可文件包括从其中随机嵌入有所述企业专用多用户许可密钥的一个文件中得到的数据。
33.如权利要求30所述的系统,其特征在于,所述企业专用多用户许可文件包括从企业提交的计算环境特征和/或有关所述企业的身份和产品的信息得到的数据。
34.如权利要求33所述的系统,其特征在于,所述文件可包括大于1.5兆字节。
CN2004100035030A 2003-01-31 2004-01-30 在多用户许可环境中制止软件盗版的系统与方法 Expired - Fee Related CN100407087C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/356,225 2003-01-31
US10/356,225 US7356709B2 (en) 2003-01-31 2003-01-31 Systems and methods for deterring software piracy in a volume license environment

Publications (2)

Publication Number Publication Date
CN1519676A true CN1519676A (zh) 2004-08-11
CN100407087C CN100407087C (zh) 2008-07-30

Family

ID=32655601

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004100035030A Expired - Fee Related CN100407087C (zh) 2003-01-31 2004-01-30 在多用户许可环境中制止软件盗版的系统与方法

Country Status (7)

Country Link
US (1) US7356709B2 (zh)
EP (1) EP1443381B1 (zh)
JP (1) JP4731817B2 (zh)
KR (1) KR101008448B1 (zh)
CN (1) CN100407087C (zh)
AT (1) ATE431596T1 (zh)
DE (1) DE602004021049D1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102790754A (zh) * 2011-05-20 2012-11-21 腾讯科技(深圳)有限公司 用户登录方法和系统
CN101861583B (zh) * 2007-11-16 2014-06-04 索尼克Ip股份有限公司 用于多媒体文件的分级及简化索引结构

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8181265B2 (en) * 2003-01-31 2012-05-15 Microsoft Corporation Secure machine counting
US7644442B2 (en) * 2003-01-31 2010-01-05 Microsoft Corporation Systems and methods for using machine attributes to deter software piracy in an enterprise environment
US7835520B2 (en) * 2003-02-20 2010-11-16 Zoran Corporation Unique identifier per chip for digital audio/video data encryption/decryption in personal video recorders
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
AU2004220645C1 (en) * 2003-03-10 2010-11-18 Mudalla Technology, Inc. Dynamic configuration of a gaming system
US20060063575A1 (en) * 2003-03-10 2006-03-23 Cyberscan Technology, Inc. Dynamic theming of a gaming system
DE10330191A1 (de) * 2003-07-03 2005-02-10 Siemens Ag System bzw. Verfahren zur Freigabe freigabebedürftigter Softwareprogramme
US8898657B2 (en) * 2003-10-03 2014-11-25 Cyberlink Corp. System and method for licensing software
US7788496B2 (en) * 2003-10-08 2010-08-31 Microsoft Corporation First computer process and second computer process proxy-executing code on behalf thereof
US8103592B2 (en) * 2003-10-08 2012-01-24 Microsoft Corporation First computer process and second computer process proxy-executing code on behalf of first process
US7979911B2 (en) * 2003-10-08 2011-07-12 Microsoft Corporation First computer process and second computer process proxy-executing code from third computer process on behalf of first process
US7841533B2 (en) 2003-11-13 2010-11-30 Metrologic Instruments, Inc. Method of capturing and processing digital images of an object within the field of view (FOV) of a hand-supportable digitial image capture and processing system
US20050132357A1 (en) * 2003-12-16 2005-06-16 Microsoft Corporation Ensuring that a software update may be installed or run only on a specific device or class of devices
US7761569B2 (en) * 2004-01-23 2010-07-20 Tiversa, Inc. Method for monitoring and providing information over a peer to peer network
US8156175B2 (en) 2004-01-23 2012-04-10 Tiversa Inc. System and method for searching for specific types of people or information on a peer-to-peer network
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
JP2006059163A (ja) * 2004-08-20 2006-03-02 Fujitsu Support & Service Kk ライセンス管理システム、ライセンス管理プログラム、およびライセンス管理方法
JP2006059164A (ja) * 2004-08-20 2006-03-02 Fujitsu Support & Service Kk ライセンス管理端末、ライセンス管理システム、ライセンス管理プログラム、およびライセンス管理方法
US20060064488A1 (en) * 2004-09-17 2006-03-23 Ebert Robert F Electronic software distribution method and system using a digital rights management method based on hardware identification
US20060064756A1 (en) * 2004-09-17 2006-03-23 Ebert Robert F Digital rights management system based on hardware identification
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US8176564B2 (en) 2004-11-15 2012-05-08 Microsoft Corporation Special PC mode entered upon detection of undesired state
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
US7694153B2 (en) * 2004-11-15 2010-04-06 Microsoft Corporation Changing product behavior in accordance with license
US7712086B2 (en) * 2004-12-15 2010-05-04 Microsoft Corporation Portable applications
US20060195404A1 (en) * 2004-12-29 2006-08-31 Laszlo Elteto System and method for providing grace licensing to disconnected network license users
US20060174346A1 (en) * 2005-01-31 2006-08-03 Lieberman Software Corporation Instrumentation for alarming a software product
WO2006098874A2 (en) * 2005-03-14 2006-09-21 Mark Strickland File sharing methods and systems
US7739238B2 (en) * 2005-03-14 2010-06-15 Mark Strickland Method of digital media management in a file sharing system
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US9178940B2 (en) * 2005-04-12 2015-11-03 Tiversa Ip, Inc. System and method for detecting peer-to-peer network software
US7697520B2 (en) * 2005-04-12 2010-04-13 Tiversa, Inc. System for identifying the presence of Peer-to-Peer network software applications
USRE47628E1 (en) 2005-04-12 2019-10-01 Kroll Information Assurance, Llc System for identifying the presence of peer-to-peer network software applications
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US9436804B2 (en) 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
US8353046B2 (en) 2005-06-08 2013-01-08 Microsoft Corporation System and method for delivery of a modular operating system
US20070041584A1 (en) * 2005-08-16 2007-02-22 O'connor Clint H Method for providing activation key protection
US7917487B2 (en) 2005-12-13 2011-03-29 Microsoft Corporation Portable application registry
US8601467B2 (en) * 2006-10-03 2013-12-03 Salesforce.Com, Inc. Methods and systems for upgrading and installing application packages to an application platform
US20080120416A1 (en) * 2006-11-07 2008-05-22 Tiversa, Inc. System and method for peer to peer compensation
US9021026B2 (en) 2006-11-07 2015-04-28 Tiversa Ip, Inc. System and method for enhanced experience with a peer to peer network
WO2008127608A2 (en) * 2007-04-12 2008-10-23 Tiversa, Inc. A system and method for creating a list of shared information on a peer-to-peer network
CA2727548A1 (en) 2007-06-11 2008-12-18 Tiversa, Inc. System and method for advertising on a peer-to-peer network
EP2260430A2 (en) * 2008-02-22 2010-12-15 Uniloc Usa, Inc. License auditing for distributed applications
US20090249329A1 (en) * 2008-03-25 2009-10-01 Sambit Kumar Dash Limited service life through virtualized service images
US8538889B2 (en) * 2008-06-25 2013-09-17 Microsoft Corporation Application hierarchy and state manipulation
US20100031352A1 (en) * 2008-08-04 2010-02-04 Amarender Reddy Kethireddy System and Method for Enforcing Licenses During Push Install of Software to Target Computers in a Networked Computer Environment
JP5499642B2 (ja) * 2009-11-04 2014-05-21 株式会社リコー ライセンス管理システム、販売管理装置、ライセンス管理装置、ライセンス管理方法、及びプログラム
US8763158B2 (en) 2010-12-06 2014-06-24 Microsoft Corporation Directory service distributed product activation
US8819427B2 (en) * 2012-06-15 2014-08-26 Iolo Technologies, Llc Device specific secure licensing
EP2887603B1 (en) * 2013-12-18 2019-02-13 SFNT Germany GmbH Controlling an execution of a software application on an execution platform in a first local network
CN103927497B (zh) * 2014-04-25 2017-07-14 华为技术有限公司 Ndm文件保护方法及装置
KR102342355B1 (ko) 2015-03-05 2021-12-23 주식회사 청담러닝 인증 서버, 인증 서버의 소프트웨어 라이선스 관리 방법, 및 소프트웨어 라이선스 관리 시스템
US10614427B2 (en) * 2016-10-21 2020-04-07 Johnson Controls Technology Company Systems and methods for monetizing building management system software deployment
US10977361B2 (en) 2017-05-16 2021-04-13 Beyondtrust Software, Inc. Systems and methods for controlling privileged operations
JP7187351B2 (ja) * 2019-02-27 2022-12-12 キヤノン株式会社 デバイス管理サーバー、その制御方法及びプログラム
US11528149B2 (en) 2019-04-26 2022-12-13 Beyondtrust Software, Inc. Root-level application selective configuration
CN112866419B (zh) * 2021-03-11 2023-05-02 统信软件技术有限公司 一种激活控制方法、系统及计算设备
CN113496028A (zh) * 2021-06-28 2021-10-12 山东云缦智能科技有限公司 一种具备时间限制功能的软件离线认证的方法
US20240129110A1 (en) 2022-10-17 2024-04-18 Thales Dis Cpl Usa, Inc. System and method of application resource binding

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5138712A (en) * 1989-10-02 1992-08-11 Sun Microsystems, Inc. Apparatus and method for licensing software on a network of computers
JP3032788B2 (ja) * 1991-05-08 2000-04-17 ディジタル イクイプメント コーポレイション ライセンス管理システム
US5260999A (en) * 1991-06-28 1993-11-09 Digital Equipment Corporation Filters in license management system
US5204897A (en) * 1991-06-28 1993-04-20 Digital Equipment Corporation Management interface for license management system
US6134324A (en) * 1991-07-31 2000-10-17 Lsi Logic Corporation Method and system for distributing a plurality of software products, and limiting access thereto
US5319705A (en) * 1992-10-21 1994-06-07 International Business Machines Corporation Method and system for multimedia access control enablement
JPH07110767A (ja) * 1993-10-13 1995-04-25 Mitsubishi Electric Corp ソフトウエア使用ライセンス管理制御方法
US5553139A (en) * 1994-04-04 1996-09-03 Novell, Inc. Method and apparatus for electronic license distribution
US5905860A (en) * 1996-03-15 1999-05-18 Novell, Inc. Fault tolerant electronic licensing system
US5754763A (en) * 1996-10-01 1998-05-19 International Business Machines Corporation Software auditing mechanism for a distributed computer enterprise environment
US6108420A (en) * 1997-04-10 2000-08-22 Channelware Inc. Method and system for networked installation of uniquely customized, authenticable, and traceable software application
US6263492B1 (en) * 1997-06-06 2001-07-17 Microsoft Corporation Run time object layout model with object type that differs from the derived object type in the class structure at design time and the ability to store the optimized run time object layout model
US6006035A (en) 1997-12-31 1999-12-21 Network Associates Method and system for custom computer software installation
US6134659A (en) 1998-01-07 2000-10-17 Sprong; Katherine A. Controlled usage software
JPH11238038A (ja) * 1998-02-19 1999-08-31 Iwanami Shoten:Kk ネットワークライセンス管理システムおよび記録媒体
US6189146B1 (en) * 1998-03-18 2001-02-13 Microsoft Corporation System and method for software licensing
US6226747B1 (en) * 1998-04-10 2001-05-01 Microsoft Corporation Method for preventing software piracy during installation from a read only storage medium
US6223288B1 (en) * 1998-05-22 2001-04-24 Protexis Inc. System for persistently encrypting critical software file to prevent installation of software program on unauthorized computers
US6799277B2 (en) * 1998-06-04 2004-09-28 Z4 Technologies, Inc. System and method for monitoring software
JP3573624B2 (ja) * 1998-07-31 2004-10-06 三菱電機株式会社 ネットワークインストールシステム
AU5334500A (en) 1999-06-07 2000-12-28 Firepad, Inc. Method and system for preventing the unauthorized use of software
US6842896B1 (en) * 1999-09-03 2005-01-11 Rainbow Technologies, Inc. System and method for selecting a server in a multiple server license management system
US20030088516A1 (en) * 1999-12-21 2003-05-08 Eric B. Remer Software anti-piracy licensing
JP4086445B2 (ja) * 2000-03-09 2008-05-14 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報送信方法、ネットワーク・プロバイダ・サーバ、情報端末及び情報端末における方法
US20030050895A1 (en) * 2000-03-31 2003-03-13 Rick Dedrick Automated volume license agreement method and apparatus
US7024696B1 (en) * 2000-06-14 2006-04-04 Reuben Bahar Method and system for prevention of piracy of a given software application via a communications network
JP2002297255A (ja) * 2001-03-30 2002-10-11 Ntt Comware Corp ソフトウェア管理方法、そのシステム、そのプログラム及びそのプログラムが記録された記録媒体
JP2003005855A (ja) * 2001-06-21 2003-01-08 Nec Software Hokkaido Ltd ライセンス管理方法および記録媒体
JP4194772B2 (ja) * 2001-07-05 2008-12-10 ヤフー株式会社 ソフトウェア使用認証方法、ソフトウェア使用認証プログラム、ソフトウェア使用認証プログラムを記録した記録媒体、ソフトウェア使用認証方法で用いられるデータ、このデータを記録した記録媒体
CN1369809A (zh) * 2002-01-14 2002-09-18 张国柱 一种批量生产的计算机软件的注册码防盗版加密方法
US7742992B2 (en) * 2002-02-05 2010-06-22 Pace Anti-Piracy Delivery of a secure software license for a software product and a toolset for creating the software product

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101861583B (zh) * 2007-11-16 2014-06-04 索尼克Ip股份有限公司 用于多媒体文件的分级及简化索引结构
CN102790754A (zh) * 2011-05-20 2012-11-21 腾讯科技(深圳)有限公司 用户登录方法和系统

Also Published As

Publication number Publication date
CN100407087C (zh) 2008-07-30
US20040153658A1 (en) 2004-08-05
KR101008448B1 (ko) 2011-01-14
EP1443381B1 (en) 2009-05-13
EP1443381A3 (en) 2006-05-17
ATE431596T1 (de) 2009-05-15
JP4731817B2 (ja) 2011-07-27
DE602004021049D1 (de) 2009-06-25
US7356709B2 (en) 2008-04-08
JP2004234668A (ja) 2004-08-19
EP1443381A2 (en) 2004-08-04
KR20040070084A (ko) 2004-08-06

Similar Documents

Publication Publication Date Title
CN100407087C (zh) 在多用户许可环境中制止软件盗版的系统与方法
AU2004200043B2 (en) Systems and methods for providing time- and weight-based flexibly tolerant hardware ID
US7644442B2 (en) Systems and methods for using machine attributes to deter software piracy in an enterprise environment
JP4794217B2 (ja) ソフトウェア製品ライセンスの単一の再アクティブ化のための方法およびシステム
CN1288523C (zh) 将数字签名嵌入到数字有效负荷中
EP1934810B1 (en) Secure machine counting
US7734549B2 (en) Methods and apparatus for managing secured software for a wireless device
CN1694031A (zh) 限制软件更新的方法和系统
MX2007011377A (es) Arranque seguro.
US8156567B2 (en) Software installation system and method for copy protection
CN1808326A (zh) 使用部分映像散列确认可执行文件完整性的系统和方法
CN101379503A (zh) 鉴认计算机系统的应用程序的方法
CN114398686A (zh) 基于区块链的文件存储方法、装置、设备和存储介质
US20030217280A1 (en) Software watermarking for anti-tamper protection
WO2007055169A1 (ja) 通信端末装置、サーバ端末装置、それらを用いる通信システム
US7636860B2 (en) Scalable and extensible secure rendering of digital content
EP1465043A2 (en) Keyed-build system for controlling the distribution of software
US20120066746A1 (en) Secure device feature unlock mechanism third party development
CN111562916B (zh) 共享算法的方法和装置
CN102216936A (zh) 已声明的起源策略
EP2369518A1 (en) A system and a method for copy protecting a block of software
CN115225651A (zh) 应用于区块链金融和在线支付的信息安全防护方法及装置
CN117640574A (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
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150513

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150513

Address after: Washington State

Patentee after: MICROSOFT TECHNOLOGY LICENSING, LLC

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080730