新四季網

一種遊戲數據的安全加密、解密方法和加密、解密裝置與流程

2023-05-14 17:10:07 2


本發明涉及網際網路技術領域,尤其涉及一種遊戲數據的安全加密、解密方法和加密、解密裝置。



背景技術:

隨著科學技術的不斷發展,計算機已經廣泛普及,給人們的工作和生活帶來了諸多便利。隨著計算機遊戲的日益風靡,遊戲的種類越來越多,數量越來越大,人們需要統一的提供遊戲的平臺。現在有一些客戶端或者搜尋引擎能夠充當這樣的平臺,但是僅限於提供計算機遊戲安裝包,用戶需要下載計算機遊戲安裝包至計算機並進行安裝才能使用。由於網頁遊戲不需要下載、安裝,隨時登錄網址即可進行,且由於網頁遊戲的數據都存儲在伺服器或者雲端,利用帳號在任何終端設備上都可進行,因而近幾年網頁遊戲日漸盛行。如何安全、高效地向用戶提供遊戲數據是現在需要解決的一個大問題。網頁遊戲需要瀏覽器支持,目前網頁遊戲的提供商需要自己開發插件,以使得瀏覽器能夠調用到網頁遊戲並加載。幾乎針對每款遊戲,都要開發一插件,從而造成極大的人力浪費;而且在終端,插件運行,啟動ES,在具有權限限制的系統下當用戶主動利用高等權限接入瀏覽器或者在沒有權限限制的系統下接入瀏覽器時,由於插件被各種開發商提供,插件能夠操作終端內硬碟上的所有數據,用戶終端的安全性難以得到保證,導致瀏覽器爆出安全漏洞。在伺服器向用戶終端提供遊戲數據的過程,如果遊戲請求數據或者遊戲數據被劫持,那麼終端可能接收到威脅信息,也可能導致瀏覽器爆出安全漏洞。



技術實現要素:

鑑於上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的做一種遊戲數據的安全校驗方法和裝置。

本發明的一個方面,提供了一種遊戲數據的安全加密方法,該方法包括:

獲取遊戲數據;

計算所述遊戲數據的特徵碼值;

對所獲取的特徵碼值進行非對稱運算,生成遊戲數據的加密數據;

將所述遊戲數據的加密數據發送至瀏覽器客戶端。

可選的,所述特徵碼為遊戲數據的MD5值。

可選的,該方法還包括:

預先設置域名列表和白名單;

在接入一款遊戲時,賦予其域名和Gkey值,根據所賦予的域名、Gkey值對所述域名列表、白名單進行更新,並根據遊戲數據的存儲地址配置存儲路徑信息。

可選的,根據所請求的進程獲取遊戲數據。

可選的,該方法還包括:

接收來自瀏覽器客戶端的遊戲請求;

解析所述遊戲請求,以確定所請求遊戲的唯一標識,並基於所述唯一標識確定其存儲路徑;

根據所述存儲路徑直接獲取所述遊戲數據的加密數據,或者根據所述存儲路徑獲取所述遊戲數據。

可選的,所述唯一標識為與遊戲對應的域名或者G-key值。

本發明還提供一種遊戲數據的安全解密方法,該方法包括:

通過瀏覽器網頁發送遊戲運行請求;

從瀏覽器伺服器接收加密遊戲數據;

對所述加密遊戲數據進行解密,並利用一插件加載所述解密後的遊戲數據以在網頁運行所述遊戲,該插件具有預定接口,與遊戲數據的接口相對應。

可選的,該方法在步驟:通過瀏覽器網頁發送遊戲運行請求,之後,還包括:

接收瀏覽器伺服器返回的響應數據;

基於所述響應數據查找並打開該插件。

可選的,如果沒有查找到該插件,則基於所述響應數據去獲取插件安裝包,並進行所述插件的安裝,所述打開該插件具體包括:利用所述響應數據對該插件進行初始化,並加載該插件。

如果不需要,則直接加載所述解密後的遊戲數據。

可選的,該插件配置有Gkey參數,所述Gkey參數用於被賦值遊戲的唯一標識碼。

本發明還提供一種遊戲數據的安全加密裝置,該裝置包括:

獲取模塊,用於獲取遊戲數據;

特徵碼值計算模塊,用於計算所述遊戲數據的特徵碼值;

非對稱運算模塊,用於對所獲取的特徵碼值進行非對稱運算,生成遊戲數據的加密數據;

第一發送模塊,用於將所述遊戲數據的加密數據發送至瀏覽器客戶端。

可選的,所述特徵碼值計算模塊為MD5值計算模塊。

可選的,該裝置還包括:

預置模塊,用於預先設置域名列表和白名單;

更新配置模塊,用於在接入一款遊戲時,賦予其域名和Gkey值,根據所賦予的域名、Gkey值對所述域名列表、白名單進行更新,並根據遊戲數據的存儲地址配置存儲路徑信息。

可選的,所述獲取模塊根據所配置的存儲路徑信息獲取遊戲數據。

可選的,所述獲取模塊根據所請求的進程獲取遊戲數據。

可選的,該裝置還包括:

第一接收模塊,用於接收來自瀏覽器客戶端的遊戲請求;

遊戲請求解析模塊,用於解析所述遊戲請求,以確定所請求遊戲的唯一標識,並基於所述唯一標識確定其存儲路徑;

所述獲取模塊根據所述存儲路徑直接獲取所述遊戲數據的加密數據,或者根據所述存儲路徑獲取所述遊戲數據。

可選的,所述唯一標識為與遊戲對應的域名或者G-key值。

本發明還提供一種遊戲數據的安全解密裝置,該裝置包括:

第二發送模塊,用於通過瀏覽器網頁發送遊戲運行請求;

第二接收模塊,用於從瀏覽器伺服器接收加密遊戲數據;

解密模塊,用於利用插件機制對所述加密遊戲數據進行解密,該插件具有預定接口,與遊戲數據的接口相對應;

處理模塊,用於根據所述解密後的遊戲數據生成網頁以運行所述遊戲。

可選的,所述第二接收模塊,還用於接收瀏覽器伺服器返回的響應數據;

所述處理模塊,用於基於所述響應數據初始化插件並加載該插件。

該插件設置有Gkey參數,所述處理模塊基於所述響應數據將遊戲的唯一標識碼賦予所述Gkey參數。

本申請實施例中提供的技術方案,至少具有如下技術效果或優點:

在本申請實施例中,通過對遊戲數據的加密處理,能夠保證遊戲數據的安全。

尤其通過瀏覽器平臺推送遊戲時,即通過通用瀏覽器插件加載遊戲數據實現網頁遊戲時,能夠對第三方提供的遊戲數據進行安全校驗,從而避免遊戲請求數據被劫持導致的不正當數據的提供,而且在檢驗遊戲數據失敗的情況下,能夠自動觸發重新請求數據的流程,因此能夠對遊戲數據的異常情況進行自動修復。

上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,並且為了讓本發明的上述和其它目的、特徵和優點能夠更明顯易懂,以下特舉本發明的具體實施方式。

附圖說明

通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對於本領域普通技術人員將變得清楚明了。附圖僅用於示出優選實施方式的目的,而並不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:

圖1示出了根據本發明一個實施例的一種對遊戲數據進行安全加密的方法的流程圖;

圖2示出了根據本發明一個具體實施例的運行網頁遊戲的流程圖;

圖3示出了根據本發明一個實施例的一種對遊戲數據進行安全解密的方法的流程圖;

圖4示出了根據本發明一個實施例的一種對遊戲數據進行安全加密的裝置的結構圖;

圖5示出了根據本發明一個實施例的一種對遊戲數據進行安全解密的裝置的結構圖。

具體實施方式

下面詳細描述本發明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號標識相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用於解釋本發明,而不能解釋為對本發明的限制。

本技術領域技術人員可以理解,除非特意聲明,這裡使用的單數形式「一」、「一個」、「所述」和「該」也可包括複數形式。應該進一步理解的是,本發明的說明書中使用的措辭「包括」是指存在所述特徵、整數、步驟、操作、元件和/或組件,但是並不排除存在或添加一個或多個其他特徵、整數、步驟、操作、元件、組件和/或它們的組。應該理解,當我們稱元件被「連接」或「耦接」到另一元件時,它可以直接連接或耦接到其他元件,或者也可以存在中間元件。此外,這裡使用的「連接」或「耦接」可以包括無線連接或無線耦接。這裡使用的措辭「和/或」包括一個或更多個相關聯的列出項的全部或任一單元和全部組合。

本技術領域技術人員可以理解,除非另外定義,這裡使用的所有術語(包括技術術語和科學術語),具有與本發明所屬領域中的普通技術人員的一般理解相同的意義。還應該理解的是,諸如通用字典中定義的那些術語,應該被理解為具有與現有技術的上下文中的意義一致的意義,並且除非像這裡一樣被特定定義,否則不會用理想化或過於正式的含義來解釋。

本技術領域技術人員可以理解,這裡所使用的「終端」、「終端設備」既包括無線信號接收器的設備,其僅具備無發射能力的無線信號接收器的設備,又包括接收和發射硬體的設備,其具有能夠在雙向通信鏈路上,執行雙向通信的接收和發射硬體的設備。這種設備可以包括:蜂窩或其他通信設備,其具有單線路顯示器或多線路顯示器或沒有多線路顯示器的蜂窩或其他通信設備;PCS(Personal Communications Service,個人通信系統),其可以組合語音、數據處理、傳真和/或數據通信能力;PDA(Personal Digital Assistant,個人數字助理),其可以包括射頻接收器、尋呼機、網際網路/內聯網訪問、網絡瀏覽器、記事本、日曆和/或GPS(Global Positioning System,全球定位系統)接收器;常規膝上型和/或掌上型計算機或其他設備,其具有和/或包括射頻接收器的常規膝上型和/或掌上型計算機或其他設備。這裡所使用的「終端」、「終端設備」可以是可攜式、可運輸、安裝在交通工具(航空、海運和/或陸地)中的,或者適合於和/或配置為在本地運行,和/或以分布形式,運行在地球和/或空間的任何其他位置運行。這裡所使用的「終端」、「終端設備」還可以是通信終端、上網終端、音樂/視頻播放終端,例如可以是PDA、MID(Mobile Internet Device,移動網際網路設備)和/或具有音樂/視頻播放功能的行動電話,也可以是智能電視、機頂盒等設備。

本技術領域技術人員可以理解,這裡所使用的伺服器、雲端、遠端網絡設備等概念,具有等同效果,其包括但不限於計算機、網絡主機、單個網絡伺服器、多個網絡伺服器集或多個伺服器構成的雲。在此,雲由基於雲計算(Cloud Computing)的大量計算機或網絡伺服器構成,其中,雲計算是分布式計算的一種,由一群鬆散耦合的計算機集組成的一個超級虛擬計算機。本發明的實施例中,遠端網絡設備、終端設備與WNS伺服器之間可通過任何通信方式實現通信,包括但不限於,基於3GPP、LTE、WIMAX的移動通信、基於TCP/IP、UDP協議的計算機網絡通信以及基於藍牙、紅外傳輸標準的近距無線傳輸方式。

本領域技術人員應當理解,本發明所稱的「應用」、「應用程式」、「應用軟體」以及類似表述的概念,是業內技術人員所公知的相同概念,是指由一系列計算機指令及相關數據資源有機構造的適於電子運行的計算機軟體。除非特別指定,這種命名本身不受程式語言種類、級別,也不受其賴以運行的作業系統或平臺所限制。理所當然地,此類概念也不受任何形式的終端所限制。

本發明的方法及其裝置,可以通過編程實現為軟體,安裝到計算機、移動終端等設備中進行運行,這些設備,依其所實現的具體方法和裝置的不同,而表現為客戶端、服務端等形式。具體而言,本發明提出的遊戲數據的安全加密方法及相應裝置適宜配置在具有伺服器能力的計算機設備中,而構造出一個雲端控制系統,向客戶端提供遊戲數據或者指向提供遊戲數據的目標。本發明提出的遊戲數據的安全解密方法及相應裝置適宜配置在個人計算機與手機、平板電腦等移動終端設備中,以此構造客戶端。

本發明的一個方面,提供了一種遊戲數據的安全校驗方法,如圖1所示,該方法包括:

S11.獲取遊戲數據;

S12.計算所述遊戲數據的特徵碼值;

S13.對所獲取的特徵碼值進行非對稱運算,生成遊戲數據的加密數據;

S14.將所述遊戲數據的加密數據發送至瀏覽器客戶端。

該方法通過對遊戲數據的加密處理,能夠保證遊戲數據的安全。

在步驟S1中,獲取的遊戲數據是有關運行遊戲所需的所有文件,包括exe文件,d11文件等各種格式的文件,這些文件被存儲在伺服器的預定位置。在響應用戶對遊戲進程的控制請求,提供相應頁面的數據時,伺服器基於IE內核加載機制,獲取相應頁面相關數據。為了保證該相關數據能夠被安全地提供給客戶端,在利用數字籤名私人秘鑰籤署數據之前,對頁面相關數據進行加密運算,作為本發明提出的一種創新的加密方式,先對頁面相關數據進行特徵值計算,再對計算得出的特徵值進行非對稱加密。作為優選的一種方式,可採用MD5算法,進行特徵值的計算,通過利用MD5加密算法,能夠產生一個固定的32位字符串。對所產生的32位固定字符串再利用非對稱加密算法,生成一對秘鑰,將公鑰提供給用戶端,用於對其要發送給伺服器的請求數據進行加密,而利用私鑰對接收的用戶發送過來的請求數據進行解密。本領域技術人員都知道,非對稱算法雖然安全級別較高,但因其秘鑰尺寸較大,且用於加密、解密的時間相比較對稱算法較長,一般在遊戲數據的安全傳送和校驗上不進行使用,而本申請針對瀏覽器客戶端利用基於IE內核的插件機制調取伺服器上存儲的遊戲數據來構建網頁信息的情況,即一方面該插件需要利用伺服器發送的遊戲相關身份信息進行初始化,一方面遊戲數據存在被截獲、偽造的危險,特提出的一種安全機制,由於在這種情況下傳送的數據量小,採用非對稱算法所帶來的速度上的影響可以忽略不計。當然,本申請並不局限應用於上面所述的情況,在傳送的數據量不大且安全性要求高的情況下,本申請提出的安全加密方法均可適用。

為了能夠實現利用基於IE內核的插件機制調取伺服器上存儲的遊戲數據來構建網頁信息,在伺服器端,需要預先設置域名列表和白名單,所述域名列表用於存儲為接入的遊戲賦予的域名,以用於在瀏覽器客戶端接入,所述白名單用於存儲所接入的遊戲的身份標識,作為一種優選的實施方式,賦予遊戲一Gkey值來作為其唯一標識,所述白名單用來存儲所接入的遊戲的Gkey值。從而基於所述域名列表和白名單能夠判斷一款遊戲是否是通過鑑權的遊戲,即判斷用戶請求的遊戲是否為可以通過所述插件推送的遊戲。

在瀏覽器接入一遊戲前,需要進行後臺配置,所述後臺配置包括:賦予遊戲域名和Gkey值,並對域名列表、白名單進行更新;配置遊戲數據的獲取路徑,遊戲數據至少包括應用程式的DLL(Dynamic Link Library)文件或者EXE文件,當然還包括一些實體內容,如圖片、文字以及籤名文件。在通過域名解析並確定解析出的Gkey值屬於白名單後,加載插件,通過對插件的初始化,賦予其Gkey參數Gkey值,並根據遊戲的配置信息對其進行配置。初始化後,插件通過接口基於路徑信息和進程信息調用遊戲數據,比如DLL(Dynamic Link Library)文件或者EXE文件,在伺服器端基於調用請求將這些被調用的遊戲數據進行加密處理,包括進行特徵值計算,並對所述特徵值進行非對稱加密,然後將加密後的數據發送給插件,所述插件運行安全機制,對接收的所述加密後的數據進行解密,之後利用解密後的遊戲數據構建、渲染網頁。

所述插件是一種電腦程式,遵循一定規範的應用程式接口編寫出來,通過和網頁瀏覽器的互動來替所述網頁瀏覽器增加特定功能,即網頁瀏覽器能夠調用伺服器存儲的遊戲數據而在網頁上執行。所述插件是基於微軟插件機制編寫,以兼容所有的瀏覽器,在編寫所述插件時,為該插件配置Gkey參數,以用於被賦值將來在瀏覽器上執行的遊戲的唯一標識碼。安裝該插件後,WEB瀏覽器能夠根據註冊該插件時生成的唯一標識來直接調用該插件。現有技術中,一般是一個插件對應一個應用程式,或者說一個插件對應一個遊戲,瀏覽器在請求一些應用程式或者說遊戲時,伺服器會發送給用戶需要安裝預定插件的指示,並將插件的下載地址發送給用戶,用戶只有安裝該插件才能在瀏覽器運行所請求的遊戲。一旦這些插件安裝上,以後每次啟動瀏覽器的時候,自動從本地加載所有已安裝的插件,這也就是為什麼現在很多瀏覽器啟動較慢的原因之一。本申請所提出的插件獨立於瀏覽器,通過利用對用戶輸入域名的解析結果,確定是否調用該插件,在確定需要調用該插件的情況下,再利用該插件在IE內核註冊時產生的唯一標識進行該插件的查找和加載,因此該插件並不會拖慢瀏覽器的啟動速度,也不會額外消耗處理資源。由於該插件的設計目的是為了在網頁瀏覽器調用並運行所有的遊戲,該插件配置有Gkey參數,利用該插件調用不同的應用程式序時,即為該Gkey參數賦予所調用的應用程式的Gkey值以及相應的配置信息,從而只要編程上插件和遊戲的接口一致,該插件就可以加載任何的遊戲,從而避免了運行一個遊戲就安裝一個插件的情況,不僅大大減少了遊戲配套插件的開發,只需要安裝一次插件,即可兼容所有的具有預定接口的遊戲,而且為在運行瀏覽器時,在不需要運行插件的情況下,即可不啟動插件,大大節省了處理資源的消耗。

瀏覽器的後臺或者雲端維護有和瀏覽器能夠運行的遊戲的相關的域名列表和白名單,所述域名列表存儲為每個應用程式分配的域名;所述白名單存儲有為每個應用程式分配的Gkey值。優選的,瀏覽器的後臺或者雲端還維護有針對每個遊戲的配置文件,該配置文件可以是dll文件,也可以是exe文件,以指示遊戲原始數據、籤名數據的獲取路徑以及加解密信息。作為一種具體實施方式,配置文件與域名列表、白名單通過Gkey值關聯。通過上述後臺或者雲端的維護,達成插件與瀏覽器伺服器的互動。

當用戶在終端輸入域名時,瀏覽器接收該域名請求,並解析域名請求,解析域名的過程可以在終端完成,也可以在瀏覽器的伺服器側完成,如果在終端完成則需要將域名列表和白名單存儲在本地,在瀏覽器進行升級時,自動更新所述域名列表和白名單,這種情況下,客戶端瀏覽器的升級次數可能會多些,如果在瀏覽器的伺服器側完成,則只需要伺服器側或者雲端維護域名列表和白名單,客戶端的瀏覽器不會因為域名列表和白名單的更新需要升級。比如用戶輸入域名:http:wan.360.sgkey=ly/skey=1000,首先判斷所述輸入的域名是否屬於域名列表,如果屬於,則進一步解析域名,確定遊戲唯一標識Gkey值ly,Gkey值是應用程式的唯一標識,尤其目前在計算機遊戲,包括客戶端遊戲和網頁遊戲方面,每個遊戲都會被賦予唯一標識Gkey值,一般是遊戲名稱首字母縮寫。根據所述Gkey值查詢白名單,確定是否屬於白名單,由此確定該應用程式是瀏覽器可推送的產品。即將該Gkey值發送至所述插件,以賦值所述其Gkey參數,賦值的具體過程為:根據所述插件在IE內核註冊時生成的唯一標識在系統中查找所述插件,將所述Gkey值賦予查找到的所述插件中的所述Gkey參數。在將Gkey值賦予查找到的所述插件中的所述Gkey參數後,調用該插件。通過瀏覽器提供的API應用程式編程接口訪問該插件。插件對應有壓縮在一起的插件屬性文件,包括一個Manifest文件,一個或多個超文本標記語言HTML文件,可選的一個或多個javascript文件,可選的任何需要的其他文件(例如圖片)。其中,Manifest文件一般為json格式,其中包含了插件的基本信息,例如最重要的文件列表,應用(擴展)所需要的權限等。在開發插件時,已將這些文件都放到同一個目錄下,發布插件時,這個目錄下的文件全部打包到一個.crx的壓縮文件中,瀏覽器內核在渲染瀏覽器主框架時,可以在插件屬性文件中提取針對插件設置的加載位置,在該加載位置顯示遊戲的界面。為了使得遊戲能夠通過插件加載就能夠運行,在技術上,遊戲需要利用與所述插件一致的編程接口。通過接口,插件直接調用遊戲數據。在插件調用遊戲數據時,瀏覽器伺服器端對所調用的遊戲數據進行加密處理,具體可先對其進行運算,已生成特徵碼,現有的生成特徵碼的成熟算法為MD5算法,本申請優選採用MD5算法。然後對生成的特徵碼進行非對稱運算,生成加密數據,將加密數據發送給瀏覽器客戶端,由所述插件進行解密處理。遊戲數據可存儲在第三方伺服器(遊戲開發商處伺服器)、瀏覽器伺服器或者遊戲專用伺服器、雲端,在此,對應用程式數據的存儲位置不做任何限定。本申請通過利用特徵碼值加密和非對稱加密的雙重加密的方式,不僅對用戶接入遊戲請求的響應數據進行上述加密,還對具體遊戲數據進行加密,因此能夠保證客戶端插件的初始化和遊戲數據的加載安全地進行,且能夠保存遊戲提供商對遊戲設置的數字籤名。

作為一種具體實施方式,用戶需要玩網頁遊戲,如圖2所示,過程如下:

S31.首先登錄瀏覽器,瀏覽器打開後,用戶需要運行哪個遊戲,即通過點擊

瀏覽器上的圖標或者域名連結,比如用戶輸入域名請求http:

wan.360.sgkey=ly1/skey=1000;

S32.瀏覽器客戶端基於用戶操作生成域名請求;

S33.將該域名請求發送至伺服器;

S41.伺服器將該域名與預先存儲的域名列表進行匹配,確定該域名是否屬於域名列表(域名列表中存儲有瀏覽器伺服器為所有需要通過網頁展示的遊戲已經分配的域名);

S42。如果是,則伺服器會繼續對該域名進行解析,否則伺服器不對域名進行任何處理,僅返回終端域名無效的提示信息。根據域名編制規則解析所述域名,確定所請求的遊戲為ly1(Gkey值);

S43.根據Gkey值ly1查詢與其對應的後臺配置信息,並將該配置信息發送至終端瀏覽器;

S34.終端瀏覽器查詢所述插件;

S35.如果沒有安裝,則向伺服器發送獲取插件安裝包的請求;

S36.如果已安裝,則基於所述配置信息初始化該插件並加載所述插件;

S37.根據所述配置信息調用伺服器上的遊戲數據以運行ly1遊戲。

在用戶下一次想玩ly2遊戲時,用戶不需要再下載插件,而是根據用戶的輸入(比如輸入域名http:wan.360.sgkey=ly2/skey=1000),瀏覽器客戶端生成域名請求信息,並將該域名請求發送至伺服器,伺服器將該域名與預先存儲的域名列表進行匹配,確定該域名是否屬於預先存儲的域名列表(域名列表中存儲有瀏覽器運營商為所有需要通過網頁展示的應用程式已經分配的域名),如果是,則伺服器會繼續對該域名進行解析,否則伺服器不對域名進行任何處理,僅返回終端域名無效的提示信息。根據域名編制規則解析所述域名,確定所請求的遊戲為ly2(Gkey值,遊戲的唯一標識碼),根據Gkey值ly2查詢與其對應的後臺配置信息,並將該配置信息發送至終端瀏覽器,終端瀏覽器基於所述配置信息初始化插件,然後加載所述插件,插件即可根據所述配置信息直接調用遊戲數據以運行ly2遊戲。因此,用戶只需要安裝一次插件,瀏覽器所有的網頁遊戲都可進行。由於該插件基於IE內核,其幾乎可兼容國內所有的瀏覽器,如IE瀏覽器IE6-IE11以及Webkit瀏覽器均兼容使用。而且,只要遊戲程序的開發與插件開發的編程接口一致,瀏覽器只需要安裝一次插件,即可運行所有的網頁遊戲。相比較目前,每運行一款網頁遊戲,幾乎都要下載一次插件並安裝才能運行網頁遊戲,本申請在安裝一次插件後,只要輸入域名即可運行各種不同網頁遊戲,簡化了用戶操作以及大大縮短網頁遊戲啟動加載的時間。

實際上在現有技術中,由於瀏覽器本身對系統權限的限制,比如在winsa或者97下因為權限的設置,一般基於中等權限接入瀏覽器,一些需要獲取系統高級權限的遊戲即使在瀏覽器安裝插件也根本無法運行。而本申請的插件是安全的,通用的,其籤名能夠得到瀏覽器的認可,因此一些需要獲取系統高級權限的遊戲也能夠通過該插件在瀏覽器得以運行。在另一方面,由於本申請中插件只是調用遊戲,而不對遊戲的籤名文件進行修改,在遊戲通過插件運行時可以獲取其籤名,從而區分遊戲的籤名以及插件的籤名,方便於做到網絡行為責任的歸屬者,從而便於明確網絡安全責任。

由於插件並不需要改變遊戲的數字籤名,本申請通過該插件能夠將可靠籤名的遊戲嵌入在瀏覽器的預定位置,比如嵌入在標題欄或者浮窗上,而將可靠性不確定或者其他原因需要保留數字籤名的遊戲僅通過域名請求的方式通過插件加載。從而本發明還提出了以兩種不同通過網頁提供遊戲的方式,而且不管採用哪種提供網頁遊戲的方式,本申請都能提供使用前所述加密方法加密的遊戲數據,所述遊戲數據包括遊戲配置信息以及遊戲開始後的運行數據。

在加載插件後,由於已經與遊戲建立對應關係,即可對所述遊戲進行升級檢測;如果需要升級,則根據後臺配置信息調用升級數據,以獲取遊戲的最新數據,運行最新版本的遊戲。本申請不需要用戶進行任何有關升級的操作,就可保證用戶運行的應用程式是最新版本的。

本發明還提供一種遊戲數據的安全解密方法,如圖3所示,該方法包括:

S21.通過瀏覽器網頁發送遊戲運行請求;

S22.從瀏覽器伺服器接收加密遊戲數據;

S23.對所述加密遊戲數據進行解密,並利用一插件加載所述解密後的遊戲數據以在網頁運行所述遊戲,該插件具有預定接口,與遊戲數據的接口相對應。

本申請通過上述安全解密方法,在遊戲數據接收異常的情況下,可對數據做放棄處理,在遊戲數據接收失敗的情況下,可自動進行重複請求,從而可在請求接入遊戲以及遊戲交互過程中進行自動修復。

在通過瀏覽器網頁發送遊戲運行請求後,基於從瀏覽器伺服器返回的響應數據查找並打開該插件。如果沒有查找到該插件,則基於所述響應數據去獲取插件安裝包,並進行所述插件的安裝,所述打開該插件具體包括:利用所述響應數據對該插件進行初始化,並啟動配該插件。如果基於從瀏覽器伺服器返回的響應數據並不只是查找並打開插件,則瀏覽器可直接加載反饋的遊戲數據或者加密遊戲數據。

所述插件並不作為瀏覽器的啟動項,因此該插件不會增加瀏覽器的負擔,既不會影響瀏覽器的反應能力。

該插件配置有Gkey參數,所述Gkey參數用於被賦值遊戲的唯一標識碼,針對加載不同的遊戲的情況,對該插件進行不同遊戲配置信息的初始化。包括所述賦予所述Gkey參數遊戲的Gkey值以及為路徑參數配置路徑信息等,該插件適於加載所有的遊戲,只要遊戲與插件具有對應的接口,且遊戲屬於瀏覽器伺服器上的白名單內的遊戲。

作為本發明的另一方面,本發明還提供一種遊戲數據的安全加密裝置,該裝置可以為具有伺服器功能的主機,如圖4所示,該裝置包括:

獲取模塊50,用於獲取遊戲數據;

特徵碼值計算模塊51,用於計算所述遊戲數據的特徵碼值;

非對稱運算模塊52,用於對所獲取的特徵碼值進行非對稱運算,生成遊戲數據的加密數據;

第一發送模塊53,用於將所述遊戲數據的加密數據發送至瀏覽器客戶端。

在伺服器或者雲端響應用戶對遊戲進程的控制請求,提供相應頁面的數據時,伺服器基於IE內核加載機制,獲取相應頁面相關數據。為了保證該相關數據能夠被安全地提供給客戶端,在利用數字籤名私人秘鑰籤署數據之前,先對頁面相關數據進行特徵值計算,再對計算得出的特徵值進行非對稱加密。本申請針對瀏覽器客戶端利用基於IE內核的插件機制調取伺服器上存儲的遊戲數據來構建網頁信息的情況,即一方面客戶端基於IE內核的插件需要利用伺服器發送的遊戲相關身份信息進行初始化,另一方面遊戲數據存在被截獲、偽造的危險,本申請提出的用於伺服器端的安全機制,能夠保障伺服器即使將第三方開發的遊戲提供給客戶端,也能保障遊戲數據是難以破解和被截獲偽造的,能夠在極大地保障瀏覽器的安全。

作為一種優選實施方式,所述特徵碼值計算模塊為MD5值計算模塊。因為即使兩個數據之間有細小區別,其計算出的32位字符串差距也會很大,因此MD5算法在安全校驗上具有絕對優勢,且不管原始數據量多大,利用MD5計算後均為一個32位字符串,在此字符串基礎上進行非對稱運算,能夠進一步保證數據的安全性,且由於運算數據量少,能夠充分體現非對稱運算安全級別高的特點,又能不體現非對稱運算需要時間長的劣勢。

該裝置還包括:

預置模塊,用於預先設置域名列表和白名單;

更新配置模塊,用於在接入一款遊戲時,賦予其域名和Gkey值,根據所賦予的域名、Gkey值對所述域名列表、白名單進行更新,並根據遊戲數據的存儲地址配置存儲路徑信息。

可選的,所述獲取模塊根據所配置的存儲路徑信息獲取遊戲數據,或者根據所述獲取模塊根據所請求的進程獲取遊戲數據。

可選的,該裝置還包括:

第一接收模塊,用於接收來自瀏覽器客戶端的遊戲請求;

遊戲請求解析模塊,用於解析所述遊戲請求,以確定所請求遊戲的唯一標識,並基於所述唯一標識確定其存儲路徑;

所述獲取模塊根據所述存儲路徑直接獲取所述遊戲數據的加密數據,或者根據所述存儲路徑獲取所述遊戲數據。

可選的,所述唯一標識為與遊戲對應的域名或者G-key值。

本發明提出的安全加密裝置,尤其在伺服器上體現,能夠為作為遊戲推廣平臺的瀏覽器提供安全數據,即使推廣的是第三方的遊戲數據,甚至是存儲在第三方伺服器上的遊戲數據,通過利用本發明提出的安全加密裝置,能夠為瀏覽器終端在實時調取遊戲數據以生成網頁時提供安全校驗,保證數據安全。

本發明還提供一種遊戲數據的安全解密裝置,該安全解密裝置在用戶終端上體現,如圖5所示,該裝置具體包括:

第二發送模塊61,用於通過瀏覽器網頁發送遊戲運行請求;

第二接收模塊62,用於從瀏覽器伺服器接收加密遊戲數據;

解密模塊63,用於利用插件機制對所述加密遊戲數據進行解密,該插件具有預定接口,與遊戲數據的接口相對應;

處理模塊64,用於根據所述解密後的遊戲數據生成網頁以運行所述遊戲。

所述遊戲數據包括遊戲後臺配置信息以及具體遊戲運行數據,利用插件機制對所述加密遊戲數據進行解密,瀏覽器客戶端通過解密過程能夠對校驗出異常數據,通過拋棄異常數據、重新進行遊戲數據的請求,能夠在終端與伺服器的交互過程中進行遊戲數據交互過程異常的自動修復,能夠避免用戶截獲遊戲數據向用戶提供異常數據,

可選的,該裝置包括:

第二接收模塊,用於接收瀏覽器伺服器返回的響應數據;

處理模塊,用於基於所述響應數據判斷是否需要運行一插件,

如果需要,則判斷終端是否已經安裝該插件,如果沒有安裝,則基於所述響應數據去獲取插件安裝包,並進行所述插件的安裝,如果已安裝該插件,則利用所述響應數據對該插件進行初始化,並加載該插件。

如果不需要,則直接加載所述解密後的遊戲數據。

可選的,該插件配置有Gkey參數,所述Gkey參數用於被賦值遊戲的唯一標識碼。

本申請實施例中提供的技術方案,至少具有如下技術效果或優點:

在本申請實施例中,通過對遊戲數據的加密處理,能夠保證遊戲數據的安全。

尤其通過瀏覽器平臺推送遊戲時,即通過通用瀏覽器插件加載遊戲數據實現網頁遊戲時,能夠對第三方提供的遊戲數據進行安全校驗,從而避免遊戲請求數據被劫持導致的不正當數據的提供,而且在檢驗遊戲數據失敗的情況下,能夠自動觸發重新請求數據的流程,因此能夠對遊戲數據的異常情況進行自動修復。

本申請所述方法能夠兼容幾乎所有的瀏覽器(只要是基於IE內核開發的瀏覽器,比如IE6-IE11,Webkit等),可以加載以預定接口編寫的任何遊戲,兼容性很強。

本申請能夠通過區分利用用戶輸入域名加載應用程式的方式,以及利用內嵌、網頁下載應用程式的方式,能夠將具有可靠籤名的應用程式與其他不好確定安全性的第三方籤名的應用程式隔離加載運行,能夠一方面保證瀏覽器的安全,又能夠使得瀏覽器可加載廣泛數字籤名的應用程式。

實際上本發明還提供了利用多種方式以區分地提供應用程式的方法和瀏覽器,第一種方式是通過為應用程式分配域名從而以響應用戶域名請求的方式加載應用程式,這種方式適用於數字籤名不十分可靠的應用程式,比如第三方提供的應用程式,尤其是網頁遊戲、客戶端遊戲;第二種方式是以應用程式直接嵌入瀏覽器的預定位置的方式,通過用戶點擊瀏覽器網頁預定位置直接加載應用程式,第二種方式適應於具有瀏覽器信賴的數字籤名的應用程式,從而本申請還提出了通過瀏覽器以不同方式向提供不同安全等級的應用程式。

上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,並且為了讓本發明的上述和其它目的、特徵和優點能夠更明顯易懂,以下特舉本發明的具體實施方式。

在此提供的算法和顯示不與任何特定計算機、虛擬系統或者其它設備固有相關。各種通用系統也可以與基於在此的示教一起使用。根據上面的描述,構造這類系統所要求的結構是顯而易見的。此外,本發明也不針對任何特定程式語言。應當明白,可以利用各種程式語言實現在此描述的本發明的內容,並且上面對特定語言所做的描述是為了披露本發明的最佳實施方式。

在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,並未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。

類似地,應當理解,為了精簡本申請並幫助理解各個發明方面中的一個或多個,在上面對本發明的示例性實施例的描述中,本發明的各個特徵有時被一起分組到單個實施例、圖、或者對其的描述中。然而,並不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發明要求比在每個權利要求中所明確記載的特徵更多的特徵。更確切地說,如下面的權利要求書所反映的那樣,發明方面在於少於前面公開的單個實施例的所有特徵。因此,遵循具體實施方式的權利要求書由此明確地併入該具體實施方式,其中每個權利要求本身都作為本發明的單獨實施例。

本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變並且把它們設置在與該實施例不同的一個或多個設備中。可以把實施例中的模塊或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特徵和/或過程或者單元中的至少一些是相互排斥之外,可以採用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特徵以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特徵可以由提供相同、等同或相似目的的替代特徵來代替。

此外,本領域的技術人員能夠理解,儘管在此的一些實施例包括其它實施例中所包括的某些特徵而不是其它特徵,但是不同實施例的特徵的組合意味著處於本發明的範圍之內並且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。

本發明的各個部件實施例可以以硬體實現,或者以在一個或者多個處理器上運行的軟體模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數位訊號處理器(DSP)來實現根據本發明實施例的網關、代理伺服器、系統中的一些或者全部部件的一些或者全部功能。本發明還可以實現為用於執行這裡所描述的方法的一部分或者全部的設備或者裝置程序(例如,電腦程式和電腦程式產品)。這樣的實現本發明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從網際網路網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。

應該注意的是上述實施例對本發明進行說明而不是對本發明進行限制,並且本領域技術人員在不脫離所附權利要求的範圍的情況下可設計出替換實施例。在權利要求中,不應將位於括號之間的任何參考符號構造成對權利要求的限制。單詞「包含」不排除存在未列在權利要求中的元件或步驟。位於元件之前的單詞「一」或「一個」不排除存在多個這樣的元件。本發明可以藉助於包括有若干不同元件的硬體以及藉助於適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬體項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。

本發明提供了下列技術方案:

A1、一種遊戲數據的安全加密方法,其特徵在於,該方法包括:

獲取遊戲數據;

計算所述遊戲數據的特徵碼值;

對所獲取的特徵碼值進行非對稱運算,生成遊戲數據的加密數據;

將所述遊戲數據的加密數據發送至瀏覽器客戶端。

A2、根據A1所述的方法,其特徵還在於,所述特徵碼為遊戲數據的MD5值。

A3、根據A1或A2所述的方法,其特徵還在於,該方法還包括:

預先設置域名列表和白名單;

在接入一款遊戲時,賦予其域名和Gkey值,根據所賦予的域名、Gkey值對所述域名列表、白名單進行更新,並根據遊戲數據的存儲地址配置存儲路徑信息。

A4、根據A3所述的方法,其特徵還在於,根據所配置的存儲路徑信息獲取遊戲數據。

A5、根據A1-A4任一項所述的方法,其特徵還在於,根據所請求的進程獲取遊戲數據。

A6、根據A1-A5任一項所述的方法,其特徵還在於,該方法還包括:

接收來自瀏覽器客戶端的遊戲請求;

解析所述遊戲請求,以確定所請求遊戲的唯一標識,並基於所述唯一標識確定其存儲路徑;

根據所述存儲路徑直接獲取所述遊戲數據的加密數據,或者根據所述存儲路徑獲取所述遊戲數據。

A7、根據A6所述的方法,所述唯一標識為與遊戲對應的域名或者G-key值。

B8、一種遊戲數據的安全解密方法,其特徵在於,該方法包括:

通過瀏覽器網頁發送遊戲運行請求;

從瀏覽器伺服器接收加密遊戲數據;

利用插件機制對所述加密遊戲數據進行解密,該插件具有預定接口,與遊戲數據的接口相對應;

根據所述解密後的遊戲數據生成網頁以運行所述遊戲。

B9、根據B8所述的方法,該方法在步驟:通過瀏覽器網頁發送遊戲運行請求,之後,還包括:

接收瀏覽器伺服器返回的響應數據;

基於所述響應數據查找並打開該插件。

B10、根據B9所述的方法,如果沒有查找到該插件,則基於所述響應數據去獲取插件安裝包,並進行所述插件的安裝,所述打開該插件具體包括:利用所述響應數據對該插件進行初始化,並加載該插件。

如果不需要,則直接加載所述解密後的遊戲數據。

B10、根據B8或B9所述的方法,其特徵還在於,該插件配置有Gkey參數,所述Gkey參數用於被賦值遊戲的唯一標識碼。

C11、一種遊戲數據的安全加密裝置,其特徵在於,該裝置包括:

獲取模塊,用於獲取遊戲數據;

特徵碼值計算模塊,用於計算所述遊戲數據的特徵碼值;

非對稱運算模塊,用於對所獲取的特徵碼值進行非對稱運算,生成遊戲數據

的加密數據;

第一發送模塊,用於將所述遊戲數據的加密數據發送至瀏覽器客戶端。

C12、根據C11所述的裝置,其特徵還在於,所述特徵碼值計算模塊為MD5值計算模塊。

C13、根據C11或C12所述的裝置,其特徵還在於,該裝置還包括:

預置模塊,用於預先設置域名列表和白名單;

更新配置模塊,用於在接入一款遊戲時,賦予其域名和Gkey值,根據所賦予的域名、Gkey值對所述域名列表、白名單進行更新,並根據遊戲數據的存儲地址配置存儲路徑信息。

C14、根據C13所述的裝置,其特徵還在於,所述獲取模塊根據所配置的存儲路徑信息獲取遊戲數據。

C15、根據C11-C14任一項所述的裝置,其特徵還在於,所述獲取模塊根據所請求的進程獲取遊戲數據。

C16、根據C11-C15任一項所述的裝置,其特徵還在於,該裝置還包括:

第一接收模塊,用於接收來自瀏覽器客戶端的遊戲請求;

遊戲請求解析模塊,用於解析所述遊戲請求,以確定所請求遊戲的唯一標識,

並基於所述唯一標識確定其存儲路徑;

所述獲取模塊根據所述存儲路徑直接獲取所述遊戲數據的加密數據,或者根

據所述存儲路徑獲取所述遊戲數據。

C17、根據C16所述的裝置,所述唯一標識為與遊戲對應的域名或者G-key值。

D18、一種遊戲數據的安全解密裝置,其特徵在於,該裝置包括:

第二發送模塊,用於通過瀏覽器網頁發送遊戲運行請求;

第二接收模塊,用於從瀏覽器伺服器接收加密遊戲數據;

解密模塊,用於利用插件機制對所述加密遊戲數據進行解密,該插件具有預定接口,與遊戲數據的接口相對應;

處理模塊,用於根據所述解密後的遊戲數據生成網頁以運行所述遊戲。

D19、根據D18所述的裝置,其特徵還在於,

所述第二接收模塊,還用於接收瀏覽器伺服器返回的響應數據;

所述處理模塊,用於基於所述響應數據初始化插件並加載該插件,

D20、根據D18或D19所述的裝置,其特徵還在於,該插件設置有Gkey參數,所述處理模塊基於所述響應數據將遊戲的唯一標識碼賦予所述Gkey參數。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀