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

安全數(shù)據(jù)處理方法、裝置及電子設(shè)備與流程

文檔序號(hào):12305836閱讀:311來源:國知局
安全數(shù)據(jù)處理方法、裝置及電子設(shè)備與流程

本發(fā)明涉及數(shù)據(jù)安全技術(shù)領(lǐng)域,尤其涉及應(yīng)用程序的安全及兼容性安裝技術(shù)。



背景技術(shù):

安卓系統(tǒng)是一款基于linux內(nèi)核和java虛擬機(jī)的移動(dòng)設(shè)備操作系統(tǒng),最初作為手機(jī)操作系統(tǒng)而生,但因其具有系統(tǒng)源碼開放、硬件支持豐富、google緊密參與且不間斷維護(hù)、第三方軟件開發(fā)方便等明顯優(yōu)勢,近年間得到迅速發(fā)展,已經(jīng)成為市場占有率最大的智能移動(dòng)終端操作系統(tǒng),而且除手機(jī)和平板電腦外,現(xiàn)已普及到智能電視、高端單反照相機(jī)、車載娛樂信息系統(tǒng)甚至個(gè)人電腦等非傳統(tǒng)手持設(shè)備。

發(fā)明人在實(shí)現(xiàn)本發(fā)明的過程中發(fā)現(xiàn),安卓對于應(yīng)用程序安裝包的驗(yàn)證方式主要是自簽名方式,只要應(yīng)用程序安裝包文件完整沒有被篡改,并且被發(fā)布者加上了簽名,便認(rèn)為應(yīng)用程序安裝包是合法的。這樣的應(yīng)用程序安裝包驗(yàn)證機(jī)制無法避免一些不兼容當(dāng)前系統(tǒng)甚至是惡意的應(yīng)用程序安裝包軟件被安裝到安卓系統(tǒng)上。如果說這個(gè)缺點(diǎn)對于安卓這樣一個(gè)開發(fā)性的系統(tǒng)來說尚可容忍,那么對于車載安卓系統(tǒng)這樣相對封閉,經(jīng)常要在離線狀態(tài)安裝應(yīng)用程序安裝包的系統(tǒng)來說。應(yīng)用程序安裝包來源的識(shí)別機(jī)制就必不可少。

現(xiàn)有技術(shù)中,安卓設(shè)備中支持應(yīng)用程序安裝包來源識(shí)別兩種可行的方案包括:(1)利用安卓在應(yīng)用程序安裝包原有簽名基礎(chǔ)上增加一個(gè)官方認(rèn)證的簽名(或者是直接替換掉原有簽名)。具體做法是利用v1簽名技術(shù)對應(yīng)用程序安裝包再進(jìn)行一次簽名,將生成的新簽名添加到簽名信息文件夾中,或者直接替換原有簽名。這樣應(yīng)用程序安裝包就具備了一個(gè)獨(dú)一無二的數(shù)據(jù)標(biāo)識(shí),方便系統(tǒng)確定其來源。(2)利用zip包文件尾部的數(shù)據(jù)段“目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)”中有一段可擴(kuò)展的注釋內(nèi)容,將來源認(rèn)證等一些定制化信息添加到這里。這樣定制化的安卓系統(tǒng)在安裝應(yīng)用程序安裝包時(shí),便可以通過檢驗(yàn)zip包文件尾部添加的定制化信息,來確定其來源。在上述現(xiàn)有技術(shù)方案中,方案(1)直接采用安卓原生技術(shù),實(shí)現(xiàn)難度低。但是這種做法有兩個(gè)缺陷:第一,無論替換或者增加應(yīng)用程序安裝包的簽名文件,都對應(yīng)用程序安裝包原有的簽名進(jìn)行了更改,一些應(yīng)用在啟動(dòng)后會(huì)檢查自身簽名的正確性,這時(shí)就會(huì)發(fā)現(xiàn)簽名被篡改,彈出非正版應(yīng)用的提示;第二,該方案只適用于androidn以前的v1簽名,對v2簽名無法兼容。方案(2)相比較方案(1)不會(huì)破壞應(yīng)用程序安裝包文件原有的簽名,但是相對方案(1)實(shí)現(xiàn)也更為復(fù)雜。而且該方案只是針對v1的簽名,無法支持v2簽名機(jī)制

因此,如何在保證應(yīng)用程序安裝包與安卓系統(tǒng)兼容的情況下,能夠快速、準(zhǔn)確且安全的確定應(yīng)用程序安裝包的身份,是亟需解決的問題。



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

有鑒于此,本發(fā)明實(shí)施例提供一種安全數(shù)據(jù)處理方法、裝置、電子設(shè)備、非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)及計(jì)算機(jī)程序,至少部分的解決現(xiàn)有技術(shù)中存在的問題。

第一方面,本發(fā)明實(shí)施例提供了一種安全數(shù)據(jù)處理方法,包括:

獲取具有壓縮文件格式的安卓應(yīng)用程序安裝包文件;

分別對所述安裝包文件中的壓縮的文件內(nèi)容源數(shù)據(jù)、壓縮的目錄源數(shù)據(jù)以及目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)進(jìn)行簽名加密,得到來源標(biāo)識(shí)數(shù)據(jù);

判斷所述安裝包文件中是否存在簽名數(shù)據(jù)塊;

當(dāng)所述安裝包文件中存在簽名數(shù)據(jù)塊時(shí),將所述來源標(biāo)識(shí)數(shù)據(jù)添加到所述簽名數(shù)據(jù)塊中,并生成包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,在所述判斷所述安裝包文件中是否存在簽名數(shù)據(jù)塊之后,所述方法還包括:

當(dāng)所述安裝包文件中不存在簽名數(shù)據(jù)塊時(shí),將所述來源標(biāo)識(shí)數(shù)據(jù)轉(zhuǎn)化為能夠添加到所述安裝包文件中的簽名數(shù)據(jù)塊,并生成包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,所述生成包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件,包括:

將轉(zhuǎn)化為簽名數(shù)據(jù)塊添加到所述安裝包文件的壓縮的文件內(nèi)容源數(shù)據(jù)以及所述壓縮的目錄源數(shù)據(jù)數(shù)據(jù)段之間,形成包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,所述分別對所述安裝包文件中的壓縮的文件內(nèi)容源數(shù)據(jù)、壓縮的目錄源數(shù)據(jù)以及目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)進(jìn)行簽名加密,得到來源標(biāo)識(shí)數(shù)據(jù),包括:

采用數(shù)據(jù)摘要算法分別對所述壓縮的文件內(nèi)容源數(shù)據(jù)、所述壓縮的目錄源數(shù)據(jù)以及所述目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)進(jìn)行計(jì)算,生成數(shù)據(jù)摘要;

生成與所述安裝包文件對應(yīng)的唯一公鑰私鑰對;

利用所述私鑰對所述數(shù)據(jù)摘要進(jìn)行加密,得到加密數(shù)據(jù)摘要;

將所述數(shù)據(jù)摘要、加密數(shù)據(jù)摘要以及包含所述公鑰信息的數(shù)字證書打包成數(shù)據(jù)段,形成所述來源標(biāo)識(shí)數(shù)據(jù)。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,所述方法還包括:

將包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件在預(yù)設(shè)的應(yīng)用程序分發(fā)平臺(tái)進(jìn)行分發(fā)。

第二方面,本發(fā)明實(shí)施例提供了一種安全數(shù)據(jù)處理方法,包括:

獲取具有壓縮文件格式的安卓應(yīng)用程序安裝包文件;

對所述安裝包文件進(jìn)行解析,獲取所述安裝包文件中的簽名數(shù)據(jù)塊;

基于所述簽名數(shù)據(jù)塊,提取所述安裝包文件的來源消息數(shù)據(jù),并判斷所述來源消息數(shù)據(jù)是否為合法數(shù)據(jù);

當(dāng)所述來源消息數(shù)據(jù)為合法數(shù)據(jù)時(shí),按照原生應(yīng)用程序的安裝程序安裝包含來源消息數(shù)據(jù)的安裝包文件。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,在所述獲取所述安裝包文件中的簽名數(shù)據(jù)塊之前,該方法還包括:

判斷所述安裝包文件中是否含有簽名數(shù)據(jù)塊;

當(dāng)所述安裝包文件中不含有簽名數(shù)據(jù)塊時(shí),拒絕所述安裝包文件的安裝操作。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,在所述提取所述安裝包文件的來源消息數(shù)據(jù)之前,該方法還包括:

判斷所述安裝包文件中是否含有來源消息數(shù)據(jù);

當(dāng)所述安裝包文件中不含有來源消息數(shù)據(jù)時(shí),拒絕所述安裝包文件的安裝操作。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,在所述判斷所述來源消息數(shù)據(jù)是否為合法數(shù)據(jù)之后,該方法還包括:

當(dāng)所述來源消息數(shù)據(jù)為非法數(shù)據(jù)時(shí),拒絕所述安裝包文件的安裝操作。

第三方面,本發(fā)明實(shí)施例提供了一種安全數(shù)據(jù)處理裝置,包括:

第一獲取模塊,用于獲取具有壓縮文件格式的安卓應(yīng)用程序安裝包文件;

加密模塊,用于分別對所述安裝包文件中的壓縮的文件內(nèi)容源數(shù)據(jù)、壓縮的目錄源數(shù)據(jù)以及目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)進(jìn)行簽名加密,得到來源標(biāo)識(shí)數(shù)據(jù);

第一判斷模塊,用于判斷所述安裝包文件中是否存在簽名數(shù)據(jù)塊;

生成模塊,用于當(dāng)所述安裝包文件中存在簽名數(shù)據(jù)塊時(shí),將所述來源標(biāo)識(shí)數(shù)據(jù)添加到所述簽名數(shù)據(jù)塊中,并生成包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,所述生成模塊還用于:

當(dāng)所述安裝包文件中不存在簽名數(shù)據(jù)塊時(shí),將所述來源標(biāo)識(shí)數(shù)據(jù)轉(zhuǎn)化為能夠添加到所述安裝包文件中的簽名數(shù)據(jù)塊,并生成包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,所述生成模塊還用于:

將轉(zhuǎn)化為簽名數(shù)據(jù)塊添加到所述安裝包文件的壓縮的文件內(nèi)容源數(shù)據(jù)以及所述壓縮的目錄源數(shù)據(jù)數(shù)據(jù)段之間,形成包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,所述加密模塊還用于:

采用數(shù)據(jù)摘要算法分別對所述壓縮的文件內(nèi)容源數(shù)據(jù)、所述壓縮的目錄源數(shù)據(jù)以及所述目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)進(jìn)行計(jì)算,生成數(shù)據(jù)摘要;

生成與所述安裝包文件對應(yīng)的唯一公鑰私鑰對;

利用所述私鑰對所述數(shù)據(jù)摘要進(jìn)行加密,得到加密數(shù)據(jù)摘要;

將所述數(shù)據(jù)摘要、加密數(shù)據(jù)摘要以及包含所述公鑰信息的數(shù)字證書打包成數(shù)據(jù)段,形成所述來源標(biāo)識(shí)數(shù)據(jù)。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,所述裝置還包括:

分發(fā)模塊,用于將包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件在預(yù)設(shè)的應(yīng)用程序分發(fā)平臺(tái)進(jìn)行分發(fā)。

第四方面,本發(fā)明實(shí)施例提供了一種安全數(shù)據(jù)處理裝置,包括:

第二獲取模塊,用于獲取具有壓縮文件格式的安卓應(yīng)用程序安裝包文件;

第三獲取模塊,用于對所述安裝包文件進(jìn)行解析,獲取所述安裝包文件中的簽名數(shù)據(jù)塊;

執(zhí)行模塊,用于基于所述簽名數(shù)據(jù)塊,提取所述安裝包文件的來源消息數(shù)據(jù),并判斷所述來源消息數(shù)據(jù)是否為合法數(shù)據(jù);

安裝模塊,用于當(dāng)所述來源消息數(shù)據(jù)為合法數(shù)據(jù)時(shí),按照原生應(yīng)用程序的安裝程序安裝包含來源消息數(shù)據(jù)的安裝包文件。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,所述第三獲取模塊,還包括:

第二判斷模塊,用于判斷所述安裝包文件中是否含有簽名數(shù)據(jù)塊;

第一拒絕模塊,用于當(dāng)所述安裝包文件中不含有簽名數(shù)據(jù)塊時(shí),拒絕所述安裝包文件的安裝操作。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,所述執(zhí)行模塊,還包括:

第三判斷模塊,用于判斷所述安裝包文件中是否含有來源消息數(shù)據(jù);

第二拒絕模塊,用于當(dāng)所述安裝包文件中不含有來源消息數(shù)據(jù)時(shí),拒絕所述安裝包文件的安裝操作。

根據(jù)本發(fā)明實(shí)施例的一種具體實(shí)現(xiàn)方式,所述裝置還包括:

第三拒絕模塊,用于當(dāng)所述來源消息數(shù)據(jù)為非法數(shù)據(jù)時(shí),拒絕所述安裝包文件的安裝操作。

第五方面,本發(fā)明實(shí)施例還提供了一種電子設(shè)備,所述電子設(shè)備包括:

至少一個(gè)處理器;以及,

與所述至少一個(gè)處理器通信連接的存儲(chǔ)器;其中,

所述存儲(chǔ)器存儲(chǔ)有可被所述至少一個(gè)處理器執(zhí)行的指令,所述指令被所述至少一個(gè)處理器執(zhí)行,以使所述至少一個(gè)處理器能夠執(zhí)行前述任第一及第二方面或第一及第二方面的任一實(shí)現(xiàn)方式所述的安全數(shù)據(jù)處理方法。

第六方面,本發(fā)明實(shí)施例還提供了一種非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)計(jì)算機(jī)指令,所述計(jì)算機(jī)指令用于使所述計(jì)算機(jī)執(zhí)行前述任第一及第二方面或第一及第二方面的任一實(shí)現(xiàn)方式所述的安全數(shù)據(jù)處理方法。

第七方面,本發(fā)明實(shí)施例還提供了一種計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括存儲(chǔ)在非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上的計(jì)算程序,所述計(jì)算機(jī)程序包括程序指令,當(dāng)所述程序指令被計(jì)算機(jī)執(zhí)行時(shí),使所述計(jì)算機(jī)執(zhí)行前述任第一及第二方面或第一及第二方面的任一實(shí)現(xiàn)方式所述的安全數(shù)據(jù)處理方法。

本發(fā)明實(shí)施例提供的安全數(shù)據(jù)處理方法、裝置、電子設(shè)備、非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)及計(jì)算機(jī)程序,通過在應(yīng)用程序安裝包文件中增加來源信息標(biāo)識(shí);在安卓系統(tǒng)上部署一套安全裝置,該裝置能夠根據(jù)應(yīng)用程序安裝包的來源信息標(biāo)識(shí)判斷其合法性,只有通過該安全裝置檢驗(yàn)的應(yīng)用程序安裝包才可以繼續(xù)安裝。而且添加的來源信息標(biāo)識(shí)并不影響應(yīng)用程序安裝包在其他安卓系統(tǒng)上的兼容性。即使是以最新的schemev2簽名格式進(jìn)行簽名的應(yīng)用程序安裝包,在按照本專利技術(shù)方案添加了來源信息標(biāo)識(shí)后,仍可以安裝到包括最新的安卓系統(tǒng)(androidn)在內(nèi)的任意安卓系統(tǒng)兼容設(shè)備上,可以提供一套完整的、兼容目前所有安卓系統(tǒng)的、不依賴于網(wǎng)絡(luò)的應(yīng)用程序安裝包來源識(shí)別方案。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對實(shí)施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其它的附圖。

圖1為本發(fā)明實(shí)施例提供的一種安全數(shù)據(jù)處理流程示意圖;

圖2為本發(fā)明實(shí)施例提供的另一種安全數(shù)據(jù)處理流程示意圖;

圖3為本發(fā)明實(shí)施例提供的一種形成來源標(biāo)識(shí)數(shù)據(jù)的流程示意圖;

圖4為本發(fā)明實(shí)施例提供的另一種安全數(shù)據(jù)處理流程示意圖;

圖5為本發(fā)明實(shí)施例提供的另一種安全數(shù)據(jù)處理流程示意圖;

圖6為本發(fā)明實(shí)施例提供的一種安全數(shù)據(jù)處理裝置結(jié)構(gòu)示意圖;

圖7為本發(fā)明實(shí)施例提供的另一種安全數(shù)據(jù)處理裝置結(jié)構(gòu)示意圖;

圖8為本發(fā)明實(shí)施例提供的另一種安全數(shù)據(jù)處理裝置結(jié)構(gòu)示意圖;

圖9為本發(fā)明實(shí)施例提供的一種電子設(shè)備結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面結(jié)合附圖對本發(fā)明實(shí)施例進(jìn)行詳細(xì)描述。

應(yīng)當(dāng)明確,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

圖1為本發(fā)明的實(shí)施例的安全數(shù)據(jù)處理的流程示意圖,如圖1所示,本實(shí)施例的方法可以包括以下步驟:

s101,獲取具有壓縮文件格式的安卓應(yīng)用程序安裝包文件。

androidpackage(apk),安卓應(yīng)用的安裝包文件,其常見形式為zip格式。由于zip格式的安裝包文件具有特定的數(shù)據(jù)格式,便于對其中的內(nèi)容進(jìn)行分析。為此,在對安裝包文件添加來源標(biāo)識(shí)之前,需要獲取符合格式要求的安裝包文件。添加來源標(biāo)識(shí)是指在應(yīng)用程序安裝包文件上增加能夠標(biāo)識(shí)其來源的數(shù)據(jù)信息,要求不能破壞應(yīng)用程序安裝包原有結(jié)構(gòu),且保證其可以兼容目前所有的安卓系統(tǒng)。這部分工作可以由第三方應(yīng)用程序安裝包的發(fā)布方來做,也可以由需要安裝該應(yīng)用程序安裝包的安卓設(shè)備制造廠商來做。

s102,分別對所述安裝包文件中的壓縮的文件內(nèi)容源數(shù)據(jù)、壓縮的目錄源數(shù)據(jù)以及目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)進(jìn)行簽名加密,得到來源標(biāo)識(shí)數(shù)據(jù)。

zip文件由三部分組成:壓縮的文件內(nèi)容源數(shù)據(jù)、壓縮的目錄源數(shù)據(jù)、目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)。其中,壓縮的文件內(nèi)容源數(shù)據(jù)記錄著壓縮的所有文件的內(nèi)容信息,其數(shù)據(jù)組織結(jié)構(gòu)是對于每個(gè)文件都由fileheader、filedata、datadescriptor三部分組成。對于待壓縮的目錄而言,每一個(gè)子目錄對應(yīng)一個(gè)壓縮目錄源數(shù)據(jù),記錄該目錄的描述信息。壓縮包中所有目錄源數(shù)據(jù)連續(xù)存儲(chǔ)在整個(gè)歸檔包的最后,這樣便于向包中追加新的文件。目錄結(jié)束標(biāo)識(shí)存在于整個(gè)歸檔包的結(jié)尾,用于標(biāo)記壓縮的目錄數(shù)據(jù)的結(jié)束。

數(shù)據(jù)摘要算法是一個(gè)算法函數(shù),通過該函數(shù)可以將一個(gè)很長的數(shù)據(jù)生成一個(gè)固定長度的摘要信息。數(shù)據(jù)摘要算法就是一種散列函數(shù),常見的數(shù)據(jù)摘要算法有md5、sha、crc32等。通過上述數(shù)據(jù)摘要算法對分別對所述安裝包文件中的壓縮的文件內(nèi)容源數(shù)據(jù)、壓縮的目錄源數(shù)據(jù)以及目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)進(jìn)行簽名加密,得到來源標(biāo)識(shí)數(shù)據(jù)。

s103,判斷所述安裝包文件中是否存在簽名數(shù)據(jù)塊。

簽名數(shù)據(jù)塊(signingblock)是安卓v2簽名的核心數(shù)據(jù)段,v2簽名是對安卓應(yīng)用安裝包的三段數(shù)據(jù)都分別進(jìn)行了簽名加密,然后將得到的簽名數(shù)據(jù)整合成一個(gè)數(shù)據(jù)段,命名為“signingblock”,并添加到“文件內(nèi)容源數(shù)據(jù)”和“壓縮的目錄源數(shù)據(jù)”之間,通過v2機(jī)制簽名過的數(shù)據(jù)信息都存放在該數(shù)據(jù)段中。方案執(zhí)行的過程中,需要檢查應(yīng)用程序安裝包是否包含“signingblock”(即v2簽名應(yīng)用程序安裝包)。

s104,當(dāng)所述安裝包文件中存在簽名數(shù)據(jù)塊時(shí),將所述來源標(biāo)識(shí)數(shù)據(jù)添加到所述簽名數(shù)據(jù)塊中,并生成包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件。

通過本實(shí)施例中的方法,在應(yīng)用程序安裝包文件中增加來源信息標(biāo)識(shí),在安卓系統(tǒng)上部署一套安全裝置,該裝置能夠根據(jù)應(yīng)用程序安裝包的來源信息標(biāo)識(shí)判斷其合法性,只有通過該安全裝置檢驗(yàn)的應(yīng)用程序安裝包才可以繼續(xù)安裝。而且添加的來源信息標(biāo)識(shí)并不影響應(yīng)用程序安裝包在其他安卓系統(tǒng)上的兼容性。

根據(jù)本發(fā)明另一實(shí)施例的方案,參見圖2,除了執(zhí)行圖1所對應(yīng)的實(shí)施例之外,可選擇性的,安全數(shù)據(jù)處理方法還可以包括:

s201,當(dāng)所述安裝包文件中不存在簽名數(shù)據(jù)塊時(shí),將所述來源標(biāo)識(shí)數(shù)據(jù)轉(zhuǎn)化為能夠添加到所述安裝包文件中的簽名數(shù)據(jù)塊,并生成包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件。

在實(shí)際的應(yīng)用中需要對安裝應(yīng)用包添加來源標(biāo)識(shí),參見圖3,添加來源標(biāo)識(shí)可以包括如下步驟:

s301:采用數(shù)據(jù)摘要算法分別對所述壓縮的文件內(nèi)容源數(shù)據(jù)、所述壓縮的目錄源數(shù)據(jù)以及所述目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)進(jìn)行計(jì)算,生成數(shù)據(jù)摘要。

具體的,可以對應(yīng)用程序安裝包文件進(jìn)行解析,得到其“壓縮的文件內(nèi)容源數(shù)據(jù)”、“壓縮的目錄源數(shù)據(jù)”、“目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)”三段內(nèi)容。

s302:生成與所述安裝包文件對應(yīng)的唯一公鑰私鑰對。

具體的,對步驟s301中得到的這三段內(nèi)容分別用數(shù)據(jù)摘要算法計(jì)算其數(shù)據(jù)摘要,生成獨(dú)一無二的公鑰私鑰對,作為應(yīng)用程序安裝包來源驗(yàn)證的標(biāo)識(shí)。

s303:利用所述私鑰對所述數(shù)據(jù)摘要進(jìn)行加密,得到加密數(shù)據(jù)摘要。

具體的,對步驟s302得到的數(shù)據(jù)摘要,使用私鑰進(jìn)行加密,得到加密后的數(shù)據(jù)摘要。

s304:將所述數(shù)據(jù)摘要、加密數(shù)據(jù)摘要以及包含所述公鑰信息的數(shù)字證書打包成數(shù)據(jù)段,形成所述來源標(biāo)識(shí)數(shù)據(jù)。

具體的,將步驟s302得到的數(shù)據(jù)摘要、步驟s303得到的加密后的數(shù)據(jù)摘要以及包含公鑰信息的數(shù)字證書一起打包成一個(gè)數(shù)據(jù)段。

檢查應(yīng)用程序安裝包是否包含“signingblock”(即v2簽名應(yīng)用程序安裝包),如果包含,則直接將步驟s304得到的數(shù)據(jù)段添加到這里。

如果檢查發(fā)現(xiàn)應(yīng)用程序安裝包不包含“signingblock”(即v1簽名應(yīng)用程序安裝包),則將步驟s304得到的數(shù)據(jù)段參照v2的處理方式,轉(zhuǎn)換成“signingblock”,添加到“壓縮的文件內(nèi)容源數(shù)據(jù)”和“壓縮的目錄源數(shù)據(jù)”這兩段數(shù)據(jù)之間。

通過對安裝應(yīng)用包添加來源標(biāo)識(shí),提高了應(yīng)用安裝包的兼容性。

可選的,參見圖4,本發(fā)明實(shí)施例還提供了一種安全數(shù)據(jù)處理方法,用于在校驗(yàn)來源標(biāo)識(shí),校驗(yàn)來源標(biāo)識(shí)是指在androidframework中添加定制化框架,用來校驗(yàn)被安裝的應(yīng)用程序安裝包的來源。要求不能改變安卓原生的應(yīng)用程序安裝包安裝處理,這部分工作可以要求安卓系統(tǒng)的定制廠商來做。具體的,該方法包括:

s401,獲取具有壓縮文件格式的安卓應(yīng)用程序安裝包文件。

androidpackage(apk),安卓應(yīng)用的安裝包文件,其常見形式為zip格式。由于zip格式的安裝包文件具有特定的數(shù)據(jù)格式,便于對其中的內(nèi)容進(jìn)行分析。為此,在對安裝包文件添加來源標(biāo)識(shí)之前,需要獲取符合格式要求的安裝包文件。添加來源標(biāo)識(shí)的應(yīng)用程序安裝包文件上增加能夠標(biāo)識(shí)其來源的數(shù)據(jù)信息,但不能破壞應(yīng)用程序安裝包原有結(jié)構(gòu),且保證其可以兼容目前所有的安卓系統(tǒng)??梢栽赼ndroidframework中添加定制化框架,用來校驗(yàn)被安裝的應(yīng)用程序安裝包的來源

s402,對所述安裝包文件進(jìn)行解析,獲取所述安裝包文件中的簽名數(shù)據(jù)塊。

簽名數(shù)據(jù)塊(signingblock)是安卓v2簽名的核心數(shù)據(jù)段,v2簽名是對安卓應(yīng)用安裝包的三段數(shù)據(jù)都分別進(jìn)行了簽名加密,然后將得到的簽名數(shù)據(jù)整合成一個(gè)數(shù)據(jù)段,命名為“signingblock”,并添加到“文件內(nèi)容源數(shù)據(jù)”和“壓縮的目錄源數(shù)據(jù)”之間,通過v2機(jī)制簽名過的數(shù)據(jù)信息都存放在該數(shù)據(jù)段中。方案執(zhí)行的過程中,需要檢查應(yīng)用程序安裝包是否包含“signingblock”(即v2簽名應(yīng)用程序安裝包),以及當(dāng)應(yīng)用程序安裝包是否包含“signingblock”時(shí),提取所述安裝包文件中的簽名數(shù)據(jù)塊。

s403,基于所述簽名數(shù)據(jù)塊,提取所述安裝包文件的來源消息數(shù)據(jù),并判斷所述來源消息數(shù)據(jù)是否為合法數(shù)據(jù)。

具體的,可以提取消息來源數(shù)據(jù)中保存的簽名數(shù)據(jù),利用數(shù)據(jù)摘要、加密數(shù)據(jù)摘要以及包含所述公鑰信息的數(shù)字證書來共同驗(yàn)證消息數(shù)據(jù)是否合法。

s404,當(dāng)所述來源消息數(shù)據(jù)為合法數(shù)據(jù)時(shí),按照原生應(yīng)用程序的安裝程序安裝包含來源消息數(shù)據(jù)的安裝包文件。

可選的,參見圖5,本發(fā)明實(shí)施例還提供了另一種安全數(shù)據(jù)處理方法,包含如下步驟:

s401,獲取具有壓縮文件格式的安卓應(yīng)用程序安裝包文件。

s501,檢驗(yàn)應(yīng)用程序安裝包文件中是否包含“signingblock”,如果不包含,直接拒絕安裝該應(yīng)用程序安裝包。

s502,對于通過步驟s501驗(yàn)證的應(yīng)用程序安裝包,驗(yàn)證其“signingblock”中是否包含來源信息數(shù)據(jù),如果不包含,直接拒絕安裝該應(yīng)用程序安裝包。

s503,對于通過步驟s502驗(yàn)證的應(yīng)用程序安裝包,驗(yàn)證其來源信息數(shù)據(jù)的合法性。驗(yàn)證“signingblock”中的簽名信息,判斷應(yīng)用程序安裝包文件有無被篡改;再判斷該簽名是否是信任來源供應(yīng)商的簽名。只有最終符合條件的應(yīng)用程序安裝包方可繼續(xù)安裝。。

與前述安全數(shù)據(jù)處理方法實(shí)施例相對應(yīng),本發(fā)明實(shí)施例還提供了一種安全數(shù)據(jù)處理裝置,如圖6所示,安全數(shù)據(jù)處理裝置60,包括:

第一獲取模塊601,用于獲取具有壓縮文件格式的安卓應(yīng)用程序安裝包文件。

androidpackage(apk),安卓應(yīng)用的安裝包文件,其常見形式為zip格式。由于zip格式的安裝包文件具有特定的數(shù)據(jù)格式,便于對其中的內(nèi)容進(jìn)行分析。為此,在對安裝包文件添加來源標(biāo)識(shí)之前,需要獲取符合格式要求的安裝包文件。添加來源標(biāo)識(shí)是指在應(yīng)用程序安裝包文件上增加能夠標(biāo)識(shí)其來源的數(shù)據(jù)信息,要求不能破壞應(yīng)用程序安裝包原有結(jié)構(gòu),且保證其可以兼容目前所有的安卓系統(tǒng)。這部分工作可以由第三方應(yīng)用程序安裝包的發(fā)布方來做,也可以由需要安裝該應(yīng)用程序安裝包的安卓設(shè)備制造廠商來做。

加密模塊602,用于分別對所述安裝包文件中的壓縮的文件內(nèi)容源數(shù)據(jù)、壓縮的目錄源數(shù)據(jù)以及目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)進(jìn)行簽名加密,得到來源標(biāo)識(shí)數(shù)據(jù)。

zip文件由三部分組成:壓縮的文件內(nèi)容源數(shù)據(jù)、壓縮的目錄源數(shù)據(jù)、目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)。其中,壓縮的文件內(nèi)容源數(shù)據(jù)記錄著壓縮的所有文件的內(nèi)容信息,其數(shù)據(jù)組織結(jié)構(gòu)是對于每個(gè)文件都由fileheader、filedata、datadescriptor三部分組成。對于待壓縮的目錄而言,每一個(gè)子目錄對應(yīng)一個(gè)壓縮目錄源數(shù)據(jù),記錄該目錄的描述信息。壓縮包中所有目錄源數(shù)據(jù)連續(xù)存儲(chǔ)在整個(gè)歸檔包的最后,這樣便于向包中追加新的文件。目錄結(jié)束標(biāo)識(shí)存在于整個(gè)歸檔包的結(jié)尾,用于標(biāo)記壓縮的目錄數(shù)據(jù)的結(jié)束。

數(shù)據(jù)摘要算法是一個(gè)算法函數(shù),通過該函數(shù)可以將一個(gè)很長的數(shù)據(jù)生成一個(gè)固定長度的摘要信息。數(shù)據(jù)摘要算法就是一種散列函數(shù),常見的數(shù)據(jù)摘要算法有md5、sha、crc32等。通過上述數(shù)據(jù)摘要算法對分別對所述安裝包文件中的壓縮的文件內(nèi)容源數(shù)據(jù)、壓縮的目錄源數(shù)據(jù)以及目錄結(jié)束標(biāo)識(shí)結(jié)構(gòu)進(jìn)行簽名加密,得到來源標(biāo)識(shí)數(shù)據(jù)。

第一判斷模塊603,用于判斷所述安裝包文件中是否存在簽名數(shù)據(jù)塊。

簽名數(shù)據(jù)塊(signingblock)是安卓v2簽名的核心數(shù)據(jù)段,v2簽名是對安卓應(yīng)用安裝包的三段數(shù)據(jù)都分別進(jìn)行了簽名加密,然后將得到的簽名數(shù)據(jù)整合成一個(gè)數(shù)據(jù)段,命名為“signingblock”,并添加到“文件內(nèi)容源數(shù)據(jù)”和“壓縮的目錄源數(shù)據(jù)”之間,通過v2機(jī)制簽名過的數(shù)據(jù)信息都存放在該數(shù)據(jù)段中。方案執(zhí)行的過程中,需要檢查應(yīng)用程序安裝包是否包含“signingblock”(即v2簽名應(yīng)用程序安裝包)。

生成模塊604,用于當(dāng)所述安裝包文件中存在簽名數(shù)據(jù)塊時(shí),將所述來源標(biāo)識(shí)數(shù)據(jù)添加到所述簽名數(shù)據(jù)塊中,并生成包含所述來源標(biāo)識(shí)數(shù)據(jù)的安裝包文件。

通過本實(shí)施例中的裝置,在應(yīng)用程序安裝包文件中增加來源信息標(biāo)識(shí),在安卓系統(tǒng)上部署一套安全裝置,該裝置能夠根據(jù)應(yīng)用程序安裝包的來源信息標(biāo)識(shí)判斷其合法性,只有通過該安全裝置檢驗(yàn)的應(yīng)用程序安裝包才可以繼續(xù)安裝。而且添加的來源信息標(biāo)識(shí)并不影響應(yīng)用程序安裝包在其他安卓系統(tǒng)上的兼容性。

參見圖7,除了圖6所示的結(jié)構(gòu)之外,安全數(shù)據(jù)處理裝置還可以包括分發(fā)模塊701。

與前述安全數(shù)據(jù)處理方法實(shí)施例相對應(yīng),本發(fā)明實(shí)施例還提供了一種安全數(shù)據(jù)處理裝置,如圖8所示,安全數(shù)據(jù)處理裝置80,包括:

第二獲取模塊801,用于獲取具有壓縮文件格式的安卓應(yīng)用程序安裝包文件。

androidpackage(apk),安卓應(yīng)用的安裝包文件,其常見形式為zip格式。由于zip格式的安裝包文件具有特定的數(shù)據(jù)格式,便于對其中的內(nèi)容進(jìn)行分析。為此,在對安裝包文件添加來源標(biāo)識(shí)之前,需要獲取符合格式要求的安裝包文件。添加來源標(biāo)識(shí)的應(yīng)用程序安裝包文件上增加能夠標(biāo)識(shí)其來源的數(shù)據(jù)信息,但不能破壞應(yīng)用程序安裝包原有結(jié)構(gòu),且保證其可以兼容目前所有的安卓系統(tǒng)。可以在androidframework中添加定制化框架,用來校驗(yàn)被安裝的應(yīng)用程序安裝包的來源

第三獲取模塊802,用于對所述安裝包文件進(jìn)行解析,獲取所述安裝包文件中的簽名數(shù)據(jù)塊。

簽名數(shù)據(jù)塊(signingblock)是安卓v2簽名的核心數(shù)據(jù)段,v2簽名是對安卓應(yīng)用安裝包的三段數(shù)據(jù)都分別進(jìn)行了簽名加密,然后將得到的簽名數(shù)據(jù)整合成一個(gè)數(shù)據(jù)段,命名為“signingblock”,并添加到“文件內(nèi)容源數(shù)據(jù)”和“壓縮的目錄源數(shù)據(jù)”之間,通過v2機(jī)制簽名過的數(shù)據(jù)信息都存放在該數(shù)據(jù)段中。方案執(zhí)行的過程中,需要檢查應(yīng)用程序安裝包是否包含“signingblock”(即v2簽名應(yīng)用程序安裝包),以及當(dāng)應(yīng)用程序安裝包是否包含“signingblock”時(shí),提取所述安裝包文件中的簽名數(shù)據(jù)塊。

執(zhí)行模塊803,用于基于所述簽名數(shù)據(jù)塊,提取所述安裝包文件的來源消息數(shù)據(jù),并判斷所述來源消息數(shù)據(jù)是否為合法數(shù)據(jù)。

具體的,可以提取消息來源數(shù)據(jù)中保存的簽名數(shù)據(jù),利用數(shù)據(jù)摘要、加密數(shù)據(jù)摘要以及包含所述公鑰信息的數(shù)字證書來共同驗(yàn)證消息數(shù)據(jù)是否合法。

安裝模塊804,用于當(dāng)所述來源消息數(shù)據(jù)為合法數(shù)據(jù)時(shí),按照原生應(yīng)用程序的安裝程序安裝包含來源消息數(shù)據(jù)的安裝包文件。

可選的,所述第三獲取模塊,還包括:

第二判斷模塊,用于判斷所述安裝包文件中是否含有簽名數(shù)據(jù)塊;

第一拒絕模塊,用于當(dāng)所述安裝包文件中不含有簽名數(shù)據(jù)塊時(shí),拒絕所述安裝包文件的安裝操作。

可選的,所述執(zhí)行模塊,還包括:

第三判斷模塊,用于判斷所述安裝包文件中是否含有來源消息數(shù)據(jù);

第二拒絕模塊,用于當(dāng)所述安裝包文件中不含有來源消息數(shù)據(jù)時(shí),拒絕所述安裝包文件的安裝操作。

可選的,所述裝置80還包括:

第三拒絕模塊,用于當(dāng)所述來源消息數(shù)據(jù)為非法數(shù)據(jù)時(shí),拒絕所述安裝包文件的安裝操作。

上述實(shí)施例中各功能模塊所執(zhí)行的功能及內(nèi)容與其對應(yīng)的方法實(shí)施例一一對應(yīng),在此不再贅述。

圖9示出了本發(fā)明實(shí)施例提供的電子設(shè)備90的結(jié)構(gòu)示意圖,電子設(shè)備90包括至少一個(gè)處理器901(例如cpu),至少一個(gè)輸入輸出接口904,存儲(chǔ)器902,和至少一個(gè)通信總線903,用于實(shí)現(xiàn)這些部件之間的連接通信。至少一個(gè)處理器901用于執(zhí)行存儲(chǔ)器902中存儲(chǔ)的可執(zhí)行模塊,例如計(jì)算機(jī)程序。存儲(chǔ)器902為非暫態(tài)存儲(chǔ)器(non-transitorymemory),其可以包含易失性存儲(chǔ)器,例如高速隨機(jī)存取存儲(chǔ)器(ram:randomaccessmemory),也可以包括非易失性存儲(chǔ)器(non-volatilememory),例如至少一個(gè)磁盤存儲(chǔ)器。通過至少一個(gè)輸入輸出接口904(可以是有線或者無線通信接口)實(shí)現(xiàn)與至少一個(gè)其他網(wǎng)元之間的通信連接。

在一些實(shí)施方式中,存儲(chǔ)器902存儲(chǔ)了程序9021,處理器901執(zhí)行程序9021,用于執(zhí)行前述任一安全數(shù)據(jù)處理方法的實(shí)施例。

該電子設(shè)備可以以多種形式存在,包括但不限于:

(1)移動(dòng)通信設(shè)備:這類設(shè)備的特點(diǎn)是具備移動(dòng)通信功能,并且以提供話音、數(shù)據(jù)通信為主要目標(biāo)。這類終端包括:智能手機(jī)(例如iphone)、多媒體手機(jī)、功能性手機(jī),以及低端手機(jī)等。

(2)超移動(dòng)個(gè)人計(jì)算機(jī)設(shè)備:這類設(shè)備屬于個(gè)人計(jì)算機(jī)的范疇,有計(jì)算和處理功能,一般也具備移動(dòng)上網(wǎng)特性。這類終端包括:pda、mid和umpc設(shè)備等,例如ipad。

(3)便攜式娛樂設(shè)備:這類設(shè)備可以顯示和播放多媒體內(nèi)容。該類設(shè)備包括:音頻、視頻播放器(例如ipod),掌上游戲機(jī),電子書,以及智能玩具和便攜式車載導(dǎo)航設(shè)備。

(4)特定服務(wù)器:提供計(jì)算服務(wù)的設(shè)備,服務(wù)器的構(gòu)成包括處理器、硬盤、內(nèi)存、系統(tǒng)總線等,服務(wù)器和通用的計(jì)算機(jī)架構(gòu)類似,但是由于需要提供高可靠的服務(wù),因此在處理能力、穩(wěn)定性、可靠性、安全性、可擴(kuò)展性、可管理性等方面要求較高。

(5)其他具有數(shù)據(jù)交互功能的電子設(shè)備。

需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將

一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些。

實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。

本說明書中的各個(gè)實(shí)施例均采用相關(guān)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見即可,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處。

尤其,對于裝置實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。

在流程圖中表示或在此以其他方式描述的邏輯和/或步驟,例如,可以被認(rèn)為是用于實(shí)現(xiàn)邏輯功能的可執(zhí)行指令的定序列表,可以具體實(shí)現(xiàn)在任何計(jì)算機(jī)可讀介質(zhì)中,以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備(如基于計(jì)算機(jī)的系統(tǒng)、包括處理器的系統(tǒng)或其他可以從指令執(zhí)行系統(tǒng)、裝置或設(shè)備取指令并執(zhí)行指令的系統(tǒng))使用,或結(jié)合這些指令執(zhí)行系統(tǒng)、裝置或設(shè)備而使用。就本說明書而言,″計(jì)算機(jī)可讀介質(zhì)″可以是任何可以包含、存儲(chǔ)、通信、傳播或傳輸程序以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備或結(jié)合這些指令執(zhí)行系統(tǒng)、裝置或設(shè)備而使用的裝置。計(jì)算機(jī)可讀介質(zhì)的更具體的示例(非窮盡性列表)包括以下:具有一個(gè)或多個(gè)布線的電連接部(電子裝置),便攜式計(jì)算機(jī)盤盒(磁裝置),隨機(jī)存取存儲(chǔ)器(ram),只讀存儲(chǔ)器(rom),可擦除可編輯只讀存儲(chǔ)器(eprom或閃速存儲(chǔ)器),光纖裝置,以及便攜式光盤只讀存儲(chǔ)器(cdrom)。另外,計(jì)算機(jī)可讀介質(zhì)甚至可以是可在其上打印所述程序的紙或其他合適的介質(zhì),因?yàn)榭梢岳缤ㄟ^對紙或其他介質(zhì)進(jìn)行光學(xué)掃描,接著進(jìn)行編輯、解譯或必要時(shí)以其他合適方式進(jìn)行處理來以電子方式獲得所述程序,然后將其存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)器中。

應(yīng)當(dāng)理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來實(shí)現(xiàn)。

在上述實(shí)施方式中,多個(gè)步驟或方法可以用存儲(chǔ)在存儲(chǔ)器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來實(shí)現(xiàn)。例如,如果用硬件來實(shí)現(xiàn),和在另一實(shí)施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項(xiàng)或他們的組合來實(shí)現(xiàn):具有用于對數(shù)據(jù)信號(hào)實(shí)現(xiàn)邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(pga),現(xiàn)場可編程門陣列(fpga)等。

以上所述,僅為本發(fā)明的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以權(quán)利要求的保護(hù)范圍為準(zhǔn)。

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