本發(fā)明涉及計(jì)算機(jī)軟件領(lǐng)域,更具體而言,涉及一種軟件授權(quán)方法,尤其涉及一種適用于產(chǎn)線程序的授權(quán)方法。
背景技術(shù):
隨著計(jì)算機(jī)技術(shù)的發(fā)展,計(jì)算機(jī)軟件的種類越來越多,功能也越來越強(qiáng)大。軟件開發(fā)商為了保護(hù)自己開發(fā)的軟件只有在被授權(quán)的前提下才能正常使用,通常會采用單機(jī)驗(yàn)證、硬件綁定或網(wǎng)絡(luò)激活的方式進(jìn)行授權(quán)。
具體而言,單機(jī)驗(yàn)證是指在第一次使用時要求輸入正確的用戶密碼,用戶密碼與用戶名相關(guān),用戶只要保留好已購買的用戶名和用戶密碼,就可以無限制使用軟件。硬件綁定是指在第一次使用時,軟件會根據(jù)用戶機(jī)器計(jì)算出一個硬件識別碼,軟件開發(fā)商根據(jù)這個硬件識別碼產(chǎn)生注冊序列號,用戶只有輸入與本機(jī)硬件識別碼相匹配的注冊序列號,才能正常使用軟件。網(wǎng)絡(luò)激活是指軟件在第一次使用時必須計(jì)算機(jī)聯(lián)網(wǎng)或電話激活,才能完成整個軟件的注冊與激活流程。
上述三種方式適用于對軟件的每一份拷貝都能做到授權(quán)保護(hù),確保用戶在沒有得到授權(quán)的情況下,就算用戶拿到了軟件拷貝,都無法正常使用軟件。但是,某些軟件(如產(chǎn)線程序)是隨操作系統(tǒng)母盤一起分發(fā)的,要求做到一次激活,任意多個拷貝無限制運(yùn)行。比如,產(chǎn)線程序的授權(quán)問題應(yīng)該是在母盤制作階段,而不是在對產(chǎn)線上的每一臺計(jì)算機(jī)進(jìn)行檢測之時,因?yàn)楫a(chǎn)線流程最重要的因素就是效率,如果每個測試人員在啟動產(chǎn)線程序時,都必須輸入用戶名和用戶密碼以激活測試程序的話,無疑會大大降低生產(chǎn)效率。因此,產(chǎn)線程序的授權(quán)既要保護(hù)軟件開發(fā)商的軟件版權(quán),又不能影響產(chǎn)線程序的生產(chǎn)效率。
然而,現(xiàn)有的軟件授權(quán)方法還不能一次性解決多個軟件拷貝的軟件授權(quán)問題,從而導(dǎo)致某些軟件(如產(chǎn)線程序)的生產(chǎn)效率低下。
因此,如何在保護(hù)軟件開發(fā)商的軟件版權(quán)的前提下,提高某些軟件(如產(chǎn)線程序)的生產(chǎn)效率,也成為本領(lǐng)域技術(shù)人員亟需解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)要素:
鑒于此,本發(fā)明提出了一種軟件授權(quán)方法,以在保護(hù)軟件開發(fā)商的軟件版權(quán)的前提下,提高某些軟件(如產(chǎn)線程序)的生產(chǎn)效率。
本發(fā)明提出的一種軟件授權(quán)方法,包括如下步驟:
S10:在軟件首次使用時通過密碼激活,并在所述軟件激活成功后生成許可證文件,所述許可證文件記錄了所述軟件的有效期限或剩余的有效天數(shù);
S20:在有效期限內(nèi)或剩余的有效天數(shù)大于0時,激活成功后的所述軟件的所有拷貝免激活即可啟動且正常運(yùn)行;在有效期限外或剩余的有效天數(shù)等于0時,所述軟件需再次激活。
優(yōu)選地,所述密碼為動態(tài)密碼,所述動態(tài)密碼的生成與激活時間相關(guān)。
優(yōu)選地,在步驟S10中,在所述軟件激活成功后生成的許可證文件中,所述軟件的有效期限為從激活成功之日起10-30天或有效天數(shù)為10-30天。
優(yōu)選地,在步驟S10中,在所述軟件激活成功后生成的許可證文件中寫入基準(zhǔn)時間及有效天數(shù),并根據(jù)基準(zhǔn)時間和有效天數(shù)確定剩余的有效天數(shù);或,在所述軟件激活成功后生成的許可證文件中直接寫入有效期限的開始時間和結(jié)束時間。
優(yōu)選地,步驟S20包括步驟:
S21:激活成功后的所述軟件啟動時,檢測是否存在許可證文件;
S22:當(dāng)存在許可證文件時,打開許可證文件并檢查啟動時間是否在有效期限內(nèi)或剩余的有效天數(shù)是否大于0;
S23:當(dāng)啟動時間位于有效期限內(nèi)或剩余的有效天數(shù)大于0時,打開軟件。
優(yōu)選地,當(dāng)不存在許可證文件時,進(jìn)入激活程序;當(dāng)啟動時間位于有效期限外或剩余的有效天數(shù)等于0時,進(jìn)入步驟S24:刪除許可證文件,并進(jìn)入步驟S21。
優(yōu)選地,所述激活程序包括如下步驟:
S25:輸入密碼激活,密碼驗(yàn)證成功后進(jìn)入步驟S26,否則退出軟件;
S26:檢查系統(tǒng)時間是否位于預(yù)定范圍內(nèi),若是進(jìn)入步驟S27,否則退出軟件;
S27:創(chuàng)建許可證文件,并將文件屬性更改為可讀寫;
S28:打開創(chuàng)建的許可證文件并開始寫入基準(zhǔn)時間,寫入成功后進(jìn)入步驟S29,否則提示寫入錯誤并退出軟件;
S29:關(guān)閉許可證文件。
優(yōu)選地,所述激活程序包括如下步驟:
S25:輸入密碼激活,密碼驗(yàn)證成功后進(jìn)入步驟S26,否則退出軟件;
S26:檢查系統(tǒng)時間是否位于預(yù)定范圍內(nèi),若是進(jìn)入步驟S27,否則退出軟件;
S27:創(chuàng)建許可證文件,并將文件屬性更改為可讀寫;
S28:打開創(chuàng)建的許可證文件并開始寫入有效期限的開始時間和結(jié)束時間,寫入成功后進(jìn)入步驟S29,否則提示寫入錯誤并退出軟件;
S29:關(guān)閉許可證文件。
優(yōu)選地,對許可證文件的文件名、保存位置和文件內(nèi)容均進(jìn)行加密。
優(yōu)選地,所述軟件為產(chǎn)線程序。
本發(fā)明的提出的一種軟件授權(quán)方法,在軟件首次使用時通過密碼激活,并在軟件激活成功后生成許可證文件,許可證文件記錄了軟件的有效期限或剩余的有效天數(shù);在有效期限內(nèi)或剩余的有效天數(shù)大于0時,激活成功后的軟件的所有拷貝免激活即可啟動且正常運(yùn)行;在有效期限外或剩余的有效天數(shù)等于0時,軟件需再次激活。通過該技術(shù)方案,可以在母盤制作階段通過密碼延續(xù)軟件的使用期限,在軟件測試階段通過許可證文件限制軟件的有效期限或有效天數(shù),既實(shí)現(xiàn)了對軟件的授權(quán)保護(hù),又不會影響軟件的生產(chǎn)效率。該方法在一般性軟件授權(quán)保護(hù)的基礎(chǔ)上,尤其適應(yīng)了產(chǎn)線測試流程的生產(chǎn)特點(diǎn),做到了一次激活之后,只要在有效期之內(nèi),就可以實(shí)現(xiàn)任意拷貝的免激活運(yùn)行;有效期過期之后,也只需要再次激活,就又能創(chuàng)建新的有效期。
在優(yōu)選的技術(shù)方案中,動態(tài)密碼算法采用與激活時間相關(guān)的復(fù)雜科學(xué)計(jì)算方法,既保證了密碼的復(fù)雜度,又提高了軟件激活人員的可操作性。同時,通過對許可證文件的文件名、保存位置和文件內(nèi)容進(jìn)行加密,保證了許可證的安全。
附圖說明
圖1為本發(fā)明的一種軟件授權(quán)方法的示意圖;
圖2為本發(fā)明的一種軟件授權(quán)方法中軟件拷貝的打開流程示意圖;
圖3為本發(fā)明的第一種軟件授權(quán)方法中軟件拷貝的激活流程示意圖;
圖4為本發(fā)明的第二種軟件授權(quán)方法中軟件拷貝的激活流程示意圖。
具體實(shí)施方式
為了能夠更清楚地理解本發(fā)明的上述目的、特征和優(yōu)點(diǎn),下面結(jié)合附圖和具體實(shí)施方式對本發(fā)明進(jìn)行進(jìn)一步的詳細(xì)描述。需要說明的是,在不沖突的情況下,本申請的實(shí)施例及實(shí)施例中的特征可以相互組合。
如背景技術(shù)部分所言,某些軟件,具體以產(chǎn)線程序?yàn)槔?,其授?quán)保護(hù)既要保護(hù)軟件開發(fā)商的軟件版權(quán),又不能影響產(chǎn)線流程的生產(chǎn)效率,產(chǎn)線程序是隨操作系統(tǒng)母盤一起分發(fā)的,因此必須在母盤制作階段解決產(chǎn)線程序的授權(quán)保護(hù)問題,在產(chǎn)線程序的使用階段只對產(chǎn)線程序的有效性進(jìn)行檢驗(yàn)。本發(fā)明的構(gòu)思即基于此,并最終實(shí)現(xiàn)了在母盤制作階段通過動態(tài)密碼延續(xù)產(chǎn)線程序的使用期限,在產(chǎn)線測試階段通過許可證文件限制產(chǎn)線程序的使用期限。
參考圖1所示,本發(fā)明提出的一種軟件授權(quán)方法,包括如下步驟:
S10:在軟件首次使用時通過密碼激活,并在軟件激活成功后生成許可證文件,許可證文件記錄了軟件的有效期限或剩余的有效天數(shù);
S20:在有效期限內(nèi)或剩余的有效天數(shù)大于0時,激活成功后的軟件的所有拷貝免激活即可啟動且正常運(yùn)行;在有效期限外或剩余的有效天數(shù)等于0時,軟件需再次激活。
上述方案中,步驟S10中的有效期限即軟件可以被啟動且正常運(yùn)行的開始日期與結(jié)束日期之間的時間區(qū)間,有效天數(shù)即軟件可以被啟動且正常運(yùn)行的天數(shù),剩余的有效天數(shù)即軟件剩余可以被啟動且正常運(yùn)行的天數(shù)。
上述方案中,在軟件首次使用時通過密碼激活,并在軟件激活成功后生成許可證文件,許可證文件記錄了軟件的有效期限或剩余的有效天數(shù)。一旦激活,軟件(如產(chǎn)線程序)的任意多個拷貝都可以隨操作系統(tǒng)一起分發(fā),每個拷貝設(shè)置有默認(rèn)有效期限或有效天數(shù),如有效天數(shù)20天(從激活之日算起),在有效期限內(nèi)或剩余的有效天數(shù)大于0時,所有的軟件拷貝皆不再需要激活即可啟動且正常運(yùn)行,在有效期限外或剩余的有效天數(shù)等于0時,軟件需再次激活才能夠正常使用。通過該技術(shù)方案,可以在母盤制作階段通過密碼延續(xù)軟件的使用期限,在軟件測試階段通過許可證文件限制軟件的有效期限或有效天數(shù),既實(shí)現(xiàn)了對軟件的授權(quán)保護(hù),又不會影響軟件的生產(chǎn)效率。該方法尤其適用于產(chǎn)線程序的授權(quán)保護(hù),即,該方案中軟件為具體的產(chǎn)線程序。
上述方案中,“通過密碼激活”的密碼,可以為固定密碼或動態(tài)密碼,優(yōu)選采用動態(tài)密碼,且動態(tài)密碼的生成與激活時間相關(guān),通過采用與激活時間相關(guān)的動態(tài)方式生成,可以由軟件開發(fā)商駐廠代表掌握密碼生成算法,并實(shí)施激活。需要說明的是,動態(tài)密碼本質(zhì)上是一種對稱密鑰算法,雖然各種成熟的動態(tài)密鑰算法已經(jīng)較好地解決了安全性問題,但是考慮到實(shí)際生產(chǎn)活動中是由軟件開發(fā)商駐廠代表負(fù)責(zé)軟件激活程序,因此在考慮到安全性的同時還要兼顧密碼生成算法的便利性。本發(fā)明優(yōu)選采用了一種與激活時間相關(guān)的復(fù)雜科學(xué)計(jì)算方法,生成一個長度可調(diào)(即復(fù)雜度可調(diào))的字符串序列作為當(dāng)前時間段(具體到當(dāng)前小時)的動態(tài)密碼。
在動態(tài)密碼輸入正確之后,會自動生成一個許可證文件,該許可證文件記錄了軟件的有效期限或剩余的有效天數(shù)。此時,軟件已經(jīng)可以隨操作系統(tǒng)母盤進(jìn)行分發(fā)了,程序在啟動時,只要檢測到許可證的存在,且在有效期限內(nèi)或剩余的有效天數(shù)大于0,就可以正常運(yùn)行;否則就會要求用戶重新激活程序。這樣就保證了在有效期之內(nèi),產(chǎn)線測試人員不再需要重復(fù)進(jìn)行軟件激活流程,流程大幅簡化。
上述方案中,有效期限或有效天數(shù)可以根據(jù)需要設(shè)置,或按照預(yù)定的規(guī)則設(shè)置,具體的,在步驟S10中,在軟件激活成功后生成的許可證文件中,軟件的有效期限為從激活成功之日起10-30天或有效天數(shù)為10-30天,如15天、20天、25天等。
為便于確定有效期限或有效天數(shù),在步驟S10中,在軟件激活成功后生成的許可證文件中寫入基準(zhǔn)時間及有效天數(shù),并根據(jù)基準(zhǔn)時間和有效天數(shù)確定剩余的有效天數(shù);或,在軟件激活成功后生成的許可證文件中直接寫入有效期限的開始時間和結(jié)束時間。
上述的軟件授權(quán)方法,為正確判斷激活成功后的軟件的所有拷貝是可以運(yùn)行或需要激活,參考圖2所示,步驟S20優(yōu)選包括如下步驟:
S21:激活成功后的軟件啟動時,檢測是否存在許可證文件;
S22:當(dāng)存在許可證文件時,打開許可證文件并檢查啟動時間是否在有效期限內(nèi)或剩余的有效天數(shù)是否大于0;
S23:當(dāng)啟動時間位于有效期限內(nèi)或剩余的有效天數(shù)大于0時,打開軟件。
同時,當(dāng)不存在許可證文件時,進(jìn)入激活程序;當(dāng)啟動時間位于有效期限外或剩余的有效天數(shù)等于0時,進(jìn)入步驟S24:刪除許可證文件,并進(jìn)入步驟S21。。
通過上述流程,可以正確判斷激活成功后的軟件是直接運(yùn)行還是需要激活以后在運(yùn)行,保證軟件安全的同時,提高了生產(chǎn)效率。
參見圖3,圖3為本發(fā)明的第一種軟件授權(quán)方法中軟件拷貝的激活流程示意圖。
上述的軟件授權(quán)方法,激活程序可以有多種方式,在一種具體的方式中,激活程序包括如下步驟:
S25:輸入密碼激活,密碼驗(yàn)證成功后進(jìn)入步驟S26,否則退出軟件;
S26:檢查系統(tǒng)時間是否位于預(yù)定范圍內(nèi)(如2016年1月1日至2017年12月31日之間,此時間可根據(jù)情況具體設(shè)置),若是進(jìn)入步驟S27,否則退出軟件;
S27:創(chuàng)建許可證文件,并將文件屬性更改為可讀寫;
S28:打開創(chuàng)建的許可證文件并開始寫入基準(zhǔn)時間,寫入成功后進(jìn)入步驟S29,否則提示寫入錯誤并退出軟件;
S29:關(guān)閉許可證文件。
參見圖4,圖4為本發(fā)明的第二種軟件授權(quán)方法中軟件拷貝的激活流程示意圖。
在另一種具體的方式中,激活程序包括如下步驟:
S25:輸入密碼激活,密碼驗(yàn)證成功后進(jìn)入步驟S26,否則退出軟件;
S26:檢查系統(tǒng)時間是否位于預(yù)定范圍內(nèi)(如2016年1月1日至2017年12月31日之間,此時間可根據(jù)情況具體設(shè)置),若是進(jìn)入步驟S27,否則退出軟件;
S27:創(chuàng)建許可證文件,并將文件屬性更改為可讀寫;
S28:打開創(chuàng)建的許可證文件并開始寫入有效期限的開始時間和結(jié)束時間,寫入成功后進(jìn)入步驟S29,否則提示寫入錯誤并退出軟件;
S29:關(guān)閉許可證文件。
通過上述流程,可以采用不同的方式對軟件進(jìn)行再次激活,并產(chǎn)生許可證文件,操作簡單,同時,再次激活后的軟件同樣兼顧了軟件的安全和效率。
為保證許可證文件的安全,上述軟件授權(quán)方法中,優(yōu)選地,對許可證文件的文件名、保存位置和文件內(nèi)容均進(jìn)行加密。
本發(fā)明的軟件授權(quán)方法,通過密碼(如動態(tài)密碼)和許可證文件,通過對軟件的一次授權(quán),就可以實(shí)現(xiàn)對任意多個軟件拷貝的授權(quán)?,F(xiàn)有技術(shù)無論其加密算法如何,要么只能實(shí)現(xiàn)對單一軟件拷貝的授權(quán)保護(hù),每個軟件拷貝都需要單獨(dú)激活;要么就會出現(xiàn)單個密碼可以激活多個軟件拷貝,而導(dǎo)致的侵權(quán)現(xiàn)象。本發(fā)明通過動態(tài)密碼創(chuàng)建軟件有效期,通過許可證檢查軟件有效期,這樣既實(shí)現(xiàn)了對軟件的授權(quán)保護(hù),又不會導(dǎo)致對每個軟件拷貝的重復(fù)激活,兼顧了安全和效率。
本發(fā)明的軟件授權(quán)方法,在一般性軟件授權(quán)保護(hù)的基礎(chǔ)上,尤其適應(yīng)了產(chǎn)線測試流程的生產(chǎn)特點(diǎn),做到了一次激活之后,只要在有效期之內(nèi),就可以實(shí)現(xiàn)任意拷貝的免激活運(yùn)行;有效期過期之后,也只需要再次激活,就又能創(chuàng)建新的有效期。
綜上所述,本發(fā)明的軟件授權(quán)方法具有如下優(yōu)點(diǎn):
(1)通過動態(tài)密碼創(chuàng)建軟件有效期限或有效天數(shù),通過許可證文件檢查軟件的有效期限或有效天數(shù),這樣授權(quán)與驗(yàn)證相分離,既實(shí)現(xiàn)了對軟件的授權(quán)保護(hù),又不會影響生產(chǎn)效率,達(dá)到了安全與效率的統(tǒng)一。
(2)動態(tài)密碼算法采用與激活時間相關(guān)的復(fù)雜科學(xué)計(jì)算方法,既保證了密碼的復(fù)雜度,又提高了軟件激活人員的可操作性。
(3)通過對許可證文件的文件名、保存位置和文件內(nèi)容進(jìn)行加密,保證了許可證的安全。
以上僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。