虛擬環(huán)境中的軟件保護(hù)系統(tǒng)及軟件保護(hù)方法
【專利摘要】本發(fā)明提供一種于虛擬環(huán)境中的軟件保護(hù)系統(tǒng),用以保護(hù)位于虛擬環(huán)境中的軟件。軟件保護(hù)系統(tǒng)包括:擷取模塊、處理模塊、鑰匙編號(hào)庫(kù)、接收模塊、比對(duì)模塊及運(yùn)行模塊。擷取模塊為當(dāng)軟件激活時(shí),取得軟件于虛擬環(huán)境中相應(yīng)的虛擬IP以及路由器IP。處理模塊用以將擷取模塊取得的虛擬IP及路由器IP組合為鎖頭編號(hào)。鑰匙編號(hào)庫(kù)存儲(chǔ)有復(fù)數(shù)組鑰匙編號(hào)。接收模塊用于接收由處理模塊產(chǎn)生的鎖頭編號(hào),且加載鑰匙編號(hào)庫(kù)中的復(fù)數(shù)組鑰匙編號(hào)。比對(duì)模塊用于比對(duì)接收模塊接收的鎖頭編號(hào)以及加載的復(fù)數(shù)組鑰匙編號(hào),并依據(jù)鎖頭編號(hào)于復(fù)數(shù)組鑰匙編號(hào)中,取得對(duì)應(yīng)的鑰匙編號(hào)。運(yùn)行模塊將比對(duì)模塊取得的鑰匙編號(hào)與預(yù)設(shè)鑰匙進(jìn)行比對(duì),決定使軟件運(yùn)行與否。
【專利說(shuō)明】虛擬環(huán)境中的軟件保護(hù)系統(tǒng)及軟件保護(hù)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明系關(guān)于虛擬環(huán)境軟件保護(hù)領(lǐng)域,尤其涉及一種于虛擬環(huán)境中的軟件保護(hù)系統(tǒng)及虛擬環(huán)境中的軟件保護(hù)方法。
【背景技術(shù)】
[0002]隨著科技進(jìn)步,用戶透過(guò)云端等虛擬環(huán)境進(jìn)行數(shù)據(jù)儲(chǔ)存或執(zhí)行應(yīng)用程序的技術(shù)也日益成熟,云端技術(shù)已成為現(xiàn)今不可或缺的科技產(chǎn)物。
[0003]過(guò)去軟件的使用通常都在用戶端的計(jì)算機(jī)裝置使用,由于軟件為開發(fā)商的智能結(jié)晶,因此開發(fā)商均會(huì)為自家開發(fā)的軟件加上保護(hù)裝置,避免辛苦開發(fā)的軟件遭到盜版使用。
[0004]現(xiàn)行主流保護(hù)技術(shù)有綁定硬件信息及結(jié)合第三方硬件等。綁定硬件信息是當(dāng)軟件激活時(shí),軟件中的執(zhí)行程序會(huì)預(yù)先讀取用戶端所屬的計(jì)算機(jī)硬件信息,例如中央處理器編碼、硬盤序號(hào)等,若執(zhí)行程序讀取到正確的用戶端所屬的計(jì)算機(jī)硬件信息,則將授權(quán)該用戶使用該軟件。而結(jié)合第三方硬件是于用戶購(gòu)買某一軟件時(shí),隨著產(chǎn)品提供例如Key Pro (軟件保護(hù)裝置),當(dāng)用戶啟用該軟件時(shí),執(zhí)行程序?qū)㈩A(yù)先讀取Key Pro內(nèi)的信息,若信息正確才會(huì)授權(quán)該用戶繼續(xù)使用該軟件。藉由上述方法,可保護(hù)辛苦開發(fā)的軟件不被未經(jīng)授權(quán)的用戶盜版使用。
[0005]隨著云端時(shí)代的來(lái)臨,軟件開發(fā)商漸漸地將自身產(chǎn)品上傳于云端環(huán)境中,再依據(jù)用戶的付費(fèi)狀態(tài)提供不同程度的服務(wù)。然而于云端環(huán)境中,計(jì)算機(jī)硬件信息可以輕易被仿真假造或是被復(fù)制與轉(zhuǎn)移,且云端環(huán)境所使用的主機(jī)不固定,亦不允許開發(fā)商在云端主機(jī)上置入私人的硬件裝置例如Key Pro0如此將造成云端環(huán)境中的軟件容易遭到未經(jīng)授權(quán)的用戶盜版使用。
[0006]因此,如何發(fā)展一種可改善上述問題的技術(shù)方法,實(shí)為目前迫切需要解決的問題。
【發(fā)明內(nèi)容】
[0007]本發(fā)明目的在于解決上述問題,提供一種虛擬環(huán)境中的軟件保護(hù)系統(tǒng)及軟件保護(hù)方法,其可防止位于虛擬環(huán)境中的軟件被盜用,被非法復(fù)制以及外流到虛擬環(huán)境以外的地方使用。
[0008]為了解決上述問題,本發(fā)明提供一種于虛擬環(huán)境中的軟件保護(hù)系統(tǒng),用以保護(hù)位于虛擬環(huán)境中的軟件。軟件保護(hù)系統(tǒng)包括:擷取模塊、處理模塊、鑰匙編號(hào)庫(kù)、接收模塊、t匕對(duì)模塊以及運(yùn)行模塊。擷取模塊為當(dāng)所述軟件激活時(shí),取得所述軟件于所述虛擬環(huán)境中相應(yīng)的一虛擬IP (Internet Protocol)以及一路由器IP。處理模塊用以將所述擷取模塊取得的所述虛擬IP及路由器IP組合為一鎖頭編號(hào)。鑰匙編號(hào)庫(kù)存儲(chǔ)有復(fù)數(shù)組鑰匙編號(hào)。接收模塊用于接收由所述處理模塊產(chǎn)生的所述鎖頭編號(hào),且加載所述鑰匙編號(hào)庫(kù)中的所述復(fù)數(shù)組鑰匙編號(hào)。比對(duì)模塊用于將所述接收模塊所接收的所述鎖頭編號(hào)以及所加載的所述復(fù)數(shù)組鑰匙編號(hào)進(jìn)行比對(duì),并依據(jù)所述鎖頭編號(hào)于所述復(fù)數(shù)組鑰匙編號(hào)中,取得對(duì)應(yīng)的一鑰匙編號(hào)。運(yùn)行模塊將所述比對(duì)模塊取得的所述鑰匙編號(hào)與一內(nèi)建于所述軟件中的預(yù)設(shè)鑰匙進(jìn)行比對(duì),當(dāng)所述鑰匙編號(hào)與所述預(yù)設(shè)鑰匙匹配時(shí),使所述軟件運(yùn)行,當(dāng)所述運(yùn)行模塊判斷所述鑰匙編號(hào)與所述預(yù)設(shè)鑰匙不匹配,則注銷所述軟件的運(yùn)行。
[0009]于上述軟件保護(hù)系統(tǒng)中,述比對(duì)模塊包含一鑰匙產(chǎn)生模塊,若所述軟件初次激活時(shí),無(wú)法從所述鑰匙編號(hào)庫(kù)中取得對(duì)應(yīng)所述鎖頭編號(hào)的鑰匙編號(hào),則所述鑰匙產(chǎn)生模塊將產(chǎn)生一新增鑰匙編號(hào)。
[0010]于上述軟件保護(hù)系統(tǒng)中,所述比對(duì)模塊比對(duì)所述新增鑰匙編號(hào)是否已存在于所述鑰匙編號(hào)庫(kù)中,若所述新增鑰匙編號(hào)不存在于所述鑰匙編號(hào)庫(kù)中,則將所述新增鑰匙編號(hào)與所述鎖頭編號(hào)配對(duì)后傳送至所述運(yùn)行模塊,若所述新增鑰匙編號(hào)已存在于所述鑰匙編號(hào)庫(kù)中,則將再次產(chǎn)生另一新增鑰匙編號(hào),并再次比對(duì)所述另一新增鑰匙編號(hào)是否已存在于所述鑰匙編號(hào)庫(kù)中。
[0011]于上述軟件保護(hù)系統(tǒng)中,所述鑰匙編號(hào)庫(kù)、所述接收模塊以及所述比對(duì)模塊的運(yùn)行環(huán)境與所述軟件隔絕。
[0012]于上述軟件保護(hù)系統(tǒng)中,所述鑰匙編號(hào)庫(kù)、所述接收模塊以及所述比對(duì)模塊是在虛擬環(huán)境中運(yùn)行。
[0013]于上述軟件保護(hù)系統(tǒng)中,所述鑰匙產(chǎn)生模塊是透過(guò)⑶ID (Globally UniqueIdentifier)方式進(jìn)行所述新增鑰匙編號(hào)的編碼。
[0014]為了解決上述問題,本發(fā)明提供一種虛擬環(huán)境中的軟件保護(hù)方法,所述保護(hù)方法包括下列步驟:當(dāng)所述軟件激活時(shí),取得所述軟件于所述虛擬環(huán)境中相應(yīng)的一虛擬IP以及一路由器IP ;將所述虛擬IP及所述路由器IP組合為一鎖頭編號(hào);從一鑰匙編號(hào)庫(kù)加載具有復(fù)數(shù)組鑰匙編號(hào);比對(duì)所述鎖頭編號(hào)及所述復(fù)數(shù)組鑰匙編號(hào),取得對(duì)應(yīng)所述鎖頭編號(hào)的其中一鑰匙編號(hào);將所述鑰匙編號(hào)與內(nèi)建于所述軟件內(nèi)的一預(yù)設(shè)鑰匙編號(hào)進(jìn)行比對(duì);當(dāng)所述鑰匙編號(hào)與所述預(yù)設(shè)鑰匙編號(hào)匹配時(shí),使所述軟件運(yùn)行,當(dāng)所述鑰匙編號(hào)與所述預(yù)設(shè)鑰匙編號(hào)不匹配時(shí),注銷所述軟件運(yùn)行。
[0015]于上述軟件保護(hù)方法中,當(dāng)所述軟件初次激活時(shí),若無(wú)法于所述鑰匙編號(hào)庫(kù)中取得對(duì)應(yīng)所述鎖頭編號(hào)的鑰匙編號(hào),則產(chǎn)生一新增鑰匙編號(hào)。
[0016]于上述軟件保護(hù)方法中,比對(duì)所述新增鑰匙編號(hào)是否已存在于所述鑰匙編號(hào)庫(kù)中,若所述新增鑰匙編號(hào)不存在于所述鑰匙編號(hào)庫(kù)中,則將所述新增鑰匙編號(hào)與所述鎖頭編號(hào)進(jìn)行配對(duì),若所述新增鑰匙編號(hào)已存在于所述鑰匙編號(hào)庫(kù)中,則將再次產(chǎn)生另一新增鑰匙編號(hào),并再次比對(duì)所述另一新增鑰匙編號(hào)是否已存在于所述鑰匙編號(hào)庫(kù)中。
[0017]于上述軟件保護(hù)方法中,從一鑰匙編號(hào)庫(kù)加載具有復(fù)數(shù)組鑰匙編號(hào)的一鑰匙編號(hào)庫(kù)及比對(duì)所述鎖頭編號(hào)及所述復(fù)數(shù)組鑰匙編號(hào),取得對(duì)應(yīng)所述鎖頭編號(hào)的其中一鑰匙編號(hào)等步驟均于虛擬環(huán)境中執(zhí)行。
[0018]于上述軟件保護(hù)方法中,所述新增鑰匙編號(hào)是藉由⑶ID (Globally UniqueIdentifier)方式產(chǎn)生。
[0019]本發(fā)明的優(yōu)點(diǎn)在于,本發(fā)明的于虛擬環(huán)境中的軟件保護(hù)系統(tǒng)及軟件保護(hù)方法為利用軟件所在環(huán)境的虛擬IP及路由器IP的唯一性,使得使得虛擬環(huán)境內(nèi)的軟件在同一時(shí)間內(nèi)只能運(yùn)行一套;另外,若軟件移到虛擬環(huán)境以外的地方來(lái)使用,會(huì)因虛擬IP及路由器IP的改變,而找不到對(duì)應(yīng)的鎖頭編號(hào)而無(wú)法運(yùn)行。藉此防止位于虛擬環(huán)境中的軟件被盜用,被非法復(fù)制以及外流到虛擬環(huán)境以外的地方使用?!緦@綀D】
【附圖說(shuō)明】
[0020]圖1為繪示根據(jù)本發(fā)明第一實(shí)施例的于虛擬環(huán)境中的軟件保護(hù)系統(tǒng)的功能方塊圖;
[0021]圖2為繪示根據(jù)本發(fā)明第二實(shí)施例的于虛擬環(huán)境中的軟件保護(hù)系統(tǒng)的功能方塊圖;
[0022]圖3為繪示根據(jù)本發(fā)明實(shí)施例的虛擬環(huán)境中的軟件保護(hù)方法的步驟流程圖?!揪唧w實(shí)施方式】
[0023]以下結(jié)合附圖對(duì)本發(fā)明的虛擬環(huán)境中的軟件保護(hù)系統(tǒng)及軟件保護(hù)方法【具體實(shí)施方式】做詳細(xì)說(shuō)明。
[0024]請(qǐng)參閱圖1,圖1為繪示根據(jù)本發(fā)明第一實(shí)施例的于虛擬環(huán)境中的軟件保護(hù)系統(tǒng)的功能方塊圖。如圖1所示,于此實(shí)施例中,虛擬環(huán)境100由服務(wù)器主機(jī)110及計(jì)算機(jī)裝置120構(gòu)成,于此實(shí)施例中,提供予計(jì)算機(jī)系統(tǒng)200使用的軟件111是位于服務(wù)器主機(jī)110中,計(jì)算機(jī)系統(tǒng)200可藉由網(wǎng)絡(luò)直接于虛擬環(huán)境100中執(zhí)行軟件111。于此實(shí)施例中,計(jì)算機(jī)系統(tǒng)200可為用戶個(gè)人計(jì)算機(jī)、服務(wù)器、用以運(yùn)行網(wǎng)頁(yè)站臺(tái)的網(wǎng)頁(yè)服務(wù)器、虛擬環(huán)境的虛擬機(jī)、個(gè)人計(jì)算機(jī)的虛擬機(jī)、網(wǎng)頁(yè)服務(wù)器的虛擬機(jī)等,但不以此為限。由于虛擬環(huán)境100所使用的服務(wù)器主機(jī)110的運(yùn)算能力及速度均優(yōu)于計(jì)算機(jī)系統(tǒng)200,因此透過(guò)虛擬環(huán)境100來(lái)執(zhí)行軟件111,將可大幅減低軟件111的運(yùn)行時(shí)間。
[0025]由于軟件111存放于虛擬環(huán)境100中容易發(fā)生被盜用,被非法復(fù)制以及外流到云端環(huán)境以外的地方使用等情況,嚴(yán)重侵害軟件開發(fā)商的知識(shí)產(chǎn)權(quán)。因此,本發(fā)明提供的軟件保護(hù)系統(tǒng)300可確實(shí)的避免上述情事發(fā)生。
[0026]請(qǐng)?jiān)俅螀㈤喌贗圖,本發(fā)明的軟件保護(hù)系統(tǒng)300包含擷取模塊310、處理模塊320、鑰匙編號(hào)庫(kù)330、接收模塊340、比對(duì)模塊350以及運(yùn)行模塊360。于此實(shí)施例中,擷取模塊310、處理模塊320及運(yùn)行模塊360是設(shè)置于軟件111中,而鑰匙編號(hào)庫(kù)330、接收模塊340及比對(duì)模塊350是設(shè)置于計(jì)算機(jī)裝置120中。另外,接收模塊340及比對(duì)模塊350為一軟件鎖。
[0027]當(dāng)用戶于計(jì)算機(jī)系統(tǒng)200端透過(guò)網(wǎng)絡(luò)啟用軟件111時(shí)(即軟件111啟動(dòng)時(shí)),擷取模塊310將取得軟件111于虛擬環(huán)境100中相應(yīng)的一虛擬IP(Internet Protocol,因特網(wǎng)協(xié)議)以及一路由器IP,而處理模塊320則將擷取模塊310取得的虛擬IP及路由器IP組合為一個(gè)鎖頭編號(hào),例如,61.8.95.1-10.40.70.1。
[0028]所述鑰匙編號(hào)庫(kù)330存儲(chǔ)有復(fù)數(shù)組鑰匙編號(hào),例如4fae6bbbef674654b9d9701dc014aea5, 6e0570fd036f4c069a819d7ff9cf3aca等,而由處理模塊320產(chǎn)生的鎖頭編號(hào)將會(huì)傳送至接收模塊340,且鑰匙編號(hào)庫(kù)330所存儲(chǔ)的復(fù)數(shù)組鑰匙編號(hào)亦將加載到接收模塊340。比對(duì)模塊350用于將接收模塊340所接收的鎖頭編號(hào)以及所加載的復(fù)數(shù)組鑰匙編號(hào)進(jìn)行比對(duì),并依據(jù)鎖頭編號(hào)于復(fù)數(shù)組鑰匙編號(hào)中取得對(duì)應(yīng)的一鑰匙編號(hào)。當(dāng)比對(duì)模塊350取得與鎖頭編號(hào)對(duì)應(yīng)的鑰匙編號(hào)后,所述鑰匙編號(hào)將會(huì)被傳送至運(yùn)行模塊360。于此實(shí)施例中,軟件111內(nèi)建有一預(yù)設(shè)鑰匙,此時(shí)運(yùn)行模塊360會(huì)將鑰匙編號(hào)與預(yù)設(shè)鑰匙進(jìn)行比對(duì),當(dāng)鑰匙編號(hào)與預(yù)設(shè)鑰匙匹配時(shí),使軟件111運(yùn)行,當(dāng)運(yùn)行模塊360判斷鑰匙編號(hào)與預(yù)設(shè)鑰匙不匹配,則注銷軟件ill的運(yùn)行。
[0029]于此實(shí)施例中,鑰匙編號(hào)庫(kù)330、接收模塊340、比對(duì)模塊350的運(yùn)行環(huán)境與軟件111隔絕。且本發(fā)明是透過(guò)虛擬環(huán)境100中IP地址的唯一性與排他性的限制,以及鎖頭編號(hào)與鑰匙編號(hào)的配對(duì)機(jī)制,限制軟件111必須配對(duì)專屬的鎖頭編號(hào)與鑰匙編號(hào),進(jìn)而達(dá)到軟件111無(wú)法透過(guò)復(fù)制動(dòng)作來(lái)進(jìn)行非法使用。
[0030]請(qǐng)?jiān)俅螀㈤唸D1,于一些實(shí)施例中,比對(duì)模塊350中更設(shè)有一鑰匙產(chǎn)生模塊351,若軟件111初次激活時(shí),比對(duì)模塊350無(wú)法從鑰匙編號(hào)庫(kù)330中取得對(duì)應(yīng)鎖頭編號(hào)的鑰匙編號(hào),則鑰匙產(chǎn)生模塊351將產(chǎn)生一新增鑰匙編號(hào),于此實(shí)施例中,鑰匙產(chǎn)生模塊351是透過(guò)⑶ID(Globally Unique Identifier,全球唯一標(biāo)識(shí)符)方式進(jìn)行新增鑰匙編號(hào)的編碼,但不以此方法為限。
[0031]此時(shí)比對(duì)模塊350將再次比對(duì)新增鑰匙編號(hào)是否已存在于鑰匙編號(hào)庫(kù)330中,若新增鑰匙編號(hào)不存在于鑰匙編號(hào)庫(kù)330中,則將新增鑰匙編號(hào)與鎖頭編號(hào)配對(duì)后傳送至運(yùn)行模塊360,且同時(shí)將新配對(duì)的新增鑰匙編號(hào)與鎖頭編號(hào)存入鑰匙編號(hào)庫(kù)330中。
[0032]當(dāng)軟件開發(fā)商接收到新配對(duì)的新增鑰匙編號(hào)與鎖頭編號(hào),將會(huì)對(duì)此組新增鑰匙編號(hào)與鎖頭編號(hào)進(jìn)行授權(quán),并將所述新增鑰匙編號(hào)設(shè)定為所述軟件111的預(yù)設(shè)鑰匙,爾后激活軟件111時(shí),軟件111中的運(yùn)行模塊360將會(huì)依據(jù)由比對(duì)模塊傳送來(lái)的鑰匙編號(hào)是否匹配預(yù)設(shè)鑰匙,以決定是否使軟件111運(yùn)行。
[0033]而若比對(duì)模塊350將比對(duì)到新增鑰匙編號(hào)已存在于鑰匙編號(hào)庫(kù)330中,則所述鑰匙產(chǎn)生模塊351將再次產(chǎn)生另一新增鑰匙編號(hào),并再次比對(duì)另一新增鑰匙編號(hào)是否已存在于所述鑰匙編號(hào)庫(kù)中,直至產(chǎn)生出不存在于鑰匙編號(hào)庫(kù)330中的新增鑰匙編號(hào)為止。
[0034]利用軟件111所在環(huán)境的虛擬IP及路由器IP來(lái)產(chǎn)生鎖頭編號(hào),可限制在同一時(shí)間內(nèi),每個(gè)鎖頭編號(hào)只會(huì)有一對(duì)應(yīng)的鑰匙編號(hào)配對(duì),因而可使得虛擬環(huán)境100內(nèi)的軟件111在同一時(shí)間內(nèi)只能運(yùn)行一套。另外,若軟件111移到虛擬環(huán)境100以外的地方來(lái)使用,會(huì)因虛擬IP及路由器IP的改變,而找不到對(duì)應(yīng)的鎖頭編號(hào)而無(wú)法運(yùn)行。藉此防止位于虛擬環(huán)境100中的軟件111被盜用,被非法復(fù)制以及外流到虛擬環(huán)境100以外的地方使用。
[0035]請(qǐng)參閱圖2,圖2為繪示根據(jù)本發(fā)明第二實(shí)施例的于虛擬環(huán)境中的軟件保護(hù)系統(tǒng)的功能方塊圖。如圖2所示,軟件保護(hù)系統(tǒng)500中的擷取模塊510、處理模塊520及運(yùn)行模塊560位于軟件410中,而鑰匙編號(hào)庫(kù)530、接收模塊540及比對(duì)模塊350則位于虛擬環(huán)境100的計(jì)算機(jī)裝置120中。于此實(shí)施例中,使用者可預(yù)先將軟件410的執(zhí)行程序部分(含擷取模塊510、處理模塊520及運(yùn)行模塊560)下載至計(jì)算機(jī)系統(tǒng)200中,而當(dāng)使用者激活軟件410時(shí),軟件保護(hù)系統(tǒng)500將運(yùn)行,運(yùn)行模式如前一實(shí)施例所述,故在此不再贅述。必須強(qiáng)調(diào)的是,于此實(shí)施例中,鑰匙編號(hào)庫(kù)530、接收模塊540、比對(duì)模塊550的運(yùn)行環(huán)境與軟件410隔絕,藉此以達(dá)到避免軟件410于虛擬環(huán)境100中被盜用,被非法復(fù)制以及外流到虛擬環(huán)境以外的地方使用。
[0036]請(qǐng)參閱圖3,圖3為為繪示根據(jù)本發(fā)明實(shí)施例的虛擬環(huán)境中的軟件保護(hù)方法的步驟流程圖。如圖3所示,虛擬環(huán)境中的軟件保護(hù)方法可包含下列步驟:
[0037]于步驟SI中,當(dāng)軟件激活時(shí),取得軟件于虛擬環(huán)境中相應(yīng)的虛擬IP以及路由器IP。于一些實(shí)施例中,可于軟件中設(shè)置一擷取模塊,當(dāng)軟件激活時(shí),透過(guò)擷取模塊取得軟件于虛擬環(huán)境中相應(yīng)的虛擬IP以及路由器IP。[0038]于步驟S2中,將虛擬IP及路由器IP組合為一鎖頭編號(hào)。于一些實(shí)施例中,可于軟件中設(shè)置一處理模塊,藉由處理模塊將虛擬IP及路由器IP組合為鎖頭編號(hào)。于此實(shí)施例中,鎖頭編號(hào)可為61.8.95.1-10.40.70.1,但不以此形式為限。
[0039]于步驟S3中,從一鑰匙編號(hào)庫(kù)加載具有復(fù)數(shù)組鑰匙編號(hào)。
[0040]于步驟S4中,比對(duì)鎖頭編號(hào)及復(fù)數(shù)組鑰匙編號(hào),取得對(duì)應(yīng)鎖頭編號(hào)的其中一鑰匙編號(hào)。于一些實(shí)施例中,可于虛擬環(huán)境內(nèi)的一計(jì)算機(jī)裝置中設(shè)置一比對(duì)模塊,并藉由比對(duì)模塊比對(duì)鎖頭編號(hào)及復(fù)數(shù)組鑰匙編號(hào),取得對(duì)應(yīng)鎖頭編號(hào)的其中一鑰匙編號(hào)。
[0041]于此實(shí)施例中,當(dāng)軟件初次激活時(shí),若無(wú)法于鑰匙編號(hào)庫(kù)中取得對(duì)應(yīng)鎖頭編號(hào)的鑰匙編號(hào),則將產(chǎn)生一新增鑰匙編號(hào)。而新增鑰匙編號(hào)將被比對(duì)是否已存在于鑰匙編號(hào)庫(kù)中,若新增鑰匙編號(hào)不存在于鑰匙編號(hào)庫(kù)中,則將新增鑰匙編號(hào)與鎖頭編號(hào)進(jìn)行配對(duì),并存入鑰匙編號(hào)庫(kù)中。若新增鑰匙編號(hào)已存在于鑰匙編號(hào)庫(kù)中,則將再次產(chǎn)生另一新增鑰匙編號(hào),并再次比對(duì)另一新增鑰匙編號(hào)是否已存在于鑰匙編號(hào)庫(kù)中。于此實(shí)施例中,所述新增鑰匙編號(hào)是藉由⑶ID方式產(chǎn)生。
[0042]于步驟S5中,將鑰匙編號(hào)與內(nèi)建于軟件內(nèi)的一預(yù)設(shè)鑰匙編號(hào)進(jìn)行比對(duì)。
[0043]于步驟S6中,當(dāng)鑰匙編號(hào)與預(yù)設(shè)鑰匙編號(hào)匹配時(shí),使軟件運(yùn)行,當(dāng)鑰匙編號(hào)與預(yù)設(shè)鑰匙編號(hào)不匹配時(shí),注銷軟件運(yùn)行。于一些實(shí)施例中,步驟S5及步驟S6可藉由于軟件中設(shè)置一運(yùn)行模塊以進(jìn)行軟件的準(zhǔn)許運(yùn)行與否。
[0044]本發(fā)明的軟件保護(hù)方法的重點(diǎn)在于,從一鑰匙編號(hào)庫(kù)加載具有復(fù)數(shù)組鑰匙編號(hào)的一鑰匙編號(hào)庫(kù)及比對(duì)鎖頭編號(hào)及所述復(fù)數(shù)組鑰匙編號(hào),取得對(duì)應(yīng)鎖頭編號(hào)的其中一鑰匙編號(hào)等步驟均于虛擬環(huán)境中執(zhí)行。
[0045]利用軟件所在環(huán)境的虛擬IP及路由器IP來(lái)產(chǎn)生鎖頭編號(hào),可限制在同一時(shí)間內(nèi),每個(gè)鎖頭編號(hào)只會(huì)有一對(duì)應(yīng)的鑰匙編號(hào)配對(duì),因而可使得虛擬環(huán)境內(nèi)的軟件在同一時(shí)間內(nèi)只能運(yùn)行一套。另外,若軟件移到虛擬環(huán)境以外的地方來(lái)使用,會(huì)因虛擬IP及路由器IP的改變,而找不到對(duì)應(yīng)的鎖頭編號(hào)而無(wú)法運(yùn)行。藉此防止位于虛擬環(huán)境中的軟件被盜用,被非法復(fù)制以及外流到虛擬環(huán)境以外的地方使用。
[0046]綜上所述,本發(fā)明的于虛擬環(huán)境中的軟件保護(hù)系統(tǒng)及軟件保護(hù)方法為利用軟件所在環(huán)境的虛擬IP及路由器IP的唯一性,使得使得虛擬環(huán)境內(nèi)的軟件在同一時(shí)間內(nèi)只能運(yùn)行一套;另外,若軟件移到虛擬環(huán)境以外的地方來(lái)使用,會(huì)因虛擬IP及路由器IP的改變,而找不到對(duì)應(yīng)的鎖頭編號(hào)而無(wú)法運(yùn)行。藉此防止位于虛擬環(huán)境中的軟件被盜用,被非法復(fù)制以及外流到虛擬環(huán)境以外的地方使用。
[0047]對(duì)熟悉此領(lǐng)域技藝者,本發(fā)明雖以較佳實(shí)例闡明如上,然其并非用以限定本發(fā)明的精神。在不脫離本發(fā)明的精神與范圍內(nèi)所作的修改與類似的配置,均應(yīng)包含在權(quán)利要求內(nèi),此范圍應(yīng)覆蓋所有類似修改與類似結(jié)構(gòu),且應(yīng)做最寬廣的詮釋。
【權(quán)利要求】
1.一種于虛擬環(huán)境中的軟件保護(hù)系統(tǒng),用以保護(hù)位于虛擬環(huán)境中的軟件,所述軟件保護(hù)系統(tǒng)包括: 一擷取模塊,當(dāng)所述軟件激活時(shí),取得所述軟件于所述虛擬環(huán)境中相應(yīng)的一虛擬IP (Internet Protocol)以及一路由器 IP ; 一處理模塊,用以將所述擷取模塊取得的所述虛擬IP及所述路由器IP組合為一鎖頭編號(hào); 一鑰匙編號(hào)庫(kù),存儲(chǔ)有復(fù)數(shù)組鑰匙編號(hào); 一接收模塊,用于接收由所述處理模塊產(chǎn)生的所述鎖頭編號(hào),且加載所述鑰匙編號(hào)庫(kù)中的所述復(fù)數(shù)組鑰匙編號(hào); 一比對(duì)模塊,用于將所述接收模塊所接收的所述鎖頭編號(hào)以及所加載的所述復(fù)數(shù)組鑰匙編號(hào)進(jìn)行比對(duì),并依據(jù)所述鎖頭編號(hào)于所述復(fù)數(shù)組鑰匙編號(hào)中,取得對(duì)應(yīng)的一鑰匙編號(hào);以及 一運(yùn)行模塊,將所述比對(duì)模塊取得的所述鑰匙編號(hào)與一內(nèi)建于所述軟件中的預(yù)設(shè)鑰匙進(jìn)行比對(duì),當(dāng)所述鑰匙編號(hào)與所述預(yù)設(shè)鑰匙匹配時(shí),使所述軟件運(yùn)行,當(dāng)所述運(yùn)行模塊判斷所述鑰匙編號(hào)與所述預(yù)設(shè)鑰匙不匹配,則注銷所述軟件的運(yùn)行。
2.根據(jù)權(quán)利要求1所述的軟件保護(hù)系統(tǒng),其特征在于,所述比對(duì)模塊包含一鑰匙產(chǎn)生模塊,若所述軟件初 次激活時(shí),無(wú)法從所述鑰匙編號(hào)庫(kù)中取得對(duì)應(yīng)所述鎖頭編號(hào)的鑰匙編號(hào),則所述鑰匙產(chǎn)生模塊將產(chǎn)生一新增鑰匙編號(hào)。
3.根據(jù)權(quán)利要求2所述的軟件保護(hù)系統(tǒng),其特征在于,所述比對(duì)模塊比對(duì)所述新增鑰匙編號(hào)是否已存在于所述鑰匙編號(hào)庫(kù)中,若所述新增鑰匙編號(hào)不存在于所述鑰匙編號(hào)庫(kù)中,則將所述新增鑰匙編號(hào)與所述鎖頭編號(hào)配對(duì)后傳送至所述運(yùn)行模塊,若所述新增鑰匙編號(hào)已存在于所述鑰匙編號(hào)庫(kù)中,則將再次產(chǎn)生另一新增鑰匙編號(hào),并再次比對(duì)所述另一新增鑰匙編號(hào)是否已存在于所述鑰匙編號(hào)庫(kù)中。
4.根據(jù)權(quán)利要求3所述的軟件保護(hù)系統(tǒng),其特征在于,所述鑰匙編號(hào)庫(kù)、所述接收模塊以及所述比對(duì)模塊的運(yùn)行環(huán)境與所述軟件隔絕。
5.根據(jù)權(quán)利要求4所述的軟件保護(hù)系統(tǒng),其特征在于,所述鑰匙編號(hào)庫(kù)、所述接收模塊以及所述比對(duì)模塊是在虛擬環(huán)境中運(yùn)行。
6.根據(jù)權(quán)利要求2所述的軟件保護(hù)系統(tǒng),其特征在于,所述鑰匙產(chǎn)生模塊是透過(guò)⑶ID (GlobalIy Unique Identifier)方式進(jìn)行所述新增鑰匙編號(hào)的編碼。
7.—種虛擬環(huán)境中的軟件保護(hù)方法,所述保護(hù)方法包括下列步驟: 當(dāng)所述軟件激活時(shí),取得所述軟件于所述虛擬環(huán)境中相應(yīng)的一虛擬IP以及一路由器IP ; 將所述虛擬IP及所述路由器IP組合為一鎖頭編號(hào); 從一鑰匙編號(hào)庫(kù)加載具有復(fù)數(shù)組鑰匙編號(hào); 比對(duì)所述鎖頭編號(hào)及所述復(fù)數(shù)組鑰匙編號(hào),取得對(duì)應(yīng)所述鎖頭編號(hào)的其中一鑰匙編號(hào); 將所述鑰匙編號(hào)與內(nèi)建于所述軟件內(nèi)的一預(yù)設(shè)鑰匙編號(hào)進(jìn)行比對(duì);以及當(dāng)所述鑰匙編號(hào)與所述預(yù)設(shè)鑰匙編號(hào)匹配時(shí),使所述軟件運(yùn)行,當(dāng)所述鑰匙編號(hào)與所述預(yù)設(shè)鑰匙編號(hào)不匹配時(shí),注銷所述軟件運(yùn)行。
8.根據(jù)權(quán)利要求6所述的保護(hù)方法,其特征在于,當(dāng)所述軟件初次激活時(shí),若無(wú)法于所述鑰匙編號(hào)庫(kù)中取得對(duì)應(yīng)所述鎖頭編號(hào)的鑰匙編號(hào),則產(chǎn)生一新增鑰匙編號(hào)。
9.根據(jù)權(quán)利要求7所述的保護(hù)方法,其特征在于,比對(duì)所述新增鑰匙編號(hào)是否已存在于所述鑰匙編號(hào)庫(kù)中,若所述新增鑰匙編號(hào)不存在于所述鑰匙編號(hào)庫(kù)中,則將所述新增鑰匙編號(hào)與所述鎖頭編號(hào)進(jìn)行配對(duì),若所述新增鑰匙編號(hào)已存在于所述鑰匙編號(hào)庫(kù)中,則將再次產(chǎn)生另一新增鑰匙編號(hào),并再次比對(duì)所述另一新增鑰匙編號(hào)是否已存在于所述鑰匙編號(hào)庫(kù)中。
10.根據(jù)權(quán)利要求7所述的保護(hù)方法,其特征在于,從一鑰匙編號(hào)庫(kù)加載具有復(fù)數(shù)組鑰匙編號(hào)的一鑰匙編號(hào)庫(kù)及比對(duì)所述鎖頭編號(hào)及所述復(fù)數(shù)組鑰匙編號(hào),取得對(duì)應(yīng)所述鎖頭編號(hào)的其中一鑰匙編號(hào)等步驟均于虛擬環(huán)境中執(zhí)行。
11.根據(jù)權(quán)利要求7所述的保護(hù)方法,其特征在于,所述新增鑰匙編號(hào)是藉由GUID(Globally Unique Identifier)方式產(chǎn)生。
【文檔編號(hào)】G06F21/12GK103902856SQ201210576639
【公開日】2014年7月2日 申請(qǐng)日期:2012年12月26日 優(yōu)先權(quán)日:2012年12月26日
【發(fā)明者】許旭正 申請(qǐng)人:鼎捷軟件股份有限公司