国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      在多用戶許可環(huán)境中制止軟件盜版的系統(tǒng)與方法

      文檔序號:6381669閱讀:357來源:國知局
      專利名稱:在多用戶許可環(huán)境中制止軟件盜版的系統(tǒng)與方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及軟件盜版制止領(lǐng)域,且特別是在使用多用戶許可密鑰(VLK)軟件的多用戶許可領(lǐng)域。
      背景技術(shù)
      軟件盜版是每年花費軟件銷售商大量財富的全球性問題。一種被稱為不負(fù)責(zé)的拷貝(casual copying)的盜版形式是在多臺計算機上共享和安裝軟件,違反終端用戶許可協(xié)議。產(chǎn)品激活是減少這種類型盜版的一種方式。
      產(chǎn)品激活一般依靠向軟件銷售商提交安裝標(biāo)識碼(installationidentification code)和/或硬件標(biāo)識符(hardware identifier)。軟件銷售商在響應(yīng)時返回一激活確認(rèn)碼(activation confirmation code)。在產(chǎn)品激活的一種類型中,為盒裝軟件(boxed software)的每個包提供唯一的產(chǎn)品密鑰。通常,在一段寬限期后(安裝軟件后在沒有激活軟件的情況下運行的一段時間),消費者必須聯(lián)系軟件銷售商激活他的軟件拷貝。未能這么做經(jīng)常導(dǎo)致軟件的未激活或軟件功能被降低。通常唯一的產(chǎn)品密鑰(unique product key)用于生成唯一的產(chǎn)品標(biāo)識碼(product identification code),它可結(jié)合一個散列化的與硬件有關(guān)的值來生成專用于該軟件所運行的機器的安裝標(biāo)識碼。使軟件運行的激活確認(rèn)(activation code)通常返回給消費者。在這點上,激活確認(rèn)還可以是一個許可文件(license file),或一個表示許可的二進制數(shù)。在每次登錄時,被許可的軟件檢查以審視它是否本質(zhì)上運行在它被激活的同一硬件上。如果檢查失敗,在再次運行該軟件前要求重新激活。
      團體消費者一般購買多用戶許可(volume license)。對于可能在其范圍內(nèi)有上百或上千臺機器的團體消費者,為每套被安裝的軟件拷貝聯(lián)系軟件銷售商以接收機器指定激活碼不是切實可行的。因此,典型地,多用戶許可所有人不必聯(lián)系軟件銷售商以激活他們的軟件,因為當(dāng)檢測到多用戶許可密鑰時軟件繞過激活要求。因此,同一個多用戶許可密鑰能用于許多不同的計算機,它們在寬限期期滿前或后都不需要激活以使軟件運行。多用戶許可密鑰這樣的便利特性使它對于成為一個有吸引力的目標(biāo)。
      如果有使多用戶許可密鑰盜版更困難的方法將是有益的。
      概述為多用戶許可所有人隨同被許可的軟件提供一軟件銷售商簽署文件(software-vendor-signed file),該文件包含企業(yè)專用VLK(enterprise-specific)、一許可ID(license ID)、網(wǎng)絡(luò)環(huán)境綁定散列(network environmentbinding hash)及任何策略數(shù)據(jù)(policy data)。這個企業(yè)專用許可文件既可被存儲在中央服務(wù)器諸如在安裝服務(wù)器上,或者也可被存儲在本地機器中。這個企業(yè)專用許可文件可以是相當(dāng)大的(例如超過1.44MB因而文件將不適合于軟盤)。在一個實施例中,自動化安裝腳本能夠查閱企業(yè)專用VLK許可文件,或者能夠在安裝過程之后或期間通過一些其它方法(例如手工或自動文件拷貝操作)配置VLK許可文件。腳本包含企業(yè)專用許可文件的位置。緊接著登錄,讀取企業(yè)專用許可文件,激活認(rèn)證的數(shù)據(jù)和軟件。如果軟件系統(tǒng)不能在網(wǎng)絡(luò)連接期間驗證許可數(shù)據(jù),軟件在寬限期內(nèi)將繼續(xù)是全功能的,過期后軟件將以減少的功能模式運行,或者用戶可向軟件銷售商請求一個簽訂的延長期。如果當(dāng)機器與網(wǎng)絡(luò)斷開時不能驗證環(huán)境綁定,系統(tǒng)將繼續(xù)只以與網(wǎng)絡(luò)斷開的特性運行,直至它重新加入網(wǎng)絡(luò)。寬限期標(biāo)志被標(biāo)記在唯一于軟件所安裝的每個操作系統(tǒng)(OS)安裝的位置。能通過軟件確認(rèn)這個標(biāo)志。
      如果企業(yè)不能從軟件銷售商獲得簽訂的VLK許可文件,企業(yè)可用軟件銷售商提供的硬件設(shè)備,例如智能卡,生成許可文件。通過不必向軟件銷售商提交其計算環(huán)境特征而自己生成許可文件,企業(yè)不需要損害計算環(huán)境的安全特征。


      圖1是一個典型的計算環(huán)境,在這個環(huán)境中可實現(xiàn)本發(fā)明的各個方面;圖2是一個方框圖,說明按照本發(fā)明的一個實施例的典型的用于制止軟件盜版的典型強制環(huán)境綁定系統(tǒng);
      圖3是一個方框圖,說明按照本發(fā)明的一個實施例的用于制止軟件盜版的典型離線系統(tǒng);以及圖4是按照本發(fā)明的一個實施例的在強制環(huán)境綁定系統(tǒng)中用于制止軟件盜版的典型方法的流程圖。
      詳細(xì)說明典型計算環(huán)境圖1及下列討論旨在提供可實現(xiàn)本發(fā)明的合適計算環(huán)境的簡單基本的描述。但應(yīng)該理解,預(yù)期手持的、便攜式的及其它各種計算裝置可結(jié)合本發(fā)明一起使用。雖然下面描述的是通用計算機,但這只是一個例子,且本發(fā)明只要求具有網(wǎng)絡(luò)服務(wù)器互操作性和交互性的瘦客戶機。這樣,本發(fā)明可實現(xiàn)于網(wǎng)絡(luò)化主機化服務(wù)(networked hosted service)的環(huán)境中,在網(wǎng)絡(luò)化主機化服務(wù)中,只牽涉到很小或最小的客戶機資源,例如,一網(wǎng)絡(luò)化環(huán)境,在其中客戶機設(shè)備只用作到萬維網(wǎng)的瀏覽器或接口。
      盡管不要求,還能夠通過應(yīng)用編程接口(API)實現(xiàn)本發(fā)明,由開發(fā)者使用,并/或包括在網(wǎng)絡(luò)瀏覽軟件中,將以計算機可執(zhí)行指令諸如程序模塊的一般背景中描述網(wǎng)絡(luò)瀏覽軟件,這些指令可由一或多個計算機執(zhí)行,諸如客戶工作站、服務(wù)器或其它設(shè)備。一般地,程序模塊包括可完成具體任務(wù)或?qū)崿F(xiàn)具體抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。典型地,程序模塊的功能可以隨意地結(jié)合或分布在各種實施例中。而且,本領(lǐng)域熟練技術(shù)人員將明白本發(fā)明可實踐于其它計算機系統(tǒng)配置。其它適合于本發(fā)明使用的著名計算系統(tǒng)、環(huán)境和/或配置包括但不限于,個人計算機(PC)、自動播音機器人(automatedteller machine)、服務(wù)器計算機、手持或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、可編程消費電子產(chǎn)品、網(wǎng)絡(luò)PC、小型機、大型機等等。本發(fā)明還可實踐于分布式計算環(huán)境中,在分布式計算環(huán)境中,任務(wù)是由通過通信網(wǎng)絡(luò)或數(shù)據(jù)傳輸介質(zhì)連接起來的遠(yuǎn)程處理設(shè)備完成的。在分布式計算環(huán)境中,程序模塊可以位于本地和遠(yuǎn)程計算機存儲介質(zhì)中,包括內(nèi)存存儲設(shè)備在內(nèi)。
      圖1這樣示出了一個可實現(xiàn)本發(fā)明的合適的計算系統(tǒng)環(huán)境100的例子,如以上所闡明的,計算系統(tǒng)環(huán)境100只是合適的計算環(huán)境的一個例子,并且不是想要暗示任何關(guān)于本發(fā)明使用或功能的限制。計算環(huán)境100也不應(yīng)被解釋為具有對任何與典型操作環(huán)境100中所示組件的任意一個或組合有關(guān)的依賴關(guān)系或要求。
      參考圖1,實現(xiàn)本發(fā)明的典型系統(tǒng)包括一個以計算機110的形式的通用計算裝置。計算機110的部件可包括,但不限于,處理單元120、系統(tǒng)存儲器130和連接包括系統(tǒng)內(nèi)存在內(nèi)的各種系統(tǒng)部件至處理單元120的系統(tǒng)總線121。系統(tǒng)總線121可以是任意各種類型的總線結(jié)構(gòu),包括使用任何多種多樣總線結(jié)構(gòu)的存儲總線或存儲控制器、外部設(shè)備總線及局部總線。作為實例,而非限制,這樣的結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)結(jié)構(gòu)(Industry Standard Bus)(ISA)總線、微通道結(jié)構(gòu)(Micro Channel Architecture)(MCA)總線、增強型ISA(Enhanced ISA)(EISA)總線、視頻電子標(biāo)準(zhǔn)協(xié)會(Video Electronics Standards Association)(VESA)局域總線及周邊元件擴展接口(Peripheral Component Interconnect)(PCI)總線(也稱為夾層(Mezzanine)總線)。
      計算機110一般包括多種多樣計算機可讀介質(zhì)。計算機可讀介質(zhì)可為任何能由計算機110訪問的可用介質(zhì),且包括易失的和非易失的介質(zhì)、可移動和不可移動介質(zhì)。作為實例,而不是限制,計算機可讀介質(zhì)可包括計算機存儲介質(zhì)和通信介質(zhì)。計算機存儲介質(zhì)包括以任何方法或技術(shù)實現(xiàn)的、用于存儲諸如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)的易失的和非易失的、可移動或不可移動介質(zhì)。計算機存儲介質(zhì)包括,但不限于,RAM、ROM、EEPROM、閃存或其它存儲技術(shù)、CDROM、數(shù)字通用盤(DVD)或其它光盤存儲器、磁盒、磁帶、磁盤存儲或其它磁存儲設(shè)備、或任何其它可用于存儲想要的信息且能被計算機110訪問的介質(zhì)。通信介質(zhì)一般包含計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或諸如載波或其它傳輸機制這樣的調(diào)制數(shù)據(jù)信號中的其它數(shù)據(jù),并包括任意信息傳送介質(zhì)。術(shù)語“調(diào)制的數(shù)據(jù)信號”意思是具有以在信號中編碼信息的方式設(shè)置或改變的一或多個特性的信號。作為實例,但不是限制,通信介質(zhì)包括諸如有線網(wǎng)絡(luò)或直接有線連接這樣的有線介質(zhì)、和諸如聲波、RF、紅外線及其它無線介質(zhì)這樣的無線介質(zhì)。以上任意的組合也包括在計算機可讀介質(zhì)的范圍內(nèi)。
      系統(tǒng)存儲器130包括以易失的和/或非易失的存儲器形式的計算機存儲介質(zhì),諸如只讀存儲器(ROM)131和隨機存取存儲器(RAM)132?;据斎?輸出系統(tǒng)133(BIOS),包含幫助在計算機110內(nèi)部元件間傳送信息的基本例程,諸如在啟動期間的例程,一般存儲在ROM131中。RAM132一般包含可立即存取的和/或正由處理單元120操作的數(shù)據(jù)和/或程序模塊。作為實例,而不是限制,圖1a示出了操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137。
      計算機110還可包括其它可移動/不可移動、易失的/非易失的計算機存儲介質(zhì)。只是作為實例,圖1a示出了讀寫不可移動、非易失的磁介質(zhì)的硬盤驅(qū)動器141、讀寫可移動的、非易失的磁盤152的磁盤驅(qū)動器151,以及讀寫諸如CD ROM或其它光介質(zhì)這樣的可移動、非易失的光盤156的光盤驅(qū)動器155。其它可用于典型操作環(huán)境的可移動/不可移動、易失/非易失的計算機存儲介質(zhì)包括,但不限于,磁盒、閃存卡、數(shù)字通用盤、數(shù)字視頻帶、固態(tài)RAM、固態(tài)ROM等等。硬盤驅(qū)動器141一般通過不可移動的存儲器接口諸如接口140連接至系統(tǒng)總線121,而磁盤驅(qū)動器151和光盤驅(qū)動器155一般通過可移動的存儲器接口諸如接口150連接至系統(tǒng)總線121。
      上述的和在圖1中所示的驅(qū)動器及其相關(guān)的計算機存儲介質(zhì)為計算機110提供計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲。在圖1中,例如,硬盤驅(qū)動器141被示為存儲操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147。注意這些組件可以與操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136及程序數(shù)據(jù)137相同或者不同。操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147在這里給出不同數(shù)字,至少說明了它們是不同的拷貝。用戶可通過諸如鍵盤162和一般稱為鼠標(biāo)、軌跡球或觸摸墊的定點設(shè)備161這樣的輸入設(shè)備,輸入命令和信息至計算機110。其它輸入設(shè)備(未示出)可包括話筒、操縱桿、游戲墊、衛(wèi)星天線、掃描儀等等。這些和其它輸入設(shè)備常常通過連接至系統(tǒng)總線121的用戶輸入接口160連接到處理單元120上,但也可通過諸如并行口、游戲端口或通用串行總線(USB)這樣的其它接口和總線結(jié)構(gòu)連接。
      顯示器191或其它類型的顯示設(shè)備通過一個接口諸如視頻接口190,也連接至系統(tǒng)總線121。圖形接口182諸如北橋(Northbridge)也可連接至系統(tǒng)總線121。北橋是一與CPU或主機處理單元120通信的芯片組,并且承擔(dān)加速圖形接口(AGP)通信的責(zé)任。一或多個圖形處理單元(GPU)184可與圖形接口182通信。在這點上,GPU184通常包括單片存儲器,諸如寄存器,并且GPU184與視頻存儲器186通信。但是,GPU184只是協(xié)處理器的一個例子,且因而各種協(xié)處理設(shè)備可包括在計算機110中。顯示器191或其它類型的顯示設(shè)備也通過接口諸如視頻接口190連接至系統(tǒng)總線121,它可輪流與圖像存儲器186通信。除了顯示器191,計算機還可包括諸如揚聲器197和打印機196等其它外部輸出設(shè)備,這些可通過輸出外部設(shè)備接口195連接。
      計算機110可使用至諸如遠(yuǎn)程計算機180這樣的一或多臺遠(yuǎn)程計算機的邏輯連接運行于網(wǎng)絡(luò)環(huán)境中。遠(yuǎn)程計算機180可以是個人計算機、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等設(shè)備或其它普通網(wǎng)絡(luò)節(jié)點,且一般包括許多或所有相對于計算機110所述的組件,盡管只有內(nèi)存存儲設(shè)備181在圖1中示出。圖1中所示的邏輯連接包括局域網(wǎng)(LAN)171和廣域網(wǎng)(WAN)173,但還可包括其它網(wǎng)絡(luò)。這樣的網(wǎng)絡(luò)環(huán)境在辦公室、企業(yè)級計算機網(wǎng)絡(luò)、企業(yè)內(nèi)部互聯(lián)網(wǎng)及因特網(wǎng)上是平常的。
      當(dāng)用于LAN網(wǎng)絡(luò)環(huán)境時,計算機110通過網(wǎng)絡(luò)接口或適配器170連接至LAN171。當(dāng)用于WAN網(wǎng)絡(luò)環(huán)境時,計算機110一般包括建立在諸如因特網(wǎng)這樣的WAN173上通信的調(diào)制解調(diào)器172或其它工具。調(diào)制解調(diào)器172,它可以是內(nèi)置的或外置的,可通過用戶輸入接口160或其它合適的機制連接至系統(tǒng)總線121。在網(wǎng)絡(luò)化環(huán)境中,相對于計算機110所述的程序模塊或其部分可存儲在遠(yuǎn)程內(nèi)存存儲設(shè)備中。作為實例,但非限制,圖1將遠(yuǎn)程應(yīng)用程序185示為駐留在內(nèi)存存儲設(shè)備181上。將理解的是所示的網(wǎng)絡(luò)連接是典型的,并且其它在計算機間建立通信連接的方法也是可用的。
      本領(lǐng)域普通技術(shù)人員之一能夠理解計算機110或其它客戶機設(shè)備能夠被配置為計算機網(wǎng)絡(luò)的一部分。在這點上,本發(fā)明適合于任何計算機系統(tǒng),這些計算機系統(tǒng)具有任意數(shù)量的存儲器或存儲單元,以及在任意數(shù)量的存儲單元或卷上出現(xiàn)的任意數(shù)量的應(yīng)用程序和過程。本發(fā)明可應(yīng)用于具有配置在網(wǎng)絡(luò)環(huán)境中的服務(wù)器計算機和客戶機計算機的、具有遠(yuǎn)程或本地存儲的環(huán)境。本發(fā)明還可應(yīng)用于獨立的、具有編程語言功能、解釋和執(zhí)行能力的計算裝置。
      制止軟件盜版的系統(tǒng)和方法圖2是依照本發(fā)明一個實施例的制止軟件盜版的強制環(huán)境綁定分發(fā)(environment-binding-enforced distribution)系統(tǒng)的方框圖。服務(wù)器204或銷售商202可以通過網(wǎng)絡(luò)連接至一或多臺客戶機206或208,諸如通過WAN、LAN(有線的或無線的)、企業(yè)內(nèi)部互聯(lián)網(wǎng)、因特網(wǎng)或其它適當(dāng)?shù)木W(wǎng)絡(luò)。在圖2中,虛線示出可替換的本發(fā)明實現(xiàn),說明服務(wù)器204是可選的,因為它的角色是為了初始許可文件發(fā)現(xiàn)(initial license file discovery),并且對于本發(fā)明的實現(xiàn)不是必需的。
      軟件銷售商可在一些介質(zhì)諸如但不限于CDROM上提供多用戶許可所有人(volume license holder)一份多用戶被許可軟件212的拷貝。伴隨著軟件212的可以是企業(yè)專用的或多用戶許可所有人專用的VLK222。在本發(fā)明的一個實施例中,VLK222被嵌在一個相對大的文件中,這個文件被稱為許可文件(licensefile)224??梢曰冢?,公司和被許可給公司的產(chǎn)品的標(biāo)識符來構(gòu)造許可文件224,并可包括像域名控制器(domain controller)(DC)的名稱、激活目錄(active directory)(AD)等的散列的環(huán)境綁定信息。在一典型實施例中,許可文件是相對大的系統(tǒng)文件。所選擇的具體文件類型可以是任意類型的文件類型,包括但不限于圖像或聲音文件格式。VLK222可以嵌在數(shù)據(jù)的任何地方,然后在一個實施例中用私有密鑰簽字以生成許可文件224。在本發(fā)明的一個實施例中,為防止把許可文件224拷貝到軟盤上,許可文件224的大小大于1.44兆字節(jié)(MB),諸如例如2MB。在本發(fā)明的一個實施例中,在只包含許可文件224并具有不同于包含關(guān)聯(lián)軟件212的CDROM的卷標(biāo)的CDROM上提供許可文件224。
      在上述環(huán)境中,在客戶機206、208等之間分發(fā)許可所有人的軟件212。在登錄時,駐留在客戶機206、208等上的激活代碼(activation code)讀取許可文件224的內(nèi)容來驗證許可文件224還沒有被篡改。如在此所使用的,激活(activation)指用于驗證軟件許可數(shù)據(jù)的過程、網(wǎng)絡(luò)環(huán)境綁定,以及使軟件在不需要進一步綁定確認(rèn)的一段時間內(nèi)能夠運行的過程。在這點上,在軟件安裝過程中,可將VLK222和/或許可文件224傳輸至客戶機208或客戶機206,例如,通過服務(wù)器204。驗證過程包括針對在許可(license)中所定義的綁定(binding)或策略(policy)檢查許可。從服務(wù)器位置接收許可文件是可選的。
      可通過檢查文件簽名來驗證許可文件224的完整性。如果許可文件224沒有被篡改過,即如果驗證了完整性,則允許軟件運行。如果許可文件224已被篡改,軟件將在減少功能的模式中運行。
      對于親自安裝大量機器的管理員而言,軟件的大規(guī)模配置通常太浪費和太消耗時間。另外,管理者常常不想要終端用戶親自激活他們的機器。因此,因而通常使用自動化的或遠(yuǎn)程過程使這樣的安裝自動化。
      多用戶被許可軟件(volume licensed software)的激活可在安裝期間執(zhí)行或稍后的時間執(zhí)行。自動答復(fù)文件(unattended answer file)是一文本文件,用于協(xié)同軟件安裝例程繞過正常的安裝提示。自動文件能夠,例如,或者通過目標(biāo)機器的局域網(wǎng)絡(luò)(LAN)或者通過因特網(wǎng),代表終端用戶,自動輸入VLK、配置代理設(shè)定并自動激活系統(tǒng)。也能在安裝后用命令行腳本執(zhí)行激活。
      當(dāng)在206、208等客戶機上安裝多用戶被許可軟件時,可在自動文件的幫助下準(zhǔn)備安裝映像(installation image)。自動文件是一執(zhí)行自動安裝的專用腳本。通過執(zhí)行腳本將軟件212安裝在206、208等客戶機機器上。腳本將許可文件224的位置設(shè)置到一列已知位置中,包括服務(wù)器204??商鎿Q地,如果文件是安裝映像的部分,可將許可文件224拷貝到客戶機機器上。緊接著登錄,讀取許可文件224,激活認(rèn)證數(shù)據(jù)和客戶機機器206、208等。如果許可文件224中指定的環(huán)境特征在系統(tǒng)連接時不能被驗證,系統(tǒng)將繼續(xù)在寬限期內(nèi)起運行。超過寬限期,系統(tǒng)可在減少的功能模式中運行或可向軟件銷售商202請求延期。如果在系統(tǒng)不連接時不能驗證許可數(shù)據(jù),則軟件將繼續(xù)只以不連接的特性運行,直至系統(tǒng)再次加入網(wǎng)絡(luò)為止。
      在各種實施例中,當(dāng)在寬限期內(nèi)且有網(wǎng)絡(luò)連接,但本發(fā)明的系統(tǒng)不能確認(rèn)環(huán)境時,系統(tǒng)可聯(lián)系一中央位置(central location),這個位置能檢查泄漏(leakage)并準(zhǔn)予寬限期的一個附加期(additional term)。例如,可將許可文件和HWID的散列傳輸至中央位置,且服務(wù)器能針對黑名單(black list)檢查這個散列,然后將一帶有永久日期的已簽署的許可向下發(fā)送至客戶機位置。
      在這點上,在一個實施例中,如果VLK文件檢查失敗,則結(jié)果是失敗的。在另一個實施例中,如果VLK文件檢查失敗,則可分析VLK許可文件,然后可在各種列出的服務(wù)器中對新的許可文件進行搜索。
      在黑箱操作(black-op)情況下,企業(yè)不能從軟件銷售商結(jié)合VLK環(huán)境獲得許可證。這樣,在一個實施例中,在黑箱操作情況下,企業(yè)可生成由軟件銷售商所發(fā)行的部分硬件(piece(s) of hardware)簽字的其自己的許可文件。
      圖3是依照本發(fā)明一個實施例的制止軟件盜版的企業(yè)離線系統(tǒng)250的方框圖。在離線系統(tǒng)中,企業(yè)接收VLK222和軟件銷售商202提供安全硬件設(shè)備252。硬件設(shè)備252能夠執(zhí)行簽字操作,以生成在格式上與許可文件224同樣的許可文件225。在客戶機機器206和208上安裝多用戶被許可軟件、激活處理和許可確認(rèn)過程與在圖2中所述相同,在其中簽署VLK許可文件并且同樣來自軟件銷售商。與圖2中一樣,在圖3中,虛線示出本發(fā)明可替換的實現(xiàn)。
      圖4是一使在強制環(huán)境綁定系統(tǒng)中軟件盜版更為困難的方法的流程圖。在步驟402中,接收企業(yè)專用VLK及其關(guān)聯(lián)的許可文件。為在一或多個客戶機機器上的安裝,可準(zhǔn)備關(guān)聯(lián)多用戶被許可軟件的安裝映像。在步驟404,企業(yè)專用或多用戶許可所有人專用的許可文件可存儲在中央服務(wù)器或配置到客戶機機器。企業(yè)專用或多用戶許可所有人專用的許可文件對于關(guān)聯(lián)于服務(wù)器的客戶機機器是不可自由訪問的??蓽?zhǔn)備專用腳本來完成自動安裝(unattendedinstallation)。
      在步驟406,將軟件安裝在一或多個客戶機機器上。在步驟408,腳本將許可文件的位置設(shè)置在系統(tǒng)中一列已知的位置中,或者配置在客戶機機器上,或者通過向客戶機機器發(fā)布許可文件位置,例如通過窗口管理接口(windowsmanagement interface)(WMI)或通過硬編碼注冊密鑰(hardcoded registrykey)。在步驟410,緊接著登錄,激活例程檢索許可文件的位置。在許可文件在遠(yuǎn)程服務(wù)器上的情況下,腳本可任選地驗證許可文件的位置,例如,通過比較互聯(lián)網(wǎng)協(xié)議(IP)地址。在步驟412,激活例程從許可文件讀取數(shù)據(jù),驗證數(shù)據(jù)是可信的,驗證在許可文件中所指定的環(huán)境特征,并激活軟件。如果在許可文件中所指定的環(huán)境特征在系統(tǒng)連接時不能被驗證,則系統(tǒng)將繼續(xù)在寬限期內(nèi)運行。超過寬限期,系統(tǒng)在減少的功能模式中運行或終端用戶可向軟件銷售商請求延期。如果在系統(tǒng)不連接時不能驗證許可數(shù)據(jù),則軟件將繼續(xù)只以不連接的特性運行,直至系統(tǒng)再次加入網(wǎng)絡(luò)為止。
      注意,前述的實例只是為了說明而提供的,而決不能解釋為對本發(fā)明的限制。還要注意,有多種多樣實現(xiàn)本發(fā)明的方法,例如,合適的API、工具包、驅(qū)動程序代碼、操作系統(tǒng)、控件、獨立的或可下載的軟件對象等,它可使應(yīng)用程序和服務(wù)能夠依照本發(fā)明獲得許可信息。本發(fā)明既從API(或其它軟件對象)觀點、又從與在此所述的VLK許可技術(shù)通信相連的軟件或硬件對象考慮使用本發(fā)明。這樣,在此所述的各種本發(fā)明實現(xiàn)可具有全部是硬件的、部分硬件部分軟件的以及軟件的方面。
      如上面提到的,盡管本發(fā)明的典型實施例是結(jié)合各種計算裝置和網(wǎng)絡(luò)結(jié)構(gòu)描述的,但根本概念可應(yīng)用于任何想要制止盜版的計算裝置或系統(tǒng)中。這樣,依照本發(fā)明的編碼/解碼數(shù)據(jù)技術(shù)可應(yīng)用于多種多樣的應(yīng)用程序和設(shè)備。例如,本發(fā)明的算法和硬件實現(xiàn)可應(yīng)用于計算裝置的操作系統(tǒng),作為設(shè)備上獨立的對象、另一對象的部分、可重用控件、可從服務(wù)器下載的對象、設(shè)備或?qū)ο笈c網(wǎng)絡(luò)間的“中間人(middle man)”、分布式對象、硬件、在存儲器中以及前述任意項的組合等等提供。盡管在此選擇了典型編程語言、名稱和實例來代表各種選擇,但并不是想要限制這些語言、名稱和實例。至于為實現(xiàn)本發(fā)明涉及使用控件的實施例,本發(fā)明不限于.NET的提供(provision),而應(yīng)該被認(rèn)為在依照本發(fā)明實現(xiàn)盜版制止目標(biāo)的軟件(和/或硬件)的任意部分的更廣泛的環(huán)境中。本領(lǐng)域一般技術(shù)人員之一將理解,存在提供實現(xiàn)由本發(fā)明各種實施例實現(xiàn)的相同、相似或等價功能的結(jié)果代碼(object code)和術(shù)語的無數(shù)方法。本發(fā)明還可結(jié)合線上拍賣或投標(biāo)站點(on-line auction or bidding site)實現(xiàn)。
      如所提到的,可結(jié)合硬件或軟件或,在合適的地方,用二者結(jié)合來實現(xiàn)在此所述的各種技術(shù)。這樣,本發(fā)明的方法和裝置或它們的某些方面或部分可表現(xiàn)為包含在諸如軟盤、CD-ROM、硬盤驅(qū)動器或任何其它機器可讀存儲介質(zhì)這樣的實際介質(zhì)中的程序代碼(例如,指令)的形式,在其中,當(dāng)程序代碼由諸如計算機這樣的機器載入并執(zhí)行時,機器就變成實施本發(fā)明的一個裝置。在程序代碼在可編程計算機上執(zhí)行的情況下,計算裝置一般將包括處理器、處理器可讀的存儲介質(zhì)(包括易失的和非易失的存儲器和/或存儲部件)、至少一個輸入設(shè)備以及至少一個輸出設(shè)備。可利用本發(fā)明的盜版制止技術(shù)的一或多個程序,例如通過數(shù)據(jù)處理API、可重用控件等等的使用,更適宜以高水平程序上的或面向?qū)ο蟮木幊陶Z言與計算機系統(tǒng)通信來實現(xiàn)。然而,能以匯編或機器語言來實現(xiàn)程序,如果愿意的話。在任何情況下,語言可以是編譯或解釋語言,并可與硬件實現(xiàn)相結(jié)合。
      本發(fā)明的方法和裝置還可通過包含在一些傳輸介質(zhì)上傳輸?shù)某绦虼a形式中的通信來實施,諸如在電線或電纜上、通過光纖或通過任何形式的傳輸,在其中,當(dāng)由一機器,諸如EPROM、門陣列、可編程邏輯設(shè)備(PLD)、客戶機計算機、錄像機等,或者具有以上典型實施例中所述信號處理能力的接收機,在接收和載入以及執(zhí)行程序代碼時,成為實施本發(fā)明的一個裝置。當(dāng)在通用處理器上實現(xiàn)時,程序代碼結(jié)合處理器提供一唯一的裝置,該裝置運行以調(diào)用本發(fā)明的功能。此外,結(jié)合本發(fā)明使用的任何存儲技術(shù)總可以是硬件和軟件的組合。
      盡管已結(jié)合不同形態(tài)的較佳實施例描述本發(fā)明,應(yīng)該理解,可使用其它的相似實施例,或可在不偏離本發(fā)明的情況下,對所述實施例進行修改或添加來完成本發(fā)明的相同功能。例如,盡管在諸如對等網(wǎng)絡(luò)化環(huán)境這樣的網(wǎng)絡(luò)環(huán)境的背景中描述本發(fā)明的典型網(wǎng)絡(luò)環(huán)境,但本領(lǐng)域熟練技術(shù)人員將認(rèn)識到本發(fā)明并不限于此,且如在本申請中所述的方法可應(yīng)用于任何計算裝置或環(huán)境中,諸如有線的或無線的,游戲控制臺、手持計算機、便攜計算機等,并可應(yīng)用于通過通信網(wǎng)絡(luò)連接并在網(wǎng)絡(luò)上交互的任意數(shù)量的這樣的計算裝置。而且,應(yīng)該強調(diào)多種多樣的計算機平臺,包括手持設(shè)備操作系統(tǒng)和其它應(yīng)用程序?qū)S玫牟僮飨到y(tǒng),都是預(yù)期的,尤其是無線網(wǎng)絡(luò)設(shè)備數(shù)量繼續(xù)激增。更進一步,本發(fā)明可在或橫跨一組處理芯片或設(shè)備上實現(xiàn),且可類似地橫跨一組設(shè)備實現(xiàn)存儲。因此,本發(fā)明不應(yīng)受限于任何單一的實施例,而應(yīng)該在按照所附權(quán)利要求書的廣度和范圍內(nèi)來解釋。
      權(quán)利要求
      1.在多用戶許可環(huán)境中制止軟件盜版的計算機實現(xiàn)的方法,其特征在于,它包括接收嵌入在一企業(yè)專用多用戶許可文件內(nèi)的企業(yè)專用多用戶許可密鑰;認(rèn)證所述企業(yè)專用多用戶許可文件;以及在至少一計算裝置上激活與所述多用戶許可密鑰相關(guān)的軟件包。
      2.如權(quán)利要求1所述的方法,其特征在于,所述企業(yè)專用多用戶許可密鑰和所述企業(yè)專用多用戶許可文件與所述軟件包關(guān)聯(lián),用于安裝在多個包括所述至少一個計算裝置的計算裝置上。
      3.如權(quán)利要求2所述的方法,其特征在于,還包括在所述至少一個計算裝置上安裝所述軟件包。
      4.如權(quán)利要求3所述的方法,其特征在于,安裝所述軟件包是使用用于無人自動(attended)安裝的腳本來執(zhí)行的。
      5.如權(quán)利要求4所述的方法,其特征在于,在所述腳本文件中指定的多用戶許可密鑰及其關(guān)聯(lián)的多用戶許可文件允許一寬限期。
      6.如權(quán)利要求5所述的方法,其特征在于,如果所述機器在線連接且許可數(shù)據(jù)不能被驗證時,則所述系統(tǒng)在寬限期內(nèi)繼續(xù)是全功能的。
      7.如權(quán)利要求6所述的方法,其特征在于,如果所述機器在線連接且許可數(shù)據(jù)不能被驗證時,則所述系統(tǒng)在減少的功能模式中運行。
      8.如權(quán)利要求5所述的方法,其特征在于,如果不能驗證許可數(shù)據(jù)且機器連接在因特網(wǎng)上時,則所述終端用戶可請求簽名的用于寬限期的延期。
      9.如權(quán)利要求4所述的方法,其特征在于,所述腳本文件在所述至少一計算裝置的注冊中設(shè)置純文本的多用戶許可密鑰。
      10.如權(quán)利要求9所述的方法,其特征在于,不能單獨使用所述純文本的多用戶許可密鑰來激活所述軟件包。
      11.如權(quán)利要求2中所述的方法,其特征在于,還包括在所述至少一個計算裝置上存儲所述企業(yè)專用多用戶許可文件的位置。
      12.如權(quán)利要求2所述的方法,其特征在于,所述文件包括大于1.5兆字節(jié)。
      13.如權(quán)利要求1中所述的方法,其特征在于,還包括在一中央位置中存儲所述企業(yè)專用多用戶許可文件。
      14.如權(quán)利要求13所述的方法,其特征在于,所述中央位置在一服務(wù)器上。
      15.如權(quán)利要求13所述的方法,其特征在于,保護所述中央位置不受所述至少一計算裝置的用戶的直接訪問。
      16.如權(quán)利要求1所述的方法,其特征在于,所述企業(yè)專用多用戶許可文件包括從一個其中隨機嵌入有企業(yè)專用多用戶許可密鑰的文件中導(dǎo)出的數(shù)據(jù)。
      17.如權(quán)利要求1所述的方法,其特征在于,用一私人密鑰簽署所述企業(yè)專用多用戶許可文件。
      18.如權(quán)利要求1所述的方法,其特征在于,在一個第一CDROM上提供所述企業(yè)專用多用戶許可文件。
      19.如權(quán)利要求18所述的方法,其特征在于,所述第一CDROM只包含所述企業(yè)專用多用戶許可文件。
      20.如權(quán)利要求18所述的方法,其特征在于,包含所述企業(yè)專用多用戶許可文件的所述第一CDROM與一第一卷標(biāo)(volume label)關(guān)聯(lián)。
      21.如權(quán)利要求20所述的方法,其特征在于,在一個第二CDROM上提供所述軟件包,所述第二CDROM與一第二卷標(biāo)關(guān)聯(lián),并且所述第一卷標(biāo)不同于所述第二卷標(biāo)。
      22.如權(quán)利要求1所述的方法,其特征在于,所述企業(yè)專用多用戶許可文件在與所述軟件包相同的CDROM上。
      23.如權(quán)利要求1所述的方法,其特征在于,所述企業(yè)專用許可文件由所述企業(yè)而非軟件銷售商生成。
      24.如權(quán)利要求23所述的方法,其特征在于,所述企業(yè)從所述軟件銷售商接收專用多用戶許可密鑰。
      25.如權(quán)利要求23所述的方法,其特征在于,所述企業(yè)使用至少一個軟件銷售商提供的硬件設(shè)備來生成所述許可證。
      26.如權(quán)利要求25所述的方法,其特征在于,所述硬件設(shè)備能夠生成不對稱密鑰和操作數(shù)字簽名。
      27.如權(quán)利要求1所述的方法,其特征在于,如果不能驗證許可數(shù)據(jù)且所述機器不能在線連接,則所述系統(tǒng)是全功能的。
      28.一種計算機可讀介質(zhì),其特征在于,它包括用于執(zhí)行如權(quán)利要求1所述的方法的計算機可執(zhí)行指令。
      29.一種經(jīng)調(diào)制的數(shù)據(jù)信號,其特征在于,它傳送用于實施如權(quán)利要求1所述的方法的計算機可執(zhí)行指令。
      30.一種制止軟件盜版的系統(tǒng),其特征在于,它包括與嵌入在企業(yè)專用多用戶許可文件內(nèi)的企業(yè)專用多用戶許可密鑰關(guān)聯(lián)的軟件包;用于存儲所述企業(yè)專用多用戶許可文件的第一計算裝置;運行所述軟件包的第二計算裝置;以及激活例程,用于在響應(yīng)認(rèn)證所述企業(yè)專用多用戶許可文件時,激活所述第二計算裝置上的所述軟件包。
      31.如權(quán)利要求30所述的系統(tǒng),其特征在于,所述第一計算裝置和所述第二計算裝置是同一計算裝置。
      32.如權(quán)利要求30所述的系統(tǒng),其特征在于,所述企業(yè)專用多用戶許可文件包括從其中隨機嵌入有所述企業(yè)專用多用戶許可密鑰的一個文件中得到的數(shù)據(jù)。
      33.如權(quán)利要求30所述的系統(tǒng),其特征在于,所述企業(yè)專用多用戶許可文件包括從企業(yè)提交的計算環(huán)境特征和/或有關(guān)所述企業(yè)的身份和產(chǎn)品的信息得到的數(shù)據(jù)。
      34.如權(quán)利要求33所述的系統(tǒng),其特征在于,所述文件可包括大于1.5兆字節(jié)。
      全文摘要
      將一唯一的多用戶許可密鑰(VLK)提供給一多用戶許可所有人。將一簽訂的文件與被許可的軟件一起提供給多用戶許可所有人,所述文件包含VLK和從多用戶許可所有人所提交的計算機環(huán)境信息得到的數(shù)據(jù)。以任意類型的相當(dāng)大的文件,將許可文件存儲在一中央位置中,諸如在安裝服務(wù)器上或在本地客戶機上。緊接著登錄,讀取許可文件,激活認(rèn)證的數(shù)據(jù)和系統(tǒng)。如果不能認(rèn)證許可數(shù)據(jù),則連接的系統(tǒng)或者在寬限期內(nèi)完全運行,或者以減少的功能運行直至認(rèn)證成功為止。如果系統(tǒng)是不連接的,則系統(tǒng)只能以不連接的特性運行直至再次加入網(wǎng)絡(luò)為止。在完全離線的安裝中,由多用戶許可所有人使用軟件銷售商指派的專用VLK和軟件銷售商提供的安全硬件設(shè)備生成許可文件。軟件包的分發(fā)方法、VLK和許可文件可以是靈活的,包括但不限于單一或多個介質(zhì)。
      文檔編號G06F21/00GK1519676SQ20041000350
      公開日2004年8月11日 申請日期2004年1月30日 優(yōu)先權(quán)日2003年1月31日
      發(fā)明者C·古恩亞克諦, K·E·哈特萊里德, N·張, 譚曉曦, C 古恩亞克諦, 哈特萊里德 申請人:微軟公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1