專利名稱:數(shù)字權(quán)利管理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體上涉及數(shù)字權(quán)利管理。數(shù)字權(quán)利管理與對軟件許可證的管理有關(guān),是為了確保許可證不被侵權(quán)。許可證是通過提供以下機制來實施的控制被許可的軟件產(chǎn)品在用戶設(shè)備處的使用,以便禁止違反許可證的使用。本發(fā)明的實施方案提供了在軟件許可證管理系統(tǒng)中使用的方法和裝置,其中涉及對軟件產(chǎn)品在用戶設(shè)備處的使用的這種控制。
對軟件產(chǎn)品(例如程序、音頻文件、視頻文件等)的許可通常限于使用該軟件產(chǎn)品的單一實例。也就是說,被許可的產(chǎn)品不能同時被一個以上的用戶合法地使用,或者更準確地說,不能同時在超過一個的用戶設(shè)備(例如PC、DVD播放器等)上合法地使用。實施這樣的限制使用的許可證的標準方法是將許可證綁定到特定的用戶設(shè)備。這可以通過以下方式來實現(xiàn)將獨特的設(shè)備標識符,例如處理器id、安全芯片的id或者某些配置細節(jié)的組合編碼到許可證中,并且在運行被許可的軟件之前確保用戶設(shè)備具有正確的設(shè)備標識符。例如,諸如媒體播放器一類的應(yīng)用程序可以在運行被許可的音頻或視頻文件前檢查它是否正運行在具有正確標識符的設(shè)備上。
將軟件許可證綁定到特定的用戶設(shè)備是有缺陷的,即,如果設(shè)備出現(xiàn)故障,那么許可證就不能再被行使。也就是說,這種方法不保證許可證對用戶的可用性。這種可用性的問題目前是通過兩種途徑之一來解決,但這兩種途徑都有新的問題,使得它們對于大多數(shù)應(yīng)用而言不令人滿意。第一種途徑是一開始就將許可證綁定到一個以上的用戶設(shè)備,使得如果當前設(shè)備出現(xiàn)故障,則許可證仍可以由另一個設(shè)備來行使。然而,這樣的話從技術(shù)上無法阻止用戶在所有的設(shè)備上同時行使許可證,而這違反了許可。此外,并非所有的用戶在獲得許可證時都會有一個以上的可用于此目的的設(shè)備。第二種途徑是如果用戶可以證明舊的設(shè)備已出現(xiàn)故障,或者舊設(shè)備的標識已發(fā)生改變,則授予用戶一個新的許可證用于新的設(shè)備。這一般涉及到用戶將舊的設(shè)備交給許可證頒發(fā)者進行檢驗。這種途徑不僅給用戶帶來很大的不便,而且它產(chǎn)生了顯著的隱私問題,因為許可證頒發(fā)者可以獲取有關(guān)用戶的信息,并且有可能獲取存儲在用戶設(shè)備上的數(shù)據(jù)。
一種不同類型的可以在一個以上的用戶設(shè)備上行使軟件許可證的發(fā)證方案就是“浮動許可證”方案。其中,許可證被綁定到某一組用戶(例如一家公司的用戶),并且該方案規(guī)定在任何時候,對于某一軟件產(chǎn)品最多可以有效地使用指定數(shù)量的許可證。同時使用的許可證的指定數(shù)量上限一般是由中央發(fā)證服務(wù)器針對用戶組來控制的。為了運行軟件產(chǎn)品,用戶設(shè)備與發(fā)證服務(wù)器聯(lián)系并且索要臨時許可證,如果有的話(即,當前正在使用中的許可證的數(shù)量不到其上限)它將接收到臨時許可證。然后,許可證一般在使用結(jié)束后被返還給發(fā)證服務(wù)器。由于存在與許可證相關(guān)聯(lián)的某一有效時間或者使用期,所以說許可證是臨時的。因此,有限的離線使用是允許的,但是當超過使用期時,必須獲得新的許可證以繼續(xù)運行軟件產(chǎn)品。雖然該方案使得許可證可在不同的用戶設(shè)備之間轉(zhuǎn)移,但是它設(shè)計的目的是為了控制軟件產(chǎn)品在可信環(huán)境(例如公司網(wǎng)絡(luò))內(nèi)的多實例使用。它沒有解決在更普通的環(huán)境中單實例使用的許可證所具有的上述問題。
本發(fā)明的第一方面提供了一種軟件許可證管理系統(tǒng),在該系統(tǒng)中用數(shù)據(jù)令牌來代表使用軟件產(chǎn)品的許可證。該系統(tǒng)包括用于控制軟件產(chǎn)品在用戶設(shè)備上的使用的軟件控制器;以及用于經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)與軟件控制器通信的許可證管理服務(wù)器。軟件控制器被調(diào)適為基本上只在與許可證管理服務(wù)器提供給軟件控制器的當前數(shù)據(jù)令牌相關(guān)聯(lián)的使用期內(nèi)才允許對軟件產(chǎn)品的所述使用;允許用戶對依存于由許可證管理服務(wù)器提供的當前數(shù)據(jù)令牌的交換令牌的訪問,從而可以將交換令牌作為當前數(shù)據(jù)令牌提供給另一個所述軟件控制器;并且(a)為了將軟件產(chǎn)品的許可證延長為超過與許可證管理服務(wù)器所提供的當前數(shù)據(jù)令牌相關(guān)聯(lián)的使用期,(b)如果當前數(shù)據(jù)令牌是來自另一個所述軟件控制器的交換令牌,則經(jīng)由網(wǎng)絡(luò)將當前數(shù)據(jù)令牌和交換令牌之一提供給許可證管理服務(wù)器,以換取新的數(shù)據(jù)令牌來替換當前數(shù)據(jù)令牌。
此外,許可證管理服務(wù)器被調(diào)適為經(jīng)由網(wǎng)絡(luò)向軟件控制器提供用于替換當前數(shù)據(jù)令牌并且具有與之相關(guān)聯(lián)的新的使用期的新的數(shù)據(jù)令牌,用于交換已從軟件控制器接收的當前數(shù)據(jù)令牌或者與當前數(shù)據(jù)令牌相對應(yīng)的交換令牌;以及檢測從軟件控制器接收來用于交換的所述令牌是否對應(yīng)于已經(jīng)由許可證管理服務(wù)器交換的令牌。
這樣,在實施本發(fā)明的系統(tǒng)中,軟件控制器根據(jù)由許可證管理服務(wù)器提供的、代表軟件產(chǎn)品的許可證的當前數(shù)據(jù)令牌來控制軟件產(chǎn)品在用戶設(shè)備上的使用。具體地說,數(shù)據(jù)令牌具有相關(guān)聯(lián)的使用期,軟件控制器基本上只在該使用期內(nèi)允許對軟件產(chǎn)品的使用。但是,當有必要將許可證延長為超過當前令牌的使用期時(上述情況(a)),軟件控制器可以將當前令牌(或者依存于當前令牌的交換令牌)提供給許可證管理服務(wù)器以換取新的數(shù)據(jù)令牌。從許可證管理服務(wù)器返回的新的數(shù)據(jù)令牌具有新的使用期。由于新的數(shù)據(jù)令牌變成軟件控制器所持有的當前令牌,所以軟件控制器允許軟件產(chǎn)品在該新的使用期內(nèi)使用。利用這種方式來交換令牌,許可證就可以不斷地延長,從而允許軟件產(chǎn)品在正常操作狀態(tài)下連續(xù)使用。然而,為了保證許可證在用戶設(shè)備發(fā)生故障時對用戶的可用性,軟件控制器允許用戶訪問上述交換令牌。該交換令牌因而可被傳遞到另一個類似的軟件控制器,例如用于新的用戶設(shè)備的軟件控制器,并且如上所述地換回新的數(shù)據(jù)令牌。這樣就保護了合法用戶避免因設(shè)備故障而引起的許可證丟失,但是該系統(tǒng)的三項特征一起用來防止濫用許可證的欺騙企圖。具體地說,這些特征阻止在原設(shè)備上繼續(xù)使用的同時在一個或多個其他設(shè)備上使用交換令牌的企圖。下面按順序解釋這三項特征。
首先,雖然如上所述,當許可證管理服務(wù)器已提供了當前數(shù)據(jù)令牌時,軟件控制器將允許對軟件產(chǎn)品的使用,但是這不適用于當前數(shù)據(jù)令牌是交換令牌的情形(當從第一軟件控制器獲得的交換令牌被提供給另一個軟件控制器時就會發(fā)生這種情形)。在這種情形下,即,如果當前數(shù)據(jù)令牌是交換令牌(上述情況(b)),則軟件控制器將把交換令牌提供給許可證管理服務(wù)器進行交換。結(jié)果,交換令牌可以被交換但是不可以被使用。
第二,許可證管理服務(wù)器可以檢測從軟件控制器接收來用于交換的令牌是否對應(yīng)于已經(jīng)由許可證管理服務(wù)器交換的令牌(即,接收到的令牌是否與已經(jīng)交換的某個令牌相同,或者接收到的令牌是不是與已交換的數(shù)據(jù)令牌相對應(yīng)的交換令牌或反之)。因此,如果從一個軟件控制器獲得的交換令牌被提供給第二軟件控制器,那么第二軟件控制器就可以用它來換取新的數(shù)據(jù)令牌,從而繼續(xù)軟件產(chǎn)品的使用,但是如果第一軟件控制器接下來試圖使用同一交換令牌(或者對應(yīng)的當前數(shù)據(jù)令牌)來獲得新的數(shù)據(jù)令牌,那么這將被許可證管理服務(wù)器檢測到。
第三,如果來自第一軟件控制器的交換令牌已被復制到第二軟件控制器并用于換取新的數(shù)據(jù)令牌,那么與對應(yīng)于該交換令牌的原數(shù)據(jù)令牌相關(guān)聯(lián)的使用期將保證即使該使用期尚未過期,第一軟件控制器對軟件產(chǎn)品的繼續(xù)使用將僅僅限于受限的持續(xù)期內(nèi)。當有必要將許可證延長為超過所述使用期時,由于上述第二特征,許可證管理服務(wù)器將檢測到第一軟件控制器獲得新數(shù)據(jù)令牌的企圖。這樣,即使原數(shù)據(jù)令牌和新數(shù)據(jù)令牌的使用期交疊,發(fā)生欺騙性的同時使用的機會也是很有限的。此外,下面描述的優(yōu)選特征允許潛在發(fā)生的同時使用期如愿地被消除或者最小化。
由于交換令牌依存于當前數(shù)據(jù)令牌,所以每當從許可證管理服務(wù)器獲得新的當前令牌時,軟件控制器就允許訪問新的交換令牌。總之,交換令牌可以按照多種方式依存于當前數(shù)據(jù)令牌,下面會進一步地討論。然而,在特定的優(yōu)選實施方案中,交換令牌只是當前數(shù)據(jù)令牌的拷貝。由于當前數(shù)據(jù)令牌和交換令牌完全相同,所以在交換過程中總是將當前數(shù)據(jù)令牌提供給許可證管理服務(wù)器,并且許可證管理服務(wù)器可以通過檢測是否接收到兩次相同的數(shù)據(jù)令牌用于交換,來檢測雙次交換企圖。
本發(fā)明的第二方面還是提供了一種軟件許可證管理系統(tǒng),在該系統(tǒng)中用數(shù)據(jù)令牌來代表使用軟件產(chǎn)品的許可證,該系統(tǒng)包括用于控制軟件產(chǎn)品在用戶設(shè)備上的使用的軟件控制器;以及用于經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)與軟件控制器通信的許可證管理服務(wù)器。然而,這里的軟件控制器被調(diào)適為基本上只在與許可證管理服務(wù)器提供給軟件控制器的當前數(shù)據(jù)令牌相關(guān)聯(lián)的使用期內(nèi)才允許對軟件產(chǎn)品的所述使用;接收與所述許可證相關(guān)聯(lián)的交換令牌;并且(a)為了將軟件產(chǎn)品的許可證延長為超過與許可證管理服務(wù)器所提供的當前數(shù)據(jù)令牌相關(guān)聯(lián)的使用期,(b)如果所述交換令牌是在缺少當前數(shù)據(jù)令牌的情況下由軟件控制器接收的,則經(jīng)由網(wǎng)絡(luò)將當前數(shù)據(jù)令牌和交換令牌之一提供給許可證管理服務(wù)器,以換取新的數(shù)據(jù)令牌。
這里的許可證管理服務(wù)器被調(diào)適為存儲在許可證下被提供給軟件控制器的每個數(shù)據(jù)令牌的使用期,并且經(jīng)由網(wǎng)絡(luò)向軟件控制器提供新的數(shù)據(jù)令牌,用于交換已從軟件控制器接收的當前數(shù)據(jù)令牌或者所述交換令牌,所述新的數(shù)據(jù)令牌具有與在許可證下以前提供的數(shù)據(jù)令牌的使用期不交疊的新的使用期。
在本發(fā)明的該方面的實施方案中,交換令牌不象在本發(fā)明的第一方面的實施方案中那樣特別地依存于當前數(shù)據(jù)令牌,而只是與許可證管理服務(wù)器發(fā)出數(shù)據(jù)令牌所依據(jù)的許可證有關(guān)聯(lián)。例如,這里的交換令牌可能只是許可證的固定表達,比如實際上是“你被允許在許可證號Y下使用軟件產(chǎn)品X”這樣的表達,或者用戶知道并且可以提供給任何軟件控制器的其他任意形式的許可證。因此,這些實施方案中的軟件控制器不必象在本發(fā)明的第一方面的實施方案中一樣允許對交換令牌的用戶訪問。但是,在其他方面,軟件控制器的正常操作可以與前述基本相同軟件控制器通過向許可證管理服務(wù)器提供交換令牌或當前令牌,從許可證管理服務(wù)器獲得新的數(shù)據(jù)令牌以替換當前令牌,從而允許對軟件產(chǎn)品的繼續(xù)使用(上述情況(a))。如果發(fā)生設(shè)備故障,用戶可以和前面一樣向新的軟件控制器提供交換令牌。沒有當前數(shù)據(jù)令牌但是接收到交換令牌(上述情況(b))的新的軟件控制器可以向許可證管理服務(wù)器提供交換令牌以獲得當前數(shù)據(jù)令牌,從而可以利用該軟件控制器繼續(xù)正常操作。但是,這里的許可證管理服務(wù)器的操作用于防止在一個以上的軟件控制器上的欺騙性的同時使用。具體地說,對于在許可下被提供給軟件控制器的每個新的數(shù)據(jù)令牌,許可證管理服務(wù)器記錄相關(guān)聯(lián)的使用期。當在許可證下發(fā)出下一個新的數(shù)據(jù)令牌時,設(shè)定該下一個令牌的新的使用期,使得它不與為先前提供的令牌所存儲的使用期交疊。按照這種方式,許可證管理服務(wù)器保證每個使用期只給出一個當前數(shù)據(jù)令牌,即,在任何給定的時刻都只有一個允許對軟件產(chǎn)品的使用的數(shù)據(jù)令牌。
從以上描述中將會清楚實施本發(fā)明的第一和第二方面的許可證管理系統(tǒng)通過允許許可證以簡單方便的方式傳遞,同時禁止濫用該系統(tǒng)以及違反許可證的企圖,藉此保證許可證對合法用戶的可用性。因而,針對與上述實施單實例許可證有關(guān)的問題,本發(fā)明的實施方案提供了良好的解決方案。
一般而言,任何方便的形式的數(shù)據(jù)令牌都可以用在本發(fā)明的實施方案中。然而,在具體的優(yōu)選實施方案中,數(shù)據(jù)令牌包括硬幣(coin)。硬幣是一種特殊形式的數(shù)據(jù)令牌,具有特殊的密碼屬性,它已知用作電子支付系統(tǒng)中的一種支付手段,例如用于在線購買或者銀行交易。硬幣的一種具體特征就是利用某些密碼屬性,它們可以被匿名地“花費”(即,換取適當?shù)臄?shù)值)。也就是說,通過在花費過程中使用適當?shù)乃惴?,硬幣的密碼屬性使真實性得到保證,同時使花費者保持匿名。硬幣技術(shù)的原理以及對硬幣的多種有效實現(xiàn)(即,簡潔的硬幣表達以及用于發(fā)行和交換硬幣的有效協(xié)議)在本領(lǐng)域中是公知的,以下是典型的背景技術(shù)參考文獻Stefan Brands,“Rethinking Public Key Infrastructures andDigital CertificatesBuilding in Privacy”,MIT出版社(The MITPress),2000年8月;“Security without IdentificationTransaction Systems to makeBig Brother Obsolete”,David Chaum,Communications of the ACM28/10(1985)1030-1044;“Untraceable Electronic Cash”,David Chaum et al.,Crypto’88,LNCS 403,Springer-Verlag,Berlin 1990,319-327;“Privacy Protected Payments-Unconditional Payer and/or PayeeUntraceability”,David Chaum,SMART CARD 2000The Future ofIC Cards,Proceedings of the IFIP WG 11.6 International Conference1987,North-Holland,Amsterdam,1989,69-93;“Untraceable Off-line Cash in Wallet with Observers”,StefanBrands,Crypto’93,LNCS 773,Springer-Verlag,Berlin 1994,302-318;這里不必討論有關(guān)硬幣系統(tǒng)的實施細節(jié),對于本發(fā)明而言,只需要理解硬幣實際上是一種匿名數(shù)據(jù)令牌就可以了,即,它可以被用在交易中,同時保持用戶匿名。當然,硬幣系統(tǒng)的本性一般會使得硬幣也可以提供針對欺騙的高級別的安全性。硬幣也可以提供其他需要的屬性,例如下面將會討論的“不可鏈接性(unlinkability)”的屬性。因此,在本發(fā)明的優(yōu)選實施方案中將硬幣用作數(shù)據(jù)令牌是有很多優(yōu)點的,提供了良好的安全性以及對用戶隱私的保護。
總體而言,實施本發(fā)明的許可證管理系統(tǒng)可以用于任何類型的軟件產(chǎn)品,例如技術(shù)程序或者數(shù)據(jù)文件,比如歌曲、電影或其他音頻/視頻文件,并且有關(guān)的用戶設(shè)備可以是可使用這種軟件的任何類型的設(shè)備,例如DVD或者音樂播放器、移動電話、PC或者其他計算設(shè)備。在一些實施方案中,軟件控制器可以用與用戶設(shè)備一起使用的專用硬件來實現(xiàn)。但是,典型地,軟件控制器可以用運行在用戶設(shè)備上的軟件來實現(xiàn)。因此,也可以想到這樣的實施方案用于實現(xiàn)軟件控制器的程序構(gòu)成被許可的軟件產(chǎn)品自身的一部分,例如當被許可的產(chǎn)品是技術(shù)程序時?;蛘?,軟件控制器可以用形成用于運行被許可產(chǎn)品的平臺的應(yīng)用程序來實現(xiàn),例如用于運行音頻或視頻文件的媒體播放器。
在系統(tǒng)中用給定的數(shù)據(jù)令牌來表示的使用軟件產(chǎn)品的許可證實際上是臨時的,這是因為軟件控制器基本上只在該令牌的使用期內(nèi)才允許使用所述軟件產(chǎn)品??梢韵氲竭@樣的實施方案軟件控制器將允許在使用期外對產(chǎn)品的某種有限使用,例如只在某些特殊情況下才允許,但是通常情況下在使用期外都禁止使用。在優(yōu)選實施方案中為了簡化,軟件控制器將只在當前數(shù)據(jù)令牌的使用期內(nèi)允許使用,從而如果該使用期屆滿而又沒有獲得新的數(shù)據(jù)令牌(它將隨后變?yōu)樾碌漠斍傲钆?的話,將阻止對軟件產(chǎn)品的使用。
在所述系統(tǒng)中可以用多種方式來定義與數(shù)據(jù)令牌相關(guān)聯(lián)的使用期。例如,在一些系統(tǒng)中,使用期可以在軟件控制器中被預(yù)設(shè)為從接收到當前令牌開始的指定時間。但是優(yōu)選地,在數(shù)據(jù)令牌自身中指示使用期,例如指示為從接收起的指定時間,或者用指定的結(jié)束時間來指示使用期,或者用起始和結(jié)束時間來指示使用期。
為方便用戶,優(yōu)選地由軟件控制器來自動完成獲得新的數(shù)據(jù)令牌的交換過程。具體地說,對于在上述情況(a)(即,為了將許可證延長為超過當前令牌的使用期)中的交換過程,軟件控制器可以在當前使用期屆滿時或臨近屆滿時,或者當設(shè)備在發(fā)生觸發(fā)事件后下一次在線時自動地開始交換過程。這使得在可以訪問網(wǎng)絡(luò)的情況下,許可證續(xù)展過程對用戶是透明的。
在本發(fā)明的第一方面的實施方案中,在用當前令牌換取新的令牌時,新令牌的使用期可以被設(shè)置為在舊令牌的使用期結(jié)束時開始。這會使軟件產(chǎn)品在兩個用戶設(shè)備上的同時使用變?yōu)椴豢赡?。在這樣的實施方案中,軟件控制器在交換令牌前可以一直等待,直到當前使用期屆滿,但是在這樣的情況下,如果此時沒有任何網(wǎng)絡(luò)連接可用的話,就存在著中斷的可能性。或者,如果交換過程可以在當前使用期屆滿之前開始的話,軟件控制器可以保留舊的、被交換的令牌的拷貝,允許在舊令牌的未屆滿的使用期內(nèi)使用軟件產(chǎn)品,直到新令牌的使用期開始。然而,為了簡化,在這些實施方案中優(yōu)選的是新令牌的使用期在發(fā)出該令牌時開始。這樣,如果在舊令牌到期前獲得了新令牌,受限的同時使用將是可能的。但是,在這里的優(yōu)選實施方案中,對于由軟件控制器利用交換過程分別獲得的第一、第二和第三數(shù)據(jù)令牌的鏈條(每個令牌用于替換鏈條中的前一令牌),系統(tǒng)保證第一和第三數(shù)據(jù)令牌的使用期不會交疊。更一般地說,優(yōu)選的系統(tǒng)被調(diào)適為在由軟件控制器從許可證管理服務(wù)器接收的數(shù)據(jù)令牌的鏈條中,與每間隔一個的數(shù)據(jù)令牌相關(guān)聯(lián)的使用期不會交疊。在這些實施方案中,這項特征可以通過對使用期進行適當?shù)脑O(shè)置并/或控制交換過程的次數(shù)來以各種方式實現(xiàn),防止了由兩個以上的軟件控制器同時使用軟件產(chǎn)品。當然,潛在的由兩個軟件控制器同時使用的情況只存在于前面解釋的有限期間內(nèi)。此外,這樣的同時使用可以通過以下描述的優(yōu)選特征而減少到最小程度。
在具體的優(yōu)選實施方案中,交換期除了與使用期有關(guān)外,還可以與每個數(shù)據(jù)令牌有關(guān)。在這樣的實施方案中,系統(tǒng)被調(diào)適為軟件控制器僅在與當前數(shù)據(jù)令牌相關(guān)聯(lián)的交換期內(nèi)可以獲得用于替換所述當前數(shù)據(jù)令牌的新數(shù)據(jù)令牌。例如,軟件控制器可以被調(diào)適為僅在與當前數(shù)據(jù)令牌相關(guān)聯(lián)的交換期內(nèi)開始交換過程。就象使用期一樣,優(yōu)選地(但不是一定)在數(shù)據(jù)令牌自身中指示交換期,例如通過起始時間或者通過起始和結(jié)束時間來指示。軟件控制器可以在交換期開始時,或者在交換期開始后一旦可以對許可證管理服務(wù)器進行在線訪問,就嘗試交換當前數(shù)據(jù)令牌。
在本發(fā)明的第一方面的實施方案中,交換期相對于使用期的時序關(guān)系提供了用于控制上述潛在的同時使用期的方便的機制。雖然交換期可以在使用期屆滿時開始,從而消除同時使用的可能性,但是優(yōu)選的是交換期與使用期交疊,以避免前面所討論的可能的中斷。這種交疊的程度決定了最大可能的同時使用期,并且可以被設(shè)置為在給定的系統(tǒng)中視為合適的程度,下面將進一步地討論。
在軟件控制器允許對交換令牌的用戶訪問的實施方案中,可以以多種不同的方式來實現(xiàn)這一目的,下面將描述具體的例子。類似地,在本發(fā)明的第一方面的實施方案中的許可證管理服務(wù)器可以采用多種機制來檢測雙次交換企圖,下面將進一步描述。
雖然到目前為止已結(jié)合單個軟件產(chǎn)品討論了操作,但是在實際中,軟件控制器可以控制多個軟件產(chǎn)品的使用,就象針對每個軟件產(chǎn)品所描述的那樣,提供和交換各個數(shù)據(jù)令牌。這里,可以在數(shù)據(jù)令牌自身中指示與給定的數(shù)據(jù)令牌有關(guān)的特定軟件產(chǎn)品的標識。然而,如果用戶有大量軟件產(chǎn)品的許可證,例如,幾百首歌曲的許可證,那么針對各個產(chǎn)品的數(shù)據(jù)令牌的提供和更新就變得不那么實際了。在這樣的情形中,可能想要在單個總括許可證下處置所有的許可證,并且通過對總括許可證應(yīng)用以上系統(tǒng)來管理各個許可證。為此,在實施本發(fā)明的具體系統(tǒng)中,數(shù)據(jù)令牌可以代表使用多個軟件產(chǎn)品的許可證。在這樣的系統(tǒng)中,軟件控制器可以被進一步調(diào)適為將指示所述多個軟件產(chǎn)品的產(chǎn)品數(shù)據(jù)存儲在備份存儲位置處,并且基本上只在與許可證管理服務(wù)器所提供的當前數(shù)據(jù)令牌相關(guān)聯(lián)的使用期內(nèi)允許使用每個軟件產(chǎn)品。下面將給出解釋這類許可證管理系統(tǒng)的操作的各種例子。
本發(fā)明進一步的各個方面提供了此前描述的許可證管理系統(tǒng)的軟件控制器和許可證管理服務(wù)器。具體地說,本發(fā)明進一步的各個方面提供了如權(quán)利要求21和權(quán)利要求23中表述的軟件控制器以及如權(quán)利要求22和24中表述的許可證管理服務(wù)器。本發(fā)明的各個其他方面提供了用于實現(xiàn)這樣的軟件控制器和許可證管理服務(wù)器的計算機程序。另外,一般地,在這里參考實施本發(fā)明的裝置來描述各項特征的情況下,相應(yīng)的特征可以出現(xiàn)在實施本發(fā)明的方法中,反之亦然。因此,本發(fā)明進一步的各個方面提供了用于控制軟件產(chǎn)品在用戶設(shè)備處的使用的方法(如權(quán)利要求29或權(quán)利要求31所述)以及用于許可證管理服務(wù)器的操作的方法(如權(quán)利要求30或權(quán)利要求32所述)。
下面參考附圖以示例的方式來描述本發(fā)明的實施方案,在附圖中
圖1是圖解說明實施本發(fā)明的第一軟件許可證管理系統(tǒng)的示意框圖;圖2和3是圖解說明由圖1的系統(tǒng)中的軟件控制器執(zhí)行的操作的流程圖;圖4是圖解說明在圖1系統(tǒng)中的許可證管理服務(wù)器的操作的流程圖;圖5是圖解說明在圖1系統(tǒng)中,在交換的數(shù)據(jù)令牌的鏈條中的相繼數(shù)據(jù)令牌的使用期之間的關(guān)系的圖;圖6是圖解說明實施本發(fā)明的第二軟件許可證管理系統(tǒng)的示意框圖;以及圖7是圖解說明實施本發(fā)明的第三軟件許可證管理系統(tǒng)的示意框圖。
圖1的示意解說明了軟件許可證管理系統(tǒng)的第一實施方案的主要組件和基本操作。該系統(tǒng)總地用標號1來表示,它包括以DRM(數(shù)字權(quán)利管理)服務(wù)器2的形式出現(xiàn)的許可證管理服務(wù)器,該服務(wù)器由軟件產(chǎn)品的許可證頒發(fā)者(或者其代表)來運行。DRM服務(wù)器2可以經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)5(例如因特網(wǎng))與用戶設(shè)備3(例如用戶PC)通信,而軟件產(chǎn)品4例如可以運行在該用戶設(shè)備3上。更具體地說,該系統(tǒng)包括軟件控制器6a,用于控制對用戶設(shè)備上的軟件產(chǎn)品4的訪問,并且當存在網(wǎng)絡(luò)連接時,軟件控制器6a和DRM服務(wù)器2可以經(jīng)由網(wǎng)絡(luò)5通信,以實現(xiàn)以下描述的功能。
雖然在圖中用單個模塊來表示DRM服務(wù)器2,但是服務(wù)器2一般可以用一臺或多臺計算機來實現(xiàn),這些計算機運行著將計算機配置為實現(xiàn)下述功能的軟件。軟件控制器6a一般用硬件或軟件或它們的組合來實現(xiàn)。例如,軟件控制器可以用與用戶設(shè)備相關(guān)聯(lián)的專用(優(yōu)選的是防竄改的)硬件來實現(xiàn)。但是,在本發(fā)明中,假定軟件控制器是用運行在用戶設(shè)備3上、用于控制軟件產(chǎn)品4的使用的應(yīng)用程序來實現(xiàn)的。例如,實現(xiàn)軟件控制器6a的應(yīng)用程序可以是用于控制對音頻或視頻文件形式的軟件產(chǎn)品4的訪問的媒體播放器。但是,一般來說,當用計算機程序來實現(xiàn)軟件控制器或DRM服務(wù)器的功能時,這樣的程序可以構(gòu)成用于實現(xiàn)多種多樣的、更一般的控制功能的更大程序的一部分,并且可以獨立地提供,用以加載到計算設(shè)備中,以將該設(shè)備配置為執(zhí)行所描述的功能。具體地說,構(gòu)成這樣的計算機程序的程序代碼裝置可以被提供為包含在計算機可讀介質(zhì)中,例如磁盤或者發(fā)送給用戶或系統(tǒng)操作員的電子傳輸,用以加載到計算設(shè)備中。
在系統(tǒng)1的操作中,用數(shù)據(jù)令牌來代表使用軟件產(chǎn)品4的臨時許可證,該數(shù)據(jù)令牌的形式為DRM服務(wù)器2提供給軟件控制器6a的硬幣7,下面將進一步描述。為了簡化,以下描述將針對單個軟件產(chǎn)品4,但是在實際當中,軟件控制器6a可以控制多個軟件產(chǎn)品4的使用,其中每個軟件產(chǎn)品4都具有用相應(yīng)的硬幣7表示的臨時許可證。因而,與給定的硬幣有關(guān)的特定產(chǎn)品4的標識可以被編碼在硬幣7中。硬幣7可以用前面所討論的公知方式來實現(xiàn),并且具有與硬幣系統(tǒng)相關(guān)聯(lián)的特定密碼屬性,因而可以在下述交換過程中匿名交換硬幣(即,不識別提供硬幣來交換的設(shè)備)。除了硬幣的基本屬性外,硬幣7具有兩個關(guān)聯(lián)的有效期,即使用期和交換期。使用期用起始時間P1和結(jié)束時間P2來定義,而交換期類似地分別用起始時間和結(jié)束時間Q1和Q2來定義。這些用各自的起始時間和結(jié)束時間來定義的期間使用將數(shù)值編碼到硬幣中的標準技術(shù),以公知的方式被編碼在硬幣中。在該實施方案中,使用期和交換期被定義為在兩個時期之間只有短的交疊部分。具體地說,Q1比P2提前一段與使用期P2-P1相比相對較短的時期。舉個例子,使用期P2-P1可以是一個星期,而交疊部分P2-Q1可以僅為一天。交換期Q2-Q1與使用期相比可以比較長,例如幾年。使用期的起始時間,即時間P1在該實施方案中被設(shè)置為硬幣被提供給軟件控制器6a的時間。在圖2的示意流程圖中表示出了軟件控制器在接收到這樣的硬幣后的操作,下面的描述一開始假定軟件控制器剛剛從DRM服務(wù)器2接收到硬幣。
用圖2的步驟10來表示軟件控制器6a對硬幣7的接收。在步驟11中,軟件控制器判斷接收到的硬幣是不是復制硬幣(見下文)。由于在這種情況下硬幣7是從DRM服務(wù)器2接收的,所以硬幣不是復制硬幣,操作繼續(xù)到步驟12。這里,軟件控制器提示用戶對新接收的硬幣制作拷貝。例如,軟件控制器6a可以顯示消息,要求用戶輸入存儲位置,例如存儲在插入用戶設(shè)備3的磁盤上,并且響應(yīng)于適當?shù)挠脩魟幼?,軟件控制器將硬?的拷貝供給所提供的存儲位置。按照這種方式,硬幣7的拷貝如圖1所示被實際輸出到用戶。(因此,在該系統(tǒng)中,復制硬幣用作前面所討論的交換令牌,因而在該實施方案中,交換令牌(復制硬幣)和當前數(shù)據(jù)令牌(硬幣7)是相同的)。接著,軟件控制器實際上等待交換期的開始,例如通過將當前時間t與編碼在硬幣7中的時間Q1進行比較,如圖2中的判決步驟13所示。一旦交換期開始,即t≥Q1,則操作前進(步驟13處的“是”)到步驟14,在該步驟,軟件控制器6a自動開始硬幣交換過程。該過程包括軟件控制器經(jīng)由網(wǎng)絡(luò)5向DRM服務(wù)器2提供當前硬幣7以換取新硬幣。在步驟15中,軟件控制器判斷交換過程是否已成功,即是否已從DRM服務(wù)器2成功地接收到新硬幣。如果沒有(步驟15處的“否”),則軟件控制器在步驟16處判斷所述交換是否已被DRM服務(wù)器拒絕(下面將進一步討論)。如果是的(步驟16處的“是”),則軟件控制器在步驟17處顯示消息以告知用戶,然后所述過程終止。如果不是(步驟16處的“否”),即,如果交換過程由于某種其他原因而失敗,例如連接中斷或者網(wǎng)絡(luò)連接不可用,則軟件控制器在由圖中步驟18表示的適當?shù)闹卦囇訒r后將重試交換過程。但首先,軟件控制器在步驟19處檢查硬幣的交換期是否還未屆滿,即t<Q2。如果交換期已屆滿(步驟19處的“否”),則操作前進到步驟17,在這里用戶被告知失敗,并且過程終止。假設(shè)交換期尚未屆滿(步驟19處的“是”),則操作退回到步驟14,重試交換過程。假設(shè)交換過程最終成功(步驟15處的“是”),則對于舊硬幣7而言過程結(jié)束。于是,從DRM服務(wù)器接收的新硬幣變?yōu)樾碌漠斍坝矌?,并且圖2的過程對于該硬幣重復進行。這個新的硬幣7具有新的上述使用期和交換期,其中新的使用期的起始時間P1被設(shè)置為提供新硬幣的時間。按照這種方式,使用軟件產(chǎn)品4的許可證被延長為超過舊硬幣的使用期,并且可以隨著每個相繼的當前硬幣被換為新硬幣而不斷續(xù)展。
在圖2過程進行中的任意給定時刻,軟件控制器6a都根據(jù)當前硬幣7來控制軟件產(chǎn)品4的使用。具體地說,在圖3中示出了軟件控制器響應(yīng)于運行軟件產(chǎn)品4的用戶請求的操作。在該圖中用步驟30來代表對用戶請求的接收,然后操作前進到步驟31,在該步驟中(假設(shè)軟件控制器可以持有多個軟件產(chǎn)品的硬幣),軟件控制器檢查是否對有關(guān)的軟件產(chǎn)品4持有當前硬幣。假設(shè)編碼在當前硬幣中的產(chǎn)品標識與軟件產(chǎn)品4的標識匹配(步驟31處的“是”),那么軟件控制器6a在步驟32檢查硬幣7的使用期是否尚未屆滿,即是否t<P2。假設(shè)是的(步驟32處的“是”),則在許可證下允許使用,并且軟件控制器將在步驟33中運行軟件產(chǎn)品4。然而,返回到步驟31,如果在這里沒有為軟件產(chǎn)品找到當前硬幣(步驟31處的“否”),則該產(chǎn)品不被許可。于是,軟件控制器在步驟34處顯示消息,拒絕運行請求,并且過程結(jié)束。類似地,如果在步驟32處發(fā)現(xiàn)軟件產(chǎn)品的當前硬幣的使用期已屆滿(因為該硬幣的交換由于某種原因而失敗),則將在步驟34處拒絕軟件產(chǎn)品的運行,并且過程終止。(在適當?shù)那闆r下,如果沒有任何過程在進行中,硬幣交換過程可以在此刻開始)。
回到圖2,上面已經(jīng)針對由DRM服務(wù)器2提供軟件控制器6a所接收的硬幣的情形描述了操作。然而,軟件控制器還可以接收由用戶提供的復制硬幣。例如,假定用戶設(shè)備3崩潰,妨礙了對軟件控制器6a的訪問。用戶可以獲取新的用戶設(shè)備,該用戶設(shè)備具有新的、類似的軟件控制器,如圖1中的6b所示。(在該實施方案中,軟件控制器6b在各個相關(guān)方面都與軟件控制器6a以相同的方式工作,因而對其中一個的操作的描述同樣適用于另一個)。通過將交換令牌(這里是用戶先前存儲的復制硬幣)輸入到新的控制器,可以將軟件產(chǎn)品4的許可證傳遞到軟件控制器6b。在圖2的步驟10處接收到該硬幣后,將在步驟11中將該硬幣識別為復制硬幣。(基本上,未依照上述交換過程接收的硬幣在這里都會被識別為復制硬幣)。然后操作直接前進(步驟11處的“是”)到步驟19,檢查該復制硬幣的交換期是否尚未屆滿。如果已屆滿,則將在步驟17處告知用戶,并且過程將終止。但是,假設(shè)交換過程在步驟19尚未屆滿,則操作將前進到步驟14,在該步驟中,在網(wǎng)絡(luò)5上開始硬幣交換過程,并且該過程如上所述地進行。于是,復制硬幣被軟件控制器自動地交換為新硬幣。如上所述,在新硬幣下可以繼續(xù)軟件產(chǎn)品的使用,從而,許可證被成功地傳遞到新的軟件控制器6b。
在一些實施方案中,例如,如果初始的產(chǎn)品許可證是在線購買的,那么當為軟件產(chǎn)品第一次獲取許可證時,可以由DRM服務(wù)器2來提供具有上述使用期和交換期的初始硬幣。然而,優(yōu)選地,當用戶購買全新的許可證時(例如,在商店或者從網(wǎng)站購買軟件產(chǎn)品),他收到可以輸入上述軟件控制器6a、6b的特殊硬幣。該初始硬幣沒有使用期,但是具有交換期,它是用該交換期的結(jié)束時間Q2來定義的。當被提供給軟件控制器時,該初始硬幣(在與DRM服務(wù)器之間的交換過程后還未被提供)將受到和上述復制硬幣完全一樣的對待。因此,假定軟件控制器在初始硬幣的交換期屆滿之前接收到該初始硬幣,那么將通過前面已解釋的過程來用它換取新的當前硬幣,操作按照正常的方式繼續(xù)。
在圖4中圖解說明了DRM服務(wù)器2在從軟件控制器6a接收到用于交換的硬幣后的操作。在圖中用步驟40來表示對硬幣的接收。操作立即前進到步驟41,DRM服務(wù)器2檢查以前是否收到過相同的硬幣并且換取了新的硬幣。在該實施方案中,DRM服務(wù)器是在步驟41中通過將接收的硬幣與所存儲的服務(wù)器以前已接收并交換的硬幣的列表進行比較而完成這一工作的。如果接收的硬幣與該列表上的某一硬幣匹配,如判決步驟42的“是”分支所示,則接收的硬幣已經(jīng)被“花掉”。在這種情況下,操作前進到步驟43,DRM服務(wù)器向軟件控制器返回拒絕通知,并且過程終止。然而,假設(shè)接收的硬幣尚未被花掉(步驟42處的“否”),則該硬幣可以換取新的硬幣。在步驟44中,DRM服務(wù)器因而將接收的硬幣存儲為上述“花掉的硬幣列表”中的已交換硬幣,并且在步驟45中,新硬幣被提供給軟件控制器。該新硬幣具有上述使用期和交換期,其中使用期的起始時間P1被設(shè)置為當前時間。然后過程結(jié)束。
可見,上面解釋的系統(tǒng)操作通過提供在必要時向新設(shè)備傳遞許可證的簡單方便的機制,從而確保許可證對用戶的可用性。然而,該系統(tǒng)還用于挫敗企圖通過同時在多個設(shè)備上使用許可證來欺騙系統(tǒng)的用戶。具體地說,雖然當前硬幣的拷貝(這里用作交換令牌)可被用戶用于傳遞目的,但是該復制硬幣自身不能用在新設(shè)備上。這是因為復制硬幣只能由軟件控制器來交換,而不能被使用。雖然欺詐用戶可以交換第一硬幣的拷貝,以在第一設(shè)備上繼續(xù)使用的同時開始軟件產(chǎn)品在新設(shè)備上的使用,但是第一硬幣將很快到期。由于DRM服務(wù)器將會檢測到該硬幣已經(jīng)由新設(shè)備進行了交換,所以無法再交換該硬幣,因此當使用期到期時,軟件產(chǎn)品在第一設(shè)備上的使用將被禁止。此外,硬幣的使用期和交換期的少量交疊意味著由兩個軟件控制器同時使用的可能時期相應(yīng)較短。這在圖5中清楚地示出,其中標示了在已交換硬幣的鏈條中的三個硬幣的使用期和交換期的相互關(guān)系。對于圖中的硬幣1,使用期和交換期分別由(P11,P12)和(Q11,Q12)限定。如果該硬幣一有機會(即t=Q11時)就被交換為硬幣2,那么由(P21,P22)和(Q21,Q22)限定的硬幣2的等效使用期和交換期如圖中所示。類似地,盡早提供來交換硬幣2的第三硬幣(硬幣3)的使用期和交換期在圖中用(P31,P32)和(Q31,Q32)來表示。首先可以看出,在該系統(tǒng)中,在硬幣1和硬幣3的使用期之間沒有交疊。因此,同時使用的可能性被限制到最多兩個軟件控制器。此外,最大的可能同時使用期(即P12-Q11)是很短的(在此特定的例子中是一天),一般而言,對于給定的系統(tǒng)可被設(shè)置為預(yù)期可接受的程度。
雖然上面用簡單的術(shù)語解釋了硬幣交換過程的基本原理,但是本領(lǐng)域的技術(shù)人員將會清楚該過程的具體實施可以采用各種在現(xiàn)有硬幣系統(tǒng)中已知的、用于管理硬幣的發(fā)行和花費的算法和協(xié)議。因此,例如,當硬幣被提供給DRM服務(wù)器來進行交換時,可以通過軟件控制器和DRM服務(wù)器之間的交互來實現(xiàn)用于在現(xiàn)有系統(tǒng)中花費硬幣的基本支付算法。類似地,可以通過軟件控制器和DRM服務(wù)器之間的交互來實現(xiàn)基本的硬幣發(fā)行算法,從而向軟件控制器提供新硬幣。這里,新硬幣可以由軟件控制器部分構(gòu)建,該部分硬幣被發(fā)送到DRM服務(wù)器進行驗證。然后,DRM服務(wù)器對新硬幣的提供可以包括返回帶有驗證部分(例如數(shù)字簽名)的部分硬幣,所述驗證部分將新硬幣確認為一個有效硬幣??梢岳斫?,在任何情況下,在以上系統(tǒng)中使用硬幣來代表許可證的做法提供了高度的安全性,同時保護了用戶的隱私。具體地說,由于可以匿名花費硬幣,所以也可以匿名地續(xù)展和傳遞許可證。因此,DRM服務(wù)器無法跟蹤誰正在使用許可證以及在哪個軟件控制器上。此外,硬幣可以具有額外的“不可鏈接性”的屬性,即,任何給定的硬幣都無法被識別出與換取它的硬幣相關(guān)聯(lián)(即,“鏈接到”),或者甚至與已交換硬幣的鏈條中的任何在先或在后硬幣相關(guān)聯(lián)。因此,可以向用戶保證許可證頒發(fā)者無法收集到有關(guān)該用戶的使用活動的性質(zhì)和程度的任何信息。因此,以上實施方案總的來說提供了一種高效的許可證管理系統(tǒng),在允許實施許可證的同時確保了可傳遞性和用戶的隱私。
雖然在以上實施方案中軟件控制器6a將當前硬幣的拷貝提供給用戶,但是軟件控制器可以用其他方式來允許對復制硬幣的用戶訪問。例如,軟件控制器可以將復制硬幣存儲在備份存儲位置處,例如存儲在DRM服務(wù)器上,并且將某種形式的訪問數(shù)據(jù)提供給用戶,使用戶能夠取出拷貝。這樣的訪問數(shù)據(jù)可能只是存儲位置本身,或者舉例來說,可以是該位置加上復制硬幣的訪問碼。
在以上實施方案中,DRM服務(wù)器2將每個“花掉”的硬幣存儲在列表中,以和后面接收的硬幣進行比較。優(yōu)選的是將每個硬幣整體存儲在該列表中,從而在用戶對交換被拒絕有爭議時,可用整個硬幣作為證據(jù)。然而,這不是必不可少的,DRM服務(wù)器可以只存儲與花掉的硬幣相對應(yīng)的令牌標識符,例如已發(fā)行的硬幣的簽名或者其他驗證部分,或者其形態(tài)價值。此外,DRM服務(wù)器可以使用多種機制來檢測是否已兩次接收到相同的硬幣用于交換。例如,DRM服務(wù)器可以維護所有已發(fā)行硬幣的列表,并且當某一硬幣后來被交換時從列表中刪除該硬幣。于是,如果接收的硬幣沒有出現(xiàn)在列表中,那么可以將它識別為已花掉。(前面所討論的特殊的初始硬幣在這里可以被同樣識別出來,并被排除在該檢查之外)。一般來說,可以根據(jù)多種用于在現(xiàn)有硬幣系統(tǒng)中檢測硬幣的“雙次花費”的已知機制來實現(xiàn)對以前花掉的硬幣的檢測。這樣的機制優(yōu)選地是作為交換過程的一部分來執(zhí)行的在線機制,使得新硬幣僅在交換還未花掉的硬幣時才被提供。但是,也可以使用離線機制,從而在檢查接收的硬幣是否已被雙次花費之前,提供新的硬幣來交換該接收的硬幣。如果后來檢測到雙次花費,那么可以采取適當?shù)膭幼鱽響土P用戶。(雖然硬幣是匿名的,但是采用這種離線機制的已知硬幣系統(tǒng)被設(shè)計為硬幣的雙次花費提供比花費硬幣一次時更多的、有關(guān)花費者的身份的信息,并且提供了使得能夠采取適當?shù)膭幼?例如拒絕進一步的硬幣交換)的足夠信息。有關(guān)正確的花費者的身份被編碼到新硬幣中的保證可以由軟件控制器來提供,或者,與交換中的舊硬幣相比,由密碼零知識機制(cryptographic zero-knowledgemechanisms)來證實。)在以上例子中,硬幣交換期Q2-Q1長得足以提供交換硬幣的充足時間。然而,使用期相比而言則較短,并且使用期和交換期的交疊部分相對于使用期而言較小。這些特征迫使進行頻繁的硬幣交換,并且使欺騙的可能性保持為期望的最低水平。在崩潰的情況下,在最壞情況下用戶在新設(shè)備上開始使用之前不得不等待(Q1-P1)天,直到交換期開始為止。然而,使用期和交換期的相對長度和交疊部分可以被設(shè)置為提供對給定的系統(tǒng)適當?shù)木唧w屬性。例如,在其他實施方案中,可能想要降低硬幣交換的頻率,以向合法用戶提供更大的離線使用范圍,同時將欺騙的可能性保持在可接受的水平上。在這樣的實施方案中,硬幣的使用期可能更長一些,而使用期和交換期之間的交疊部分也長一些。于是,軟件控制器可以試圖只要交換期開始就交換硬幣,以阻止欺騙,同時剩余的使用期允許更寬松的離線使用時間。在一些實施方案中,根據(jù)許可證的用戶或類型,可以不同地選擇所述期間。舉例來說,用戶可以在短使用期和長使用期之間選擇,前者提供了在設(shè)備發(fā)生故障后更短的等待時間,而后者需要更少的交換,從而需要更少的在線活動。
在上述系統(tǒng)中,硬幣交換過程實際上是通過DRM服務(wù)器2和軟件控制器6a、6b之間的交互來完成的,并且可以想到這樣的實施方案DRM服務(wù)器需要驗證它正在與合法的軟件控制器進行交互。例如,被許可的軟件產(chǎn)品的使用可能需要向軟件控制器提供某種秘密信息。因此,可能需要提供一種機制,該機制允許軟件控制器向DRM服務(wù)器證明它是合法、正確的軟件控制器,并且允許DRM服務(wù)器向軟件控制器證明自身的身份,并且所有這些都不用使得DRM服務(wù)器能夠識別特定的軟件控制器(由于這將破壞用戶隱私)??梢杂帽绢I(lǐng)域的技術(shù)人員清楚的多種標準方式來實現(xiàn)以上機制。舉例來說,DRM服務(wù)器可以憑借可由任何軟件控制器來檢查的服務(wù)器證書,使用SSL/TLS(安全套接口層/傳輸層安全)來自我認證。軟件控制器可以通過匿名憑證來自我認證(例如參見“An EfficientSystem for Non-transferable Anonymous Credentials with OptionalAnonymity Revocation”,Jan Camenisch等人,EUROCRYPT 2001,LNCS 2045,Springer-Verlag,Berlin 2001,93-118)。這樣的憑證證明了某種權(quán)利,而沒有泄漏其他任何東西。如果該憑證在先前已經(jīng)建立并且認證的SSL/TLS信道上展示,那么該信道可被用來從DRM服務(wù)器向軟件控制器發(fā)送秘密信息,并保證這些秘密只被秘密地遞送到正確的軟件控制器。此外,用于建立到DRM服務(wù)器的安全信道、接收秘密和交換硬幣的協(xié)議不識別各個軟件控制器。
以上系統(tǒng)中的軟件控制器被調(diào)適為只在當前硬幣的交換期內(nèi)開始該硬幣的交換。然而,系統(tǒng)可以采用其他機制來保證只在當前硬幣的交換期內(nèi)用新硬幣來替換當前硬幣。例如,DRM服務(wù)器2可以被調(diào)適為只有在所接收的硬幣的交換期尚未到期的條件下才交換該硬幣。在DRM服務(wù)器保留所發(fā)行硬幣的列表的實施方案中,當硬幣的交換期屆滿之后可以從該列表中刪除這些硬幣。
在圖1的系統(tǒng)中,交換令牌是當前硬幣7的拷貝,因而交換令牌和當前數(shù)據(jù)令牌在這種情況下是完全相同的。但是,一般來說,交換令牌可以以多種方式依存于當前數(shù)據(jù)令牌,這里的依存關(guān)系提供了對雙次交換企圖進行檢測的基礎(chǔ)。例如,交換令牌可以是當前數(shù)據(jù)令牌的簡易格式,并且可以由許可證管理服務(wù)器與當前令牌一起來提供,或者由軟件控制器從當前令牌導出。然后,新的交換令牌在視需要傳遞到新的軟件控制器的每次交換過程之后變?yōu)閷τ脩艨捎?。同樣,在軟件控制器的正常操作中,每次交換過程可以通過向許可證管理服務(wù)器提供交換令牌而非當前數(shù)據(jù)令牌來完成。許可證管理服務(wù)器可以能夠從交換令牌導出對應(yīng)的當前數(shù)據(jù)令牌,或者例如可以存儲每個發(fā)出的數(shù)據(jù)令牌的拷貝并且根據(jù)交換令牌中的信息來識別適當?shù)囊寻l(fā)出的數(shù)據(jù)令牌。利用交換令牌和當前數(shù)據(jù)令牌之間的這種依存關(guān)系,許可證管理服務(wù)器就可以如上所述地檢查所接收的令牌是否對應(yīng)于已被交換的令牌。
雖然以上實施方案提供了高度的用戶隱私,但是也可想到用戶隱私具有較低的優(yōu)先級的多種其他實施方案。在圖6中示出了這樣的替換實施方案的一個例子。圖6的系統(tǒng)50包括DRM服務(wù)器51和運行在用戶設(shè)備53上的軟件控制器52a,軟件控制器和DRM服務(wù)器經(jīng)由網(wǎng)絡(luò)54相互通信。軟件控制器52a基于與當前數(shù)據(jù)令牌56相關(guān)聯(lián)的使用期,基本上如前所述地控制軟件產(chǎn)品55的使用。但是,這里的軟件控制器還具有與使用軟件產(chǎn)品的許可證相關(guān)聯(lián)的交換令牌57。在該系統(tǒng)中,假定交換令牌57基本上是DRM服務(wù)器51已知的許可證的固定表達,例如許可證號。該交換令牌例如可以在一開始購買許可證時從DRM服務(wù)器51獲得,并且由用戶持有以供在發(fā)生設(shè)備故障時使用。如果操作開始時軟件控制器52a就初始獲得了交換令牌,則軟件控制器將為此目的允許對交換令牌的用戶訪問?;蛘撸粨Q令牌可以由用戶在購買許可證時直接獲得,從而用戶可以將交換令牌提供給任何軟件控制器,以開始軟件產(chǎn)品的使用。
在正常操作中,軟件控制器52a就像在圖1系統(tǒng)中一樣,在與當前數(shù)據(jù)令牌56相關(guān)聯(lián)的使用期內(nèi)允許軟件產(chǎn)品55在用戶設(shè)備上的使用。然而,當有必要獲得新的數(shù)據(jù)令牌以延長許可證時,軟件控制器52a將交換令牌57提供給DRM服務(wù)器51。然后,DRM服務(wù)器51提供新的數(shù)據(jù)令牌作為交換。新的數(shù)據(jù)令牌具有新的使用期,并且如前所述地在軟件控制器52a處替換當前數(shù)據(jù)令牌,從而可以繼續(xù)軟件產(chǎn)品55的使用。但是,每次DRM服務(wù)器51在有關(guān)的許可證下發(fā)出新的數(shù)據(jù)令牌時,就由DRM服務(wù)器針對許可證號來記錄新發(fā)出的令牌的使用期。下一次交換令牌被提供給DRM服務(wù)器51進行交換時,DRM服務(wù)器就根據(jù)交換令牌來識別有關(guān)的許可證,取出所存儲的以前發(fā)出的令牌的使用期,并且將新令牌的使用期設(shè)置為在前一使用期到期時開始。按照這種方式,DRM服務(wù)器就確保了新的使用期不與舊的使用期交疊,從而在任何給定的時間上,只有一個數(shù)據(jù)令牌允許軟件產(chǎn)品的使用。當軟件控制器52a在當前令牌56的使用期屆滿之前執(zhí)行交換過程時,軟件控制器保留舊的、已交換的令牌的拷貝,從而允許在該舊令牌的未屆滿的使用期內(nèi)使用軟件產(chǎn)品,直到新令牌的使用期開始。在用戶設(shè)備53出現(xiàn)故障的情況下,許可證也可以被合法地傳遞到新的軟件控制器52b。在這種情況下,用戶只是將交換令牌57提供給新的軟件控制器52b。當沒有當前數(shù)據(jù)令牌56的軟件控制器52b接收到交換令牌57時,它只是將交換令牌提供給DRM服務(wù)器51,以如前所述地換取當前數(shù)據(jù)令牌56,從而可以利用新的軟件控制器52b繼續(xù)軟件產(chǎn)品55的使用。然而,由于新發(fā)出的令牌的使用期與發(fā)給軟件控制器52a的最后一個令牌的使用期不交疊,所以系統(tǒng)可以防止欺詐用戶在一個以上的設(shè)備上同時使用軟件產(chǎn)品。
圖6的實施方案為與單實例許可證的可傳遞性有關(guān)的問題提供了簡單的解決辦法,但是由于交換令牌與有關(guān)許可證相關(guān)聯(lián),因此DRM服務(wù)器在理論上可以監(jiān)視特定用戶的使用活動,所以圖6的實施方案與圖1的系統(tǒng)相比,用戶隱私減少了。盡管如此,在一些系統(tǒng)中使用交換令牌的這樣特別簡單的形式仍是優(yōu)選的。當然,也可以設(shè)想出其他方案。例如,在正常操作中,軟件控制器52a可以向DRM服務(wù)器提供當前數(shù)據(jù)令牌而非交換令牌來交換,交換令牌只被用于向新設(shè)備傳遞許可證。當前數(shù)據(jù)令牌本身可以采用多種形式,在一些實施方案中甚至可以是硬幣,但是這里并不嚴格要求硬幣所表現(xiàn)出的隱私優(yōu)勢。同樣,可以設(shè)想其他形式的交換令牌,包括可更新的交換令牌。例如,不用上述單個、固定的交換令牌,而是可以采用一次性密碼或哈希鏈的列表,從而對于每個相繼的交換都要更新交換令牌。同樣,這些將與有關(guān)許可證相關(guān)聯(lián),從而DRM服務(wù)器可以識別適當?shù)脑S可證,但是交換令牌的更新確保了一旦用戶已遷移到新的設(shè)備,從舊的用戶設(shè)備處取得的舊的交換令牌就不能被用來接管許可證。
在到目前為止所描述的實施方案中,軟件控制器可以控制多個軟件產(chǎn)品的使用,其中針對每個軟件產(chǎn)品如上所述地提供并交換相應(yīng)的硬幣。然而,如果用戶具有數(shù)量極大的軟件產(chǎn)品的許可證,例如成百上千首歌曲的許可證,那么對于用戶而言,將所有單獨的許可證合并在單個總括許可證(或者“元許可證(meta-license)”)下,從而可以實際上一起來續(xù)展所有單獨的許可證,這樣做可能是更方便的。將參考圖7來描述這樣的實施本發(fā)明的許可證管理系統(tǒng)的例子,其中圖解說明了系統(tǒng)的主要組件和基本操作。
圖7的系統(tǒng)60包括DRM服務(wù)器61和軟件控制器62a,它們總地來說按照上面針對圖1的系統(tǒng)所描述的方式來工作,但是還有一些區(qū)別要描述。因此,軟件控制器62a可以經(jīng)由網(wǎng)絡(luò)63與DRM服務(wù)器61通信,并且控制多個軟件產(chǎn)品在用戶設(shè)備64處的使用。在圖中用標號65來示意性地指示軟件產(chǎn)品SP的集合,對于其中每一個軟件產(chǎn)品,用戶都持有單獨的產(chǎn)品許可證LSP,這些許可證在圖中統(tǒng)一用標號66來表示。這些單獨的許可證66的具體形式以及獲得它們的方式都與所要描述的系統(tǒng)操作無關(guān)。但是,所有軟件產(chǎn)品65的使用都由軟件控制器62a根據(jù)硬幣67形式的單個數(shù)據(jù)令牌來控制。因此,在該實施方案中,硬幣67代表所述多個軟件產(chǎn)品65的元許可證。例如,這樣的元許可證可以對應(yīng)于特定類型或類別的軟件產(chǎn)品,例如歌曲、電影等,因此可以被提供給特定類型的、被調(diào)適來訪問這樣的產(chǎn)品的軟件控制器,例如音樂播放器、視頻播放器等?;蛘呃?,軟件控制器可以通過用作特定應(yīng)用程序的操作平臺的“元應(yīng)用程序”來實現(xiàn),其中硬幣代表使用由這些特定的應(yīng)用程序運行的軟件產(chǎn)品的許可證。舉例來說,在本實施方案中假定軟件控制器62a用音頻播放器程序來實現(xiàn),單獨的軟件產(chǎn)品65是歌曲的音頻文件。
在該實施方案中,向基于硬幣67的發(fā)證系統(tǒng)中補入兩個長期秘密密鑰k1和k2。如圖中所示,軟件控制器62a持有元許可證的兩個密鑰k1、k2,但是DRM服務(wù)器61只知道對應(yīng)于元許可證的第二密鑰k2。這些密鑰k1、k2可以在元許可證開始時,以本領(lǐng)域的技術(shù)人員公知的方便方式來建立,例如在前面針對第一實施方案所描述的從DRM服務(wù)器獲得第一硬幣67時建立。一旦建立起密鑰,軟件控制器62a就在密鑰k1、k2下對代表軟件產(chǎn)品65的產(chǎn)品數(shù)據(jù)進行加密,并將該加密后的數(shù)據(jù)存儲在備份存儲位置處。備份存儲在圖中用標號68來表示,一般來說,它可以是任何方便的存儲位置,例如在某個其他用戶設(shè)備上,或者在DRM服務(wù)器處,或者在某個第三方存儲位置處。在該例子中,由軟件控制器62a加密的產(chǎn)品數(shù)據(jù)包括圖中所示的軟件產(chǎn)品SP本身以及相關(guān)聯(lián)的單獨的許可證LSP。初始備份由軟件控制器62a在元許可證開始時完成,而進一步的備份則是此后在操作中定期地進行,例如周期性地進行或者在為其它軟件產(chǎn)品65獲得新的單獨的許可證時進行。這樣的進一步的備份根據(jù)需要可以是完整的或者是增量式的。
這樣就參考圖1的實施方案概括地描述了使用硬幣67的系統(tǒng)的操作。這樣,硬幣67具有上述使用期和交換期,并且軟件控制器62a只在當前硬幣67的使用期內(nèi)允許被許可的軟件產(chǎn)品65運行。具體地說,在接收到運行產(chǎn)品65的用戶請求后,軟件控制器的操作大致如圖3所示,只是軟件控制器在步驟31中對于當前硬幣67檢查是否持有有關(guān)產(chǎn)品的單獨的許可證LSP,然后移動到步驟32。如上面參考圖2所述,當前硬幣67被定期交換為新硬幣。但是,在該實施方案的圖2的步驟12中,軟件控制器62a在提供當前硬幣的拷貝的同時還一同提供第一密鑰k1以及加密的產(chǎn)品數(shù)據(jù)在備份68中的存儲位置(如圖7中所示)。于是用戶可以將這些信息存儲起來,以供在崩潰時使用。
DRM服務(wù)器61的操作也大致與圖1系統(tǒng)的服務(wù)器2類似,但是此時,DRM服務(wù)器與當前硬幣67相關(guān)聯(lián)地存儲用于元許可證的第二密鑰k2。例如,所存儲的密鑰k2可以與當前硬幣的令牌標識符交叉引用(這里的令牌標識符可以是硬幣本身),使得與給定硬幣相關(guān)聯(lián)的密鑰k2可以在接收到該硬幣來交換時被取得。于是,在該實施方案中,每當DRM服務(wù)器61提供新硬幣來換取舊硬幣(對應(yīng)于圖4的步驟44)時,DRM服務(wù)器都與新硬幣一同來提供關(guān)聯(lián)的密鑰k2。
在該實施方案中,在用戶設(shè)備64崩潰的情況下,用戶可以向另一個相同的軟件控制器(在圖7中用標號62b來表示)輸入以前由軟件控制器62a提供的復制硬幣,同時輸入密鑰k1以及加密產(chǎn)品數(shù)據(jù)的備份存儲位置。新的軟件控制器識別所提供的硬幣為復制硬幣(圖2的步驟11),因而向DRM服務(wù)器62發(fā)送該硬幣來進行交換。然后,DRM服務(wù)器將復制硬幣交換為新硬幣,該新硬幣與第二密鑰k2一起被返回給軟件控制器62b。于是軟件控制器62b就有了兩個密鑰,并且可以訪問備份存儲68以便解密產(chǎn)品數(shù)據(jù)并接管所有的單獨許可證LSP。使用新軟件控制器的操作可以按照通常的方式來繼續(xù)。
可見,圖7的實施方案提供了在由硬幣67代表的單個元許可證下控制大量被許可的軟件產(chǎn)品的使用的方便的系統(tǒng)。在發(fā)生崩潰的情況下,可以將元許可證和單獨的產(chǎn)品許可證容易地傳遞到新設(shè)備,但是可交換的硬幣系統(tǒng)以和上述第一實施方案同樣的方式提供了針對欺騙的保護。另外,以上系統(tǒng)中的第一密鑰k1為用戶確保了備份的隱私,同時第二密鑰k2確保了用戶自己不能在其他設(shè)備上非法使用備份。
雖然代表元許可證的數(shù)據(jù)令牌在圖7的實施方式中就是硬幣67,但是由于對于每個密鑰k2來說只有一個元許可證,所以不可能將屬于同一許可證的不同令牌保持為不可鏈接。因此,根據(jù)需要可以對這里的數(shù)據(jù)令牌使用更簡單的表達。例如,令牌可以只是一次性密碼(例如,如果想要弄清楚是否已花費了某個硬幣,則令牌可以是單向函數(shù)的預(yù)映像(pre-image)的一次性密碼)。為了交換這樣的數(shù)據(jù)令牌,軟件控制器可以在上述安全信道上向DRM服務(wù)器發(fā)送所述一次性密碼。在任何情況下,如果已交換數(shù)據(jù)令牌的鏈條不是不可鏈接的,而用戶忘記了存儲當前令牌但是仍然具有所述鏈條中的至少一個在先令牌,那么DRM服務(wù)器可以被調(diào)適為允許將該在先令牌交換為當前令牌,同時確保對于給定的使用期,兩個令牌不會被釋放給同一元許可證。
如果軟件控制器總是將只在k1下加密的當前硬幣存儲在備份68處,那么在圖7的實施方案中可以進一步簡化用戶的任務(wù)。此時,軟件控制器只需要向用戶提供k1和備份的位置。這些信息可以在需要的時候被提供給新的軟件控制器,于是該新的軟件控制器可以取得并且解密當前硬幣,然后再將當前硬幣提供給DRM服務(wù)器。用戶還可以使用第三密鑰k3來加密k1,其中k3可能是一個弱密碼。這里也可以想到其他多種可能性,以提供備份的可用性和保密性之間的良好平衡。
總之,圖7的方案為DRM服務(wù)器提供了與前面的實施方案一樣的安全性。由于DRM服務(wù)器可以監(jiān)視特定的元許可證何時被續(xù)展,所以用戶喪失了一定程度的隱私,但是如果元許可證足夠粗略的話,這也不會那么嚴重,因為大多數(shù)設(shè)備將會定期續(xù)展它們的元許可證。另外,如果被存儲在服務(wù)器處,則備份68的長度給出了一定量的信息。由于軟件控制器沒有任何標識,所以用戶仍可以改變軟件控制器而DRM服務(wù)器不會識別出來,并且他可能具有多個元許可證而不讓DRM服務(wù)器將它們鏈接起來。
注意,雖然每次提供新硬幣來換取舊硬幣時,圖7的實施方案中的DRM服務(wù)器都提供密鑰k2,但是它只需要在接收到的硬幣是復制硬幣時才需要這么做。因此,在其他實施方案中,DRM服務(wù)器響應(yīng)于所接收的硬幣是復制硬幣的指示(例如是由軟件控制器提供的指示),只與新硬幣一起提供k2。另外,雖然被加密并存儲在備份處的產(chǎn)品數(shù)據(jù)包括各個軟件產(chǎn)品以及它們的許可證,但是可以想到這樣的實施方案產(chǎn)品數(shù)據(jù)只包括某種形式的識別數(shù)據(jù),該數(shù)據(jù)使得單獨許可的產(chǎn)品可被識別出來以供將來使用。可以以任何方便的方式來表達各個單獨的許可證LSP本身,例如通過單獨的數(shù)據(jù)令牌。
可以想到多種作為替代方案的系統(tǒng)軟件控制器被調(diào)適為只有在持有元許可證的當前數(shù)據(jù)令牌并且持有單獨的產(chǎn)品許可證LSP的條件下,才允許使用多個軟件產(chǎn)品中的任一個。例如,可以使用如上所述的多種形式的交換令牌來續(xù)展和/或傳遞元許可證。單獨的許可證LSP可以以多種方式獲得,例如從DRM服務(wù)器或者某個其他相關(guān)的服務(wù)器處獲得,并且該服務(wù)器可以使單獨的許可證以專門綁定到元許可證的某種形式可用。舉個例子,在特別簡單的實施方案中,用于續(xù)展元許可證的交換令牌可以是固定的、明文的、長期的許可證,其許可證號為N。當購買單獨的產(chǎn)品許可證LSP時,用戶指示是在哪一個元許可證號N下購買的。這里,單獨的許可證LSP可以是在允許在元許可證號N下使用產(chǎn)品SP的許可證文本下的簽名。(這幾乎相當于單獨的許可證被綁定到特定的用戶設(shè)備,只是該設(shè)備是虛擬的并且被定義為任何目前擁有元許可證的真實設(shè)備)。軟件控制器一般可以如前所述地使用元許可證的交換令牌來獲得元許可證的當前數(shù)據(jù)令牌,然后只在它具有在單獨許可證LSP中指定的元許可證N的當前數(shù)據(jù)令牌的條件下才允許軟件產(chǎn)品SP的使用。軟件控制器和前面一樣將單獨的許可證LSP存儲在備份位置處(并且出于安全原因,優(yōu)選地在用戶已知的密鑰(例如上面的k1)下對該備份進行加密),從而在傳遞元許可證后可以由新的軟件控制器來接管各個單獨的許可證。
剛剛描述的替換實施方案提供了特別簡單的一種實施方式,但是沒有提供高度的用戶隱私。具體地說,即使有可能匿名購買單獨的各個產(chǎn)品許可證,由一個用戶在一個元許可證下購買的所有單獨的許可證也可以用編號N鏈接起來。這可以通過在軟件控制器和DRM服務(wù)器知道但是用戶不知道的密鑰(例如上面的k2)下加密備份來避免。元許可證的交換令牌仍可以是固定的、明文的、長期的許可證,但是在這里它是使用密鑰k2的許可證。在許可證文本中,k2用一個標識符(例如密鑰k2的數(shù)據(jù)庫的索引)來表示,它允許DRM服務(wù)器取得k2,但是不給用戶(看到了元許可證的用戶)有關(guān)k2的信息。新的軟件控制器利用以上描述的機制,與當前數(shù)據(jù)令牌一起獲得了密鑰k2,以供DRM服務(wù)器確認它正在與合法的軟件控制器進行交互。和前面一樣,在該實施方案中也可以用一次性密碼或哈希鏈來取代固定的交換令牌。
在又一個例子中,硬幣被用于續(xù)展元許可證以提供更高的隱私,如果硬幣是按以下方式來指定k2的,那么相繼的硬幣可以變?yōu)椴豢涉溄拥腄RM服務(wù)器在“正常的”交換中看不到,只有在元許可證被傳遞到新的軟件控制器并且新控制器明確地請求k2的時候才能看見。這可以通過將已知的零知識技術(shù)(zero-knowledge technique)應(yīng)用于硬幣交換過程來實現(xiàn)。
在不偏離本發(fā)明的范圍的情況下,也可以對上述具體實施方案作出多種其他改變和修改。例如,假定在以上實施方案中,有關(guān)的軟件許可證是無限期的,使得數(shù)據(jù)令牌可以在無限長的時期上連續(xù)地交換。然而,在其他實施方案中可以采用很多類型的許可證,例如有限期的許可證(從而數(shù)據(jù)令牌的交換被限制在許可證的持續(xù)期內(nèi))或者用于某些使用類型的許可證(例如,試用與專業(yè)使用)。此外,可以以多種方式來定義使用期和交換期(如果有的話)。例如,使用期可以只用結(jié)束時間(上面的P2)來定義,而交換期只用開始時間(上面的Q1)來定義。但是,對于交換期使用結(jié)束時間(上面的Q2)限制了DRM服務(wù)器存儲舊的數(shù)據(jù)令牌進行比較的需要。為使用期提供開始時間(上面的P1)提供了在需要時為給定的系統(tǒng)設(shè)置這些時間的靈活性。例如,這些時間可被設(shè)置為比實際的交換時間晚,以獲得交換的靈活性而不會產(chǎn)生使用期的交疊。再舉個例子,雖然不增加任何安全性,但是在本發(fā)明的實施方案中,軟件控制器對DRM服務(wù)器來說可以使可識別的。這樣的實施方案仍然為許可證提供了可傳遞性和欺騙保護,盡管可能因此喪失一些隱私優(yōu)勢。同樣,對于更高一些的隱私,也可能需要阻止從軟件控制器(如果存在的話,還有備份)到DRM服務(wù)器的任何非受控信息流動。這可以使用特別為硬幣系統(tǒng)設(shè)計的錢包加觀察者(wallets-with-observer)體系結(jié)構(gòu)的標準方法來實現(xiàn)。
權(quán)利要求
1.一種軟件許可證管理系統(tǒng)(1,60),在該系統(tǒng)中用數(shù)據(jù)令牌(7,67)來代表使用軟件產(chǎn)品(4,65)的許可證,所述系統(tǒng)包括用于控制軟件產(chǎn)品(4,65)在用戶設(shè)備(3,64)處的使用的軟件控制器(6a,62a);和用于經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(5,63)與軟件控制器(6a,62a)通信的許可證管理服務(wù)器(2,61);其中,軟件控制器(6a,62a)被調(diào)適為基本上只在與許可證管理服務(wù)器(2,61)提供給軟件控制器的當前數(shù)據(jù)令牌(7,67)相關(guān)聯(lián)的使用期內(nèi)才允許軟件產(chǎn)品(4,65)的所述使用,允許對依存于由許可證管理服務(wù)器提供的當前數(shù)據(jù)令牌(7,67)的交換令牌的用戶訪問,從而所述交換令牌可以作為當前數(shù)據(jù)令牌被提供給另一個所述軟件控制器(6b,62b),并且(a)為了延長軟件產(chǎn)品(4,65)的許可證,使其超過與許可證管理服務(wù)器所提供的當前數(shù)據(jù)令牌(7,67)相關(guān)聯(lián)的使用期,(b)如果當前數(shù)據(jù)令牌是來自另一個所述軟件控制器的交換令牌,則將當前數(shù)據(jù)令牌(7,67)和所述交換令牌之一經(jīng)由網(wǎng)絡(luò)(5,63)提供給許可證管理服務(wù)器,以換取新的數(shù)據(jù)令牌來替換當前數(shù)據(jù)令牌;并且其中,許可證管理服務(wù)器(2,61)被調(diào)適為經(jīng)由網(wǎng)絡(luò)(5,63)向軟件控制器(6a,62a)提供用于替換當前數(shù)據(jù)令牌(7,67)并且具有與之相關(guān)聯(lián)的新的使用期的新的數(shù)據(jù)令牌,用于交換已從軟件控制器接收的當前數(shù)據(jù)令牌或者與當前數(shù)據(jù)令牌相對應(yīng)的交換令牌,以及檢測從軟件控制器接收來用于交換的所述令牌是否對應(yīng)于已經(jīng)由許可證管理服務(wù)器(2,61)交換的令牌。
2.如權(quán)利要求1所述的系統(tǒng),其中,所述交換令牌是當前數(shù)據(jù)令牌(7,67)的拷貝,許可證管理服務(wù)器(2,61)被調(diào)適為檢測是否兩次接收到用于交換的相同的數(shù)據(jù)令牌。
3.如權(quán)利要求2所述的系統(tǒng),其中,許可證管理服務(wù)器(2,61)被調(diào)適為存儲與服務(wù)器(2,61)接收到用于交換的每個數(shù)據(jù)令牌(7,67)相對應(yīng)的令牌標識符;并且將每個接收到的數(shù)據(jù)令牌的令牌標識符與所存儲的令牌標識符進行比較,以檢測是否兩次接收到用于交換的相同的數(shù)據(jù)令牌(7,67)。
4.如權(quán)利要求3所述的系統(tǒng),其中,數(shù)據(jù)令牌(7,67)的令牌標識符包括該數(shù)據(jù)令牌。
5.如前面任一項權(quán)利要求所述的系統(tǒng),其中,所述系統(tǒng)被調(diào)適為在軟件控制器(6a,62a)從許可證管理服務(wù)器(2,61)接收的數(shù)據(jù)令牌的鏈條中,與其中每隔一個的數(shù)據(jù)令牌(7,67)相關(guān)聯(lián)的使用期不發(fā)生交疊。
6.如前面任一項權(quán)利要求所述的系統(tǒng),其中交換期與每個數(shù)據(jù)令牌(7,67)相關(guān)聯(lián);并且所述系統(tǒng)被調(diào)適為只在與當前數(shù)據(jù)令牌相關(guān)聯(lián)的交換期內(nèi)軟件控制器(6a,62a)才能獲得用于替換當前數(shù)據(jù)令牌的新數(shù)據(jù)令牌。
7.如權(quán)利要求6所述的系統(tǒng),其中,與數(shù)據(jù)令牌(7,67)相關(guān)聯(lián)的使用期和交換期交疊。
8.如前面任一項權(quán)利要求所述的系統(tǒng),其中,軟件控制器(6a,62a)被調(diào)適為通過提供交換令牌來供用戶存儲,允許對所述交換令牌的用戶訪問。
9.如權(quán)利要求1-7之一所述的系統(tǒng),其中,軟件控制器(6a,62a)被調(diào)適為通過將交換令牌存儲在備份存儲位置處,并向用戶提供用于訪問在所述存儲位置處的交換令牌的訪問數(shù)據(jù),從而允許對所述交換令牌的用戶訪問。
10.如前面任一項權(quán)利要求所述的系統(tǒng),其中,許可證管理服務(wù)器(2,61)被調(diào)適為只有所接收的令牌不對應(yīng)于已交換的令牌時,才提供新的數(shù)據(jù)令牌(7,67)來交換所述所接收的令牌。
11.如權(quán)利要求1-9之一所述的系統(tǒng),其中,許可證管理服務(wù)器(2,61)被調(diào)適為在檢測所接收的令牌是否對應(yīng)于已交換的令牌之前,提供新的數(shù)據(jù)令牌(7,67)來交換所述所接收的令牌。
12.一種軟件許可證管理系統(tǒng)(50),在該系統(tǒng)中用數(shù)據(jù)令牌(56)來代表使用軟件產(chǎn)品(55)的許可證,所述系統(tǒng)包括用于控制軟件產(chǎn)品(55)在用戶設(shè)備(53)處的使用的軟件控制器(52a);和用于經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(54)與軟件控制器(52a)通信的許可證管理服務(wù)器(51);其中,軟件控制器(52a)被調(diào)適為基本上只在與許可證管理服務(wù)器(51)提供給軟件控制器的當前數(shù)據(jù)令牌(56)相關(guān)聯(lián)的使用期內(nèi)才允許軟件產(chǎn)品(55)的所述使用,接收與所述許可證相關(guān)聯(lián)的交換令牌(57),以及(a)為了延長所述軟件產(chǎn)品的許可證,使其超過與許可證管理服務(wù)器所提供的當前數(shù)據(jù)令牌(56)相關(guān)聯(lián)的使用期,(b)如果所述交換令牌(57)是在缺少當前數(shù)據(jù)令牌(56)的情況下由軟件控制器接收的,則將當前數(shù)據(jù)令牌(56)和交換令牌(57)之一經(jīng)由網(wǎng)絡(luò)(54)提供給許可證管理服務(wù)器(51),以換取新的數(shù)據(jù)令牌;并且其中,所述許可證管理服務(wù)器(51)被調(diào)適為存儲在許可證下被提供給軟件控制器(52a)的每個數(shù)據(jù)令牌(56)的使用期,并且經(jīng)由網(wǎng)絡(luò)(54)向軟件控制器(52a)提供新的數(shù)據(jù)令牌,用于交換已從軟件控制器接收的當前數(shù)據(jù)令牌(56)或者所述交換令牌(57),所述新的數(shù)據(jù)令牌具有與以前在許可證下提供的數(shù)據(jù)令牌的使用期不交疊的新的使用期。
13.如前面任一項權(quán)利要求所述的系統(tǒng),其中,所述數(shù)據(jù)令牌(7,56,67)包括硬幣。
14.如前面任一項權(quán)利要求所述的系統(tǒng),其中,與數(shù)據(jù)令牌(7,56,67)相關(guān)聯(lián)的使用期被標明在該數(shù)據(jù)令牌中。
15.如前面任一項權(quán)利要求所述的系統(tǒng),其中,軟件控制器(6a,52a,62a)被調(diào)適為將當前數(shù)據(jù)令牌(7,56,67)和交換令牌之一自動地提供給許可證管理服務(wù)器(2,51,61),以延長軟件產(chǎn)品(4,55,65)的許可證。
16.如權(quán)利要求12所述的系統(tǒng),其中交換期與每個數(shù)據(jù)令牌(56)相關(guān)聯(lián);并且所述系統(tǒng)被調(diào)適為用于替換當前數(shù)據(jù)令牌(56)的新的數(shù)據(jù)令牌只在與該當前數(shù)據(jù)令牌相關(guān)聯(lián)的交換期內(nèi)才可以被軟件控制器(52a)獲得。
17.如權(quán)利要求6或16所述的系統(tǒng),其中,與數(shù)據(jù)令牌(7,56,67)相關(guān)聯(lián)的交換期被標明在該數(shù)據(jù)令牌中。
18.如前面任一項權(quán)利要求所述的系統(tǒng),其中所述數(shù)據(jù)令牌(67)代表了使用多個軟件產(chǎn)品(65)的許可證;并且軟件控制器(62a)被調(diào)適為將表示所述多個軟件產(chǎn)品的產(chǎn)品數(shù)據(jù)存儲在備份存儲位置(58)處,并且基本上只在與許可證管理服務(wù)器(61)所提供的當前數(shù)據(jù)令牌(67)相關(guān)聯(lián)的使用期內(nèi)才允許軟件產(chǎn)品(65)中的每個產(chǎn)品的使用。
19.如權(quán)利要求18所述的系統(tǒng),其中,所述產(chǎn)品數(shù)據(jù)包括對于每個軟件產(chǎn)品而言,代表該軟件產(chǎn)品的單獨的許可證(LSP)的數(shù)據(jù)。
20.如權(quán)利要求18或19所述的系統(tǒng),其中,所述產(chǎn)品數(shù)據(jù)包括軟件產(chǎn)品(65)。
21.一種用在軟件許可證管理系統(tǒng)(1,60)中的軟件控制器(6a,62a),在所述系統(tǒng)中用數(shù)據(jù)令牌(7,67)來代表使用軟件產(chǎn)品(4,65)的許可證,所述系統(tǒng)(1,60)具有用于經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(5,63)與軟件控制器(6a,62a)通信的許可證管理服務(wù)器(2,61),其中所述軟件控制器(6a,62a)包括用于控制軟件產(chǎn)品(4,65)在用戶設(shè)備(3,64)處的使用的控制邏輯,所述控制邏輯被調(diào)適為基本上只在與許可證管理服務(wù)器(2,61)提供給軟件控制器(6a,62a)的當前數(shù)據(jù)令牌(7,67)相關(guān)聯(lián)的使用期內(nèi)才允許軟件產(chǎn)品(4,65)的所述使用;允許對依存于由許可證管理服務(wù)器(2,61)提供的當前數(shù)據(jù)令牌(7,67)的交換令牌的用戶訪問,從而所述交換令牌可以作為當前數(shù)據(jù)令牌被提供給另一個所述軟件控制器(6b,62b);并且(a)為了延長所述軟件產(chǎn)品的許可證,使其超過與許可證管理服務(wù)器所提供的當前數(shù)據(jù)令牌(7,67)相關(guān)聯(lián)的使用期,(b)如果當前數(shù)據(jù)令牌是來自另一個所述軟件控制器的交換令牌,則將當前數(shù)據(jù)令牌(7,67)和所述交換令牌之一經(jīng)由網(wǎng)絡(luò)(5,63)提供給許可證管理服務(wù)器(2,61),以換取新的數(shù)據(jù)令牌來替換當前數(shù)據(jù)令牌。
22.一種與權(quán)利要求21所述的軟件控制器(6a,62a)一起用在軟件許可證管理系統(tǒng)(1,60)中的許可證管理服務(wù)器(2,61),在所述系統(tǒng)中用數(shù)據(jù)令牌(7,67)來代表使用軟件產(chǎn)品(4,65)的許可證,所述許可證管理服務(wù)器(2,61)包括被調(diào)適來進行以下操作的控制邏輯經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(5,63)與軟件控制器(6a,62a)通信;經(jīng)由所述網(wǎng)絡(luò)向軟件控制器(6a,62a)提供用于替換當前數(shù)據(jù)令牌(7,67)并且具有與之相關(guān)聯(lián)的新的使用期的新的數(shù)據(jù)令牌,用于交換已從軟件控制器(6a,62a)接收的當前數(shù)據(jù)令牌或者與當前數(shù)據(jù)令牌相對應(yīng)的交換令牌;以及檢測從軟件控制器接收來用于交換的所述令牌是否對應(yīng)于已經(jīng)由許可證管理服務(wù)器(2,61)交換的令牌。
23.一種用在軟件許可證管理系統(tǒng)(50)中的軟件控制器(52a),在所述系統(tǒng)中用數(shù)據(jù)令牌(56)來代表使用軟件產(chǎn)品(55)的許可證,所述系統(tǒng)(50)具有用于經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(54)與軟件控制器(52a)通信的許可證管理服務(wù)器(51),其中所述軟件控制器(52a)包括用于控制軟件產(chǎn)品(55)在用戶設(shè)備(53)處的使用的控制邏輯,所述控制邏輯被調(diào)適為基本上只在與許可證管理服務(wù)器(51)提供給軟件控制器(52a)的當前數(shù)據(jù)令牌(56)相關(guān)聯(lián)的使用期內(nèi)才允許軟件產(chǎn)品(55)的所述使用;接收與所述許可證相關(guān)聯(lián)的交換令牌(57);以及(a)為了延長所述軟件產(chǎn)品(55)的許可證,使其超過與許可證管理服務(wù)器所提供的當前數(shù)據(jù)令牌(56)相關(guān)聯(lián)的使用期,(b)如果所述交換令牌(57)是在缺少當前數(shù)據(jù)令牌(56)的情況下由軟件控制器(52a)接收的,則將當前數(shù)據(jù)令牌(56)和交換令牌(57)之一經(jīng)由網(wǎng)絡(luò)(54)提供給許可證管理服務(wù)器(51),以換取新的數(shù)據(jù)令牌。
24.一種與權(quán)利要求23所述的軟件控制器(52a)一起用在軟件許可證管理系統(tǒng)(50)中的許可證管理服務(wù)器(51),在所述系統(tǒng)中用數(shù)據(jù)令牌(56)來代表使用軟件產(chǎn)品(55)的許可證,所述許可證管理服務(wù)器(51)包括被調(diào)適來進行以下操作的控制邏輯經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(54)與軟件控制器(52a)通信;存儲在許可證下被提供給軟件控制器(52a)的每個數(shù)據(jù)令牌(56)的使用期;并且經(jīng)由網(wǎng)絡(luò)(54)向軟件控制器(52a)提供新的數(shù)據(jù)令牌,用于交換已從軟件控制器接收的當前數(shù)據(jù)令牌(56)或者所述交換令牌(57),所述新的數(shù)據(jù)令牌具有與以前在許可證下提供的數(shù)據(jù)令牌的使用期不交疊的新的使用期。
25.一種根據(jù)用數(shù)據(jù)令牌(7,67)代表的許可證來控制軟件產(chǎn)品(4,65)在用戶設(shè)備(3,64)處的使用的計算機程序,所述用戶設(shè)備(3,64)可經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(5,63)與許可證管理服務(wù)器(2,61)相連,所述計算機程序包括被調(diào)適來進行以下操作的程序代碼裝置基本上只在與許可證管理服務(wù)器(2,61)提供給所述用戶設(shè)備的當前數(shù)據(jù)令牌(7,67)相關(guān)聯(lián)的使用期內(nèi)才允許軟件產(chǎn)品(4,65)在用戶設(shè)備(3,64)處的使用;允許對依存于由許可證管理服務(wù)器(2,61)提供的當前數(shù)據(jù)令牌(7,67)的交換令牌的用戶訪問,從而所述交換令牌可以作為當前數(shù)據(jù)令牌被提供給另一個用戶設(shè)備;并且(a)為了延長所述軟件產(chǎn)品的許可證,使其超過與許可證管理服務(wù)器所提供的當前數(shù)據(jù)令牌(7,67)相關(guān)聯(lián)的使用期,(b)如果當前數(shù)據(jù)令牌是來自另一個用戶設(shè)備的交換令牌,則將當前數(shù)據(jù)令牌(7,67)和所述交換令牌之一經(jīng)由網(wǎng)絡(luò)(5,63)提供給許可證管理服務(wù)器(2,61),以換取新的數(shù)據(jù)令牌來替換當前數(shù)據(jù)令牌。
26.一種用在軟件許可證管理系統(tǒng)(1,60)的許可證管理服務(wù)器(2,61)中的計算機程序,在所述系統(tǒng)中用數(shù)據(jù)令牌(7,67)來代表使用軟件產(chǎn)品(4,65)的許可證,所述系統(tǒng)(1,60)包括如權(quán)利要求21所述的軟件控制器(6a,62a)以及被調(diào)適為經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(5,63)與軟件控制器(6a,62a)通信的許可證管理服務(wù)器(2,61),其中所述計算機程序包括被調(diào)適為致使所述許可證管理服務(wù)器(2,61)進行以下操作的程序代碼裝置經(jīng)由網(wǎng)絡(luò)(5,63)向軟件控制器(6a,62a)提供用于替換當前數(shù)據(jù)令牌(7,67)并且具有與之相關(guān)聯(lián)的新的使用期的新的數(shù)據(jù)令牌,用于交換由許可證管理服務(wù)器(2,61)從軟件控制器接收的當前數(shù)據(jù)令牌或者與當前數(shù)據(jù)令牌相對應(yīng)的交換令牌;以及檢測從軟件控制器接收來用于交換的所述令牌是否對應(yīng)于已經(jīng)由許可證管理服務(wù)器(2,61)交換的令牌。
27.一種根據(jù)用數(shù)據(jù)令牌(56)代表的許可證來控制軟件產(chǎn)品(55)在用戶設(shè)備(53)處的使用的計算機程序,所述用戶設(shè)備(53)可經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(54)與許可證管理服務(wù)器(51)相連,所述計算機程序包括被調(diào)適來進行以下操作的程序代碼裝置基本上只在與許可證管理服務(wù)器(51)提供給所述用戶設(shè)備的當前數(shù)據(jù)令牌(56)相關(guān)聯(lián)的使用期內(nèi)才允許軟件產(chǎn)品(55)在所述用戶設(shè)備(53)處的使用;接收與所述許可證相關(guān)聯(lián)的交換令牌(57);以及(a)為了延長所述軟件產(chǎn)品的許可證,使其超過與許可證管理服務(wù)器所提供的當前數(shù)據(jù)令牌(56)相關(guān)聯(lián)的使用期,(b)如果所述交換令牌(57)是在缺少當前數(shù)據(jù)令牌(56)的情況下由所述用戶設(shè)備(53)接收的,則將當前數(shù)據(jù)令牌(56)和交換令牌(57)之一經(jīng)由網(wǎng)絡(luò)(54)提供給許可證管理服務(wù)器(51),以換取新的數(shù)據(jù)令牌。
28.一種用在軟件許可證管理系統(tǒng)(50)的許可證管理服務(wù)器(51)中的計算機程序,在所述系統(tǒng)中用數(shù)據(jù)令牌(56)來代表使用軟件產(chǎn)品(55)的許可證,所述系統(tǒng)(50)包括如權(quán)利要求23所述的軟件控制器(52a)以及被調(diào)適為經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(54)與軟件控制器(52a)通信的許可證管理服務(wù)器(51),其中所述計算機程序包括被調(diào)適為致使所述許可證管理服務(wù)器(51)進行以下操作的程序代碼裝置存儲在許可證下被提供給軟件控制器(52a)的每個數(shù)據(jù)令牌(56)的使用期;并且經(jīng)由網(wǎng)絡(luò)(54)向軟件控制器(52a)提供新的數(shù)據(jù)令牌,用于交換由許可證管理服務(wù)器(51)從所述軟件控制器接收的當前數(shù)據(jù)令牌(56)或者所述交換令牌(57),所述新的數(shù)據(jù)令牌具有與以前在許可證下提供的數(shù)據(jù)令牌的使用期不交疊的新的使用期。
29.一種根據(jù)用數(shù)據(jù)令牌(7,67)代表的許可證來控制軟件產(chǎn)品(4,65)在用戶設(shè)備(3,64)處的使用的方法,所述用戶設(shè)備(3,64)可經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(5,63)與許可證管理服務(wù)器(2,61)相連,其中所述方法包括,在所述用戶設(shè)備(3,64)處基本上只在與許可證管理服務(wù)器(2,61)提供給所述用戶設(shè)備的當前數(shù)據(jù)令牌(7,67)相關(guān)聯(lián)的使用期內(nèi)才允許軟件產(chǎn)品(4,65)的使用;允許對依存于由許可證管理服務(wù)器(2,61)提供的當前數(shù)據(jù)令牌(7,67)的交換令牌的用戶訪問,從而所述交換令牌可以作為當前數(shù)據(jù)令牌被提供給另一個用戶設(shè)備;并且(a)為了延長所述軟件產(chǎn)品的許可證,使其超過與許可證管理服務(wù)器所提供的當前數(shù)據(jù)令牌(7,67)相關(guān)聯(lián)的使用期,(b)如果當前數(shù)據(jù)令牌是來自另一個用戶設(shè)備的交換令牌,則將當前數(shù)據(jù)令牌(7,67)和所述交換令牌之一經(jīng)由網(wǎng)絡(luò)(5,63)提供給許可證管理服務(wù)器(2,61),以換取新的數(shù)據(jù)令牌來替換當前數(shù)據(jù)令牌。
30.一種用于軟件許可證管理系統(tǒng)(1,60)的許可證管理服務(wù)器(2,61)的操作方法,在所述系統(tǒng)中利用如權(quán)利要求29所述的方法來控制軟件產(chǎn)品(4,65)在用戶設(shè)備(3,64)處的使用,所述用于許可證管理服務(wù)器(2,61)的操作方法包括經(jīng)由網(wǎng)絡(luò)(5,63)向用戶設(shè)備(3,64)提供用于替換當前數(shù)據(jù)令牌(7,67)并且具有與之相關(guān)聯(lián)的新的使用期的新的數(shù)據(jù)令牌,用于交換從用戶設(shè)備(3,64)接收的當前數(shù)據(jù)令牌或者與當前數(shù)據(jù)令牌相對應(yīng)的交換令牌;以及檢測從用戶設(shè)備(3,64)接收來用于交換的所述令牌是否對應(yīng)于已經(jīng)由許可證管理服務(wù)器(2,61)交換的令牌。
31.一種根據(jù)用數(shù)據(jù)令牌(56)代表的許可證來控制軟件產(chǎn)品(55)在用戶設(shè)備(53)處的使用的方法,所述用戶設(shè)備(53)可經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(54)與許可證管理服務(wù)器(51)相連,其中所述方法包括,在所述用戶設(shè)備(53)處基本上只在與許可證管理服務(wù)器(51)提供給所述用戶設(shè)備的當前數(shù)據(jù)令牌(56)相關(guān)聯(lián)的使用期內(nèi)才允許軟件產(chǎn)品(55)的使用;并且(a)為了延長所述軟件產(chǎn)品的許可證,使其超過與許可證管理服務(wù)器(51)所提供的當前數(shù)據(jù)令牌(56)相關(guān)聯(lián)的使用期,(b)如果所述交換令牌(57)是在缺少當前數(shù)據(jù)令牌(56)的情況下由所述用戶設(shè)備(53)接收的,則將與所述許可證相關(guān)聯(lián)的當前數(shù)據(jù)令牌(56)和交換令牌(57)之一經(jīng)由網(wǎng)絡(luò)(54)提供給許可證管理服務(wù)器(51),以換取新的數(shù)據(jù)令牌。
32.一種用于軟件許可證管理系統(tǒng)(50)的許可證管理服務(wù)器(51)的操作方法,在所述系統(tǒng)中利用如權(quán)利要求31所述的方法來控制軟件產(chǎn)品(55)在用戶設(shè)備(53)處的使用,所述用于許可證管理服務(wù)器(51)的操作方法包括存儲在許可證下被提供給用戶設(shè)備(53)的每個數(shù)據(jù)令牌(56)的使用期;并且經(jīng)由網(wǎng)絡(luò)(54)向用戶設(shè)備(53)提供新的數(shù)據(jù)令牌,用于交換從用戶設(shè)備(53)接收的當前數(shù)據(jù)令牌(56)或者所述交換令牌(57),所述新的數(shù)據(jù)令牌具有與以前在許可證下提供的數(shù)據(jù)令牌的使用期不交疊的新的使用期。
33.一種存儲在計算機可用介質(zhì)上的計算機程序產(chǎn)品,包括致使計算機執(zhí)行根據(jù)權(quán)利要求25到28之一的計算機程序的計算機可讀程序裝置。
全文摘要
提供了軟件許可證管理系統(tǒng)(1,50,60),其中用數(shù)據(jù)令牌(7,56,67)來代表使用軟件產(chǎn)品(4,55,65)的許可證。所述系統(tǒng)具有用于控制軟件產(chǎn)品在用戶設(shè)備(3,53,64)處的使用的軟件控制器(6a,52a,62a)和用于經(jīng)由數(shù)據(jù)通信網(wǎng)絡(luò)(5,54,63)與軟件控制器通信的許可證管理服務(wù)器(2,51,61)。軟件控制器(6a,52a,62a)基本上只在與許可證管理服務(wù)器(2,51,61)提供給軟件控制器的當前數(shù)據(jù)令牌(7,56,67)相關(guān)聯(lián)的使用期內(nèi)才允許軟件產(chǎn)品在用戶設(shè)備處的使用。當需要傳遞許可證時,例如發(fā)生崩潰時,可以將交換令牌提供給另一個類似的軟件控制器。軟件控制器(6a,52a,62a)被調(diào)適為向許可證管理服務(wù)器(2,51,61)提供當前數(shù)據(jù)令牌或者交換令牌,以換取新的數(shù)據(jù)令牌。在兩種情況下要這樣做(a)為了延長軟件產(chǎn)品的許可證,使其超過與許可證管理服務(wù)器所提供的當前數(shù)據(jù)令牌相關(guān)聯(lián)的使用期;以及(b)當從另一個軟件控制器接收到交換令牌用于傳遞許可證時。許可證管理服務(wù)器將新的數(shù)據(jù)令牌提供給用之來替換當前數(shù)據(jù)令牌的軟件控制器。新數(shù)據(jù)令牌具有新的使用期,在該期間內(nèi)可以繼續(xù)軟件產(chǎn)品的使用。這樣,在情況(a)中,許可證被延長,而在情況(b)中,許可證被傳遞到新的軟件控制器。系統(tǒng)(1,50,60)還包括防止或禁止在多個用戶設(shè)備上同時使用軟件產(chǎn)品(4,55,65)的機制。
文檔編號G06F21/10GK1914578SQ200580003883
公開日2007年2月14日 申請日期2005年1月28日 優(yōu)先權(quán)日2004年2月3日
發(fā)明者邁克爾·威德納爾, 比爾吉特·菲茨曼 申請人:國際商業(yè)機器公司