專利名稱:軟件登記系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于軟件登記的系統(tǒng),特別涉及軟件可由磁盤、CD ROM等媒體進(jìn)行轉(zhuǎn)移的場(chǎng)合的裝置的改善。
大多商用軟件在購置(或許可)時(shí)是用磁性媒體,典型的是軟磁盤提供的。常常附加在該軟件上的安全設(shè)施僅僅只是存儲(chǔ)在該媒體上的一簡(jiǎn)單的登記號(hào)碼。該登記號(hào)將標(biāo)明該軟件的某一特定復(fù)制件,通常在將該軟件裝到任何給定計(jì)算機(jī)時(shí)要求安裝者必須提供與安裝程序無關(guān)的這個(gè)登記號(hào)碼。
但是,這樣的用于媒體上的軟件的分配的簡(jiǎn)單的安全結(jié)構(gòu)至少有兩個(gè)缺點(diǎn)(1)在生產(chǎn)加工時(shí),在任何給定媒體上形成的該軟件的多個(gè)復(fù)制件均必須包括一個(gè)編程入該媒體的特殊而唯一的號(hào)碼,(2)一旦在該軟件被裝在任一給定計(jì)算機(jī)上后,這種結(jié)構(gòu)即不能防止借助文件傳遞(不是重新安裝)對(duì)該軟件進(jìn)行復(fù)制。
轉(zhuǎn)讓給Tau Systems公司的專利申請(qǐng)WO92/09,160揭示了一種相當(dāng)復(fù)雜的登記系統(tǒng),其安全措施依賴于欲取得軟件許可者必須借助于文件傳遞從一遠(yuǎn)程位置得到被許可者希望執(zhí)行程序的重大基本組成部分。在此WO92/09,160專利中所揭示的這種結(jié)構(gòu)將遇到包括以下各方面的若干缺陷(a)欲成為許可者初始執(zhí)行的外殼程序必須在外殼程序發(fā)行之前在該外殼內(nèi)部安插有一特點(diǎn)的標(biāo)志;
(b)外殼程序本身并非一功能程序,就是說,它不包括欲成為許可者想執(zhí)行的指令碼。那個(gè)程序必須從遠(yuǎn)處得到,從而不可避免地要因傳遞而不便和費(fèi)時(shí),并可能引起錯(cuò)誤;
(c)該現(xiàn)有技術(shù)系統(tǒng)表現(xiàn)為需要而且確實(shí)有賴于加密措施,以保證從一遙遠(yuǎn)位置傳遞的該程序資料不被未經(jīng)批準(zhǔn)地竊取利用;
(d)不清楚的是,對(duì)于已經(jīng)登記的程序整體地從一工作臺(tái)傳送到另一處的情況,該系統(tǒng)是否適宜于繼續(xù)作用而無須再另外交付登記費(fèi)。
轉(zhuǎn)讓給Pride軟件開發(fā)公司的美國專利US4,796,220揭示一用于唯一地識(shí)別欲執(zhí)行被轉(zhuǎn)讓的軟件的工作臺(tái)的系統(tǒng)。但是US4,796,220沒有打算或揭示采用對(duì)用戶亦即預(yù)定的轉(zhuǎn)讓者是唯一的并有別于對(duì)計(jì)算運(yùn)行到該軟件的工作臺(tái)的識(shí)別的信息來作為登記過程的組成部分。
Joshi的美國專利US4.688,169概括地揭示了與US4.796,220相同的原理,其中,它揭示了這樣一種計(jì)算機(jī)軟件安全系統(tǒng),其安全措施依賴于“運(yùn)行欲被保護(hù)軟件機(jī)器的特定機(jī)器識(shí)別代碼”。同樣,該發(fā)明亦局限于對(duì)該工作臺(tái)的識(shí)別,不存在任何關(guān)于用戶特定標(biāo)識(shí)與對(duì)工作臺(tái)識(shí)別相關(guān)連的暗示或企圖。
這種結(jié)構(gòu)還不存在以示教模式操作的,從工作臺(tái)到工作臺(tái)傳遞程序復(fù)制件的靈活性。
本發(fā)明的目的就是為的減少上述缺點(diǎn)。
在此整個(gè)說明中,術(shù)語“軟件”被概括地解釋為包括所有可在一個(gè)工作臺(tái)(下面將予定義)執(zhí)行的所有數(shù)字形式數(shù)據(jù)。例如構(gòu)成該軟件的數(shù)字?jǐn)?shù)據(jù),可以是組成適合于在PC等上面操作的字處理程序。該軟件例如可以是適合用于在一個(gè)CD ROM上的數(shù)字?jǐn)?shù)據(jù)。該數(shù)字?jǐn)?shù)據(jù)可以是能再生的信息或是被許可用戶的可用的信息。
在此整個(gè)說明中,術(shù)語“工作臺(tái)(plateform)”系指與例如一臺(tái)微處理器或其他能執(zhí)行數(shù)字?jǐn)?shù)據(jù)(對(duì)此前面已在關(guān)于術(shù)語“軟件”中引用過)的處理器的裝置之類的計(jì)算裝置有關(guān)的環(huán)境,這些計(jì)算裝置能對(duì)與之相關(guān)連的輸入和輸出裝置執(zhí)行操作。
在某些情況中,該“軟件”亦即數(shù)字?jǐn)?shù)據(jù)本身可以是操作系統(tǒng)環(huán)境。典型地,但并不是唯一的是,作為操作系統(tǒng)環(huán)境的例子包括Microsoft Dos操作系統(tǒng),IBM OS/2操作系統(tǒng)或Macintosh系統(tǒng)7的環(huán)境。在用ROM的微控制器的簡(jiǎn)單情況下,該操作系統(tǒng)環(huán)境可以是微控制器的微代碼,它能使該微控制器執(zhí)行機(jī)器代碼。
在這一說明中,“使用方式(Use Mode)”是指通過在工作臺(tái)的執(zhí)行來使用數(shù)字?jǐn)?shù)據(jù)(即軟件)以滿足出賣者/轉(zhuǎn)讓者在該使用方式中執(zhí)行該數(shù)字?jǐn)?shù)據(jù)即軟件的專利方面的契約。該使用方式用于區(qū)別一般稱謂的非許可的操作方式(不是指非授權(quán)操作方式),例如在本說明中下面將描述的示范方式那樣。
一般地說,按本發(fā)明的系統(tǒng)被設(shè)計(jì)成適于在如果而且只有在通過適當(dāng)?shù)霓D(zhuǎn)讓手續(xù)之后才可在一工作臺(tái)按一種使用方式運(yùn)行數(shù)字?jǐn)?shù)據(jù)亦即軟件。具體說,此系統(tǒng)包含有檢測(cè)已裝載數(shù)字?jǐn)?shù)據(jù)的工作臺(tái)的組成部分局部或整個(gè)地相對(duì)于該要保護(hù)的軟件(即數(shù)字?jǐn)?shù)據(jù))在最近被引導(dǎo)或運(yùn)行中或有效地登記時(shí)的工作臺(tái)參數(shù)發(fā)生的變化的裝置。
該系統(tǒng)依賴于構(gòu)成欲由該系統(tǒng)保護(hù)的數(shù)字?jǐn)?shù)據(jù)組成部分的數(shù)字式數(shù)據(jù)或代碼。該欲保護(hù)的數(shù)字?jǐn)?shù)據(jù)的這部分最好是該數(shù)字?jǐn)?shù)據(jù)的必備部分,在本說明其他地方被稱為代碼部分38。該代碼部分包括適合于根據(jù)予定的被許可者提供的表征該被許可者的信息,產(chǎn)生一個(gè)對(duì)該數(shù)字?jǐn)?shù)據(jù)的一個(gè)予定的被許可者是唯一的登記的一個(gè)算法。
該代碼部分中的該算法在許可者或其代理人控制下,在一工作站的遠(yuǎn)程位置上被加以復(fù)制,并且要求在預(yù)定被許可者和該許可者或其代理人之間進(jìn)行通信,以便在該遠(yuǎn)程地點(diǎn)產(chǎn)生一相匹配的登記號(hào),隨后再將其傳送給該預(yù)定的被許可者作為允許該數(shù)字?jǐn)?shù)據(jù)按一種使用方式進(jìn)行被許可的操作的許可證。
最好該代碼部分同該數(shù)字?jǐn)?shù)據(jù)是一整體,并且對(duì)所有該數(shù)字?jǐn)?shù)據(jù)復(fù)制件是相同的。正就是這一被預(yù)置在該代碼部分中的算法(并且在遠(yuǎn)程位置上被復(fù)制)可能提供是“唯一”的一個(gè)登記號(hào),如果該預(yù)定的許可者提供的作為該算法在工作站中執(zhí)行時(shí)的依據(jù)的信息本身是“唯一”的話。
在多個(gè)具體最佳形式中,登記號(hào)產(chǎn)生算法中總包括有一個(gè)序號(hào),這就為該登記號(hào)計(jì)算處理過程中引進(jìn)了輔助的唯一性等級(jí)。
因此在本發(fā)明的一種概括形式中,這里提供了按一種使用方式許可使用數(shù)字?jǐn)?shù)據(jù)的系統(tǒng),所說數(shù)字?jǐn)?shù)據(jù)可在一工作臺(tái)執(zhí)行,所說系統(tǒng)包括有本地被許可者唯一ID產(chǎn)生裝置以及遠(yuǎn)程被許可者唯一ID產(chǎn)生裝置,所說系統(tǒng)還包括可在所說工作臺(tái)操作的方式轉(zhuǎn)換裝置,該轉(zhuǎn)換裝置使得只有在由所說本地許可者唯一ID產(chǎn)生裝置產(chǎn)生的一個(gè)被許可者唯一ID同由所說遠(yuǎn)程被許可者唯一ID產(chǎn)生裝置產(chǎn)生的一個(gè)被許可者唯一ID相匹配時(shí),才可能在所述工作臺(tái)以所述應(yīng)用模式下使用所述數(shù)字?jǐn)?shù)據(jù)。
最好所說系統(tǒng)還包括工作臺(tái)唯一ID產(chǎn)生裝置,其中所說方式轉(zhuǎn)換裝置只要在所說工作臺(tái)唯一ID沒有改變的情況下,就將允許在所說工作臺(tái)隨后執(zhí)行的所說的數(shù)字?jǐn)?shù)據(jù)中按所說使用方式運(yùn)行所說數(shù)字?jǐn)?shù)據(jù)。
最好所說方式轉(zhuǎn)換裝置只有在由所說本地被許可者唯一ID產(chǎn)生裝置產(chǎn)生的所說被許可者唯一ID不改變時(shí)才允許在以后所說數(shù)字?jǐn)?shù)據(jù)的執(zhí)行中按所說使用方式操作所說數(shù)字?jǐn)?shù)據(jù)。
最好所說方式轉(zhuǎn)換裝置構(gòu)成部分所說數(shù)字?jǐn)?shù)據(jù)。
最好所說遠(yuǎn)程被許可者唯一ID產(chǎn)生裝置由包含有為所說本地被許可者唯一ID產(chǎn)生裝置使用來產(chǎn)生所說被許可者唯一ID的算法的軟件所組成。
最好由所說本地被許可者唯一ID產(chǎn)生裝置使用產(chǎn)生所說被許可者唯一ID的信息包括未來的被許可者的信用卡號(hào),生產(chǎn)日期以及全名和地址。
最好所說工作臺(tái)唯一ID產(chǎn)生裝置使用硬盤信息和/或其他計(jì)算機(jī)硬件或固體信息,以確定所說工作臺(tái)唯一ID。
最好所說工作臺(tái)包括一計(jì)算機(jī)操作系統(tǒng)環(huán)境。
最好所說數(shù)字?jǐn)?shù)據(jù)包括適合于在所說操作系統(tǒng)環(huán)境條件下進(jìn)行操作的軟件程序。
本發(fā)明的另一種概括形式,提供了可附設(shè)在欲被保護(hù)軟件上的一安全子程序,即登記裝置。所說登記裝置根據(jù)輸入到所說軟件的信息產(chǎn)生一安全密碼,用以唯一地識(shí)別欲在所說軟件要裝入的計(jì)算機(jī)上的登記所說軟件的用戶。
最好所說安全密碼是由一登記號(hào)算法產(chǎn)生。
最好所說登記號(hào)算法將由期望登記的用戶所輸入的唯一識(shí)別該用戶的信息,與由被保護(hù)軟件所運(yùn)行的環(huán)境(例如系統(tǒng)時(shí)鐘,最近的更新日期,用戶名稱)所提供的信息產(chǎn)生的序號(hào)相組合。
最好所說登記裝置在一登記管理機(jī)構(gòu)處復(fù)制,以便由管理機(jī)構(gòu)進(jìn)行檢查,該對(duì)用戶為唯一的信息是否是在由該登記裝置產(chǎn)生該安全密碼時(shí)正確地被輸入了。
最好所說登記裝置在引導(dǎo)所述軟件時(shí)檢測(cè)該欲被保護(hù)軟件是第一次引導(dǎo)還是后續(xù)引導(dǎo)。如果檢測(cè)到為一后續(xù)引導(dǎo),則對(duì)環(huán)境和用戶細(xì)節(jié)進(jìn)行比較,以便確定該程序是復(fù)原到示教方式并開始一新用戶登記程序,還是一整個(gè)方案操作。
最好所說環(huán)境細(xì)節(jié)包括一個(gè)或多個(gè)磁盤卷名,用戶或各計(jì)算機(jī),硬盤設(shè)置初始化日期,硬件識(shí)別符(例如ROM檢驗(yàn)和)或其他一些一般非用戶可設(shè)置在該工作臺(tái)中的單元。
在本發(fā)明的另一概括形式中提供一種控制軟件分配的方法,所說方法包括有提供針對(duì)所述軟件的方式轉(zhuǎn)換裝置,該裝置適用于所述軟件在全部啟動(dòng)模式和部分工作模式即示教方式之間進(jìn)行轉(zhuǎn)換。所說方法還包括提供登記密碼產(chǎn)生裝置,它適合于產(chǎn)生對(duì)該軟件的一預(yù)定用戶唯一的信息功能的使能密碼;只有在登記所說軟件時(shí)由所說預(yù)定用戶對(duì)所說方式轉(zhuǎn)換裝置提供的啟動(dòng)密碼和由所說登記密碼產(chǎn)生裝置產(chǎn)生的所說登記密碼完全相匹配時(shí),所說方式轉(zhuǎn)換裝置才將所說軟件轉(zhuǎn)換成全啟動(dòng)方式。
最好所說啟動(dòng)密碼在登記所說軟件時(shí),由運(yùn)行所說登記密碼產(chǎn)生裝置的復(fù)制考貝的第三方傳遞到所說預(yù)定用戶。
在本發(fā)明的再一概括形式中,提供含有登記代碼的數(shù)字?jǐn)?shù)據(jù),所說數(shù)字?jǐn)?shù)據(jù)可在一工作臺(tái)上執(zhí)行;所說登記代碼包括有可在所說工作臺(tái)上執(zhí)行的所說數(shù)字?jǐn)?shù)據(jù)的一部分;為的是在示教方式和使用方式之間轉(zhuǎn)換所說數(shù)字?jǐn)?shù)據(jù)。
最好所說登記代碼在所說工作臺(tái)中執(zhí)行時(shí)提供本地被許可者唯一ID產(chǎn)生裝置,由此只有在由所說本地被許可者唯一ID產(chǎn)生裝置產(chǎn)生的一被許可者唯一ID同由遠(yuǎn)程被許可者唯一ID產(chǎn)生裝置產(chǎn)生的一被許可者唯一ID相匹配時(shí),才能借助于執(zhí)行所說登記代碼,將所說數(shù)字?jǐn)?shù)據(jù)從所說示教方式轉(zhuǎn)換到所說使用方式。
現(xiàn)在參照附圖將詳述本發(fā)明的實(shí)施列,其中
圖1是表明一預(yù)定登記用戶和在按本發(fā)明的第一實(shí)施例保護(hù)媒體上的軟件的登記管理機(jī)構(gòu)之間關(guān)系和相互作用的示意圖;
圖2a,2b,2c是在登記軟件期間按本發(fā)明的第一實(shí)施例的用戶應(yīng)遵循的程序流程圖各個(gè)分段;
圖3是按本發(fā)明第二實(shí)施列的可供選擇的引導(dǎo)過程的流程圖;
圖4是按本發(fā)明第三實(shí)施例的有關(guān)圖2a,2b,2c程序的個(gè)人信息對(duì)話邏輯框圖;
圖5按本發(fā)明第四實(shí)施例的系統(tǒng)的示意圖;
圖6是圖5中第四實(shí)施例針對(duì)CDROM驅(qū)動(dòng)器的實(shí)施;
圖7是與圖6解碼器邏輯框圖有關(guān)的邏輯流程圖;
圖8是按本發(fā)明的第五實(shí)施例的一般化系統(tǒng)的方塊圖;
圖9是表示對(duì)圖8的系統(tǒng)產(chǎn)生一登記號(hào)即一具體例子的方塊圖;以及圖10是包括圖8的一般化系統(tǒng)的一具體例子的第六實(shí)施例的示意圖。
應(yīng)理解的是,在其各種實(shí)施例中,本發(fā)明在于由控制對(duì)數(shù)字代碼/軟件的使用許可來保護(hù)數(shù)字代碼/軟件。多種實(shí)施例均要求至少部分地借助于電子硬件實(shí)現(xiàn)的硬件工作臺(tái)和一遠(yuǎn)程登記站。
欲加以保護(hù)的代碼/軟件至少需要與本發(fā)明各種實(shí)施例適用的某些配合。該配合對(duì)于所有欲加以保護(hù)的代碼/軟件的復(fù)制件可以是通用的。
1、第一實(shí)施例參照?qǐng)D1和圖8,按本發(fā)明實(shí)施例的系統(tǒng)被設(shè)計(jì)成適合于允許數(shù)字?jǐn)?shù)據(jù)39即軟件能按一使用方式在一工作臺(tái)31上運(yùn)行,只要而且只有在經(jīng)過一適當(dāng)?shù)脑S可轉(zhuǎn)讓程序之后。在具體形式中,該系統(tǒng)包括有檢測(cè)已經(jīng)裝載有數(shù)字?jǐn)?shù)據(jù)39的工作臺(tái)31的部分與在當(dāng)欲加以保護(hù)的軟件即數(shù)字?jǐn)?shù)據(jù)例如說被最新引導(dǎo)或運(yùn)行中或有效地登記的工作臺(tái)參數(shù)相比,部分或整個(gè)發(fā)生了變化的裝置。
此系統(tǒng)依賴于構(gòu)成被系統(tǒng)保護(hù)的數(shù)字?jǐn)?shù)據(jù)的組成部分的數(shù)字?jǐn)?shù)據(jù)即代碼38。該數(shù)字?jǐn)?shù)據(jù)的這部分最好是欲被保護(hù)數(shù)字?jǐn)?shù)據(jù)的重要組成部分,在本說明的其他地方稱之為代碼部分38。該代碼部分38包括一種適合于根據(jù)由預(yù)定被許可者所提供的、表征該被許可者是唯一的登記號(hào)66或本地被許可唯一ID或登記密碼的算法。在該例中,產(chǎn)生登記號(hào)的該本地許可唯一ID發(fā)生器為在工作臺(tái)31執(zhí)行代碼38。
在該代碼部分中的該算法在許可者或其代理人控制下,在工作臺(tái)67的一遠(yuǎn)程位置被加以復(fù)制,且需要在該預(yù)定被許可者和該許可者或其代理人之間進(jìn)行通信,以便在該遠(yuǎn)程地點(diǎn)產(chǎn)生一匹配的記號(hào),即使能密碼,用于隨后傳送給該預(yù)定被許可者作為許可該數(shù)字?jǐn)?shù)據(jù)39按一種使用方式運(yùn)行的許可證。
在該例中,執(zhí)行工作臺(tái)67上復(fù)制的代碼部分為產(chǎn)生遠(yuǎn)程被許可者唯一ID的措施。
方式轉(zhuǎn)換裝置為對(duì)還附加進(jìn)行本地和遠(yuǎn)程產(chǎn)生的登記號(hào)的比較的該代碼部分的執(zhí)行。
最好該代碼部分38同數(shù)字?jǐn)?shù)據(jù)是整體,并且對(duì)于所有數(shù)字?jǐn)?shù)據(jù)的復(fù)制件可以是相同的。正就是插入該代碼部分中的這一算法(并且在遠(yuǎn)程位置上被復(fù)制)可能提供是“唯一”的一個(gè)登記號(hào),如果該預(yù)定的被許可者提供的在工作臺(tái)執(zhí)行該算法作為依據(jù)的信息本身是“唯一”的話。
總之,在各具體優(yōu)選方式中均在登記號(hào)碼產(chǎn)生算法中包括有一序號(hào)(如下述)它將附加唯一性等級(jí)引入到登記號(hào)碼算法處理過程中。
具體參見圖1,由按本發(fā)明第一實(shí)施例保護(hù)的數(shù)字?jǐn)?shù)據(jù)構(gòu)成的一程序被記錄在磁盤10上。
作為該磁盤10上軟件組成部分的是一登記和重新登記子程序,它只要在由此第一實(shí)施例的裝置保護(hù)的程序引導(dǎo)時(shí)即執(zhí)行。
參考圖1和圖2a,2b,2c,安全的程序的操作將在這樣一種假設(shè)上進(jìn)行描述,即在磁盤10上由登記子程序保護(hù)子程序還沒有在工作臺(tái)進(jìn)行登記即是第一次被裝載。
該未來的新用戶11將磁盤10插入用戶的PC12,以便由它讀出。
作為軟件安裝程序的組成部分,起動(dòng)登記程序?qū)е乱幌盗袑?duì)話邏輯框顯示在用戶PC 12的顯示器13上。當(dāng)檢查確認(rèn)該軟件先前沒有在PC 12上被登記過時(shí),顯示一對(duì)話邏輯框A(圖2a),它向用戶提供選擇,是觀看該軟件的示教(通常具有如保存和/或禁止打印的特征),還是建議對(duì)軟件進(jìn)行授權(quán)許可登記(此時(shí),所有該軟件特征均可為該用戶利用)。
如果選擇登記這一項(xiàng),亦即如果該用戶采用登記而放棄示教模式,則在顯示器13上顯示交互對(duì)話邏輯框B(圖2a),它提供一張表格(儲(chǔ)存在磁盤10上作為登記等程序部分),該表格例如提供軟件發(fā)行公司的名稱和聯(lián)系號(hào)碼以及其他的一般產(chǎn)品信息。
在顯示許可細(xì)節(jié)(框B1)進(jìn)行登記的期間用戶發(fā)出同意指示后,該用戶在填滿該登記對(duì)話邏輯框C之后(下面詳述)即可與登記中心接觸。在選擇“連續(xù)”之后,登記子程序起動(dòng)產(chǎn)生安全密碼的第一步驟。該安全密碼對(duì)軟件的當(dāng)前復(fù)制件以及其運(yùn)行環(huán)境的某些特征將是唯一的。
如圖2b所示產(chǎn)生安全密碼的第一步驟包括產(chǎn)生實(shí)時(shí)系統(tǒng)序號(hào),和在本例中還有軟件最新修改日期以及該計(jì)算機(jī)環(huán)境的其他信息。該序號(hào)經(jīng)加密和重新安排,而后在顯示器13上登記對(duì)話邏輯框中表現(xiàn)一個(gè)數(shù)字。
該登記對(duì)話邏輯框C(圖2b)揭示用戶對(duì)其為唯一的細(xì)節(jié),(例如包括姓名,公司,地址,州名,聯(lián)系號(hào)碼),以及可成為由該登記后程序保護(hù)的軟件的登記用戶所需交付的財(cái)務(wù)項(xiàng)目(例如Mastercard)即公司賬戶號(hào)碼細(xì)節(jié))。這個(gè)對(duì)該用戶是唯一的信息通過登記號(hào)碼算法14(用符號(hào)表示在圖1中),該登記號(hào)碼算法14根據(jù)對(duì)該用戶唯一的信息連同以前產(chǎn)生的該序號(hào)一起產(chǎn)生一登記號(hào)碼即安全密碼。該登記號(hào)碼即安全密碼并不由PC12來促成其對(duì)PC12的用戶成為可用的。
一個(gè)相同的登記號(hào)碼算法14保存在登記管理機(jī)構(gòu)PC15上。作為登記程序的一整體部分,該未來新用戶11將由該用戶在用對(duì)該用戶是唯一的信息連同由該用戶的算法產(chǎn)生的序號(hào)一道,傳送到該登記管理機(jī)構(gòu)16。該管理登記機(jī)構(gòu)將該信息送到該登記管理機(jī)構(gòu)PC15,在此,登記號(hào)碼算法14將產(chǎn)生與由用戶PC12產(chǎn)生的相同的登記號(hào)碼即安全密碼,只要由該未來新用戶11傳送到該登記管理機(jī)構(gòu)的細(xì)節(jié)同在用戶PC上已輸入的細(xì)節(jié)相匹配。該用戶能隨意地由電子方法將該信息傳送到該登記管理機(jī)構(gòu),例如可用傳真或調(diào)制調(diào)解器或調(diào)諧電話。
在登記中的最后一步(圖2c),該登記管理機(jī)構(gòu)16將登記管理機(jī)構(gòu)PC15產(chǎn)生的登記號(hào)碼提供給用戶。用戶11將該登記號(hào)碼輸入的登記號(hào)碼是否同計(jì)算的登記號(hào)碼匹配。如果兩者相匹配,則為有效登記,而由該登記子程序提供對(duì)由其保護(hù)的軟件的完整運(yùn)行方案進(jìn)行訪問。如果不匹配并且不存在有可供選擇的文件(此文件儲(chǔ)存該用戶細(xì)節(jié)),則在用戶PC12的顯示器上出現(xiàn)一對(duì)話邏輯框D(圖2c),為未來新用戶11提供檢測(cè)他/她的細(xì)節(jié)或轉(zhuǎn)換由該登記程序保護(hù)的軟件的示教方式的機(jī)會(huì)。
同樣,該登記管理機(jī)構(gòu)PC15能對(duì)PC12提供用電子裝置如調(diào)制介調(diào)通信產(chǎn)生的登記號(hào)碼。
下面將清楚看到,對(duì)未來新用戶11并非顯而易見的是,對(duì)由該登記子程序保護(hù)的軟件的完整。方案進(jìn)行解鎖的此登記號(hào)碼事實(shí)上是由保存在磁盤上的一個(gè)算法產(chǎn)生的,并且它構(gòu)成所希望訪問的軟件部分。
按這種方式,以上概述的登記子程序保證由未來新用戶在他/她的用戶PC12上輸入的是完全相同于由登記管理機(jī)構(gòu)16記錄的那些細(xì)節(jié)。同樣很明顯,該程序并不要求包含被保護(hù)軟件復(fù)制件的每一個(gè)磁盤上的登記號(hào)碼。每一復(fù)制件均具有存放在它上面完全相同的登記號(hào)碼算法。僅在根據(jù)由該未來新用戶11提供的細(xì)節(jié)進(jìn)行登記時(shí)才產(chǎn)生一唯一登記號(hào)碼即“安全密碼”。
此登記子程序通常在被保護(hù)軟件的任一復(fù)制件引導(dǎo)時(shí)起作用。在這種情況下,登記子程序在引導(dǎo)時(shí)檢測(cè)什么樣的登記細(xì)節(jié)目前存在用于那個(gè)具體的軟件復(fù)制件。如果無任何細(xì)節(jié)存在,則認(rèn)為該P(yáng)C是在由新配置的磁盤進(jìn)行引導(dǎo),登記為首次進(jìn)行。該登記程序在這一情況下分別如圖2a,2b和2c所示。
在登記細(xì)節(jié)存在的情況下,該登記程序檢測(cè)若干予期為對(duì)于該被保護(hù)軟件的運(yùn)行環(huán)境是唯一的參數(shù)。在此實(shí)施例中,被檢查的參數(shù)是硬盤卷名,用戶姓名,計(jì)算機(jī)名,用戶口令,以及硬盤初始日期(不是一般用戶可對(duì)Apple Macintosh計(jì)算機(jī)進(jìn)行組態(tài)的)。該登記子程序然后針對(duì)由軟件正在運(yùn)行的計(jì)算機(jī)的操作環(huán)境取得的相層細(xì)節(jié)檢驗(yàn)這些參數(shù)。
如果指定的這些細(xì)節(jié)的組合是匹配的,則認(rèn)定該正運(yùn)行中的軟件復(fù)制件是經(jīng)過恰當(dāng)授權(quán)和登記的,因而允許對(duì)該軟件作充分的訪問。
按這種方式,十分適宜于在用戶之間互相提供經(jīng)安全子程序保護(hù)的軟件復(fù)制件。該附加在欲被保護(hù)軟件的安全子程序根據(jù)它操作環(huán)境作出決定是否需要附加登記弗。如果由該登記子程序確定是這種情況,則該登記子程序具有提供一個(gè)新登記號(hào)碼作為一個(gè)被授權(quán)的登記程序部分的能力,在這之前,該被保護(hù)的軟件轉(zhuǎn)到示教方式。
2、第二實(shí)施例(自動(dòng)重新登記)按照第二實(shí)施例,適合于在最初引導(dǎo)和隨后的引導(dǎo)情況下進(jìn)行檢測(cè)的更理想子程序表示在圖3的流程圖表中。
該程序采用了為適應(yīng)若干情況的冗余度,這些情況可以是,包含當(dāng)前的應(yīng)用據(jù)之被授權(quán)的信息的關(guān)鍵文件可能已被刪除掉,或者在隨后的引導(dǎo)中不存在這一文件。
與第一實(shí)施例的區(qū)別在于在登記軟件的當(dāng)時(shí)產(chǎn)生一個(gè)關(guān)鍵文件”,并且同時(shí)還產(chǎn)生一復(fù)制的關(guān)鍵文件。該復(fù)制關(guān)鍵文件被安排為儲(chǔ)存在計(jì)算機(jī)上與該被保護(hù)程序分開的位置處。對(duì)于Apple Macintosh計(jì)算機(jī)的情況,該復(fù)制關(guān)鍵文件可儲(chǔ)存在該“系統(tǒng)文件夾”中。
無論是該關(guān)鍵文件(隨同軟件儲(chǔ)存)還是該復(fù)制的關(guān)鍵文件均被加密,而且兩者包含相同的信息。所包含的信息包括1、包括序號(hào)的用戶登記細(xì)節(jié);
2、計(jì)算機(jī)的環(huán)境細(xì)節(jié);以及3、由安全子程序保護(hù)的將進(jìn)行登記或已經(jīng)登記的應(yīng)用程序的細(xì)節(jié)。
參考圖3,每當(dāng)該被保護(hù)的應(yīng)用程序引導(dǎo)時(shí),該登記程序就進(jìn)行檢驗(yàn),以確定在被保護(hù)的應(yīng)用程序的關(guān)鍵文件中,是否存在有登記細(xì)節(jié)。如果他們存在的話,該登記子程序即在關(guān)鍵文件的存貯內(nèi)容和環(huán)境之間作比較,以確定環(huán)境是否已由該關(guān)鍵文件所存儲(chǔ)內(nèi)容發(fā)生了變化。如果無變化被檢測(cè)出來,則該被保護(hù)的應(yīng)用程序即可作正常運(yùn)行。
如果在該關(guān)鍵文件中無登記細(xì)節(jié)存在,或者上面指出的在該關(guān)鍵文件內(nèi)容和該應(yīng)用程序之間的比較表明不相匹配,則圖3的重新登記子程序即尋找在該環(huán)境中的復(fù)制關(guān)鍵文件的存在。如果復(fù)制關(guān)鍵文件存在,包含在那個(gè)復(fù)制關(guān)鍵文件中的信息即被復(fù)制到該應(yīng)用程序的關(guān)鍵文件,并且如前述在關(guān)鍵細(xì)節(jié)和應(yīng)用程序的環(huán)境之間將進(jìn)行比較。如果這種比較結(jié)果是肯定的,則該被保護(hù)的應(yīng)用程序即可正常運(yùn)行。如果這種比較表明為否定的,則該被保護(hù)的應(yīng)用程序只允許由登記程序按示教方式運(yùn)行。如果根本不存在有復(fù)制關(guān)鍵文件,并且該內(nèi)部關(guān)鍵文件(如果存在的話)帶來一否定結(jié)果,則被保護(hù)的應(yīng)用程序僅允許按示教方式運(yùn)行。
由于被保護(hù)的應(yīng)用程序不大可能因錯(cuò)誤原因?qū)е掳词窘谭绞竭\(yùn)行,就這一意義上來說,這一裝置改善登記子程序的耐用性能。
3 第三實(shí)施例-跟蹤系統(tǒng)參考圖4,它表示圖2b的對(duì)話邏輯框C的改進(jìn)形式,它包括增加了邏輯框21中的“your user number”項(xiàng)。
在當(dāng)一未來新用戶輸入他/她的細(xì)節(jié)到組成對(duì)話邏輯框C的其他邏輯框中時(shí),用戶有可能將用戶號(hào)碼輸入到邏輯框21。此用戶號(hào)是由登記管理機(jī)構(gòu)16作為對(duì)那個(gè)具體的登記用戶是唯一的號(hào)碼提供的。如果邏輯框21具有扦進(jìn)到它里面的用戶碼細(xì)節(jié),則當(dāng)對(duì)被保護(hù)應(yīng)用程序進(jìn)行下一次復(fù)制時(shí),該登記子程序?qū)⒃撚脩籼?hào)碼細(xì)節(jié)從邏輯框21傳送到“Last user number”邏輯框22。如果而且只有想登記下一個(gè)復(fù)制件的人員將他們的用戶號(hào)碼輸入邏輯框21,在被保護(hù)的應(yīng)用程序構(gòu)成下一復(fù)制件時(shí),才進(jìn)行同樣的傳送。如果他們不是這樣,則在邏輯框22中將照舊保持最近的用戶號(hào)碼細(xì)節(jié)。按此方式,樹結(jié)構(gòu)形式的登記管理機(jī)構(gòu)即可采用一種跟蹤系統(tǒng),在此均由其直系根據(jù)輸入到邏輯框21和22的當(dāng)前的以及先前的用戶號(hào)碼來識(shí)別任一給定的復(fù)制件。
4、自行排序在一具體實(shí)施例中,可以利用一被稱為“自行排序”的過程來產(chǎn)生能給用戶/被許可者顯示的序號(hào)50,如圖4中所示。
此序號(hào)50是由使用輸入到算法的一隨機(jī)或偽隨機(jī)號(hào)碼進(jìn)行掩飾的,該算法在作為該軟件的初始登記過程部分的首次引導(dǎo)時(shí),產(chǎn)生該序號(hào)。例如該序號(hào)在由該自行排序過程產(chǎn)生時(shí)能夠由構(gòu)成該登記軟件部分的一隨機(jī)號(hào)碼子程序產(chǎn)生,或者能由該登記軟件31用在設(shè)置該軟件的工作臺(tái)能作很寬范圍的變化的數(shù)據(jù)來產(chǎn)生,例如在該工作臺(tái)的一個(gè)時(shí)間參照。由自行排序過程產(chǎn)生的這個(gè)序號(hào)50可以是對(duì)該登記算法所要求的一個(gè)由其產(chǎn)生登記號(hào)碼的輸入。顯然這樣確定的并顯示給用戶的序號(hào)50然后將被要求傳送到登記管理機(jī)構(gòu),用作對(duì)登記管理機(jī)構(gòu)的登記號(hào)碼產(chǎn)生算法的輸入。
將會(huì)看到,這樣產(chǎn)生的序號(hào)50在每一個(gè)欲被保護(hù)的軟件要運(yùn)行的工作臺(tái),并且構(gòu)成被確定的且只有在登記時(shí)才能被確定的該登記算法的一個(gè)隨機(jī)化輸入。
5、第五實(shí)施例參照?qǐng)D5,它表示一微處理器30的示意圖,該微處理器適合于在一操作系統(tǒng)即一工作臺(tái)條件下,例如Microsoft Dos或MaciNtosh系統(tǒng)7下運(yùn)行。該工作臺(tái)31允許采用相當(dāng)高水平的指令,來使得微處理器30同,例如鍵盤32,監(jiān)視器33,相聲器34,存儲(chǔ)器35以及磁盤或CD ROM盤這樣的輸入/輸出裝置交互作用。
作為例子,由一段指令代碼即數(shù)字?jǐn)?shù)據(jù)37組成的字處理程序被復(fù)制到磁盤36。
該數(shù)字?jǐn)?shù)據(jù)37包括有登記代碼部分38以及使用代碼部分39。
該數(shù)字?jǐn)?shù)據(jù)37的安排使得在當(dāng)微處理器30試圖依靠操作系統(tǒng)即工作臺(tái)31來首次執(zhí)行該數(shù)字?jǐn)?shù)據(jù)37時(shí),構(gòu)成登記代碼部分38的數(shù)字?jǐn)?shù)據(jù)首先被促成如前述那樣照本發(fā)明第一實(shí)施例那樣執(zhí)行。構(gòu)成登記代碼部分38的數(shù)字?jǐn)?shù)據(jù)的執(zhí)行協(xié)同操作系統(tǒng)即工作臺(tái)31組成一個(gè)方式轉(zhuǎn)換器,此轉(zhuǎn)換器將只允許微處理器30按示教方式執(zhí)行數(shù)字?jǐn)?shù)據(jù)37的使用代碼部分39,除非并且直到涉及參照一外部登記管理機(jī)構(gòu)的登記首先成功完成為止。這一登記過程如前所述參照第一實(shí)施列。
該數(shù)字?jǐn)?shù)據(jù)37,例如能組成一字處理程序,像Wordperfect公司提供的Wordperfect5.1。該登記代碼部分38同構(gòu)成該字處理程序的數(shù)字?jǐn)?shù)據(jù)37是整體。登記代碼部分38包括如前述關(guān)于本發(fā)明其他實(shí)施例那樣用來計(jì)算登記號(hào)碼的算法。
可以理解的是該登記代碼部分38實(shí)際上是形成被保護(hù)/登記的軟件即數(shù)字?jǐn)?shù)據(jù)37的一部分,以及該數(shù)字?jǐn)?shù)據(jù)37對(duì)所產(chǎn)生的字處理程序的所有復(fù)制件將是或可能是相同的。該登記代碼部分38使得可能在數(shù)字?jǐn)?shù)據(jù)37和被授權(quán)即許可使用該數(shù)字?jǐn)?shù)據(jù)37的個(gè)體之間,借助初始執(zhí)行由登記代碼部分38構(gòu)成的數(shù)字?jǐn)?shù)據(jù)的一復(fù)制件來形成唯一的鏈接。
參照?qǐng)D6和7,將描述第五實(shí)施例的具體的實(shí)現(xiàn)。
具體參照?qǐng)D6,一解碼器51被插在從CD唱機(jī)52中的CD到一數(shù)字/模擬轉(zhuǎn)換器53的數(shù)據(jù)通道中。數(shù)模轉(zhuǎn)換器53是一器件,利用它將保存在CDROM54上的數(shù)字編碼音樂或視頻信息轉(zhuǎn)換成適合于在目前大量生產(chǎn)的TV(頻頻)或hi-fi裝置(音頻)上再現(xiàn)的模擬形式。解調(diào)器51為執(zhí)行數(shù)字?jǐn)?shù)據(jù)37的工作臺(tái)的組成部分,包含有解釋數(shù)字?jǐn)?shù)據(jù)37的代碼部分38的措施,這樣實(shí)施的該登記系統(tǒng),使得僅僅只有在完成了參照前述諸實(shí)施例的登記程序之后,才可能在工作臺(tái)以一使用方式執(zhí)行數(shù)字?jǐn)?shù)據(jù)37,更具體說,該數(shù)字?jǐn)?shù)據(jù)37的使用代碼部分。
該登記代碼部分38能包括有對(duì)無須許可即可在工作臺(tái)執(zhí)行的CD54上的數(shù)字?jǐn)?shù)據(jù)的平衡子集的預(yù)檢或示教。
該解碼器51包括LCD顯示器55和鍵板56,藉比,被許可者為進(jìn)行登記程序可通過鍵板56輸入信息,以及通過LCD顯示器55接收信息。
此外一靈巧卡片(SRAM)57可由解碼器51接收,用于解碼器51的完成或修改操作。
參照?qǐng)D7,在將CD插入CD唱機(jī)后的登記程序如下所述。用戶操作放音鍵,解碼器51由CD54讀出其上的數(shù)字?jǐn)?shù)據(jù)37的代碼部分38,并執(zhí)行該代碼,以確定該數(shù)字?jǐn)?shù)據(jù)對(duì)該工作臺(tái)是否已被許可。如果未被許可,即經(jīng)由數(shù)模轉(zhuǎn)換器53傳送示教方式,而用戶即按圖7流程圖中指示的方式確定是否登記成為數(shù)字?jǐn)?shù)據(jù)37的被許可者。
6、第六實(shí)施例參照?qǐng)D8,它表示按本發(fā)明另一實(shí)施例的一系統(tǒng)的方塊圖,它可對(duì)照有關(guān)圖1的早先綜合說明。
圖8說明的系統(tǒng)按有關(guān)前述實(shí)施例的一般描述的方式進(jìn)行操作,如在圖中概述的那樣。在圖4說明的方塊C的情況下,并參照?qǐng)D9,產(chǎn)生唯一用戶識(shí)別符的算法既被駐留作為數(shù)字?jǐn)?shù)據(jù)37中的登記代碼部分38,與使用代碼部分39連成整體在本地工作臺(tái)31執(zhí)行,也作為附加到數(shù)據(jù)庫程序62的遠(yuǎn)程算法61,用于在遠(yuǎn)程工作臺(tái)63上執(zhí)行。
在該實(shí)施例中,此算法借助附加序號(hào)50結(jié)合軟件產(chǎn)品名64,用戶信息65以及上述用戶識(shí)別符22,以產(chǎn)生登記號(hào)碼66。
如在前討論的那樣,所有要包括的項(xiàng)目,即項(xiàng)目50,64,65和22必須由予定的被許可者傳送到遠(yuǎn)程被許可者唯一ID產(chǎn)生器67,由此,算法61促使產(chǎn)生同本地產(chǎn)生的登記號(hào)碼完全匹配的登記號(hào)碼66。當(dāng)方式轉(zhuǎn)換器68驗(yàn)證為匹配時(shí),方式轉(zhuǎn)換器68就允許在全用戶程序39的工作臺(tái)31上執(zhí)行。
在允許執(zhí)行該全程序前,方式轉(zhuǎn)換器68還將檢驗(yàn)工作臺(tái)ID69是否已經(jīng)與由工作臺(tái)唯一ID產(chǎn)生器70提供于它的發(fā)生了變化。
在該實(shí)施例中,序號(hào)50由兩部分組成,即系統(tǒng)信息71和可改變的關(guān)鍵部分72。可改變關(guān)鍵部分72具有說明書中先前描述的自行排序特性,而且在該實(shí)施例中,它是在進(jìn)行工作臺(tái)31登記時(shí),由引用一可改變的工作臺(tái)參數(shù)產(chǎn)生的,在這種情況下,雖然是引用的系統(tǒng)時(shí)間信息,但其它可改變的參數(shù)亦能使用在不同的實(shí)施例中。
系統(tǒng)信息71包括有識(shí)別構(gòu)成將執(zhí)行用戶程序的工作臺(tái)31的硬件,例如CPU號(hào)碼(在可能時(shí))或者與所用固件相關(guān)的唯一參數(shù)的信息。該系統(tǒng)信息還能隨意地包括系統(tǒng)結(jié)構(gòu)信息,例如存儲(chǔ)器量,處理器型號(hào)等。
因此,將要指出,序號(hào)50將顯示給定的被許可者,像圖4中的每個(gè)邏輯框C那樣,屏幕上出現(xiàn)的是與工作臺(tái)31或者用戶程序39沒有明顯連系的極為隨機(jī)的變量。
但是,當(dāng)該序號(hào)50被傳送到遠(yuǎn)程被許可者唯一ID產(chǎn)生器67時(shí),與產(chǎn)生包含可變關(guān)鍵部分72和系統(tǒng)信息71的序號(hào)的算法互補(bǔ)的第二算法能“解碼”或換句話說能除掉可變關(guān)鍵部分72,以便在該環(huán)境許可的希望時(shí)使用系統(tǒng)信息71。
不管系統(tǒng)信息71是否被利用,按這種方式產(chǎn)生的序號(hào)50對(duì)產(chǎn)生登記號(hào)碼66的算法總提供一個(gè)輸入,該登記號(hào)碼66表現(xiàn)為一個(gè)明顯變化的參數(shù),由此而使得此軟件登記系統(tǒng)更難以甚至不可能“破解”。
7 第七實(shí)施例圖10示意圖說明應(yīng)用例如實(shí)現(xiàn)圖6中的CD裝置或圖8圖9更一般化裝置的本發(fā)明的基本的實(shí)施硬件。
在本實(shí)施例中,一個(gè)在媒體82上的數(shù)字代碼81的未來用戶80,在其于工作臺(tái)83上執(zhí)行前首先將媒體82插進(jìn)工作臺(tái)83中的合適的數(shù)字代碼讀出裝置(例如軟盤驅(qū)動(dòng)器或CDROM驅(qū)動(dòng)器)。
用戶80將客戶信息C直接提供給本地編碼/解碼器84和本地加法器85。
此外由媒體82導(dǎo)出的(一般通過工作臺(tái)83)或通過中介用戶(由小人符號(hào)表示)得到的產(chǎn)品信息P亦提供到編碼/解碼器84以及加法器85。
最后由工作臺(tái)83導(dǎo)出的一序號(hào)S直接或通過中介用戶80送到編碼/解碼器84以及加法器85。
加法器85行使一個(gè)本地被許可者唯一ID產(chǎn)生裝置的功能,將客戶信息C,產(chǎn)品信息P以及序號(hào)S進(jìn)行組合(相加)以提供在這里標(biāo)示為Y的一本地被許可者唯一ID。
編碼/解碼器84將序號(hào)S,客戶信息C和產(chǎn)品信息P,通過調(diào)制解調(diào)器86,87經(jīng)由共公電話轉(zhuǎn)換網(wǎng)絡(luò),送到遠(yuǎn)程編碼/解碼器88,該編碼/解碼器88再將信號(hào)S,C和P送到遠(yuǎn)程加法器的輸入端。遠(yuǎn)程加法器89以相加將這些信息組合起來(由此來起遠(yuǎn)程被許可者唯一ID產(chǎn)生裝置作用),以便提供在這里表示成X的相加輸出,該輸出代表一個(gè)被許可者唯一ID,即啟動(dòng)密碼。如果輸入到加法器85和89的S,C和P是相同的,則此啟動(dòng)密碼將和本地被許可者唯一ID即登記密碼或登記號(hào)碼Y完全匹配。
表示為X的被許可者唯一ID通過編碼/解碼器以及調(diào)制解調(diào)器84,86,87,88發(fā)回到比較器90,如果X等于Y,該比較器90輸出一個(gè)高信號(hào)。這個(gè)情況相當(dāng)于在遠(yuǎn)程位置由遠(yuǎn)程被許可者唯一ID產(chǎn)生裝置(通常為一加法器89)產(chǎn)生的被許可者唯一ID同本地被許可者唯一ID相匹配。
在媒體82上的數(shù)字代碼81由被指定的示教部分D的代碼連同被指定為使用部分U的代碼一齊構(gòu)成。這里也可有指定為O的其他類型代碼。
數(shù)字代碼81在工作臺(tái)83(例如一臺(tái)微處理器或一臺(tái)主要以硬件為基礎(chǔ)的專用放音裝置,如CD驅(qū)動(dòng)器)上執(zhí)行,此時(shí)該代碼被送到通過由第一門電路91和第二門電路92連同繼電器93所組成的一個(gè)方式轉(zhuǎn)換器。
第一門電路91激勵(lì)繼電器93,以便允許執(zhí)行D型代碼,而不能執(zhí)行任何其他類型例如U型代碼。
第二門電路92,只有比較器90的輸出為高電平使繼電器閉合(這就是說X等于Y,或者說本地被許可者唯一ID同由加法器89構(gòu)成的遠(yuǎn)程被許可者唯一ID產(chǎn)生裝置產(chǎn)生的被許可者唯一ID相匹配),才使得能執(zhí)行任何類型的代碼。
比較器90同門91,92以及繼電器93一起構(gòu)成一種具體形式的方式轉(zhuǎn)換器,即轉(zhuǎn)換裝置機(jī)構(gòu),它適合于識(shí)別并允許在工作臺(tái)執(zhí)行各種代碼,例如類型D和U代碼。
上述既可在專用電子硬件設(shè)備中應(yīng)用,也可借助較通用的數(shù)字計(jì)算裝置,例如微處理器等,來控制數(shù)字代碼的使用。
以上僅描述本發(fā)明的某些實(shí)施例,對(duì)熟練的專業(yè)人員來說顯然能夠加以改型而不脫離本發(fā)明的思想與范圍。
權(quán)利要求
1.一種許可數(shù)字?jǐn)?shù)據(jù)按一應(yīng)用模式執(zhí)行的登記系統(tǒng),所述數(shù)字?jǐn)?shù)據(jù)可在一工作臺(tái)上執(zhí)行,所述系統(tǒng)包括有本地被許可者專用(唯一的)ID產(chǎn)生裝置和遠(yuǎn)地被許可者專用ID產(chǎn)生裝置,所述系統(tǒng)還包括有可在所述工作臺(tái)上操作的模式轉(zhuǎn)換裝置,所述轉(zhuǎn)換裝置使得只有在由所述本地被許可者專用ID產(chǎn)生裝置產(chǎn)生的被許可者專用ID與所述遠(yuǎn)地被許可者專用ID產(chǎn)生裝置產(chǎn)生的被許可者專用ID相匹配時(shí),才允許所述數(shù)字?jǐn)?shù)據(jù)在所述工作臺(tái)以所述應(yīng)用模式使用。
2.權(quán)利要求1所述的系統(tǒng),其中所述本發(fā)被許可者專用ID產(chǎn)生裝置以執(zhí)行一登記算法來生成所述本地被許可者專用ID,該執(zhí)行過程是按所述算法來對(duì)信息進(jìn)行組合;所述信息唯一地專用說明欲以所述應(yīng)用模式執(zhí)行所述數(shù)字?jǐn)?shù)據(jù)的預(yù)定被許可者。
3.權(quán)利要求2所述的系統(tǒng),其中所述模式轉(zhuǎn)換裝置只有在由所述本地被許可者專用ID產(chǎn)生裝置所產(chǎn)生的所述被許可者專用ID沒有發(fā)生變化時(shí)才允許在所述數(shù)字?jǐn)?shù)據(jù)的后續(xù)執(zhí)行中以所述應(yīng)用模式運(yùn)行所述數(shù)字?jǐn)?shù)據(jù)。
4.權(quán)利要求3所述的系統(tǒng),其中所述本地被許可者專用ID產(chǎn)生裝置在當(dāng)于所述工作臺(tái)上執(zhí)行時(shí)構(gòu)成所述數(shù)字?jǐn)?shù)據(jù)的組成部分。
5.權(quán)利要求4所述的系統(tǒng),其中所述模式轉(zhuǎn)換裝置在當(dāng)于所述工作臺(tái)上執(zhí)行時(shí)構(gòu)成所述數(shù)字?jǐn)?shù)據(jù)的組成部分。
6.權(quán)利要求5所述的系統(tǒng),其中所述遠(yuǎn)地被許可者專用ID產(chǎn)生裝置構(gòu)成在一工作臺(tái)上執(zhí)行的,包含有為所述本地被許可者ID產(chǎn)生裝置用來產(chǎn)生所述被許可者專用ID的算法的軟件。
7.權(quán)利要求5所述的系統(tǒng),其中被所述本地被許可者專用ID產(chǎn)生裝置用來產(chǎn)生所述被許可者專用ID的信息為至少包括有付款細(xì)節(jié)、聯(lián)系細(xì)節(jié)及名稱之一的預(yù)期被許可者細(xì)節(jié)。
8.權(quán)利要求1所述的系統(tǒng),還進(jìn)一步包括有工作臺(tái)專用ID產(chǎn)生裝置,其中所述模式轉(zhuǎn)換裝置只存在所述工作臺(tái)專用ID沒有變化時(shí)才允許在所述工作臺(tái)上按著執(zhí)行所述數(shù)字?jǐn)?shù)據(jù)中以所述應(yīng)用模式運(yùn)行所述數(shù)字?jǐn)?shù)據(jù)。
9.權(quán)利要求8所述系統(tǒng),其中所述工作臺(tái)專用ID產(chǎn)生裝置在當(dāng)于所述工作臺(tái)上執(zhí)行時(shí)構(gòu)成所述數(shù)字?jǐn)?shù)據(jù)的組成部分。
10.權(quán)利要求9所述系統(tǒng),其中工作臺(tái)專用ID產(chǎn)生裝置利用硬盤或其它工作臺(tái)信息來決定所述工作臺(tái)專用ID。
11.權(quán)利要求1所述系統(tǒng),其中所述工作臺(tái)構(gòu)成一計(jì)算機(jī)操作系統(tǒng)環(huán)境。
12.權(quán)利要求11所述系統(tǒng),其中所述數(shù)字?jǐn)?shù)據(jù)構(gòu)成一適宜于在所述操作系統(tǒng)環(huán)境下運(yùn)行的軟件程序。
13.一可附加到欲被保護(hù)的軟件的安全子程序亦即登記裝置,所述登記裝置根據(jù)輸入到所述軟件的信息產(chǎn)生一安全密碼,所述安全密碼唯一地專用識(shí)別欲在要裝載所述軟件的計(jì)算機(jī)上進(jìn)行所述軟件登記的用戶。
14.權(quán)利要求13所述登記裝置,其中所述安全密碼由一登記號(hào)碼算法產(chǎn)生。
15.權(quán)利要求14所述登記系統(tǒng)裝置,其中所述登記號(hào)碼算法由一預(yù)期的登記用戶所輸入的唯一地專用于該用戶的信息與根據(jù)欲被保護(hù)軟件的運(yùn)行環(huán)境所提供的信息產(chǎn)生的序號(hào)加以組合。
16.權(quán)利要求13所述的登記裝置,其中所述登記裝置在一登記管理機(jī)構(gòu)被加以復(fù)制,以便為該登記管理機(jī)構(gòu)用來檢驗(yàn)在當(dāng)安全裝置產(chǎn)生該登記密碼時(shí)專用于該用戶的信息的正確輸入。
17.權(quán)利要求13所述的登記裝置,其中所述登記裝置是在引導(dǎo)所述軟件時(shí)檢驗(yàn)欲加以保護(hù)軟件是首先引導(dǎo)還是后續(xù)的引導(dǎo),如果檢測(cè)到為一后續(xù)引導(dǎo)則將環(huán)境和用戶細(xì)節(jié)加以比較;以決定將程序變成一示教模式并開始一新的用戶登記過程,還是作完全方式運(yùn)行。
18.權(quán)利要求17所述的登記裝置,其中所述環(huán)境細(xì)節(jié)包括一個(gè)或多個(gè)通常用戶不能在工作臺(tái)上構(gòu)成的單元內(nèi)容。
19.一種控制軟件分配的方法,所述方法包括提供與所述軟件相關(guān)的模式轉(zhuǎn)換裝置,適用以將所述軟件在一完全使能模式和一部分使能模式、即示教模式之間進(jìn)行轉(zhuǎn)換;所述方法還包括提供適用于產(chǎn)生一登記密碼的登記密碼產(chǎn)生裝置,所述登記密碼為對(duì)該軟件的一預(yù)定用戶是唯一的信息的一個(gè)函數(shù);所述模式轉(zhuǎn)換裝置只有在所述預(yù)定用戶在進(jìn)行所述軟件的登記時(shí)提供給所述模式轉(zhuǎn)換裝置的啟動(dòng)密碼與所述登記密碼完全匹配時(shí)才將所述軟件轉(zhuǎn)換為完全使能模式。
20.權(quán)利要求19所述的方法,其中所述登記密碼也是所述軟件安裝環(huán)境一個(gè)函數(shù)。
21.權(quán)利要求19所述的方法,其中所述啟動(dòng)密碼在進(jìn)行所述軟件登記時(shí)被傳送給所述予定的用戶;所述啟動(dòng)密碼由一操作所述登記密碼產(chǎn)生裝置的復(fù)制拷貝的第三方產(chǎn)生。
22.結(jié)合有登記代碼的數(shù)字?jǐn)?shù)據(jù),所述數(shù)字?jǐn)?shù)據(jù)可在一工作臺(tái)上執(zhí)行;所述登記代碼構(gòu)成可在所述工作臺(tái)上操作以便使所述數(shù)字?jǐn)?shù)據(jù)能在一示教模式和一應(yīng)用模式之間轉(zhuǎn)換的所述數(shù)字?jǐn)?shù)據(jù)的一個(gè)組成部分。
23.權(quán)利要求22所述數(shù)字?jǐn)?shù)據(jù),其中所述登記代碼在當(dāng)于所述工作臺(tái)上執(zhí)行時(shí)提供本地被許可者專用ID產(chǎn)生裝置,由此,只有當(dāng)由所述本地被許可者專用ID產(chǎn)生裝置所產(chǎn)生的被許可者專用ID相匹配時(shí),所述數(shù)字?jǐn)?shù)據(jù)才可能以所述示教模式轉(zhuǎn)換到所述應(yīng)用模式。
24.權(quán)利要求22所述數(shù)字?jǐn)?shù)據(jù),其中所述登記代碼整體地結(jié)合到所述數(shù)字?jǐn)?shù)據(jù)。
25.一結(jié)合有遠(yuǎn)地被許可者專用ID產(chǎn)生裝置的遠(yuǎn)地登記站,所述登記站構(gòu)成用于許可數(shù)字?jǐn)?shù)據(jù)以一應(yīng)用模式執(zhí)行的登記系統(tǒng)的組成部分,所述數(shù)字?jǐn)?shù)據(jù)可在一工作臺(tái)上執(zhí)行,所述系統(tǒng)包含有本地被許可者專用ID產(chǎn)生裝置和遠(yuǎn)地被許可者專用ID產(chǎn)生裝置,所述系統(tǒng)還包含有可在所述工作臺(tái)運(yùn)行的模式轉(zhuǎn)換裝置,所述轉(zhuǎn)換裝置只有在由所述本地被許可者專用ID產(chǎn)生裝置所產(chǎn)生的被許可者專用ID與所述遠(yuǎn)地被許可者專用ID產(chǎn)生裝置產(chǎn)生的被許可者專用ID相匹配時(shí)才允許在所述工作臺(tái)上以所述應(yīng)用模式利用所述數(shù)字?jǐn)?shù)據(jù)。
26.一為使數(shù)字?jǐn)?shù)據(jù)能以一應(yīng)用模式執(zhí)行的數(shù)字?jǐn)?shù)據(jù)登記方法,所述方法包括一預(yù)定被許可者操作一登記系統(tǒng)以許可以一應(yīng)用模式執(zhí)行數(shù)字?jǐn)?shù)據(jù),所述數(shù)字?jǐn)?shù)據(jù)可在一工作臺(tái)上執(zhí)行,所述系統(tǒng)包括有本地被許可者專用ID產(chǎn)生裝置和遠(yuǎn)地被許可者專用ID產(chǎn)生裝置,所述系統(tǒng)還包含有可在所述工作臺(tái)操作的模式轉(zhuǎn)換裝置,所述轉(zhuǎn)換裝置只有在由所述本地被許可者專用ID產(chǎn)生裝置所產(chǎn)生的被許可者專用ID與由所述遠(yuǎn)地被許可者專用ID產(chǎn)生裝置所產(chǎn)生的被許可者專用ID相匹配時(shí)才允許在所述工作臺(tái)上以所述應(yīng)用模式利用所述數(shù)字?jǐn)?shù)據(jù)。
27.承載權(quán)利要求22的數(shù)字?jǐn)?shù)據(jù)的媒體即一傳播媒體。
28.承載權(quán)利要求1的登記系統(tǒng)所述本地被許可者專用ID產(chǎn)生裝置的媒體即一傳播媒體。
29.承載適用于在一工作臺(tái)上執(zhí)行以提供權(quán)利要求1的登記系統(tǒng)的所述遠(yuǎn)地被許可者專用ID產(chǎn)生裝置的代碼的媒體或一傳播媒體。
30.一遠(yuǎn)程登記站,包含有構(gòu)成權(quán)利要求1的登記系統(tǒng)組成部分的所述遠(yuǎn)地被許可者專用ID產(chǎn)生裝置。
全文摘要
許可數(shù)字?jǐn)?shù)據(jù)按一應(yīng)用模式執(zhí)行的登記系統(tǒng),該數(shù)字?jǐn)?shù)據(jù)可在一工作臺(tái)(12)上執(zhí)行,該系統(tǒng)包括一包含一在工作臺(tái)/PC(12)上執(zhí)行的登記算法(14)的本地被許可者專用ID產(chǎn)生裝置,及一包含在工作臺(tái)/PC(15)上執(zhí)行的登記算法(14)的一復(fù)制件的遠(yuǎn)地被許可者專用ID產(chǎn)生裝置,該系統(tǒng)還包括可在工作臺(tái)(12)上操作的模式轉(zhuǎn)換裝置,該裝置使得只有在由裝置(14,12)產(chǎn)生的ID與由裝置(14,15)產(chǎn)生的ID匹配時(shí)才允許所述數(shù)字?jǐn)?shù)據(jù)在所述工作臺(tái)(12)上使用。
文檔編號(hào)G06F21/24GK1103186SQ9311409
公開日1995年5月31日 申請(qǐng)日期1993年9月21日 優(yōu)先權(quán)日1992年9月21日
發(fā)明者里克·貝利亞·理查森 申請(qǐng)人:尤尼洛克(新加坡)私人有限公司