亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

軟件處理設(shè)備、服務(wù)器系統(tǒng)及其方法與流程

文檔序號:11635414閱讀:306來源:國知局
軟件處理設(shè)備、服務(wù)器系統(tǒng)及其方法與流程

本發(fā)明涉及一種軟件處理設(shè)備以及對應(yīng)的服務(wù)器系統(tǒng)。進(jìn)一步地,本發(fā)明也涉及對應(yīng)的方法、計算機(jī)程序,以及計算機(jī)程序產(chǎn)品。



背景技術(shù):

超文本標(biāo)記語言(hypertextmarkuplanguage,簡稱html)包括javascript和層疊樣式表(cascadingstylesheet,簡稱css),其已經(jīng)成為最流行的程序語言之一,不僅用于開發(fā)網(wǎng)站,而且也用于為智能手機(jī)、平板電腦,以及其他類似的通信設(shè)備開發(fā)應(yīng)用程序(也稱app)。雖然作為一種語言,html有許多優(yōu)勢,但是html也存在一些重大缺點,其妨礙許多軟件供應(yīng)商在html上編寫大量的專有代碼。

移動網(wǎng)站和打包app中越來越多地采用htmlapp進(jìn)行移動設(shè)備計算(例如,在包括諸如智能手機(jī)和平板電腦等移動設(shè)備上進(jìn)行的計算),且已經(jīng)變得非常流行。一個htmlapp是html/javascript/css代碼所構(gòu)造的在web引擎上運(yùn)行的軟件應(yīng)用程序。一個webruntime是管理和發(fā)起htmlapp的軟件。

然而,包括html、javascript,以及css源代碼的htmlapp的源代碼是很容易得到或提取的。使用網(wǎng)頁瀏覽器內(nèi)置的調(diào)試工具查看、修改以及調(diào)試網(wǎng)站的源代碼是很簡單的,下載用于從諸如“apk”文件的android應(yīng)用程序包提取htmlapp的源代碼的公開可用的工具也是可能的。

由于專有軟件供應(yīng)商需要一個方案來防止針對他們源代碼的逆向工程和/或防止他們的htmlapp被非法復(fù)制,因此這對于軟件供應(yīng)商實現(xiàn)他們htmlapp中寶貴的私有算法而言是一個障礙。

其中一個方案是在打包htmlapp之前,使用代碼混淆工具來混淆htmlapp的源代碼。代碼混淆可以極大地增加javascript代碼的逆向工程和竄改的難度。然而,由于混淆不影響復(fù)制源代碼和復(fù)用不同計算設(shè)備上源代碼的能力或難度,因此代碼混淆無法防止html程序被復(fù)制。因此,經(jīng)驗豐富的黑客很輕易地就將混淆的源代碼進(jìn)行逆向工程和重組。進(jìn)一步地,當(dāng)釋放程序和調(diào)試軟件的釋放版本由于代碼混淆而變得極其困難時,程序開發(fā)人員必須進(jìn)行混淆。



技術(shù)實現(xiàn)要素:

本發(fā)明實施例的目的是提供一種方案,其減輕或解決傳統(tǒng)方案的缺點和問題。

說明書以及對應(yīng)權(quán)利要求中的“或者”應(yīng)該理解為數(shù)學(xué)上的or,其包括“和”以及“或”,不應(yīng)該將其理解為xor(異or)。

獨權(quán)的主題實現(xiàn)了上述目的。在獨權(quán)中可以發(fā)現(xiàn)本發(fā)明更加優(yōu)越的實現(xiàn)方式。

根據(jù)本發(fā)明的第一方面,通過一種包括處理器和收發(fā)器的軟件處理設(shè)備,實現(xiàn)上述以及其他目的,其中,所述收發(fā)器用于:傳輸認(rèn)證請求信號至認(rèn)證服務(wù)器,其中,所述認(rèn)證請求信號包括用戶認(rèn)證請求;從所述認(rèn)證服務(wù)器接收認(rèn)證驗證信號,其中,所述認(rèn)證驗證信號包括響應(yīng)所述用戶認(rèn)證請求的用戶認(rèn)證驗證;傳輸許可請求信號至許可服務(wù)器,其中,所述許可請求信號包括所述用戶認(rèn)證驗證;從所述許可服務(wù)器接收許可驗證信號,其中,所述許可驗證信號包括與所述用戶認(rèn)證驗證相關(guān)聯(lián)的許可驗證;傳輸下載請求信號至軟件應(yīng)用程序服務(wù)器,其中,所述下載請求信號包括所述許可驗證;從所述軟件應(yīng)用程序服務(wù)器下載軟件應(yīng)用程序的加密源代碼,其中,所述軟件應(yīng)用程序與所述許可驗證相關(guān)聯(lián);其中,所述處理器用于:將所述軟件應(yīng)用程序的所述加密源代碼存儲在存儲器中。

根據(jù)本發(fā)明的第二方面,通過一種包括處理器和收發(fā)器的軟件處理設(shè)備,實現(xiàn)上述以及其他目的,其中,所述收發(fā)器用于:傳輸認(rèn)證請求信號至認(rèn)證服務(wù)器,其中,所述認(rèn)證請求信號包括用戶認(rèn)證請求;從所述認(rèn)證服務(wù)器接收認(rèn)證驗證信號,其中,所述認(rèn)證驗證信號包括響應(yīng)所述用戶認(rèn)證請求的用戶認(rèn)證驗證;傳輸許可請求信號至許可服務(wù)器,其中,所述許可請求信號包括所述用戶認(rèn)證驗證;從所述許可服務(wù)器接收許可加密信號,其中,所述許可加密信號包括與所述用戶認(rèn)證驗證相關(guān)聯(lián)的許可加密秘鑰;其中,所述處理器用于:加載存儲在存儲器中的軟件應(yīng)用程序的加密源代碼;基于所述許可加密秘鑰,解密所述軟件應(yīng)用程序的所述加密源代碼;通過執(zhí)行所述解密源代碼,運(yùn)行所述軟件應(yīng)用程序。

根據(jù)第二方面所述的軟件處理設(shè)備,在一種可能的實現(xiàn)方式中,所述處理器用于:使用web引擎執(zhí)行所述解密源代碼。

因此,本實現(xiàn)方式意味著處理器執(zhí)行的源代碼為一個html應(yīng)用程序。

根據(jù)本發(fā)明的第三方面,通過一種針對通信系統(tǒng)的通信設(shè)備,實現(xiàn)上述以及其他目的。所述通信設(shè)備包括本發(fā)明實施例所述的軟件處理設(shè)備。所述通信設(shè)備具有計算能力,例如,可以為計算機(jī)、智能手機(jī)、平板電腦等。

根據(jù)本發(fā)明的第四方面,通過一種針對通信系統(tǒng)的服務(wù)器系統(tǒng),實現(xiàn)上述以及其他目的。所述服務(wù)器系統(tǒng)包括認(rèn)證服務(wù)器、許可服務(wù)器,以及軟件應(yīng)用程序服務(wù)器;其中,所述認(rèn)證服務(wù)器包括收發(fā)器,用于:從軟件處理設(shè)備接收認(rèn)證請求信號,其中,所述認(rèn)證請求信號包括用戶認(rèn)證請求;如果所述用戶認(rèn)證請求有效,則傳輸認(rèn)證驗證信號至所述軟件處理設(shè)備,其中,所述認(rèn)證驗證信號包括用戶認(rèn)證驗證;其中,所述許可服務(wù)器包括收發(fā)器,用于:從所述軟件處理設(shè)備接收許可請求信號,其中,所述許可請求信號包括所述用戶認(rèn)證驗證;如果所述用戶認(rèn)證驗證有效,則傳輸許可驗證信號至所述軟件處理設(shè)備,其中,所述許可驗證信號包括許可驗證;其中,所述軟件應(yīng)用程序服務(wù)器包括收發(fā)器,用于從所述軟件處理設(shè)備接收下載請求信號,其中,所述下載請求信號包括所述許可驗證;如果所述許可驗證有效,則傳輸軟件應(yīng)用程序的加密源代碼至所述軟件設(shè)備,其中,所述軟件應(yīng)用程序與所述許可驗證相關(guān)聯(lián)。

應(yīng)當(dāng)提到的是,所述服務(wù)器系統(tǒng)可以是一個集中式系統(tǒng),包括諸如單一計算機(jī)或分散式系統(tǒng)中的所述認(rèn)證服務(wù)器、所述許可服務(wù)器,以及所述軟件應(yīng)用程序服務(wù)器,其中,所述服務(wù)器系統(tǒng)的組件分布在數(shù)臺計算機(jī)上。

根據(jù)本發(fā)明的第五方面,通過一種針對通信系統(tǒng)的服務(wù)器系統(tǒng),實現(xiàn)上述以及其他目的。所述服務(wù)器系統(tǒng)包括認(rèn)證服務(wù)器和許可服務(wù)器;其中,所述認(rèn)證服務(wù)器包括收發(fā)器,用于:從軟件處理設(shè)備接收認(rèn)證請求信號,其中,所述認(rèn)證請求信號包括用戶認(rèn)證請求;如果所述用戶認(rèn)證請求有效,則傳輸認(rèn)證驗證信號至所述軟件處理設(shè)備,其中,所述認(rèn)證驗證信號包括用戶認(rèn)證驗證;其中,所述許可服務(wù)器包括收發(fā)器,用于:從所述軟件處理設(shè)備接收許可請求信號,其中,所述許可請求信號包括所述用戶認(rèn)證驗證;如果所述用戶認(rèn)證驗證有效,則傳輸許可加密信號至所述軟件處理設(shè)備,其中,所述許可加密信號包括針對軟件應(yīng)用程序的加密源代碼的許可加密秘鑰。

應(yīng)當(dāng)提及的是,所述服務(wù)器系統(tǒng)可以是一個集中式系統(tǒng),包括諸如單一計算機(jī)或分散式系統(tǒng)中的所述認(rèn)證服務(wù)器和所述許可服務(wù)器,其中,所述服務(wù)器系統(tǒng)的組件分布在數(shù)臺計算機(jī)上。

根據(jù)第五方面所述的服務(wù)器系統(tǒng),在一種可能的實現(xiàn)方式中,所述許可加密秘鑰為所述軟件應(yīng)用程序和所述相關(guān)聯(lián)的軟件處理設(shè)備所獨有。

本實現(xiàn)方式意味著由于所述許可加密秘鑰為所述軟件應(yīng)用程序所獨有,因此所述許可加密秘鑰不能用于其他軟件應(yīng)用程序。進(jìn)一步地,由于所述許可加密秘鑰為所述相關(guān)聯(lián)的軟件處理設(shè)備所獨有,因此所述許可加密秘鑰僅對該特定的相關(guān)聯(lián)的軟件處理設(shè)備有效,且不能為其他軟件處理設(shè)備所使用。

根據(jù)所述軟件處理設(shè)備、所述服務(wù)器系統(tǒng),以及用于安裝和運(yùn)行軟件的所述軟件處理設(shè)備與所述服務(wù)器系統(tǒng)之間的交互,本發(fā)明實施例提供一種針對應(yīng)用程序復(fù)制保護(hù)和反竄改的解決方案。通過用于安裝和運(yùn)行軟件的所述軟件處理設(shè)備和所述服務(wù)器系統(tǒng)之間的所述請求和驗證信令,該解決方案得以實現(xiàn)。

進(jìn)一步地,由于不需要諸如代碼混淆的傳統(tǒng)保護(hù),因此,使得本發(fā)明的方案便于應(yīng)用程序供應(yīng)商保護(hù)他們的知識產(chǎn)權(quán)。

此外,不需要進(jìn)一步地將html、javascript,或css代碼添加到所述應(yīng)用程序的源代碼中,即可防止所述軟件源代碼被復(fù)制,這意味著節(jié)省了時間并降低了程序開發(fā)的成本。

根據(jù)第一或第二方面所述的軟件處理設(shè)備,或者根據(jù)第四或第五方面所述的服務(wù)器系統(tǒng),在第一種可能的實現(xiàn)方式中,所述許可請求信號還包括所述軟件應(yīng)用程序的標(biāo)識指示。

根據(jù)該實現(xiàn)方式,所述服務(wù)器系統(tǒng)將會知道所述軟件應(yīng)用程序的所述標(biāo)識,使得所述軟件應(yīng)用程序可以被驗證。

根據(jù)第一或第二方面或者第四或第五方面的第一種實現(xiàn)方式所述的軟件處理設(shè)備或服務(wù)器系統(tǒng),在第二種可能的實現(xiàn)方式中,所述用戶認(rèn)證驗證為第一令牌,或者所述許可驗證為第二令牌。

本實現(xiàn)方式的一大優(yōu)勢在于可以通過令牌滿足安全的高要求。進(jìn)一步地,使用令牌意味著方便實現(xiàn)本發(fā)明的方案。

根據(jù)第一或第二方面或者第四或第五方面的第一或第二種實現(xiàn)方式所述的軟件處理設(shè)備或服務(wù)器系統(tǒng),或就所述軟件處理設(shè)備或所述服務(wù)器系統(tǒng)本身而言,在第三種可能的實現(xiàn)方式中,所述許可請求信號還包括包括所述軟件處理設(shè)備的通信設(shè)備的標(biāo)識指示。

本實現(xiàn)方式的一大優(yōu)勢在于可以限制許可僅對通信設(shè)備有效。

根據(jù)第一或第二方面或者第四或第五方面的第一或第二或第三種實現(xiàn)方式中所述的軟件處理設(shè)備或服務(wù)器系統(tǒng),或就所述軟件處理設(shè)備或所述服務(wù)器系統(tǒng)本身而言,在第四種可能的實現(xiàn)方式中,所述軟件應(yīng)用程序為超文本標(biāo)記語言html,以及軟件應(yīng)用程序。

本實現(xiàn)方式的一大優(yōu)勢在于防止html應(yīng)用程序被竄改和/或復(fù)制。

根據(jù)本發(fā)明的第六方面,通過一種包括如下步驟的方法,實現(xiàn)上述以及其他目的:傳輸認(rèn)證請求信號至認(rèn)證服務(wù)器,其中,所述認(rèn)證請求信號包括用戶認(rèn)證請求;從所述認(rèn)證服務(wù)器接收認(rèn)證驗證信號,其中,所述認(rèn)證驗證信號包括響應(yīng)所述用戶認(rèn)證請求的用戶認(rèn)證驗證;傳輸許可請求信號至許可服務(wù)器,其中,所述許可請求信號包括所述用戶認(rèn)證驗證;從所述許可服務(wù)器接收許可驗證信號,其中,所述許可驗證信號包括與所述用戶認(rèn)證驗證相關(guān)聯(lián)的許可驗證;傳輸下載請求信號至軟件應(yīng)用程序服務(wù)器,其中,所述下載請求信號包括所述許可驗證;從所述軟件應(yīng)用程序服務(wù)器下載軟件應(yīng)用程序的加密源代碼,其中,所述軟件應(yīng)用程序與所述許可驗證相關(guān)聯(lián);其中,所述處理器用于:將所述軟件應(yīng)用程序的所述加密源代碼存儲在存儲器中,例如,永久存儲器。

根據(jù)本發(fā)明的第七方面,通過一種包括如下步驟的方法,實現(xiàn)上述以及其他目的:傳輸認(rèn)證請求信號至認(rèn)證服務(wù)器,其中,所述認(rèn)證請求信號包括用戶認(rèn)證請求;從所述認(rèn)證服務(wù)器接收認(rèn)證驗證信號,其中,所述認(rèn)證驗證信號包括響應(yīng)所述用戶認(rèn)證請求的用戶認(rèn)證驗證;傳輸許可請求信號至許可服務(wù)器,其中,所述許可請求信號包括所述用戶認(rèn)證驗證;從所述許可服務(wù)器接收許可加密信號,其中,所述許可加密信號包括與所述用戶認(rèn)證驗證相關(guān)聯(lián)的許可加密秘鑰;其中,所述處理器用于:加載存儲器中存儲的軟件應(yīng)用程序的加密源代碼;基于所述許可加密秘鑰,解密所述軟件應(yīng)用程序的所述加密源代碼;通過執(zhí)行所述解密源代碼,運(yùn)行所述軟件應(yīng)用程序。

根據(jù)第七方面所述的方法,在一種可能的實現(xiàn)方式中,所述方法還包括使用web引擎執(zhí)行所述解密源代碼。

根據(jù)本發(fā)明的第八方面,通過一種包括如下步驟的方法,實現(xiàn)上述以及其他目的:從軟件處理設(shè)備接收認(rèn)證請求信號,其中,所述認(rèn)證請求信號包括用戶認(rèn)證請求;如果所述用戶認(rèn)證請求有效,則傳輸認(rèn)證驗證信號至所述軟件處理設(shè)備,其中,所述認(rèn)證驗證信號包括用戶認(rèn)證驗證;其中,所述許可服務(wù)器包括收發(fā)器,用于:從所述軟件處理設(shè)備接收許可請求信號,其中,所述許可請求信號包括所述用戶認(rèn)證驗證;如果所述用戶認(rèn)證驗證有效,則傳輸許可驗證信號至所述軟件處理設(shè)備,其中,所述許可驗證信號包括許可驗證;其中,所述軟件應(yīng)用程序服務(wù)器包括收發(fā)器,用于:從所述軟件處理設(shè)備接收下載請求信號,其中,所述下載請求信號包括所述許可驗證;如果所述許可驗證有效,則傳輸軟件應(yīng)用程序的加密源代碼至所述軟件設(shè)備,其中,所述軟件應(yīng)用程序與所述許可驗證相關(guān)聯(lián)。

根據(jù)本發(fā)明的第九方面,通過一種包括如下步驟的方法,實現(xiàn)上述以及其他目的:從軟件處理設(shè)備接收認(rèn)證請求信號,其中,所述認(rèn)證請求信號包括用戶認(rèn)證請求;如果所述用戶認(rèn)證請求有效,則傳輸認(rèn)證驗證信號至所述軟件處理設(shè)備,其中,所述認(rèn)證驗證信號包括用戶認(rèn)證驗證;其中,所述許可服務(wù)器包括收發(fā)器,用于:從所述軟件處理設(shè)備接收許可請求信號,其中,所述許可請求信號包括所述用戶認(rèn)證驗證;如果所述用戶認(rèn)證驗證有效,則傳輸許可加密信號至所述軟件處理設(shè)備,其中,所述許可加密信號包括針對軟件應(yīng)用程序的加密源代碼的許可加密秘鑰。

根據(jù)第九方面所述的服務(wù)器系統(tǒng),在一種可能的實現(xiàn)方式中,所述許可加密秘鑰為所述軟件應(yīng)用程序和所述相關(guān)聯(lián)的軟件處理設(shè)備所獨有。

根據(jù)第六、第七、第八,或第九方面所述的方法,在第一種可能的實現(xiàn)方式中,所述許可請求信號還包括所述軟件應(yīng)用程序的標(biāo)識指示。

根據(jù)第六、第七、第八,或第九方面的第一種實現(xiàn)方式中所述的方法,或就方法本身而言,在第二種可能的實現(xiàn)方式中,所述用戶認(rèn)證驗證為第一令牌,或者所述許可驗證為第二令牌。

根據(jù)第六、第七、第八,或第九方面的第二種實現(xiàn)方式中所述的方法,在第三種可能的實現(xiàn)方式中,所述許可請求信號還包括包括所述軟件處理設(shè)備的通信設(shè)備的標(biāo)識指示。

根據(jù)第六、第七、第八,或第九方面的第一種實現(xiàn)方式中所述的方法,或就方法本身而言,在第四種可能的實現(xiàn)方式中,所述軟件應(yīng)用程序為超文本標(biāo)記語言html,以及軟件應(yīng)用程序。

第六、第七、第八,或第九方面所述的方法的優(yōu)勢與對應(yīng)的設(shè)備方面的優(yōu)勢相同。

本發(fā)明也涉及一種計算機(jī)程序,包括代碼方式,當(dāng)以處理方式運(yùn)行時,該計算機(jī)程序讓所述處理方式來執(zhí)行本發(fā)明提供的任一方法。此外,本發(fā)明還涉及一種計算機(jī)程序產(chǎn)品,包括計算機(jī)可讀介質(zhì)和所述計算機(jī)程序,其中,所述計算機(jī)程序包括在所述計算機(jī)可讀介質(zhì)中,并且包括以下分組中的一種或者兩種:rom(只讀存儲器)、prom(可編程只讀存儲器)、eprom(可擦除可編程只讀存儲器)、閃存、eeprom(電可擦除可編程只讀存儲器),以及硬盤驅(qū)動器。

本發(fā)明進(jìn)一步的應(yīng)用和優(yōu)點將會在下面詳細(xì)說明中清楚描述。

附圖說明

附圖意在闡明和闡釋本發(fā)明的各項實施例,其中:

圖1示出了本發(fā)明實施例提供的一種軟件設(shè)備。

圖2示出了本發(fā)明一實施例提供的一種方法。

圖3示出了本發(fā)明一實施例提供的又一種方法。

圖4示出了本發(fā)明一實施例提供的一種服務(wù)器系統(tǒng)。

圖5示出了本發(fā)明一實施例提供的又一種方法。

圖6示出了本發(fā)明一實施例提供的又一種方法。

圖7示出了安裝軟件的本發(fā)明一實施例。

圖8示出了運(yùn)行軟件的本發(fā)明一實施例。

圖9示出了安裝軟件的本發(fā)明一實施例的信令方面。

圖10示出了運(yùn)行軟件的本發(fā)明一實施例的信令方面。

圖11示出了運(yùn)行軟件以及驗證例程的本發(fā)明一實施例的信令方面。

圖12示出了本發(fā)明一實施例提供的安裝軟件的流程圖。

圖13示出了本發(fā)明一實施例提供的運(yùn)行軟件的流程圖。

具體實施方式

圖1示出了不同方面以及本發(fā)明實施例提供的軟件處理設(shè)備100。圖1中的軟件設(shè)備100包括處理器102和收發(fā)器104,其以可通信的方式互相耦合。通過處理器102和收發(fā)器104之間的兩個虛線箭頭對此進(jìn)行闡述。軟件處理設(shè)備100還包括這個示例中用于無線通信的天線105和/或用于有線通信的有線連接器。

當(dāng)軟件處理設(shè)備100安裝(或下載)一個軟件應(yīng)用程序時,軟件處理設(shè)備100的配置如下:收發(fā)器104用于傳輸認(rèn)證請求信號至認(rèn)證服務(wù)器,其中,所述認(rèn)證請求信號包括用戶認(rèn)證請求。收發(fā)器104還用于從認(rèn)證服務(wù)器接收認(rèn)證驗證信號,其中,所述認(rèn)證驗證信號包括響應(yīng)用戶認(rèn)證請求的用戶認(rèn)證驗證;收發(fā)器104還用于傳輸許可請求信號至許可服務(wù)器,其中,所述許可請求信號包括用戶認(rèn)證驗證;收發(fā)器104還用于從許可服務(wù)器接收許可驗證信號,其中,所述許可驗證信號包括與用戶認(rèn)證驗證相關(guān)聯(lián)的許可驗證;收發(fā)器104還用于傳輸下載請求信號至軟件應(yīng)用程序服務(wù)器,其中,所述下載請求信號包括許可驗證;收發(fā)器104還用于從軟件應(yīng)用程序服務(wù)器下載軟件應(yīng)用程序的加密源代碼,其中,所述軟件應(yīng)用程序與許可驗證相關(guān)聯(lián);最后,處理器102用于將軟件應(yīng)用程序的加密源代碼存儲在存儲器106(例如,軟件處理設(shè)備100的永久存儲器)中。

根據(jù)一實施例,軟件處理設(shè)備100為一個用于安裝和運(yùn)行應(yīng)用程序的獨立設(shè)備。然而,根據(jù)另一實施例,軟件處理設(shè)備100可以集成在另一個設(shè)備(例如,具有計算能力的通信設(shè)備)上,這種情況下,軟件處理設(shè)備100的處理器102和收發(fā)器104可以是通信設(shè)備的處理器和收發(fā)器。

進(jìn)一步地,存儲器106可以包括在圖1示例所示的軟件處理設(shè)備100中。根據(jù)另一實施例,存儲器106可以是另一設(shè)備的一部分,因此,它不是軟件處理設(shè)備100的一部分。例如,存儲器106可以是上述通信設(shè)備的一部分。

當(dāng)軟件處理設(shè)備100運(yùn)行或執(zhí)行軟件應(yīng)用程序時,接收上述用戶認(rèn)證驗證的配置是相同的。其后,在接收到用戶認(rèn)證驗證之后,收發(fā)器104還用于傳輸許可請求信號至許可服務(wù)器,其中,所述許可請求信號包括用戶認(rèn)證驗證;收發(fā)器104還用于從許可服務(wù)器接收許可加密信號,其中,所述許可加密信號包括與用戶認(rèn)證驗證相關(guān)聯(lián)的許可加密秘鑰;處理器102還用于加載存儲器106中的加密源代碼;處理器102還用于基于許可加密秘鑰,解密加密源代碼;最后,處理器102用于通過執(zhí)行解密源代碼,運(yùn)行軟件應(yīng)用程序。

圖2示出了圖1所示的軟件設(shè)備100在該示例中執(zhí)行的對應(yīng)的方法200a。圖2中的方法200a涉及到安裝或下載軟件應(yīng)用程序這一方面。該方法包括步驟202:傳輸認(rèn)證請求信號s1至認(rèn)證服務(wù)器300a,其中,所述認(rèn)證請求信號s1包括用戶認(rèn)證請求r1(可以包括一對用戶名稱和密碼)。該方法200a還包括步驟204:從認(rèn)證服務(wù)器300a接收認(rèn)證驗證信號s11,其中,所述認(rèn)證驗證信號s11包括響應(yīng)用戶認(rèn)證請求r1的用戶認(rèn)證驗證t1。該方法200a還包括步驟206:傳輸許可請求信號s2至許可服務(wù)器300b,其中,所述許可請求信號s2包括用戶認(rèn)證驗證t1。該方法200a還包括步驟208:從許可服務(wù)器300b接收許可驗證信號s22,其中,所述許可驗證信號s22包括與用戶認(rèn)證驗證t1相關(guān)聯(lián)的許可驗證t2。該方法200a還包括步驟210:傳輸下載請求信號s3至軟件應(yīng)用程序服務(wù)器300c,其中,所述下載請求信號s3包括許可驗證t2。該方法200a還包括步驟212:從軟件應(yīng)用程序服務(wù)器300c下載軟件應(yīng)用程序的加密源代碼,其中,所述軟件應(yīng)用程序與許可驗證t2相關(guān)聯(lián)。該方法200a還包括步驟214:將軟件應(yīng)用程序的加密源代碼存儲在存儲器106中,其中,所述用戶認(rèn)證驗證t1和許可驗證t2可以是一定時間段內(nèi)服務(wù)器系統(tǒng)300信任的數(shù)字,這意味著t1和t2在該時間段內(nèi)有效。

圖3示出了圖1所示的軟件設(shè)備100在該示例中執(zhí)行的另一對應(yīng)的方法200b。圖3中的方法200b涉及到運(yùn)行或執(zhí)行軟件應(yīng)用程序這一方面。該方法200b包括步驟222:傳輸認(rèn)證請求信號s1至認(rèn)證服務(wù)器300a1,其中,所述認(rèn)證請求信號s1包括用戶認(rèn)證請求r1。該方法200b還包括步驟224:從認(rèn)證服務(wù)器300a接收認(rèn)證驗證信號s11,其中,所述認(rèn)證驗證信號s11包括響應(yīng)用戶認(rèn)證請求r1的用戶認(rèn)證驗證t1。該方法200b還包括步驟226:傳輸許可請求信號s2至許可服務(wù)器300b,其中,所述許可請求信號s2包括用戶認(rèn)證驗證t1。該方法200b還包括步驟228:從許可服務(wù)器300b接收許可加密信號s44,其中,所述許可加密信號s44包括與用戶認(rèn)證驗證t1相關(guān)聯(lián)的許可加密秘鑰。該方法200b還包括步驟230:加載存儲在存儲器106中的軟件應(yīng)用程序的加密源代碼。該方法200b還包括步驟232:基于許可加密秘鑰,解密軟件應(yīng)用程序的加密源代碼。該方法200b還包括步驟234:通過執(zhí)行解密源代碼,運(yùn)行軟件應(yīng)用程序??梢杂迷S可加密秘密以加密秘鑰的形式解密該加密源代碼,其中,加密秘鑰使用加密算法。加密秘鑰通常是一個數(shù)字或一系列數(shù)字,例如:“a10ce35df9347b6d…”。

根據(jù)本發(fā)明一實施例,許可加密秘鑰為軟件應(yīng)用程序和相關(guān)聯(lián)的軟件處理設(shè)備100所獨有,這意味著許可加密秘鑰為軟件應(yīng)用程序和軟件處理設(shè)備100對所獨有。許可加密秘鑰是基于軟件應(yīng)用程序以及軟件處理設(shè)備所創(chuàng)建的,這樣一來,既不能在其他設(shè)備上對應(yīng)用程序包的副本進(jìn)行解密,也不能使用該秘鑰對同一設(shè)備上的其他應(yīng)用程序包進(jìn)行解密。

根據(jù)本發(fā)明的另一實施例,許可請求信號s2還包括軟件應(yīng)用程序的標(biāo)識指示,例如,標(biāo)識號。

根據(jù)本發(fā)明的另一實施例,許可請求信號s2還包括包括軟件處理設(shè)備100的通信設(shè)備500的標(biāo)識指示。通信設(shè)備500的標(biāo)識可以是媒體訪問控制(mediumaccesscontrol,簡稱mac)地址或其他任一合適的硬件標(biāo)識方式。

圖4示出了本發(fā)明一實施例提供的服務(wù)器系統(tǒng)300。該服務(wù)器系統(tǒng)300可以是一個系統(tǒng),其帶有針對認(rèn)證服務(wù)器300a、許可服務(wù)器300b,以及軟件應(yīng)用程序服務(wù)器300c的獨立物理服務(wù)器,或者是一個系統(tǒng),其帶有上述服務(wù)器對應(yīng)的虛擬服務(wù)器。圖4中的實施例包括認(rèn)證服務(wù)器300a、許可服務(wù)器300b,以及軟件應(yīng)用程序服務(wù)器300c,其都包括獨立收發(fā)器302a、302b,以及302c,或者在收發(fā)器302a、302b,以及302c配置在同一收發(fā)器單元中這一情況下,其共享一個普通收發(fā)器。在這一特定示例中,圖4中的服務(wù)器系統(tǒng)300也包括處理器304,其以可通信的方式耦合于收發(fā)器302a、302b,以及302c。

根據(jù)軟件處理設(shè)備100是否安裝或運(yùn)行軟件,服務(wù)器系統(tǒng)的收發(fā)器302a、302b,以及302c用于從軟件處理設(shè)備100接收上述信號s1、s2,以及s3。進(jìn)一步地,收發(fā)器302a、302b,以及302c用于傳輸上述信號s11、s22,以及s44至軟件處理設(shè)備100。

圖5示出了圖4所示的服務(wù)器系統(tǒng)300在該示例中執(zhí)行的對應(yīng)的方法400a。圖5中的方法400b涉及到安裝(或下載)軟件這一方面但是從服務(wù)器系統(tǒng)300側(cè)對其進(jìn)行理解。該方法400b包括步驟402:從軟件處理設(shè)備100接收認(rèn)證請求信號s1,其中,所述認(rèn)證請求信號s1包括用戶認(rèn)證請求r1。該方法400a還包括步驟404:如果用戶認(rèn)證請求r1有效,例如,如果r1中的用戶名和密碼正確,則傳輸認(rèn)證驗證信號s11至軟件處理設(shè)備100。認(rèn)證驗證信號s11包括用戶認(rèn)證驗證t1。該方法400a還包括步驟406:從軟件處理設(shè)備100接收許可請求信號s2,其中,所述許可請求信號s2包括用戶認(rèn)證驗證t1。該方法400a還包括步驟408:如果用戶認(rèn)證驗證t1有效,則傳輸許可驗證信號s22至軟件處理設(shè)備100。該用戶認(rèn)證驗證t1的有效性可以由一個通知從認(rèn)證服務(wù)器300a傳送至許可服務(wù)器300b,其中,所述許可驗證信號s22包括許可驗證t2。該方法400a還包括步驟410:從軟件處理設(shè)備100接收下載請求信號s3,其中,所述下載請求信號s3包括許可驗證t2。該方法400a還包括步驟412:如果許可驗證t2有效,則傳輸軟件應(yīng)用程序的加密源代碼至軟件設(shè)備100,其中,所述軟件應(yīng)用程序與許可驗證t2相關(guān)聯(lián),且所述許可驗證t2的有效性可以由一個通知從許可服務(wù)器300b傳送至軟件應(yīng)用程序(或資源)服務(wù)器300c。

圖6示出了圖4所示的服務(wù)器系統(tǒng)300在該示例中執(zhí)行的對應(yīng)的方法400b。圖6中的方法400b涉及到運(yùn)行或執(zhí)行軟件處理設(shè)備中的軟件這一方面但是從服務(wù)器系統(tǒng)300側(cè)對其進(jìn)行理解。該方法400b包括步驟422:從軟件處理設(shè)備100接收認(rèn)證請求信號s1,其中,所述認(rèn)證請求信號s1包括用戶認(rèn)證請求r1。該方法400b還包括步驟424:如果用戶認(rèn)證請求r1有效,則傳輸認(rèn)證驗證信號s11至軟件處理設(shè)備100,其中,所述認(rèn)證驗證信號s11包括用戶認(rèn)證驗證t1。該方法400b還包括步驟426:從軟件處理設(shè)備100接收許可請求信號s2,其中,所述許可請求信號s2包括用戶認(rèn)證驗證t1。該方法400b還包括步驟428:如果用戶認(rèn)證驗證t1有效,則傳輸許可加密信號s44至軟件處理設(shè)備100,其中,所述許可加密信號s44包括針對軟件應(yīng)用程序的加密源代碼的許可加密秘鑰。

根據(jù)本發(fā)明一實施例,用戶認(rèn)證驗證t1為第一令牌,許可驗證t2為第二令牌。該第一和第二令牌在有限時間段內(nèi)對服務(wù)器系統(tǒng)有效,例如,其可以是所謂的幻數(shù)。

例如,根據(jù)本發(fā)明一實施例,可以將軟件處理設(shè)備100和服務(wù)器系統(tǒng)300分別實現(xiàn)為webruntime和一套cloud服務(wù)。webruntime為一個程序,其包括html應(yīng)用程序、維持加密源代碼、在用戶認(rèn)證和許可驗證之后,將html應(yīng)用程序的源代碼解密到存儲器106中并運(yùn)行底層web引擎中的代碼。webruntime經(jīng)常用作計算設(shè)備中的軟件,該計算設(shè)備可以在通信設(shè)備500中找到。webruntime解密源代碼(例如,html、javascript,以及css)之后,webruntime開始解析和執(zhí)行源代碼。

上述cloud服務(wù)為提供html應(yīng)用程序管理、用戶認(rèn)證、許可管理、html源代碼加密,以及下發(fā)加密源代碼的服務(wù)。

圖7示出了本發(fā)明一實施例提供的包括軟件處理設(shè)備100的通信設(shè)備500的一個示例。在本發(fā)明實施例中,軟件應(yīng)用程序為html應(yīng)用程序。該通信設(shè)備500例如可以是智能手機(jī)、平板電腦、計算機(jī),或其他任一通信設(shè)備,其可以安裝和運(yùn)行軟件應(yīng)用程序并且因此具有適當(dāng)?shù)耐ㄐ?、計算,以及處理能力。該通信設(shè)備500可以具有無線通信能力和/或有線通信能力。合適的通信協(xié)議和接口可以用于傳輸和接收通信信號。

圖7也示出了本發(fā)明一實施例提供的服務(wù)器系統(tǒng)300。該服務(wù)器系統(tǒng)300中的不同服務(wù)器300a、300b,以及300c可以是一組軟件組件,例如,這些軟件組件可以通過互聯(lián)網(wǎng)接入,并可以包括在一個或多個物理或虛擬計算機(jī)服務(wù)器系統(tǒng)和/或服務(wù)器系統(tǒng)單元之上。webruntime110(軟件處理設(shè)備100中方括號所示的)為在通信設(shè)備500上運(yùn)行的用于安裝和發(fā)布html應(yīng)用程序的軟件組件。

當(dāng)webruntime110安裝或發(fā)布html應(yīng)用程序時,通過其認(rèn)證模塊,webruntime110將會首先得到認(rèn)證以通過傳輸認(rèn)證請求信號s1向服務(wù)器300發(fā)出一個請求。在服務(wù)器側(cè),認(rèn)證服務(wù)器300a將會處理該請求并返回認(rèn)證驗證信號s11。一旦通信設(shè)備500側(cè)得到認(rèn)證,webruntime110將使用其許可模塊以通過傳輸許可請求信號s2至許可服務(wù)器300b發(fā)出一個許可請求。然后,在服務(wù)器側(cè)上的許可服務(wù)器300b將會處理該許可請求。一旦完成許可,根據(jù)是否應(yīng)該安裝或發(fā)布應(yīng)用程序,存在兩種選擇。

當(dāng)安裝應(yīng)用程序時,webruntime110將通過傳輸下載請求信號s3至軟件應(yīng)用程序服務(wù)器300c以向加密包發(fā)出一個下載請求。在服務(wù)器側(cè),使用軟件加密服務(wù)器加密html應(yīng)用程序的源代碼,并將其發(fā)送給軟件處理設(shè)備100。然后,webruntime110將加密包保存在存儲器106中,以供將來使用。對于加密應(yīng)用程序的本地存儲,如圖7中存儲器106中的加密html應(yīng)用程序所示。

當(dāng)發(fā)布應(yīng)用程序時,webruntime110將使用解密模塊對保存的應(yīng)用程序進(jìn)行解密,然后,發(fā)布應(yīng)用程序。

圖8描述了webruntime110內(nèi)部流程的一個示例。圖8示出了發(fā)布html應(yīng)用程序時,webruntime110如何運(yùn)轉(zhuǎn)。當(dāng)進(jìn)行認(rèn)證時,軟件處理設(shè)備通常需要用戶(例如,軟件處理設(shè)備100或通信設(shè)備500的使用者)的輸入。webruntime110使用其用戶認(rèn)證模塊(userauthenticationmodule,簡稱uam),從而通過服務(wù)器系統(tǒng)300發(fā)信號對該用戶進(jìn)行認(rèn)證,其中該服務(wù)器系統(tǒng)300使用應(yīng)用程序驗證模塊(applicationverificationmodule,簡稱avm)以及uam。這些方面在上面已經(jīng)闡述過。在解密應(yīng)用程序源代碼后,webruntime110通過其相關(guān)聯(lián)的web引擎加載并運(yùn)行源代碼。當(dāng)發(fā)布應(yīng)用程序時,例如,應(yīng)用程序可以進(jìn)行內(nèi)容顯示、音頻/視頻播放,以及用戶輸入的處理等。

圖9示出了webruntime110安裝通信設(shè)備500中html應(yīng)用程序的更詳細(xì)的順序。僅作為一個示例來說,此時的認(rèn)證服務(wù)器300a、許可服務(wù)器300b,以及資源服務(wù)器300c為全功能物理服務(wù)器(例如,單獨計算機(jī))而不是先前的圖架構(gòu)中所示的軟件模塊。當(dāng)然,該服務(wù)器也可以實現(xiàn)為在一個相同的計算機(jī)上運(yùn)行的軟件模塊。存儲器106為物理存儲裝置,其指的是加密html應(yīng)用程序所存儲的地方。

webruntime將會發(fā)送一個認(rèn)證請求至s1中的認(rèn)證服務(wù)器,一旦成功,便返回s11中的令牌a。然后,webruntime110發(fā)送s2中的令牌a至許可服務(wù)器。s2也包括一個設(shè)備或硬件令牌(例如,唯一標(biāo)識軟件處理設(shè)備或其相關(guān)聯(lián)的計算設(shè)備的硬件標(biāo)識)以及應(yīng)用程序(例如,唯一標(biāo)識應(yīng)用程序的一個數(shù)字)的標(biāo)識(identity,簡稱id)。

在許可服務(wù)器300b驗證允許軟件處理設(shè)備100或其相關(guān)聯(lián)的通信設(shè)備500使用通信設(shè)備500上的應(yīng)用程序后,許可服務(wù)器300b將返回s22中的令牌b。然后,webruntime110可以使用令牌b,從而通過傳輸s3從資源服務(wù)器300c獲取html應(yīng)用程序的加密源代碼。資源服務(wù)器300c負(fù)責(zé)利用諸如軟件應(yīng)用程序id、用戶id,以及通信設(shè)備id等所有需要的信息進(jìn)行加密。應(yīng)當(dāng)說明的是,圖9中并沒有示出認(rèn)證服務(wù)器300a、許可服務(wù)器300b,以及資源服務(wù)器300c之間的相關(guān)服務(wù)器側(cè)通信。

圖10示出了webruntime110發(fā)布html應(yīng)用程序的更詳細(xì)的順序。在該示例中,認(rèn)證服務(wù)器300a和許可服務(wù)器300b也是全功能物理服務(wù)器(例如,單獨計算機(jī))。當(dāng)然,該服務(wù)器也可以實現(xiàn)為在一個相同的計算機(jī)上運(yùn)行的軟件模塊。并且,此時的存儲器106為加密html應(yīng)用程序所存儲的地方。

webruntime110發(fā)送一個s1中的認(rèn)證請求至認(rèn)證服務(wù)器300a,一旦成功,便返回s11中的令牌a。然后,webruntime110將令牌a、設(shè)備,或硬件令牌(例如,唯一標(biāo)識軟件處理設(shè)備或其相關(guān)聯(lián)的計算設(shè)備的硬件標(biāo)識),以及應(yīng)用程序的id(例如,唯一標(biāo)識應(yīng)用程序的一個數(shù)字)發(fā)送至s2中的許可服務(wù)器300b。在許可服務(wù)器300驗證允許軟件處理設(shè)備100或其相關(guān)聯(lián)的通信設(shè)備500使用應(yīng)用程序后,許可服務(wù)器300b將返回s44中的加密秘鑰。其后,webruntime110從存儲器106加載加密源代碼,并通過使用加密秘鑰以及諸如設(shè)備id和用戶id等其他信息,對源代碼進(jìn)行解密,然后,將解密源代碼轉(zhuǎn)發(fā)至要執(zhí)行html源代碼的web引擎。

圖11示出了另一實施例。該實施例與圖10類似,但是在服務(wù)器系統(tǒng)300中添加了webruntime驗證服務(wù)器300d,使得本發(fā)明的方案更安全。webruntime110發(fā)送s1中的認(rèn)證請求至認(rèn)證服務(wù)器300a,一旦成功,便返回s11中的令牌a。在webruntime110得到認(rèn)證后(利用信號s1和s11),webruntime110需要使用特定的令牌從webruntime認(rèn)證服務(wù)器300d下載認(rèn)證例程。webruntime認(rèn)證服務(wù)器300d用于驗證軟件處理設(shè)備100上的webruntime軟件沒有被竄改。因此,傳輸一個例程請求至webruntime認(rèn)證服務(wù)器300d,其將一個認(rèn)證例程返回給webruntime110。然后,執(zhí)行該認(rèn)證例程,掃描webruntime110軟件、并且生成一個數(shù)字,例如,令牌x。每次webruntime110得到的例程可能不同,這樣一來,每次預(yù)期的認(rèn)證令牌x也可以不同。如果s2中發(fā)送的令牌x為許可服務(wù)器300b所預(yù)期的令牌,則s22中的許可服務(wù)器300b將會返回一個加密秘鑰。否則,認(rèn)證失敗。假設(shè)許可服務(wù)器300b與webruntime認(rèn)證服務(wù)器300d進(jìn)行通信以證實令牌x正確。然而,圖11中沒有示出服務(wù)器系統(tǒng)300側(cè)的通信。其后,webruntime110從存儲器106加載加密源代碼,并通過加密秘鑰以及諸如設(shè)備id和用戶id等其他信息,對源代碼進(jìn)行解密,然后,將解密源代碼轉(zhuǎn)發(fā)至將執(zhí)行html源代碼的web引擎。

圖12示出了webruntime110安裝應(yīng)用程序的過程的流程圖。webruntime110首先進(jìn)行用戶認(rèn)證。一旦成功,webruntime110將繼續(xù)進(jìn)行許可認(rèn)證,其涉及與前面圖中示出的許可服務(wù)器300b進(jìn)行的通信。一旦成功,webruntime110將開始將加密的應(yīng)用程序下載到存儲器106中。如果前面的任一步驟失敗,則webruntime110將會結(jié)束該過程。

圖13示出了webruntime110發(fā)布應(yīng)用程序的過程的流程圖。webruntime110首先執(zhí)行用戶認(rèn)證任務(wù)。一旦成功,webruntime110將繼續(xù)許可認(rèn)證,其涉及與前面圖中示出的許可服務(wù)器300b進(jìn)行的通信。一旦成功,webruntime110將對源代碼進(jìn)行解密并發(fā)布同一源代碼。如果前面的任一步驟失敗,則webruntime110將會結(jié)束該過程。

另外,根據(jù)本發(fā)明的任意方法可以在具有編碼方式的計算機(jī)程序中實現(xiàn),當(dāng)通過處理措施運(yùn)行時,可使所述處理措施執(zhí)行方法步驟。計算機(jī)程序包括在計算機(jī)程序產(chǎn)品的計算機(jī)可讀介質(zhì)之中。計算機(jī)可讀介質(zhì)基本可以包括任意存儲器,如rom(只讀存儲器)、prom(可編程只讀存儲器)、eprom(可擦除可編程只讀存儲器)、閃存、eeprom(電可擦可編程只讀存儲器),以及硬盤驅(qū)動器。

此外,技術(shù)人員將意識到,本發(fā)明的軟件處理設(shè)備100和服務(wù)器系統(tǒng)300包括例如功能、裝置、單元、元件等形式的必需的通信能力以用于執(zhí)行本發(fā)明的方案。其他類似裝置、單元、元件、功能的舉例有:處理器、存儲器、緩沖器、控制邏輯、編碼器、解碼器、速率匹配器、降額匹配器、映射單元、乘法器、確定單元、選擇單元、交換機(jī)、交織器、去交織器、調(diào)制器、解調(diào)器、輸入、輸出、天線、放大器、接收器單元、發(fā)射器單元、dsp、msd、tcm編碼器、tcm解碼器、供電單元、電源饋線、通信接口、通信協(xié)議等,這些裝置、單元、元件、功能以合適的方式進(jìn)行設(shè)置以執(zhí)行本發(fā)明的方案。

尤其,本發(fā)明的設(shè)備的處理器可包括例如中央處理單元(centralprocessingunit,簡稱cpu)、處理單元、處理電路、處理器、專用集成電路(applicationspecificintegratedcircuit,簡稱asic)、微處理器或可解釋和執(zhí)行指令的其它處理邏輯的一個或多個實例。術(shù)語“處理器”因此可表示包括多個處理電路的處理電路,所述多個處理電路實例為以上列舉項中的任何、一些或所有項。所述處理電路可進(jìn)一步執(zhí)行數(shù)據(jù)處理功能,輸入、輸出以及處理數(shù)據(jù),所述功能包括數(shù)據(jù)緩沖和裝置控制功能,例如,呼叫處理控制、用戶界面控制等。

最后,應(yīng)了解,本發(fā)明并不局限于上述實施例,而是同時涉及且并入所附獨立權(quán)利要求書的范圍內(nèi)的所有實施例。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1