專利名稱:一種基于互聯(lián)網(wǎng)實(shí)時(shí)監(jiān)視軟件運(yùn)行總量的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于互聯(lián)網(wǎng)實(shí)時(shí)監(jiān)視軟件運(yùn)行總量的方法。
背景技術(shù):
現(xiàn)代服務(wù)體系的一個(gè)重要特征就是分工合作。隨著應(yīng)用的完善,業(yè)務(wù)的不斷拓展, 一個(gè)完整的應(yīng)用服務(wù)提供系統(tǒng)會(huì)越來越龐大,單靠一個(gè)獨(dú)立的運(yùn)營服務(wù)商是很難做好系統(tǒng) 運(yùn)營的,往往需要跟第三方合作運(yùn)營方能實(shí)現(xiàn)。這樣,就會(huì)造成應(yīng)用系統(tǒng)資源(包括數(shù)據(jù)、 應(yīng)用程序等)的外泄。如果系統(tǒng)沒有很好的防拷貝、防盜用技術(shù),就會(huì)不可避免地出現(xiàn)在合 法范圍之外該應(yīng)用系統(tǒng)資源被隨意重復(fù)使用的情形,必然會(huì)對(duì)應(yīng)用服務(wù)提供系統(tǒng)的發(fā)布廠 商造成一定的經(jīng)濟(jì)損失。
發(fā)明內(nèi)容
本發(fā)明目的在于提供一種基于互聯(lián)網(wǎng)實(shí)時(shí)監(jiān)視軟件運(yùn)行總量的方法,能有效地控 制軟件的運(yùn)行總量,以防止出現(xiàn)第三方合作商將應(yīng)用系統(tǒng)資源外泄以及應(yīng)用系統(tǒng)資源被隨 意重復(fù)使用的情況。一種基于互聯(lián)網(wǎng)實(shí)時(shí)監(jiān)視軟件運(yùn)行總量的方法,包括一總中心和至少一個(gè)分中 心,該總中心設(shè)置一與各分中心實(shí)時(shí)保持通信聯(lián)絡(luò)的驗(yàn)證服務(wù)器;在各分中心的計(jì)算機(jī)上安裝應(yīng)用程序時(shí),通過安裝包里的一個(gè)附加執(zhí)行程序,收 集運(yùn)行該安裝包的計(jì)算機(jī)的機(jī)器碼,并隨機(jī)生成一個(gè)密鑰,安裝包利用這個(gè)密鑰對(duì)包括分 中心標(biāo)識(shí)、密鑰生成時(shí)間及計(jì)算機(jī)的機(jī)器碼的數(shù)據(jù)進(jìn)行加密,再將這些加密后的數(shù)據(jù)連同 密鑰一起,采用公鑰進(jìn)行二次加密生成一個(gè)密鑰文件;最后安裝包將生成的密鑰文件分別 復(fù)制存儲(chǔ)重命名為多種不同擴(kuò)展名的文件并設(shè)置隱藏屬性;然后,應(yīng)用程序初始啟動(dòng)時(shí)進(jìn)行自身校驗(yàn),首先應(yīng)用程序判斷本地隱藏的多處密 鑰文件是否都存在,若出現(xiàn)文件缺少的情況,則判斷應(yīng)用程序遭到非法移植;如果都存在, 則分別采用公鑰解密該多個(gè)密鑰文件,提取該文件中各自的分中心標(biāo)識(shí)、密鑰生成時(shí)間和 機(jī)器碼的信息并進(jìn)行比較,如果不一致,則判斷應(yīng)用程序遭到非法移植;同時(shí)將本地時(shí)間和 密鑰生成時(shí)間進(jìn)行判斷,如果超過預(yù)設(shè)值,則判斷該計(jì)算機(jī)惡意斷開與總中心驗(yàn)證服務(wù)器 之間的聯(lián)系,停止運(yùn)行應(yīng)用程序;最后,分中心的各個(gè)應(yīng)用服務(wù)器分別定時(shí)讀取所在計(jì)算機(jī)上的多個(gè)隱藏的密鑰文 件,并發(fā)送給總中心的驗(yàn)證服務(wù)器,該驗(yàn)證服務(wù)器根據(jù)收到的密鑰文件提取分中心標(biāo)識(shí)和 機(jī)器碼信息,計(jì)算出各分中心運(yùn)行中的計(jì)算機(jī)的總量,如果數(shù)量大于規(guī)定的合法數(shù)量值,又 或所在的網(wǎng)絡(luò)地址IP不合法,則驗(yàn)證服務(wù)器回傳一個(gè)失敗信息給對(duì)應(yīng)的分中心內(nèi)全部的 應(yīng)用服務(wù)器,則該各個(gè)應(yīng)用服務(wù)器在數(shù)據(jù)傳輸時(shí)進(jìn)行不規(guī)律的丟棄數(shù)據(jù)包;若分中心運(yùn)行 的計(jì)算機(jī)總量在規(guī)定的數(shù)值范圍內(nèi),則驗(yàn)證服務(wù)器根據(jù)當(dāng)前時(shí)間重新生成密鑰文件并發(fā)送 回對(duì)應(yīng)的分中心內(nèi)全部的應(yīng)用服務(wù)器,該各個(gè)應(yīng)用服務(wù)器分別更新所在計(jì)算機(jī)的多處隱藏 的密鑰文件。
所述的多處隱藏的密鑰文件為三處,該密鑰文件的擴(kuò)展名分別為.rom文件、.dll 文件和.pnf文件。所述的密鑰文件分別復(fù)制重命名為多種不同擴(kuò)展名的文件到SyStem32目錄和 inf目錄下。所述的機(jī)器碼包括硬盤序列號(hào)、網(wǎng)卡序列號(hào)以及CPU序列號(hào)的信息。首先,本發(fā)明在分中心的計(jì)算機(jī)上安裝應(yīng)用程序時(shí)生成初始密鑰文件,并多處隱 藏以不同擴(kuò)展名存在的密鑰文件,所述的密鑰文件包含分中心標(biāo)識(shí)、密鑰生成時(shí)間和安裝 該應(yīng)用程序的計(jì)算機(jī)的機(jī)器碼信息;接著,應(yīng)用程序初始啟動(dòng)時(shí)進(jìn)行自身校驗(yàn),該多處隱藏 的密鑰文件若出現(xiàn)數(shù)量短少的情形,則判斷該應(yīng)用程序已被非法移植;若該多處隱藏的密 鑰文件數(shù)量正確,則解密該多個(gè)密鑰文件,分別提取和比較該密鑰文件中有關(guān)分中心標(biāo)識(shí)、 密鑰生成時(shí)間和安裝該應(yīng)用程序的計(jì)算機(jī)的機(jī)器碼的信息,若信息不一致,則判斷該應(yīng)用 程序已被非法移植;最后是總中心的驗(yàn)證服務(wù)器通過互聯(lián)網(wǎng)對(duì)各分中心的計(jì)算機(jī)的運(yùn)行總 量進(jìn)行監(jiān)視,實(shí)現(xiàn)軟件運(yùn)行總量的控制,該總中心的驗(yàn)證服務(wù)器定時(shí)收集和更新各分中心 內(nèi)各個(gè)計(jì)算機(jī)的本地密鑰文件,通過提取密鑰文件中有關(guān)分中心標(biāo)識(shí)、密鑰生成時(shí)間和安 裝該應(yīng)用程序的計(jì)算機(jī)的機(jī)器碼信息,計(jì)算出各分中心運(yùn)行中的計(jì)算機(jī)總量,以及將本地 時(shí)間與密鑰生成時(shí)間進(jìn)行比較,判斷分中心的各個(gè)計(jì)算機(jī)是否實(shí)時(shí)在線,從而達(dá)致有效控 制軟件運(yùn)行總量之目的。
圖1為本發(fā)明中應(yīng)用服務(wù)提供系統(tǒng)的架構(gòu)示意圖;圖2為本發(fā)明中密鑰文件的格式表;圖3為本發(fā)明中應(yīng)用程序安裝流程示意圖。以下結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳述。
具體實(shí)施例方式如圖1所示,為一種基于互聯(lián)網(wǎng)的應(yīng)用服務(wù)提供系統(tǒng),該系統(tǒng)在本實(shí)施例中至少 由兩個(gè)中心構(gòu)成,即總中心10和分中心20,其中總中心10代表了應(yīng)用服務(wù)提供商和開發(fā) 商,主要包括一驗(yàn)證服務(wù)器11 ;該分中心20代表了第三方合作商運(yùn)營的系統(tǒng),分中心20包 括提供服務(wù)的應(yīng)用服務(wù)器22、23以及系統(tǒng)平臺(tái)軟件設(shè)備路由管理服務(wù)器24,還有一負(fù)責(zé)和 外部通信用的通信前置機(jī)21,該總中心10和分中心20擁有各自的局域網(wǎng)。所述的分中心 20可以一個(gè)及一個(gè)以上,該應(yīng)用服務(wù)器數(shù)量可以根據(jù)需要設(shè)置,不局限兩個(gè)。每個(gè)分中心 20都會(huì)有一個(gè)通信前置機(jī)21,該通信前置機(jī)21在啟動(dòng)時(shí),會(huì)登錄部署在遠(yuǎn)程總中心10的 授權(quán)驗(yàn)證服務(wù)器11,并且一直與驗(yàn)證服務(wù)器11保持順暢通信。本發(fā)明一種基于互聯(lián)網(wǎng)實(shí)時(shí)監(jiān)視軟件運(yùn)行總量的方法,首先,在分中心20的計(jì)算 機(jī)上安裝應(yīng)用程序,安裝流程如圖3所示。步驟101,安裝應(yīng)用程序的時(shí)候,通過安裝包里的一個(gè)附加執(zhí)行程序,收集運(yùn)行該 安裝包的計(jì)算機(jī)的機(jī)器碼,該機(jī)器碼至少包括硬盤序列號(hào)、網(wǎng)卡序列號(hào)以及CPU序列號(hào)等 信息,并隨機(jī)生成一個(gè)密鑰,安裝包利用這個(gè)密鑰對(duì)包括分中心標(biāo)識(shí)、密鑰生成時(shí)間及計(jì)算 機(jī)的機(jī)器碼等數(shù)據(jù)進(jìn)行加密,再將這些加密后的數(shù)據(jù)連同密鑰一起,采用公鑰進(jìn)行二次加密生成一個(gè)密鑰文件。本實(shí)施例中的密鑰文件格式如圖2所示,該密鑰文件格式中包括分中心標(biāo)識(shí)(該 分中心標(biāo)識(shí)為唯一標(biāo)識(shí))、密鑰生成時(shí)間、安裝有該軟件的計(jì)算機(jī)的機(jī)器碼(包含硬盤序列 號(hào)、網(wǎng)卡序列號(hào)以及CPU序列號(hào))。步驟102,安裝包在安裝后期,將步驟101生成的密鑰文件分別復(fù)制重命名為三種 不同格式的文件,分別為.rom文件、.dll文件和.pnf文件。步驟103,將步驟102生成的三個(gè)不同格式的文件,分別復(fù)制到SyStem32目錄和 inf目錄下,并設(shè)置隱藏屬性。然后,應(yīng)用程序初始啟動(dòng)時(shí)進(jìn)行自身校驗(yàn),以防出現(xiàn)應(yīng)用程序被非法移植的情 形應(yīng)用程序初始啟動(dòng)后,判斷三處隱藏的密鑰文件是否都存在,如果出現(xiàn)文件缺少 的情況,則認(rèn)為應(yīng)用程序遭到非法移植,要求重新安裝程序;如果都存在,則分別采用公鑰 解密三個(gè)密鑰文件,取出三個(gè)文件中各自的中心標(biāo)識(shí)、生成時(shí)間和機(jī)器碼進(jìn)行比較,如果不 一致,則認(rèn)為應(yīng)用程序被非法移植,要求重新安裝程序;同時(shí)將本地時(shí)間和密鑰生成時(shí)間進(jìn) 行判斷,如果超過預(yù)設(shè)值,表示該計(jì)算機(jī)惡意斷開與總中心驗(yàn)證服務(wù)器11之間的聯(lián)系,則 停止運(yùn)行應(yīng)用程序。最后,總中心10的驗(yàn)證服務(wù)器11通過互聯(lián)網(wǎng)對(duì)分中心20計(jì)算機(jī)的運(yùn)行總量進(jìn)行 實(shí)時(shí)監(jiān)視,進(jìn)而控制軟件的運(yùn)行總量,具體包括以下幾個(gè)步驟步驟201、分中心20的應(yīng)用服務(wù)器22、23分別定時(shí)讀取所在計(jì)算機(jī)上的三個(gè)隱藏 的密鑰文件,并發(fā)送給路由管理服務(wù)器24 ;步驟202、該路由管理服務(wù)器24每隔一定時(shí)間搜集所述的三種隱藏的密鑰文件發(fā) 送給通信前置機(jī)21,該通信前置機(jī)21將收到的信息發(fā)往驗(yàn)證服務(wù)器11 ;步驟203、該驗(yàn)證服務(wù)器11根據(jù)收到密鑰文件,提取有關(guān)分中心標(biāo)識(shí)、密鑰生成時(shí) 間和安裝有應(yīng)用程序的計(jì)算機(jī)的機(jī)器碼等信息,計(jì)算出分中心20內(nèi)運(yùn)行中的計(jì)算機(jī)的總 量,如果數(shù)量大于規(guī)定的合法數(shù)量值,又或所在的網(wǎng)絡(luò)地址IP不合法,則執(zhí)行步驟205,否 則執(zhí)行步驟204 ;步驟204、該驗(yàn)證服務(wù)器11根據(jù)當(dāng)前時(shí)間重新生成密鑰文件并發(fā)送給通信前置機(jī) 21,經(jīng)由該通信前置機(jī)21轉(zhuǎn)發(fā)給路由管理服務(wù)器24后,再由該路由管理服務(wù)器24轉(zhuǎn)發(fā)給 分中心20內(nèi)全部的應(yīng)用服務(wù)器22、23,該各個(gè)應(yīng)用服務(wù)器分別負(fù)責(zé)更新所在計(jì)算機(jī)的三處 密鑰文件;步驟205、該驗(yàn)證服務(wù)器11回傳一個(gè)失敗信息給通信前置機(jī)21,經(jīng)路由管理服務(wù) 器24轉(zhuǎn)發(fā)給對(duì)應(yīng)分中心20內(nèi)全部的應(yīng)用服務(wù)器22、23,該各個(gè)應(yīng)用服務(wù)器22、23在數(shù)據(jù)傳 輸時(shí)進(jìn)行不規(guī)律的丟棄數(shù)據(jù)包。本發(fā)明的重點(diǎn)在于首先,在分中心的計(jì)算機(jī)上安裝應(yīng)用程序時(shí)生成初始密鑰文 件,并多處隱藏以不同擴(kuò)展名存在的密鑰文件,所述的密鑰文件包含分中心標(biāo)識(shí)、密鑰生成 時(shí)間和安裝該應(yīng)用程序的計(jì)算機(jī)的機(jī)器碼信息;接著,應(yīng)用程序初始啟動(dòng)時(shí)進(jìn)行自身校驗(yàn), 若多處隱藏的密鑰文件出現(xiàn)數(shù)量短少的情形,則判斷該應(yīng)用程序已被非法移植;若該多處 隱藏的密鑰文件數(shù)量正確,則解密該多個(gè)密鑰文件,分別提取和比較該密鑰文件中有關(guān)分 中心標(biāo)識(shí)、密鑰生成時(shí)間和安裝該應(yīng)用程序的計(jì)算機(jī)的機(jī)器碼的信息,若信息不一致,則判斷該應(yīng)用程序已被非法移植;最后是總中心的驗(yàn)證服務(wù)器通過互聯(lián)網(wǎng)對(duì)各分中心的計(jì)算機(jī) 的運(yùn)行總量進(jìn)行監(jiān)視,實(shí)現(xiàn)軟件運(yùn)行總量的控制,該總中心的驗(yàn)證服務(wù)器定時(shí)收集和更新 各分中心內(nèi)各個(gè)計(jì)算機(jī)的本地密鑰文件,通過提取密鑰文件中有關(guān)分中心標(biāo)識(shí)、密鑰生成 時(shí)間和安裝該應(yīng)用程序的計(jì)算機(jī)的機(jī)器碼信息,計(jì)算出各分中心運(yùn)行中的計(jì)算機(jī)總量,以 及將本地時(shí)間與密鑰生成時(shí)間進(jìn)行比較,判斷分中心的各個(gè)計(jì)算機(jī)是否實(shí)時(shí)在線,從而達(dá) 致有效控制軟件運(yùn)行總量之目的。
權(quán)利要求
一種基于互聯(lián)網(wǎng)實(shí)時(shí)監(jiān)視軟件運(yùn)行總量的方法,其特征在于包括一總中心和至少一個(gè)分中心,該總中心設(shè)置一與各分中心實(shí)時(shí)保持通信聯(lián)絡(luò)的驗(yàn)證服務(wù)器;在各分中心的計(jì)算機(jī)上安裝應(yīng)用程序時(shí),通過安裝包里的一個(gè)附加執(zhí)行程序,收集運(yùn)行該安裝包的計(jì)算機(jī)的機(jī)器碼,并隨機(jī)生成一個(gè)密鑰,安裝包利用這個(gè)密鑰對(duì)包括分中心標(biāo)識(shí)、密鑰生成時(shí)間及計(jì)算機(jī)的機(jī)器碼的數(shù)據(jù)進(jìn)行加密,再將這些加密后的數(shù)據(jù)連同密鑰一起,采用公鑰進(jìn)行二次加密生成一個(gè)密鑰文件;最后安裝包將生成的密鑰文件分別復(fù)制存儲(chǔ)重命名為多種不同擴(kuò)展名的文件并設(shè)置隱藏屬性;然后,應(yīng)用程序初始啟動(dòng)時(shí)進(jìn)行自身校驗(yàn),首先應(yīng)用程序判斷本地隱藏的多處密鑰文件是否都存在,若出現(xiàn)文件缺少的情況,則判斷應(yīng)用程序遭到非法移植;如果都存在,則分別采用公鑰解密該多個(gè)密鑰文件,提取該文件中各自的分中心標(biāo)識(shí)、密鑰生成時(shí)間和機(jī)器碼的信息并進(jìn)行比較,如果不一致,則判斷應(yīng)用程序遭到非法移植;同時(shí)將本地時(shí)間和密鑰生成時(shí)間進(jìn)行判斷,如果超過預(yù)設(shè)值,則判斷該計(jì)算機(jī)惡意斷開與總中心驗(yàn)證服務(wù)器之間的聯(lián)系,停止運(yùn)行應(yīng)用程序;最后,分中心的各個(gè)應(yīng)用服務(wù)器分別定時(shí)讀取所在計(jì)算機(jī)上的多個(gè)隱藏的密鑰文件,并發(fā)送給總中心的驗(yàn)證服務(wù)器,該驗(yàn)證服務(wù)器根據(jù)收到的密鑰文件提取分中心標(biāo)識(shí)和機(jī)器碼信息,計(jì)算出各分中心運(yùn)行中的計(jì)算機(jī)的總量,如果數(shù)量大于規(guī)定的合法數(shù)量值,又或所在的網(wǎng)絡(luò)地址IP不合法,則驗(yàn)證服務(wù)器回傳一個(gè)失敗信息給對(duì)應(yīng)的分中心內(nèi)全部的應(yīng)用服務(wù)器,則該各個(gè)應(yīng)用服務(wù)器在數(shù)據(jù)傳輸時(shí)進(jìn)行不規(guī)律的丟棄數(shù)據(jù)包;若分中心運(yùn)行的計(jì)算機(jī)總量在規(guī)定的數(shù)值范圍內(nèi),則驗(yàn)證服務(wù)器根據(jù)當(dāng)前時(shí)間重新生成密鑰文件并發(fā)送回對(duì)應(yīng)的分中心內(nèi)全部的應(yīng)用服務(wù)器,該各個(gè)應(yīng)用服務(wù)器分別更新所在計(jì)算機(jī)的多處隱藏的密鑰文件。
2.根據(jù)權(quán)利要求1所述的一種基于互聯(lián)網(wǎng)實(shí)時(shí)監(jiān)視軟件運(yùn)行總量的方法,其特征在 于所述的多處隱藏的密鑰文件為三處,該密鑰文件的擴(kuò)展名分別為.rom文件、.dll文件 和.pnf文件。
3.根據(jù)權(quán)利要求1所述的一種基于互聯(lián)網(wǎng)實(shí)時(shí)監(jiān)視軟件運(yùn)行總量的方法,其特征在 于所述的密鑰文件分別復(fù)制重命名為多種不同擴(kuò)展名的文件到SyStem32目錄和inf目錄 下。
4.根據(jù)權(quán)利要求1所述的一種基于互聯(lián)網(wǎng)實(shí)時(shí)監(jiān)視軟件運(yùn)行總量的方法,其特征在 于所述的機(jī)器碼包括硬盤序列號(hào)、網(wǎng)卡序列號(hào)以及CPU序列號(hào)的信息。
全文摘要
本發(fā)明一種基于互聯(lián)網(wǎng)實(shí)時(shí)監(jiān)視軟件運(yùn)行總量的方法,在分中心的計(jì)算機(jī)上安裝應(yīng)用程序時(shí)生成初始密鑰文件,并多處隱藏以不同擴(kuò)展名存在的密鑰文件,接著,應(yīng)用程序初始啟動(dòng)時(shí)進(jìn)行自身校驗(yàn),若多處隱藏的密鑰文件出現(xiàn)數(shù)量短少的情形,或者密鑰文件數(shù)量正確,但該密鑰文件中有關(guān)信息不一致,則判斷該應(yīng)用程序已被非法移植;最后,總中心的驗(yàn)證服務(wù)器通過互聯(lián)網(wǎng)定時(shí)收集和更新各分中心內(nèi)各個(gè)計(jì)算機(jī)的本地密鑰文件,對(duì)各分中心的計(jì)算機(jī)的運(yùn)行總量進(jìn)行監(jiān)視,判斷分中心的各個(gè)計(jì)算機(jī)是否實(shí)時(shí)在線,從而達(dá)致有效控制軟件運(yùn)行總量之目的。
文檔編號(hào)H04L29/06GK101924794SQ20101025942
公開日2010年12月22日 申請(qǐng)日期2010年8月18日 優(yōu)先權(quán)日2010年8月18日
發(fā)明者時(shí)宜, 楊一麟, 王國清, 王松輝 申請(qǐng)人:廈門雅迅網(wǎng)絡(luò)股份有限公司