基于云儲存的加密技術(shù)對媒體文件加密的研究

云存儲指通過集群應(yīng)用、網(wǎng)格技術(shù)或分布式文件系統(tǒng)等功能,將網(wǎng)絡(luò)中大量各種不同類型的存儲設(shè)備通過應(yīng)用軟件集合起來協(xié)同工作,共同對外提供數(shù)據(jù)存儲和業(yè)務(wù)訪問功能的一個系統(tǒng)。使用者使用云存儲,是使用整個云存儲系統(tǒng)帶來的一種數(shù)據(jù)訪問服務(wù)。數(shù)據(jù)加密技術(shù)保證云存儲中的數(shù)據(jù)不會被未授權(quán)的用戶所訪問,因?yàn)榕c普通的視頻存儲相比,云存儲系統(tǒng)并不會直接給用戶提供相應(yīng)的資源文件的url。而是通過用戶提交相應(yīng)的認(rèn)證信息后,結(jié)合用戶的ip,用戶的訪問速度,隨機(jī)選擇云中的某個多媒體文件并且提供相應(yīng)的流給客戶端的播放器。

1、?多媒體文件的存儲方式

多媒體文件在云存儲的中的存儲方式,主要采用分布式的存儲方式。首先將完整的多媒體f進(jìn)行分割成n份,每份用fn表示。同時分配給每一個fn一個唯一的標(biāo)準(zhǔn)符例如uuid(universally?unique?identifier)。在控制臺,我們記錄一個虛擬文件類fileclass,主要包括文件名、文件id、文件大小、第一塊文件id、最后一塊文件id。每一個fn也會對應(yīng)一個fnclass主要包括id、fn大小、下一塊fnid以及fn的存儲地址。如圖1所示。

采用分布式的文件存儲方式,使同一個文件分成n份,只有通過一定的算法和獲取到映射對象的情況下才能重新組裝成一個完整的多媒體文件。這樣保證了即使在知道資源路徑的條件下,也不能獲取整個多媒體文件使截獲數(shù)據(jù)失去意義。圖2是多媒體文件分布式存儲的示意圖。

2、?多媒體文件訪問控制

多媒體文件以分布式方式存儲在云中后,雖然對整個多媒體文件傳輸?shù)陌踩杂辛撕艽蟮奶岣?,但是對于文件fn的訪問控制是保護(hù)多媒體文件不被截獲的主要手段。保護(hù)fn的訪問的合法性主要在于服務(wù)器端和客戶通過一定的加密算法來完成。

系統(tǒng)為每個客戶端分配一個id和密鑰,用于保證用戶的操作是經(jīng)過授權(quán),合法的。access?key?id為系統(tǒng)加密算法分配的id;secret?access?key為系統(tǒng)加密算法分配的密鑰,專用的客戶端程序可以保證該密鑰不泄露出去。所有對fn的操作都需要使用secret?access?key簽名,系統(tǒng)根據(jù)id獲得服務(wù)端的secret?access?key,重新計(jì)算一次簽名,如果簽名結(jié)果相匹配則說明該請求是合法的。否則系統(tǒng)認(rèn)為請求是無效的返回錯誤信息。

用戶可以在http請求中增加authorization(授權(quán))的head來包含簽名信息,表明這個消息已被授權(quán)。如果用戶的請求中沒有authentication字段,則認(rèn)為是匿名訪問。

具體實(shí)現(xiàn)方式是如系統(tǒng)分配給a用戶access?key?id?為?aid,?secret?access?key為akey。其中akey只有用戶端和服務(wù)器知道。這些操作對于用戶是透明的??蛻舳藢⑷缦?/p>

注:content-md5表示請求文件的id值,?content-type表示請求內(nèi)容的類型,date表示此次操作的時間,且必須為gmt格式?canonicalizedossheaders表示?http中的object?user?meta組合如果請求中的date時間和服務(wù)器的時間差該多媒體播放時長以上,服務(wù)器將拒絕該服務(wù),并返回相應(yīng)的錯誤碼。

890-=利用云存儲技術(shù)的發(fā)展優(yōu)勢,以及云存儲的比較成熟的訪問控制策略來保護(hù)多媒體文件不被截獲、盜鏈等違規(guī)操作。為保護(hù)多媒體文件的傳播提供了思路,通過實(shí)驗(yàn)系統(tǒng)的試用表明了采用云存儲和云訪問控制的方式能很好的保護(hù)多媒體文件進(jìn)行傳輸。