專利名稱:基于第一和第二授權(quán)項(xiàng)來(lái)確定軟件產(chǎn)品的授權(quán)的制作方法
基于第一和第二授權(quán)項(xiàng)來(lái)確定軟件產(chǎn)品的授權(quán)
背景技術(shù):
軟件產(chǎn)品可以被授權(quán)持續(xù)特定的時(shí)間段。例如,用戶可以被授予軟件產(chǎn)品的使用持續(xù)試用期,諸如持續(xù)三十天。試用期可以被免費(fèi)或者以比軟件產(chǎn)品的充分使用更低的成本來(lái)提供以使用戶熟悉該軟件產(chǎn)品。介紹性的試用期然后可以鼓勵(lì)用戶在試用期的結(jié)束時(shí)為軟件產(chǎn)品的持續(xù)使用付費(fèi)。
在附圖中,相同的附圖標(biāo)記指代相同的部件或塊。圖示出了示例實(shí)施方式。圖中的一些描述了以示例次序發(fā)生的方法步驟,但是方法步驟可以以任何次序來(lái)執(zhí)行。以下具體描述參考圖,其中:
圖1是圖示了計(jì)算系統(tǒng)的一個(gè)示例的方框圖。圖2A是圖示了計(jì)算系統(tǒng)的一個(gè)示例的方框圖。圖2B是圖示了計(jì)算系統(tǒng)的一個(gè)示例的方框圖。圖2C是圖示了計(jì)算系統(tǒng)的一個(gè)示例的方框圖。圖3是圖示了用來(lái)基于第一和第二授權(quán)項(xiàng)來(lái)確定軟件產(chǎn)品的授權(quán)的方法的一個(gè)示例的流程圖。圖4是圖示了用來(lái)創(chuàng)建第二授權(quán)項(xiàng)的方法的一個(gè)示例的流程圖。圖5是圖示了用來(lái)將第一授權(quán)項(xiàng)與第二授權(quán)項(xiàng)相比較的方法的一個(gè)示例的流程圖。圖6是圖示了確定軟件產(chǎn)品的使用是否被授權(quán)的一個(gè)示例的流程圖。圖7是圖示了確定軟件產(chǎn)品的使用被授權(quán)的一個(gè)示例的方框圖。圖8是圖示了確定軟件產(chǎn)品的使用未被授權(quán)的一個(gè)示例的方框圖。圖9是圖示了用于延長(zhǎng)軟件產(chǎn)品的授權(quán)周期的方法的一個(gè)示例的流程圖。圖10是圖示了用來(lái)延長(zhǎng)軟件產(chǎn)品的授權(quán)周期的方法的一個(gè)示例的流程圖。圖11是圖示了計(jì)算系統(tǒng)的一個(gè)示例的方框圖。
具體實(shí)施例方式軟件產(chǎn)品可以被授權(quán)持續(xù)特定的時(shí)間段。例如,軟件廠商可以提供用來(lái)在試用的基礎(chǔ)上使用軟件產(chǎn)品諸如持續(xù)三十天或者直到特定的一天為止的用戶授權(quán)。試用在時(shí)間上可能是有限的,諸如因?yàn)槠涫敲赓M(fèi)的或者比軟件產(chǎn)品的正規(guī)價(jià)格更便宜。將軟件產(chǎn)品的使用限制到特定的時(shí)間段可以涉及使用戶鍵入授權(quán)碼。然而,在一些情況下,用戶可以共享授權(quán)碼或者可以改變授權(quán)碼以延長(zhǎng)授權(quán)的使用的量。在一些情況下,與試用期有關(guān)的授權(quán)信息可以被從遠(yuǎn)程設(shè)備檢索。例如,軟件產(chǎn)品可以包括用來(lái)經(jīng)由網(wǎng)絡(luò)檢查遠(yuǎn)程數(shù)據(jù)庫(kù)以檢查軟件產(chǎn)品的使用是否被授權(quán)的指令。然而,在一些情況下,授權(quán)信息被本地地存儲(chǔ)在執(zhí)行該軟件產(chǎn)品的電子設(shè)備上可能是令人期望的。軟件產(chǎn)品可以創(chuàng)建在電子設(shè)備上本地地存儲(chǔ)的授權(quán)文件,諸如當(dāng)軟件產(chǎn)品被安裝時(shí)。用戶可以發(fā)現(xiàn)文件并且嘗試延長(zhǎng)軟件產(chǎn)品的授權(quán)的使用的周期,諸如通過(guò)刪除或改變文件。在一個(gè)實(shí)施例中,軟件產(chǎn)品的授權(quán)被通過(guò)創(chuàng)建在運(yùn)行軟件產(chǎn)品的電子設(shè)備上存儲(chǔ)的兩個(gè)授權(quán)項(xiàng)來(lái)實(shí)施,其中每個(gè)授權(quán)項(xiàng)在不同的時(shí)間被創(chuàng)建。例如,一個(gè)授權(quán)項(xiàng)可以在軟件產(chǎn)品被安裝時(shí)被創(chuàng)建,而另一授權(quán)項(xiàng)可以在軟件產(chǎn)品首次被執(zhí)行時(shí)被創(chuàng)建。授權(quán)項(xiàng)可以為單獨(dú)的項(xiàng)。例如,一個(gè)授權(quán)項(xiàng)可以為文件而另一個(gè)可以為注冊(cè)表鍵,或者授權(quán)項(xiàng)可以為單獨(dú)的文件或注冊(cè)表鍵。兩個(gè)授權(quán)項(xiàng)可以被協(xié)調(diào)使得在它們之間的不一致可以指示軟件產(chǎn)品的使用未被授權(quán)。使用在不同的時(shí)間所創(chuàng)建的兩個(gè)授權(quán)項(xiàng)可以使得用戶更難以發(fā)現(xiàn)該兩個(gè)授權(quán)項(xiàng)。如果用戶發(fā)現(xiàn)授權(quán)項(xiàng)中的一個(gè)并且改變或者刪除它,則因?yàn)榻Y(jié)果得到的兩個(gè)授權(quán)項(xiàng)之間的不一致性而篡改可能是明顯的。因此,用戶更難以延長(zhǎng)用于軟件產(chǎn)品的授權(quán)周期。圖1是圖示了計(jì)算系統(tǒng)100的一個(gè)示例的方框圖。計(jì)算系統(tǒng)100可以包括電子設(shè)備110。電子設(shè)備110可以為任何適當(dāng)?shù)碾娮釉O(shè)備,諸如個(gè)人計(jì)算機(jī)或移動(dòng)電話。電子設(shè)備110可以例如包括處理器104、機(jī)器可讀存儲(chǔ)介質(zhì)102、第一授權(quán)項(xiàng)106、以及第二授權(quán)項(xiàng)108。處理器104可以為任何適當(dāng)?shù)奶幚砥?,諸如中央處理單元(CPU)、基于半導(dǎo)體的微處理器、或適合于指令的檢索和執(zhí)行的任何其他設(shè)備。在一個(gè)實(shí)施例中,計(jì)算系統(tǒng)100包括代替或除了處理器104之外的邏輯。作為替換或除了取得、解碼、以及執(zhí)行指令之外,處理器104可以包括一個(gè)或多個(gè)集成電路(IC)或其他電子電路,所述其他電子電路包括用于執(zhí)行下文中所描述的功能的多個(gè)電子部件。在一個(gè)實(shí)施方式中,計(jì)算系統(tǒng)100包括多個(gè)處理器。例如,一個(gè)處理器可以執(zhí)行一些功能而另一處理器可以執(zhí)行其他功能。在一個(gè)實(shí)施方式中,處理器104執(zhí)行在機(jī)器可讀存儲(chǔ)介質(zhì)102中存儲(chǔ)的指令。機(jī)器可讀存儲(chǔ)介質(zhì)102可以為任何適當(dāng)?shù)臋C(jī)器可讀介質(zhì),諸如電子的、磁性的、光學(xué)的或存儲(chǔ)可執(zhí)行指令或其他數(shù)據(jù)的其他物理存儲(chǔ)設(shè)備(例如,硬盤驅(qū)動(dòng)器、隨機(jī)存取存儲(chǔ)器、閃速存儲(chǔ)器等)。機(jī)器可讀存儲(chǔ)介質(zhì)102可以例如為計(jì)算機(jī)可讀非暫時(shí)性介質(zhì)。機(jī)器可讀存儲(chǔ)介質(zhì)102可以包括可由處理器104執(zhí)行的指令。機(jī)器可讀存儲(chǔ)介質(zhì)102可以包括與軟件產(chǎn)品112相關(guān)聯(lián)的指令。軟件產(chǎn)品112可以為任何適當(dāng)?shù)能浖a(chǎn)品。軟件產(chǎn)品112可以被授權(quán)以在特定的時(shí)間段(諸如六天試用期)期間在處理器104上執(zhí)行。第一授權(quán)項(xiàng)106和第二授權(quán)項(xiàng)108可以為用于指示軟件產(chǎn)品112的使用是否被授權(quán)的任何適當(dāng)?shù)捻?xiàng)。例如,第一授權(quán)項(xiàng)106和第二授權(quán)項(xiàng)108可以為文件或注冊(cè)表鍵。第一授權(quán)項(xiàng)106和第二授權(quán)項(xiàng)108可以包括指示軟件產(chǎn)品的授權(quán)的使用的時(shí)間段的信息。第一授權(quán)項(xiàng)106和第二授權(quán)項(xiàng)108可以包括指示其他授權(quán)項(xiàng)的屬性的信息。例如,第一授權(quán)項(xiàng)106可以包括指示第二授權(quán)項(xiàng)108是否已經(jīng)被創(chuàng)建的信息。軟件產(chǎn)品112可以包括與控制軟件產(chǎn)品112是否可以在特定的時(shí)間在處理器104上執(zhí)行有關(guān)的指令。例如,軟件產(chǎn)品112可以包括用來(lái)當(dāng)軟件產(chǎn)品112被安裝時(shí)生成諸如第一授權(quán)項(xiàng)106的第一授權(quán)令牌的指令,和當(dāng)軟件產(chǎn)品112首次被運(yùn)行時(shí)生成諸如第二授權(quán)項(xiàng)108的第二授權(quán)令牌的指令,其中每個(gè)授權(quán)項(xiàng)是在儲(chǔ)存器中存儲(chǔ)的文件或在注冊(cè)表中存儲(chǔ)的注冊(cè)表鍵。軟件產(chǎn)品112可以包括用來(lái)基于第一授權(quán)項(xiàng)106和第二授權(quán)項(xiàng)108的比較來(lái)確定軟件產(chǎn)品112的使用在特定的時(shí)間是否被授權(quán),并且如果確定軟件產(chǎn)品112的使用未被授權(quán)則禁止軟件產(chǎn)品112的使用的指令。圖2A、2B以及2C示出了第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)的示例組合,其中兩個(gè)授權(quán)項(xiàng)中的每一個(gè)都可以為注冊(cè)表鍵或文件。圖2A是圖示了計(jì)算系統(tǒng)200的一個(gè)示例的方框圖。計(jì)算系統(tǒng)200示出了作為在儲(chǔ)存器218中存儲(chǔ)的授權(quán)文件202的第一授權(quán)項(xiàng)和作為在注冊(cè)表220中存儲(chǔ)的授權(quán)鍵204的第二授權(quán)項(xiàng)。儲(chǔ)存器218可以為任何適當(dāng)?shù)膬?chǔ)存器,諸如硬盤驅(qū)動(dòng)器或閃速驅(qū)動(dòng)器。儲(chǔ)存器218可以存儲(chǔ)用于存儲(chǔ)與對(duì)軟件產(chǎn)品進(jìn)行授權(quán)有關(guān)的信息的文件。注冊(cè)表220可以為任何適當(dāng)?shù)淖?cè)表,諸如存儲(chǔ)與操作系統(tǒng)有關(guān)的設(shè)定的數(shù)據(jù)庫(kù)。注冊(cè)表220可以包括具有與對(duì)軟件產(chǎn)品進(jìn)行授權(quán)有關(guān)的屬性的注冊(cè)表鍵。處理器104可以在軟件產(chǎn)品112被安裝時(shí)創(chuàng)建授權(quán)項(xiàng)中的一個(gè),并且可以在軟件產(chǎn)品112的第一執(zhí)行期間創(chuàng)建另一授權(quán)項(xiàng)。圖2B是圖示了計(jì)算系統(tǒng)206的一個(gè)示例的方框圖。計(jì)算系統(tǒng)206包括第一授權(quán)文件208和第二授權(quán)文件210。圖2C是圖示了計(jì)算系統(tǒng)212的一個(gè)示例的方框圖。計(jì)算系統(tǒng)212包括第一授權(quán)密鑰214和第二授權(quán)密鑰216。圖3是圖示了用來(lái)基于諸如第一授權(quán)項(xiàng)106和第二授權(quán)項(xiàng)108的第一和第二授權(quán)項(xiàng)來(lái)確定軟件112產(chǎn)品的授權(quán)的方法300的一個(gè)示例的流程圖。例如,第一授權(quán)項(xiàng)可以在軟件產(chǎn)品112被安裝時(shí)被創(chuàng)建,而第二授權(quán)項(xiàng)可以在軟件產(chǎn)品112首次被執(zhí)行時(shí)被創(chuàng)建。信息可以被存儲(chǔ)在與軟件產(chǎn)品112的授權(quán)的使用的時(shí)間段有關(guān)的第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)中。在第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)中的信息可以被與當(dāng)前日期或日期和時(shí)間進(jìn)行比較以確定授權(quán)周期是否已經(jīng)期滿。在一些情況下,在第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)中的信息可以被相互相比較以確定二者中任何一個(gè)授權(quán)項(xiàng)是否已經(jīng)被篡改。在302處開始并且移動(dòng)到304,處理器104,諸如通過(guò)執(zhí)行在機(jī)器可讀存儲(chǔ)介質(zhì)102中存儲(chǔ)的指令,在軟件產(chǎn)品112被安裝時(shí)創(chuàng)建第一授權(quán)項(xiàng)。例如,軟件產(chǎn)品112可以包括用于安裝的指令,所述指令包括用來(lái)生成授權(quán)令牌的指令。第一授權(quán)項(xiàng)可以例如為授權(quán)文件或授權(quán)密鑰??梢砸匀魏芜m當(dāng)?shù)姆绞絹?lái)創(chuàng)建授權(quán)項(xiàng)。處理器104可以在授權(quán)項(xiàng)被創(chuàng)建時(shí)將信息寫入到授權(quán)項(xiàng),諸如通過(guò)更新授權(quán)密鑰屬性或者將信息存儲(chǔ)在授權(quán)文件中。例如,處理器104可以包括關(guān)于安裝日期或安裝時(shí)間的信息,諸如通過(guò)在安裝發(fā)生時(shí)從系統(tǒng)或互聯(lián)網(wǎng)時(shí)鐘接收或檢索關(guān)于當(dāng)前日期的信息。信息可以包括基于安裝日期所計(jì)算的期滿日期,諸如從安裝起的期滿日期九十天。信息可以包括可以被用來(lái)檢測(cè)篡改授權(quán)項(xiàng)的標(biāo)識(shí)信息。例如,如果用戶在沒(méi)有標(biāo)識(shí)信息的情況下創(chuàng)建新的授權(quán)項(xiàng),則處理器104可以識(shí)別到授權(quán)項(xiàng)被用戶創(chuàng)建并且不是在軟件產(chǎn)品112的安裝期間。處理器104可以存儲(chǔ)授權(quán)項(xiàng)。授權(quán)項(xiàng)可以被存儲(chǔ)在特定的位置或者使用特定的名稱來(lái)存儲(chǔ)。例如,軟件產(chǎn)品112可以包括用于在哪里存儲(chǔ)授權(quán)項(xiàng)的指令,諸如文件路徑或注冊(cè)表鍵名稱。繼續(xù)到306,處理器104,諸如通過(guò)執(zhí)行在機(jī)器可讀存儲(chǔ)介質(zhì)102中存儲(chǔ)的指令來(lái)在軟件產(chǎn)品112首次被執(zhí)行時(shí)創(chuàng)建第二授權(quán)項(xiàng)。第二授權(quán)項(xiàng)可以例如為授權(quán)文件或授權(quán)密鑰。第二授權(quán)項(xiàng)可以為與第一授權(quán)項(xiàng)相比相同類型的或不同類型的項(xiàng)。例如,第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)兩者都可以為文件或注冊(cè)表鍵,或者第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)中的一個(gè)可以為文件而另一個(gè)可以為注冊(cè)表鍵。可以以任何適當(dāng)?shù)姆绞絹?lái)創(chuàng)建第二授權(quán)項(xiàng)。第二授權(quán)項(xiàng)可以被存儲(chǔ)在任何適當(dāng)?shù)奈恢弥?。在一個(gè)實(shí)施例中,信息被包括在第二授權(quán)項(xiàng)中,諸如軟件產(chǎn)品112首次被執(zhí)行的日期或時(shí)間。第二授權(quán)項(xiàng)可以包括基于第一執(zhí)行所計(jì)算的期滿日期,諸如從第一執(zhí)行起的期滿日期三十天。在一個(gè)實(shí)施例中,處理器104確定是否創(chuàng)建第二授權(quán)項(xiàng)。例如,處理器104可以分析第一授權(quán)項(xiàng)以確定軟件產(chǎn)品112的當(dāng)前執(zhí)行是否是軟件產(chǎn)品112的第一執(zhí)行。在一個(gè)實(shí)施方式中,關(guān)于第二授權(quán)項(xiàng)的信息被存儲(chǔ)在第一授權(quán)項(xiàng)。例如,關(guān)于軟件的第一執(zhí)行的日期的信息可以被存儲(chǔ)在第一和第二授權(quán)項(xiàng)兩者中。處理器104可以從第一授權(quán)項(xiàng)中檢索信息以寫入到第二授權(quán)項(xiàng)。例如,安裝日期或與安裝日期有關(guān)的期滿日期可以從第一授權(quán)項(xiàng)中讀取并且存儲(chǔ)在第二授權(quán)項(xiàng)中。移動(dòng)到308,處理器104,諸如通過(guò)執(zhí)行在機(jī)器可讀存儲(chǔ)介質(zhì)102中存儲(chǔ)的指令,來(lái)基于第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)的比較確定軟件產(chǎn)品112的使用在特定的時(shí)間是否被授權(quán),諸如在特定的日期或日期和時(shí)間。例如,用戶可以嘗試執(zhí)行軟件產(chǎn)品112,并且處理器104可以確定軟件產(chǎn)品112的使用在該時(shí)間是否被授權(quán)。處理器104可以以任何適當(dāng)?shù)姆绞綄⒌谝皇跈?quán)項(xiàng)和第二授權(quán)項(xiàng)相比較。例如,處理器104可以將當(dāng)前日期與期滿日期相比較,所述期滿日期諸如在第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)中的期滿日期或通過(guò)將時(shí)間段加到第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)中的安裝日期或第一執(zhí)行日期所計(jì)算的期滿日期。期滿日期可以被與從互聯(lián)網(wǎng)時(shí)鐘所檢索到的當(dāng)前日期相比較,以阻止用戶通過(guò)改變電子設(shè)備110上的系統(tǒng)時(shí)鐘來(lái)延長(zhǎng)授權(quán)周期。在一個(gè)實(shí)施方式中,處理器比較軟件產(chǎn)品112已經(jīng)被執(zhí)行的次數(shù)。例如,授權(quán)項(xiàng)中的每一個(gè)都可以包括指示軟件產(chǎn)品112已經(jīng)執(zhí)行的次數(shù)的數(shù)目。數(shù)目可以被與允許的最大次數(shù)相比較。在一個(gè)實(shí)施例中,處理器104比較第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)中的信息以確認(rèn)授權(quán)項(xiàng)中的信息是一致的。例如,如果授權(quán)項(xiàng)包括不同的第一執(zhí)行日期、安裝日期或期滿日期,則其可以指示用戶通過(guò)改變授權(quán)項(xiàng)中的一個(gè)或者通過(guò)刪除和重新創(chuàng)建授權(quán)項(xiàng)中的一個(gè)篡改了授權(quán)項(xiàng)中的一個(gè)。繼續(xù)到310,如果確定軟件產(chǎn)品112的使用未被授權(quán),則處理器104,諸如通過(guò)執(zhí)行在機(jī)器可讀存儲(chǔ)介質(zhì)102中存儲(chǔ)的指令,來(lái)阻止軟件產(chǎn)品112的使用。處理器104可以以任何適當(dāng)?shù)姆绞絹?lái)禁止軟件產(chǎn)品112的使用。例如,處理器104可以停止執(zhí)行與軟件產(chǎn)品112有關(guān)的指令。如果確定軟件產(chǎn)品112的使用被授權(quán),則處理器104可以繼續(xù)執(zhí)行與軟件產(chǎn)品112相關(guān)聯(lián)的指令以允許用戶使用軟件產(chǎn)品112。方法300繼續(xù)到312并且結(jié)束。圖4是圖示了與圖3的306相對(duì)應(yīng)的、用來(lái)創(chuàng)建第二授權(quán)項(xiàng)的方法的一個(gè)示例的流程圖。例如,處理器104可以基于第一授權(quán)項(xiàng)中的信息來(lái)確定第二授權(quán)項(xiàng)是否應(yīng)該被創(chuàng)建。處理器104可以確定用戶是否已經(jīng)篡改了授權(quán)項(xiàng)。例如,如果第二項(xiàng)存在并且第一授權(quán)項(xiàng)指示第二項(xiàng)不應(yīng)該存在,則可以阻止軟件產(chǎn)品112的使用。用戶可以不正確地相信一個(gè)授權(quán)項(xiàng)控制軟件產(chǎn)品112的授權(quán)。檢查以確定第二授權(quán)項(xiàng)是否應(yīng)該被創(chuàng)建可以阻止用戶能夠通過(guò)刪除第二授權(quán)項(xiàng)來(lái)避開系統(tǒng)。在402處開始并且移動(dòng)到404,處理器104確定第一授權(quán)項(xiàng)是否指示第二授權(quán)項(xiàng)應(yīng)該存在。處理器104可以檢索第一授權(quán)項(xiàng)。例如,處理器104可以從儲(chǔ)存器218或從注冊(cè)表220中檢索第一授權(quán)項(xiàng)。處理器104可以通過(guò)使用文件路徑或注冊(cè)表鍵名稱檢索第一授權(quán)項(xiàng)。這可以例如響應(yīng)于執(zhí)行軟件產(chǎn)品112來(lái)完成。第一授權(quán)項(xiàng)可以包括關(guān)于第二授權(quán)項(xiàng)是否已經(jīng)被創(chuàng)建的任何適當(dāng)?shù)闹甘?。例如,第一授?quán)項(xiàng)可以在安裝時(shí)間被創(chuàng)建,而不用在第二授權(quán)項(xiàng)被創(chuàng)建時(shí)可以被添加的附加的信息,或來(lái)自第一授權(quán)項(xiàng)的信息可以在第二授權(quán)項(xiàng)被創(chuàng)建時(shí)被移除。處理器104可以檢查第一授權(quán)項(xiàng)以查看其是否包含指示第二授權(quán)項(xiàng)已經(jīng)被先前創(chuàng)建的信息或該信息的缺乏。在一個(gè)實(shí)施例中,處理器在第一授權(quán)項(xiàng)被創(chuàng)建時(shí)將已知的值寫入到第一授權(quán)項(xiàng),并且處理器檢查這些已知的值以驗(yàn)證正被分析的文件或注冊(cè)表鍵是第一授權(quán)項(xiàng)。指示第二授權(quán)項(xiàng)何時(shí)被創(chuàng)建的第一執(zhí)行日期可以被存儲(chǔ)在第一授權(quán)項(xiàng)中。如果第一執(zhí)行日期不被包括在第一授權(quán)項(xiàng)中,則處理器104可以確定第二授權(quán)項(xiàng)尚未被創(chuàng)建。在一些情況下,當(dāng)軟件產(chǎn)品112被卸載時(shí),處理器104可以留下第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng),而不刪除它們。這可以阻止用戶通過(guò)卸載并且重新安裝軟件產(chǎn)品112來(lái)避開試用期。例如,如果軟件被重新安裝,則第一授權(quán)項(xiàng)仍然可以是可用的并且指示第二授權(quán)項(xiàng)已經(jīng)被創(chuàng)建。繼續(xù)到406,處理器104確定第二授權(quán)項(xiàng)是否存在。例如,處理器104可以檢查儲(chǔ)存器218或注冊(cè)表220以確定第二授權(quán)項(xiàng)是否存在。處理器104可以知道檢查特定的位置,諸如特定的文件路徑或注冊(cè)表鍵名稱??梢砸匀魏未涡騺?lái)執(zhí)行方法400的步驟。例如,在一些情況下,處理器104可以在分析第一授權(quán)項(xiàng)以確定第二授權(quán)項(xiàng)是否應(yīng)該存在之前檢查第二授權(quán)項(xiàng)是否存在。繼續(xù)到408,如果確定第二授權(quán)項(xiàng)不應(yīng)該存在并且確定第二授權(quán)項(xiàng)存在,則處理器104阻止軟件產(chǎn)品112的使用。例如,如果第一授權(quán)項(xiàng)指示第二授權(quán)尚未被創(chuàng)建,但是第二授權(quán)項(xiàng)存在,則其可以指示用戶更改或刪除了第一授權(quán)項(xiàng),而沒(méi)有刪除第二授權(quán)項(xiàng)??梢砸匀魏芜m當(dāng)?shù)姆绞絹?lái)阻止軟件產(chǎn)品112的使用。如果第一授權(quán)項(xiàng)指示第二授權(quán)項(xiàng)尚未被創(chuàng)建并且第二授權(quán)項(xiàng)不存在,則處理器104可以創(chuàng)建第二授權(quán)項(xiàng)。例如,其可能是軟件產(chǎn)品112被執(zhí)行的第一次。方法400繼續(xù)到410以結(jié)束。圖5是圖示了與圖3的308相對(duì)應(yīng)的、用來(lái)將第一授權(quán)項(xiàng)與第二授權(quán)項(xiàng)相比較的方法的一個(gè)示例的流程圖。當(dāng)將第一授權(quán)和第二授權(quán)項(xiàng)相比較以確定是否允許軟件產(chǎn)品112的使用時(shí),處理器104可以確定即使第一授權(quán)項(xiàng)指示第二授權(quán)項(xiàng)已經(jīng)被創(chuàng)建第二授權(quán)項(xiàng)也不存在。如果第二授權(quán)項(xiàng)在其被先前創(chuàng)建時(shí)不存在,則處理器104可以阻止軟件產(chǎn)品112的使用。第二授權(quán)項(xiàng)可能不再存在,例如,因?yàn)橛脩魟h除了它,諸如嘗試延長(zhǎng)試用期。用來(lái)在第一授權(quán)項(xiàng)指示第二授權(quán)項(xiàng)已經(jīng)被創(chuàng)建的情況下確定第二授權(quán)項(xiàng)是否存在的比較可以在任何點(diǎn)處完成。例如,比較可以在當(dāng)處理器104正在確定第二授權(quán)項(xiàng)是否應(yīng)該被創(chuàng)建時(shí)的時(shí)間處完成。在502處開始并且移動(dòng)到504,處理器104確定第二授權(quán)項(xiàng)是否存在。例如,處理器104可以嘗試在特定的文件路徑或注冊(cè)表鍵名稱處訪問(wèn)第二授權(quán)項(xiàng)以確定第二授權(quán)項(xiàng)是否存在。繼續(xù)到506,如果確定第二授權(quán)項(xiàng)應(yīng)該存在并且確定第二授權(quán)項(xiàng)不存在,則處理器104阻止軟件產(chǎn)品112的使用。如果第二授權(quán)項(xiàng)被創(chuàng)建并且現(xiàn)在不再存在,則其可以指示第二授權(quán)項(xiàng)被刪除。處理器104可以不重新創(chuàng)建第二授權(quán)項(xiàng),因?yàn)樵陔S后的時(shí)間創(chuàng)建它可能允許用戶延長(zhǎng)授權(quán)周期。如果確定第二授權(quán)項(xiàng)應(yīng)該存在并且確實(shí)存在,則處理器104可以將第一授權(quán)項(xiàng)與第二授權(quán)項(xiàng)相比較以確定軟件產(chǎn)品112的使用是否應(yīng)該被允許或阻止。方法500繼續(xù)508以結(jié)束。
圖6是圖示了確定軟件產(chǎn)品的使用是否被授權(quán)的一個(gè)示例600的流程圖。在602處開始,軟件產(chǎn)品被安裝在電子設(shè)備上。安裝過(guò)程可以例如包括將與軟件產(chǎn)品有關(guān)的指令存儲(chǔ)在電子設(shè)備上的機(jī)器可讀存儲(chǔ)介質(zhì)中。移動(dòng)到604,諸如授權(quán)文件的第一授權(quán)項(xiàng)可以在安裝過(guò)程期間被創(chuàng)建和存儲(chǔ)。在一些情況下,期滿日期可以被插入在授權(quán)文件中。例如,試用期可以為在軟件產(chǎn)品的安裝之后的特定的天數(shù),并且期滿日期可以通過(guò)確定當(dāng)前日期(諸如通過(guò)使用系統(tǒng)時(shí)鐘或互聯(lián)網(wǎng)時(shí)鐘)并且將試用期天數(shù)加到它來(lái)計(jì)算。繼續(xù)到606,用戶執(zhí)行軟件產(chǎn)品以使用它。繼續(xù)到608,處理器確定授權(quán)文件(第一授權(quán)項(xiàng))是否指示諸如授權(quán)注冊(cè)表鍵的第二授權(quán)項(xiàng)應(yīng)該被創(chuàng)建。處理器可以檢查在安裝時(shí)間期間被寫入到授權(quán)文件的已知的值以驗(yàn)證正被分析的文件是授權(quán)文件。處理器可以檢查授權(quán)文件以得到指示授權(quán)密鑰是否已經(jīng)被創(chuàng)建的信息的存在或缺乏。例如,處理器可以檢查以查看授權(quán)文件是否包括授權(quán)密鑰被創(chuàng)建的日期。移動(dòng)到610,如果確定授權(quán)文件指示授權(quán)密鑰尚未被創(chuàng)建,則處理器檢查查看授權(quán)密鑰是否存在。如果授權(quán)密鑰存在,則其可以指示授權(quán)文件被重新創(chuàng)建,諸如通過(guò)刪除它并且重新安裝軟件而不刪除授權(quán)密鑰。如果授權(quán)密鑰存在,則過(guò)程可以繼續(xù)到618以阻止軟件產(chǎn)品的使用。繼續(xù)到612,如果確定其確實(shí)已經(jīng)不存在,則授權(quán)密鑰被創(chuàng)建。繼續(xù)到614,軟件產(chǎn)品的第一開始日期可以通過(guò)從系統(tǒng)時(shí)鐘或從互聯(lián)時(shí)鐘檢索當(dāng)前日期或時(shí)間來(lái)確定。開始日期可以被寫入到授權(quán)文件和授權(quán)密鑰。開始日期可以被寫入到授權(quán)項(xiàng)兩者,使得開始日期可以被稍后比較以檢測(cè)任一授權(quán)項(xiàng)是否被刪除或改變。在一個(gè)實(shí)施例中,軟件產(chǎn)品試用的期滿日期被基于從開始日期起的時(shí)間段,諸如從開始日期起的三十天來(lái)計(jì)算。如果期滿日期被基于軟件產(chǎn)品的安裝日期來(lái)確定,則處理器可以確定當(dāng)前日期是否超過(guò)期滿日期。例如,參考620,如果期滿尚未通過(guò)則處理器可以允許軟件產(chǎn)品的使用,并且如果當(dāng)前日期在期滿日期之后則可以阻止軟件產(chǎn)品的使用。往回參考608,處理器可以評(píng)估授權(quán)文件并且確定授權(quán)密鑰已經(jīng)被創(chuàng)建。移動(dòng)到616,處理器可以確定開始日期和期滿日期在授權(quán)文件和授權(quán)密鑰中是否是相同的。如果當(dāng)確定授權(quán)密鑰確實(shí)不存在嘗試評(píng)估授權(quán)密鑰時(shí),處理器可以阻止軟件產(chǎn)品的使用。如果授權(quán)密鑰確實(shí)存在,但是開始日期和期滿日期在授權(quán)文件和授權(quán)文件之間是不一致的,則處理器可以阻止軟件產(chǎn)品的使用。繼續(xù)到620,處理器可以確定當(dāng)前日期是否在期滿日期之后。如果這樣,移動(dòng)到620,軟件產(chǎn)品的使用被阻止。如果不是,則移動(dòng)到622,軟件產(chǎn)品的使用被允許。每當(dāng)軟件產(chǎn)品被執(zhí)行時(shí),過(guò)程就繼續(xù)在606處開始。圖7是圖示了確定軟件產(chǎn)品的使用被授權(quán)的一個(gè)示例700的方框圖。示例700示出了具有作為一個(gè)授權(quán)項(xiàng)的授權(quán)文件702的儲(chǔ)存器218和具有作為另一授權(quán)項(xiàng)的授權(quán)密鑰704的注冊(cè)表220。授權(quán)文件702和授權(quán)密鑰704兩者都包括相同的開始日期和相同的期滿日期。授權(quán)文件702和授權(quán)密鑰704兩者中所示出的期滿日期是07/01/2012。如706處所示出的那樣,當(dāng)軟件產(chǎn)品正被運(yùn)行時(shí)的當(dāng)前日期是06/15/2012,其在期滿日期07/01/2012之前。如708處所示出的那樣,軟件產(chǎn)品的使用被允許。圖8是圖示了確定軟件產(chǎn)品的使用未被授權(quán)的一個(gè)示例800的方框圖。示例800包括儲(chǔ)存器218中的作為一個(gè)授權(quán)項(xiàng)的授權(quán)文件802和注冊(cè)表220中的作為另一授權(quán)項(xiàng)的授權(quán)密鑰804。授權(quán)文件802和授權(quán)密鑰804包括不同的開始日期和相同的期滿日期。授權(quán)文件802和授權(quán)密鑰804中所示出的期滿日期07/01/2012在當(dāng)806處所示的軟件正被運(yùn)行時(shí)的當(dāng)前日期06/15/2012之前。然而,因?yàn)槭跈?quán)文件802和授權(quán)密鑰804中的開始日期之間的不一致,所以808示出了軟件產(chǎn)品的使用未被授權(quán)。在一些情況下,初始試用期可以用期滿日期來(lái)設(shè)置,但是延長(zhǎng)試用期可能是令人期望的。例如,軟件廠商可以從請(qǐng)求試用期被延長(zhǎng)的客戶端接收電話呼叫。可以提供延長(zhǎng)試用期諸如持續(xù)多個(gè)天數(shù)或者直到特定的日期為止的延長(zhǎng)密鑰??梢栽u(píng)估延長(zhǎng)密鑰并且可以基于延長(zhǎng)密鑰來(lái)更新第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)中的期滿日期。圖9是圖示了用來(lái)延長(zhǎng)軟件產(chǎn)品112的授權(quán)周期的方法900的一個(gè)示例的流程圖。處理器104可以接收延長(zhǎng)密鑰。延長(zhǎng)密鑰可以為任何適當(dāng)?shù)难娱L(zhǎng)密鑰,諸如延長(zhǎng)日期持續(xù)特定的天數(shù)或直到特定的日期為止的延長(zhǎng)密鑰。在一個(gè)實(shí)施例中,單獨(dú)的處理器創(chuàng)建延長(zhǎng)密鑰。例如,延長(zhǎng)密鑰可以被創(chuàng)建并且經(jīng)由網(wǎng)絡(luò)發(fā)送到用戶或處理器104。在一個(gè)實(shí)施例中,延長(zhǎng)密鑰是20位密鑰。例如,延長(zhǎng)密鑰可以為具有位數(shù)sfee-eeee-eeod-dddd-dddc的密鑰,其中s是調(diào)整成使得密鑰滿足檢查的位,諸如模數(shù)11檢查,f是設(shè)置成O或I以指示試用是否應(yīng)該被重置的位,并且c是校驗(yàn)和值。e位可以表示用于應(yīng)用密鑰的期滿日期。ο位指示延長(zhǎng)試用期的周數(shù)。如果ο被設(shè)置成0,則其可以指示試用期應(yīng)該被延長(zhǎng)直到由d位所表示的日期為止。在902處開始并且移動(dòng)到904,處理器104接收指示用來(lái)延長(zhǎng)軟件產(chǎn)品112的授權(quán)的使用的時(shí)間段的時(shí)間段的延長(zhǎng)密鑰。處理器104可以以任何適當(dāng)?shù)姆绞絹?lái)接收延長(zhǎng)密鑰,諸如從用戶輸入到與處理器104進(jìn)行通信的輸入設(shè)備或經(jīng)由網(wǎng)絡(luò)。延長(zhǎng)密鑰可以以任何適當(dāng)?shù)姆绞絹?lái)更新試用期。例如,延長(zhǎng)密鑰可以為試用結(jié)束提供特定的日期,指示試用應(yīng)該被延長(zhǎng)持續(xù)特定的天數(shù)或重新開始試用期。密鑰可以通過(guò)任何適當(dāng)?shù)脑黾觼?lái)延長(zhǎng)試用期,諸如按天數(shù),小時(shí)或分鐘。在一些情況下,處理器104可以實(shí)施與密鑰有關(guān)的規(guī)則。例如,如果延長(zhǎng)時(shí)間將以其他的方式延長(zhǎng)原始試用期超過(guò)一年,則處理器104可以通過(guò)向下調(diào)整延長(zhǎng)時(shí)間來(lái)確保原始試用期不會(huì)延長(zhǎng)到一年以上。移動(dòng)到906,處理器104基于延長(zhǎng)密鑰來(lái)調(diào)整第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)以按照所指示的時(shí)間段延長(zhǎng)授權(quán)的使用的周期。例如,寫入到第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)的期滿日期可以在第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)中被更新。方法900繼續(xù)到908并且結(jié)束。圖10是圖示了用來(lái)延長(zhǎng)軟件產(chǎn)品的授權(quán)周期的方法1000的一個(gè)示例的流程圖。例如,處理器104可以將延長(zhǎng)密鑰或延長(zhǎng)密鑰的一部分存儲(chǔ)在第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)兩者中。在第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)中所存儲(chǔ)的延長(zhǎng)密鑰可以被比較以確定延長(zhǎng)密鑰的列表是否是相同的。這可以被完成例如以阻止用戶重新使用延長(zhǎng)密鑰。用戶可以接收用來(lái)延長(zhǎng)當(dāng)前的試用期三十天的延長(zhǎng)密鑰,并且阻止用戶重復(fù)使用密鑰以保持延長(zhǎng)試用期三十天可能是令人期望的。處理器104可以在任何適當(dāng)?shù)臅r(shí)間檢查延長(zhǎng)密鑰,諸如每當(dāng)軟件產(chǎn)品112被執(zhí)行時(shí)。在1002處開始并且移動(dòng)到1004,處理器104將延長(zhǎng)密鑰存儲(chǔ)在第一授權(quán)項(xiàng)中。處理器104可以存儲(chǔ)附加的信息,諸如延長(zhǎng)密鑰被使用的日期。處理器104可以存儲(chǔ)延長(zhǎng)密鑰的一部分或整個(gè)延長(zhǎng)密鑰。移動(dòng)到1006,處理器104將延長(zhǎng)密鑰存儲(chǔ)在第二授權(quán)項(xiàng)中。與延長(zhǎng)密鑰有關(guān)的附加的信息可以被存儲(chǔ)在第二授權(quán)項(xiàng)中,并且可以存儲(chǔ)密鑰的一部分或整個(gè)密鑰。繼續(xù)到1008,處理器104確定文件中的延長(zhǎng)密鑰是否與注冊(cè)表鍵中的延長(zhǎng)密鑰相關(guān)。例如,處理器104可以確定在第一授權(quán)項(xiàng)中找到的任何延長(zhǎng)密鑰是否也在第二授權(quán)項(xiàng)中,并且反之亦然。在一些情況下,處理器104可以檢查延長(zhǎng)密鑰的次序在第一授權(quán)項(xiàng)中與在第二授權(quán)項(xiàng)中是否是相同的。在一個(gè)實(shí)施例中,延長(zhǎng)密鑰包括指示第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)應(yīng)該被重新設(shè)置的信息。例如,即使兩個(gè)授權(quán)項(xiàng)由于篡改而不一致,確定不一致也可能是令人期望的,諸如對(duì)于有價(jià)值的客戶來(lái)說(shuō),使得軟件產(chǎn)品可以被使用。處理器104可以例如更新兩個(gè)授權(quán)項(xiàng)中的開始日期和結(jié)束日期兩者,使得它們是一致的。在一些情況下,處理器104可以調(diào)整或刪除關(guān)于先前的延長(zhǎng)密鑰的信息,使得信息在第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)之間是一致的。繼續(xù)到1010,如果確定延長(zhǎng)密鑰不相關(guān),則處理器104阻止軟件產(chǎn)品112的使用。這可以完成,例如因?yàn)樵囉闷谝呀?jīng)被無(wú)效地延長(zhǎng)。如果延長(zhǎng)密鑰確實(shí)相關(guān),則處理器104可以基于所延長(zhǎng)的期滿日期來(lái)確定軟件產(chǎn)品112的使用是否被授權(quán)。方法1000繼續(xù)到1012以結(jié)束。圖11是圖示了計(jì)算系統(tǒng)1100的一個(gè)示例的方框圖。計(jì)算系統(tǒng)1100包括處理器104、儲(chǔ)存器218、以及注冊(cè)表220。儲(chǔ)存器218包括作為一個(gè)授權(quán)項(xiàng)的授權(quán)文件1104,并且注冊(cè)表220包括作為另一授權(quán)項(xiàng)的授權(quán)密鑰1110。處理器104可以使用加密密鑰1106對(duì)授權(quán)文件1104進(jìn)行加密并且可以使用加密密鑰1112來(lái)對(duì)授權(quán)密鑰1110進(jìn)行加密。使用兩個(gè)單獨(dú)的加密密鑰可以使系統(tǒng)更安全,因?yàn)槟軌驅(qū)κ跈?quán)文件1104和授權(quán)密鑰1110中的一個(gè)進(jìn)行解密將不允許用戶對(duì)另一個(gè)進(jìn)行解密。因?yàn)檫@兩個(gè)授權(quán)項(xiàng)被分析以確定它們是否匹配,更新兩個(gè)授權(quán)文件中的一個(gè)將不允許用戶延長(zhǎng)軟件產(chǎn)品112的使用。通過(guò)比較在單獨(dú)的時(shí)間所創(chuàng)建的兩個(gè)授權(quán)項(xiàng)來(lái)確定軟件產(chǎn)品的使用是否被授權(quán)可能使得用戶更難以檢測(cè)關(guān)于授權(quán)周期的信息被存儲(chǔ)在哪里。因此,用于軟件產(chǎn)品的試用期可能是更難以避開。試用期可以為廠商提供寶貴的銷售工具以將產(chǎn)品引入到用于評(píng)估的潛在客戶。
權(quán)利要求
1.一種用來(lái)基于第一和第二授權(quán)項(xiàng)來(lái)確定軟件產(chǎn)品的授權(quán)的計(jì)算系統(tǒng),包括: 電子設(shè)備,其包括: 用來(lái)進(jìn)行以下的處理器104: 當(dāng)軟件產(chǎn)品被安裝時(shí),創(chuàng)建第一授權(quán)項(xiàng); 當(dāng)所述軟件產(chǎn)品首次被執(zhí)行時(shí),創(chuàng)建第二授權(quán)項(xiàng); 其中,每個(gè)授權(quán)項(xiàng)都包括在儲(chǔ)存器106中存儲(chǔ)的文件或在注冊(cè)表108中存儲(chǔ)的注冊(cè)表鍵; 基于所述第一授權(quán)項(xiàng)和所述第二授權(quán)項(xiàng)的比較來(lái)確定所述軟件產(chǎn)品的使用在特定的時(shí)間是否被授權(quán);以及 如果確定所述軟件產(chǎn)品的使用未被授權(quán),則阻止所述軟件產(chǎn)品的使用。
2.根據(jù)權(quán)利要求1所述的計(jì)算系統(tǒng),其中,創(chuàng)建所述第二授權(quán)項(xiàng)包括: 確定所述第一授權(quán)項(xiàng)是否指示所述第二授權(quán)項(xiàng)應(yīng)該存在; 確定所述第二授權(quán)項(xiàng)是否存在; 如果確定所述第二授權(quán)項(xiàng)不應(yīng)該存在并且確定所述第二授權(quán)項(xiàng)存在,則阻止所述軟件產(chǎn)品的使用;以及 如果確定所述第二授權(quán)項(xiàng)不應(yīng)該存在并且確定所述第二授權(quán)項(xiàng)不存在,則創(chuàng)建所述第二授權(quán)項(xiàng)。
3.根據(jù)權(quán)利要求1所述的計(jì)算系統(tǒng),其中,將所述第一授權(quán)項(xiàng)與所述第二授權(quán)項(xiàng)相比較包括: 確定所述第二授權(quán)項(xiàng)是否存在;以及 如果確定所述第二授權(quán)項(xiàng)不存在,則阻止所述軟件產(chǎn)品的使用。
4.根據(jù)權(quán)利要求1所述的計(jì)算系統(tǒng),其中,所述處理器進(jìn)一步: 接收指示用來(lái)延長(zhǎng)所述軟件產(chǎn)品的授權(quán)的使用的時(shí)間段的時(shí)間段的延長(zhǎng)密鑰;并且基于所述延長(zhǎng)密鑰來(lái)調(diào)整所述第一授權(quán)項(xiàng)和所述第二授權(quán)項(xiàng)以按照所述指示的時(shí)間段延長(zhǎng)授權(quán)的使用的所述時(shí)間段。
5.根據(jù)權(quán)利要求1所述的計(jì)算系統(tǒng),其中所述處理器進(jìn)一步: 使用第一加密密鑰來(lái)對(duì)所述第一授權(quán)項(xiàng)進(jìn)行加密;并且 使用第二加密密鑰來(lái)對(duì)所述第二授權(quán)項(xiàng)進(jìn)行加密。
6.一種用來(lái)基于第一和第二授權(quán)項(xiàng)來(lái)確定軟件產(chǎn)品的授權(quán)的方法,包括: 當(dāng)軟件產(chǎn)品被安裝時(shí),通過(guò)處理器創(chuàng)建第一授權(quán)項(xiàng); 當(dāng)所述軟件產(chǎn)品首次被執(zhí)行時(shí),通過(guò)所述處理器創(chuàng)建第二授權(quán)項(xiàng), 其中,每個(gè)授權(quán)項(xiàng)都包括文件或注冊(cè)表鍵; 基于所述第一授權(quán)項(xiàng)和所述第二授權(quán)項(xiàng)的比較,通過(guò)所述處理器確定所述軟件產(chǎn)品的使用在特定的時(shí)間是否被授權(quán);以及 如果確定所述軟件產(chǎn)品的使用未被授權(quán),則通過(guò)所述處理器阻止所述軟件產(chǎn)品的使用。
7.根據(jù)權(quán)利要求6所述的方法,進(jìn)一步包括: 通過(guò)所述處理器來(lái)確定所述第一授權(quán)項(xiàng)是否指示所述第二授權(quán)項(xiàng)應(yīng)該存在; 通過(guò)所述處理器來(lái)確定所述第二授權(quán)項(xiàng)是否存在;如果確定所述第二授權(quán)項(xiàng)不應(yīng)該存在并且確定所述第二授權(quán)項(xiàng)存在,則通過(guò)所述處理器來(lái)阻止所述軟件產(chǎn)品的使用;以及 如果確定所述第二授權(quán)項(xiàng)應(yīng)該存在并且確定所述第二授權(quán)項(xiàng)不存在,則通過(guò)所述處理器來(lái)阻止所述軟件產(chǎn)品的使用。
8.根據(jù)權(quán)利要求6所述的方法,進(jìn)一步包括: 通過(guò)所述處理器接收指示用來(lái)延長(zhǎng)所述軟件產(chǎn)品的授權(quán)的使用的時(shí)間段的時(shí)間段的延長(zhǎng)密鑰;并且 通過(guò)所述處理器基于所述延長(zhǎng)密鑰來(lái)調(diào)整所述第一授權(quán)項(xiàng)和所述第二授權(quán)項(xiàng)以按照所述指示的時(shí)間段延長(zhǎng)授權(quán)的使用的所述時(shí)間段。
9.根據(jù)權(quán)利要求8所述的方法,進(jìn)一步包括: 通過(guò)所述處理器將所述延長(zhǎng)密鑰存儲(chǔ)在所述第一授權(quán)項(xiàng)中; 通過(guò)所述處理器將所述延長(zhǎng)密鑰存儲(chǔ)在所述第二授權(quán)項(xiàng)中; 通過(guò)所述處理器確定所述第一授權(quán)項(xiàng)中的所述延長(zhǎng)密鑰是否與所述第二授權(quán)項(xiàng)中的所述延長(zhǎng)密鑰相關(guān);以及 如果確定所述延長(zhǎng)密鑰不相關(guān),則通過(guò)所述處理器阻止所述軟件產(chǎn)品的使用。
10.根據(jù)權(quán)利要求6所述的方法,進(jìn)一步包括: 通過(guò)所述處理器使用第一加密密鑰對(duì)所述第一授權(quán)項(xiàng)進(jìn)行加密;以及 通過(guò)所述處理器使用第二加密密鑰對(duì)所述第二授權(quán)項(xiàng)進(jìn)行加密。
11.一種用可由處理器執(zhí)行以基于第一和第二授權(quán)項(xiàng)確定軟件產(chǎn)品的授權(quán)的指令編碼的機(jī)器可讀存儲(chǔ)介質(zhì),包括用來(lái)進(jìn)行以下的指令: 當(dāng)軟件產(chǎn)品被安裝時(shí),生成第一授權(quán)令牌; 當(dāng)所述軟件產(chǎn)品首次被運(yùn)行時(shí),生成第二授權(quán)令牌, 其中,每個(gè)授權(quán)令牌都包括文件或注冊(cè)表鍵; 基于所述第一授權(quán)令牌和所述第二授權(quán)令牌的比較確定所述軟件產(chǎn)品的使用在特定的時(shí)間是否被授權(quán);以及 如果確定所述軟件產(chǎn)品的使用未被授權(quán),則禁止所述軟件產(chǎn)品的使用。
12.根據(jù)權(quán)利要求11所述的機(jī)器可讀存儲(chǔ)介質(zhì),進(jìn)一步包括用來(lái)進(jìn)行以下的指令: 確定所述第一授權(quán)令牌是否指示所述第二授權(quán)令牌應(yīng)該存在; 確定所述第二授權(quán)令牌是否存在; 如果確定所述第二授權(quán)令牌不應(yīng)該存在并且確定所述第二授權(quán)令牌存在,則禁止所述軟件產(chǎn)品的使用;以及 如果確定所述第二授權(quán)令牌應(yīng)該存在并且確定所述第二授權(quán)令牌不存在,則禁止所述軟件產(chǎn)品的使用。
13.根據(jù)權(quán)利要求11所述的機(jī)器可讀存儲(chǔ)介質(zhì),進(jìn)一步包括用來(lái)進(jìn)行以下的指令: 接收指示用來(lái)延長(zhǎng)所述軟件產(chǎn)品的授權(quán)的使用的時(shí)間段的時(shí)間段的延長(zhǎng)密鑰;并且 基于所述延長(zhǎng)密鑰來(lái)更新所述第一授權(quán)令牌和所述第二授權(quán)令牌以按照所述指示的時(shí)間段延長(zhǎng)授權(quán)的使用的所述時(shí)間段。
14.根據(jù)權(quán)利要求11所述的機(jī)器可讀存儲(chǔ)介質(zhì),進(jìn)一步包括用來(lái)進(jìn)行以下的指令: 將所述延長(zhǎng)密鑰存儲(chǔ)在所述第一授權(quán)令牌中;將所述延長(zhǎng)密鑰存儲(chǔ)在所述第二授權(quán)令牌中; 確定在所述第一授權(quán)令牌中存儲(chǔ)的所述延長(zhǎng)密鑰是否與在所述第二授權(quán)令牌中存儲(chǔ)的所述延長(zhǎng)密鑰相關(guān);并且 如果確定所述延長(zhǎng)密鑰不相關(guān),則禁止所述軟件產(chǎn)品的使用。
15.根據(jù)權(quán)利要求11所述的機(jī)器可讀存儲(chǔ)介質(zhì),進(jìn)一步包括用來(lái)進(jìn)行以下的指令: 使用第一加密密鑰對(duì)所述第一授權(quán)令牌進(jìn)行加密;并且 使用第二加密密 鑰對(duì)所述第二授權(quán)令牌進(jìn)行加密。
全文摘要
本發(fā)明中所公開的實(shí)施例涉及基于第一授權(quán)項(xiàng)和第二授權(quán)項(xiàng)來(lái)確定軟件產(chǎn)品的授權(quán)。每個(gè)授權(quán)項(xiàng)都可以為文件或注冊(cè)表鍵。處理器(104)可以通過(guò)將第一授權(quán)項(xiàng)與第二授權(quán)項(xiàng)相比較來(lái)確定所述軟件產(chǎn)品的使用在特定的時(shí)間段是否被授權(quán)。
文檔編號(hào)G06F21/12GK103189876SQ201080070102
公開日2013年7月3日 申請(qǐng)日期2010年11月12日 優(yōu)先權(quán)日2010年11月12日
發(fā)明者C.L.塞利格 申請(qǐng)人:惠普發(fā)展公司,有限責(zé)任合伙企業(yè)