国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SM2/SM3國密算法的數(shù)字電影發(fā)行密鑰實現(xiàn)方法

2022-10-08 01:46李雪偉劉知一
現(xiàn)代電影技術(shù) 2022年8期
關(guān)鍵詞:加密算法密鑰加密

李雪偉 劉知一

中國電影科學(xué)技術(shù)研究所 (中央宣傳部電影技術(shù)質(zhì)量檢測所),北京 100086

1 引言

近年來,中國電影市場飛速發(fā)展,觀影人數(shù)的激增,觀影需求的多元化、個性化發(fā)展,為電影版權(quán)保護帶來了更大的挑戰(zhàn)。由于電影密鑰傳送消息KDM(Key Delivery Message)中攜帶著節(jié)目內(nèi)容密鑰,所以KDM是電影版權(quán)保護的關(guān)鍵。現(xiàn)有的保障KDM安全的技術(shù)采用了國外密碼算法:非對稱加密算法RSA-2048算法、摘要算法SHA-256算法,這些算法均受國外專利技術(shù)保護。

為推動國密算法在電影行業(yè)的應(yīng)用,保證國家關(guān)鍵信息基礎(chǔ)設(shè)施安全和自主可控,國家密碼管理局于2012年發(fā)布了國密標準,包括SM1、SM2、SM3、SM4、SM7、SM9和祖沖之密碼算法(ZUC)等,以替代國際加密算法,其中SM2對應(yīng)RSA算法,SM3對應(yīng)SHA算法。

2020年1月1日, 《中華人民共和國密碼法》正式實施,其中第二十一條規(guī)定:國家鼓勵商用密碼技術(shù)的研究開發(fā)、學(xué)術(shù)交流、成果轉(zhuǎn)化和推廣應(yīng)用,鼓勵和促進商用密碼產(chǎn)業(yè)發(fā)展。為踐行 《中華人民共和國密碼法》中鼓勵國家商用密碼技術(shù)開發(fā)和推廣應(yīng)用的精神,本文提出了基于SM2/SM3算法的KDM制作模型,該模型利用國密數(shù)字證書和國密算法SM2、SM3算法制作KDM,并提出了KDM結(jié)果驗證模型,以驗證生成KDM結(jié)果的正確性。

2 相關(guān)工作

國密算法SM2/SM3算法自發(fā)布之日起,引起了許多學(xué)者的關(guān)注。林子康將國密算法SM2/SM3應(yīng)用于移動端的端到端加密通訊系統(tǒng),該系統(tǒng)利用公鑰加密算法SM2、對稱加密算法SM4、雜湊算法SM3對實時文字、實時音頻和實時視頻進行加密實現(xiàn)。楊春雷將國密算法SM2/SM3應(yīng)用于央行國庫信息系統(tǒng)領(lǐng)域,利用SM2/SM3算法實現(xiàn)數(shù)字簽名服務(wù),建立以國產(chǎn)商業(yè)密碼為主要支撐的國庫信息安全保障體系,實現(xiàn)底層密碼算法自主可控。黎水林等將SM2/SM3算法應(yīng)用在政府網(wǎng)站中,利用SM2算法實現(xiàn)身份認證,采用SM3算法對用戶口令等信息進行加密存儲,實現(xiàn)了數(shù)據(jù)傳輸通道的安全性、重要數(shù)據(jù)的完整性和保密性、管理用戶的真實性等安全需求。蘇彬庭等將SM3算法應(yīng)用于物聯(lián)網(wǎng)中,使用SM3、SM4算法設(shè)計實現(xiàn)了物聯(lián)網(wǎng)終端的身份鑒別系統(tǒng),確保了數(shù)據(jù)的完整性和保密性。王良田將SM2算法應(yīng)用在數(shù)據(jù)存儲及碼流數(shù)據(jù)傳輸中,利用SM2、SM4等國密算法實現(xiàn)了碼流信息的加密、解密、驗簽。劉思宇等將SM2/SM3算法應(yīng)用于二維碼驗票系統(tǒng),利用SM4算法對票據(jù)信息進行加密,然后利用SM2算法對SM4算法生成的對稱密鑰進行加密,之后利用SM2、SM3算法對票據(jù)進行簽名,確保了票據(jù)信息的數(shù)據(jù)安全。陳平等將SM2算法應(yīng)用于電子病歷中,利用SM2算法實現(xiàn)數(shù)字簽名服務(wù),確保數(shù)據(jù)完整和隱私保護。

商用密碼的應(yīng)用引起了廣電總局的高度重視,廣電總局于2017年啟動了數(shù)字版權(quán)保護、應(yīng)急廣播和可下載條件接收系統(tǒng)密碼應(yīng)用試點,并在廣播電視科學(xué)研究院成立了廣電影視國產(chǎn)密碼實驗室。在廣電總局的號召下,各系統(tǒng)開始進行國密算法的改造應(yīng)用。鄒喜等將SM2/SM3算法融入ChinaDRM標準,利用SM2加密算法和SM3雜湊算法實現(xiàn)許可證數(shù)據(jù)的數(shù)字簽名和驗證,提升了DRM系統(tǒng)的可靠性。劉夢雨等將SM2/SM3應(yīng)用于多媒體版權(quán)保護領(lǐng)域,利用SM2、SM3、SM4算法控制內(nèi)容的加密、許可證的安全分發(fā)及用戶的解密,防止內(nèi)容的濫用和隨意分享,達到數(shù)字內(nèi)容的安全使用控制與數(shù)字版權(quán)保護功能。黃大池等將SM2/SM3算法應(yīng)用于應(yīng)急廣播村村響系統(tǒng)中,利用SM2、SM3算法對所有控制指令、消息報文的傳輸進行數(shù)字簽名,保證了可信應(yīng)急廣播消息的傳輸安全。

雖然國密算法SM2/SM3自發(fā)布之日起,就被陸續(xù)應(yīng)用在各個領(lǐng)域,但是數(shù)字電影領(lǐng)域中SM2/SM3還未涉及。

國內(nèi)學(xué)者對KDM的研究主要集中在提高KDM制作的靈活性及并行化處理能力上,如王木旺等提出了一種數(shù)字電影KDM再封裝制作方法,該方法不通過數(shù)字電影編碼器,直接由發(fā)行方對授權(quán)影院生成新的KDM,滿足了影院市場放映的靈活性需求。張鑫提出了一種基于Hadoop的KDM并行化制作模型,設(shè)計實現(xiàn)了基于Java的多線程制作方案,實現(xiàn)了任意多節(jié)點并行化、多線程制作KDM,大幅提高了KDM制作效率。王木旺利用集群負載均衡技術(shù),搭建了KDM授權(quán)業(yè)務(wù)服務(wù)器集群和負載均衡系統(tǒng),提高了KDM授權(quán)業(yè)務(wù)的處理能力和即時響應(yīng)用戶的能力。

與提高KDM制作的并行化處理能力的研究不同,本文將國密算法SM2/SM3應(yīng)用在KDM制作中,既提高了單個KDM制作的效率,又實現(xiàn)了電影領(lǐng)域加解密算法的自主可控。

3 基于SM2 /SM3 算法的KDM實現(xiàn)

3.1 KDM介紹

密鑰傳送消息(Key Delivery Message,KDM),是一種基于影院外部消息 (Extra-Theater Message,ETM)定義的XML文件,主要包括3個基本信息:合成播放列表CPL(Composition Play List)的內(nèi)容密鑰;內(nèi)容密鑰參數(shù)——主要是密鑰使用的日期/時間窗口;可信設(shè)備列表 (TDL),指定了允許使用內(nèi)容密鑰的設(shè)備。

KDM文件由3部分構(gòu)成:公開部分、私有部分和簽名部分。其中公開部分主要描述了KDM文件的基本信息,如KDM標識、KDM簽發(fā)者信息、KDM接收者信息、影片名稱、合成播放列表的標識、KDM有效期等,這些信息供用戶初步篩查KDM是否正確。私有部分描述了KDM文件的關(guān)鍵信息,如AES節(jié)目密鑰、簽名者證書指紋等,供接收設(shè)備解密得到AES節(jié)目密鑰,以解密播放DCP。簽名部分描述了KDM文件的數(shù)字簽名信息,如簽名值,簽名者的證書鏈等,供接收設(shè)備驗證KDM來源是否可靠,以便該設(shè)備信任接收的KDM。具體文件結(jié)構(gòu)如圖1所示。

圖1 KDM文件結(jié)構(gòu)

3.2 基于SM2/SM3算法的KDM制作模型

基于KDM的文件構(gòu)成,本文提出了基于SM2/SM3算法的KDM制作模型,利用開源密碼工具箱GmSSL工具生成SM2私鑰和國密X.509數(shù)字證書,之后基于母KDM和國密數(shù)字證書生成國密KDM文件,具體如圖2所示。

圖2 基于SM2/SM3算法的KDM制作模型

現(xiàn)將基于SM2/SM3算法的KDM制作模型生成KDM流程和具體實現(xiàn)分析如下:

3.2.1 KDM公開部分制作

(1)模型制作流程

①解析母KDM文件,得到影片基本信息 (影片名稱、CPLUUID)和內(nèi)容密鑰的基本信息 (內(nèi)容密鑰類型、內(nèi)容密鑰UUID);

②解析制作者國密證書和設(shè)備國密證書,得到KDM簽名者信息和KDM接收者信息;

③模型內(nèi)部自動生成KDM的基本信息:KDM UUID、KDM發(fā)行時間、KDM開始時間 (UTC格式)和結(jié)束時間 (UTC格式)。

(2)具體實現(xiàn)過程

KDM公開部分,即標簽<AuthenticatedPublic>部分,該標簽主要包括:MessageId、MessageType、IssueDate、Signer、Recipient、CompositionPlaylistId、Content TitleText、Content KeysNot ValidBefore、Content KeysNot Valid After、Key Type、KeyId等子標簽。

根據(jù)基于SM2/SM3算法的KDM制作模型,KDM公開部分實現(xiàn)過程如下:

①解析母KDM得到CompositionPlaylistId、Content TitleText、Key Type、KeyId;

②解析制作者國密數(shù)字證書,得到Signer值;

③解析接收方國密數(shù)字證書,得到Recipient值;

④模型自動生成MessageId及IssueDate;

⑤本模型中Message Type值為固定值:http://www.smpte-ra.org/430-1/2006/KDM#kdmkey-type;

⑥Content KeysNot ValidBefore與Content Keys Not Valid After由模型使用者自定義,模型將其轉(zhuǎn)為UTC時間。

3.2.2 KDM私有部分制作

(1)模型制作流程

①解析母KDM文件,判斷母KDM文件是否使用國密加密算法加密,如果是,則跳轉(zhuǎn)到步驟②執(zhí)行,否則跳轉(zhuǎn)到步驟③執(zhí)行;

②使用SM2算法解密母KDM文件得到AES節(jié)目密鑰;

③使用RSA算法解密母KDM文件得到AES節(jié)目密鑰;

④解析制作者國密證書,得到簽名者證書指紋;

⑤將固定值StructureID與上述步驟得到的簽名者證書指紋、CPLUUID、內(nèi)容密鑰類型、內(nèi)容密鑰UUID、KDM開始時間 (UTC格式)、KDM結(jié)束時間 (UTC格式)、AES節(jié)目密鑰按順序進行拼接,之后利用SM2加密算法加密該拼接串得到私有部分中的密文。

(2)具體實現(xiàn)過程

KDM私有部分,即標簽<AuthenticatedPrivate>部分,該標簽主要包括Encryption Method、Cipher Data。根據(jù)基于SM2/SM3算法的KDM制作模型,KDM私有部分實現(xiàn)過程如下:

①本模型中Encryption Method的值為: “http://www.w3.org/2001/04/xmlenc#SM2”;

②本模型中Cipher Data值為表1中8個字段的拼接串經(jīng)SM2加密算法加密后得到的密文BASE64值,其中:

表1 Cipher Data的明文數(shù)據(jù)

a.Structure ID為固定值:f1.dc.12.44.60.16.9a.0e.85.bc.30.06.42.f8.66.ab;

b.Certificate Thumbprint值從簽名者國密證書中解析得到;

c.CompositionPlaylistId、Key Type、KeyId值從母KDM中解析得到;

d.Not Valid Before與Not Valid After由模型使用者自定義該時間,模型轉(zhuǎn)為UTC時間格式;

e.AES Content Decryption Key值為利用SM2私鑰解密母KDM得到。

3.2.3 KDM簽名部分制作

(1)模型制作流程

①對KDM公開部分和私有部分分別進行C14n規(guī)范化;

②利用SM3算法對步驟①規(guī)范后的內(nèi)容分別計算摘要值;

③對步驟②得到的摘要部分進行C14n規(guī)范化;

④利用SM2簽名算法對步驟③的內(nèi)容進行簽名得到簽名值;

⑤解析制作者國密證書鏈,得到制作者國密證書鏈信息;

⑥將步驟④與步驟⑤進行拼接得到KDM簽名部分。

(2)具體實現(xiàn)過程

KDM簽名部分,即標簽<Signature>部分,該標簽主要包括Canonicalization Method、Signature Method、Digest Method、Digest Value、Signature Value、KeyInfo、X.509Data。

根據(jù)基于SM2/SM3算法的KDM制作模型,KDM私有部分實現(xiàn)過程如下:

①本模型中Canonicalization Method值為"http://www.w3.org/TR/2001/REC-xml-c14n-2001 0315#WithComments";

②Signature Method值為"http://www.w3.org/2001/04/xmldsig-more#SM3WithSM2";

③Digest Method值為 “http://www.w3.org/2001/04/xmlenc#SM3”;

④Digest Value值為:對待計算摘要值的部分進行c14n規(guī)范化,之后利用SM3算法計算規(guī)范化內(nèi)容的摘要值;

⑤SignatureValue值為:對摘要部分進行c14n規(guī)范化,之后利用SM2簽名算法計算簽名值;

⑥KeyInfo值為解析制作者簽名證書鏈,得到簽名證書鏈信息;

⑦X.509Data值為簽名證書鏈上的每一個證書信息。

4 實驗結(jié)果及對比分析

4.1 實驗結(jié)果

由于現(xiàn)有放映設(shè)備使用的KDM均是利用國際通用密碼算法生成的,基于SM2/SM3算法的KDM制作模型 (以下簡稱:國密模型)生成的KDM文件無法在現(xiàn)有放映設(shè)備中驗證其正確性,為了驗證國密模型的結(jié)果正確性,本文提出了KDM結(jié)果驗證模型,如圖3所示。

圖3 KDM結(jié)果驗證模型圖

本文首先驗證基于國際通用密碼算法的KDM制作模型 (以下簡稱:國際通用模型)生成的KDM文件是正確的,之后將國際通用模型和國密模型生成的KDM文件的解密結(jié)果進行對比,如果結(jié)果一致則本文提出的國密模型生成的KDM文件結(jié)果正確。具體驗證方法如下:

(1)利用專業(yè)電影打包工具Clipster等對影片進行加密打包,生成母KDM和已加密影片;

(2)利用國際通用模型和步驟 (1)生成的母KDM制作生成KDM文件;

(3)將步驟 (2)生成的KDM文件和步驟 (1)生成的已加密影片導(dǎo)入到影院專業(yè)放映設(shè)備中;

(4)利用影院專業(yè)放映設(shè)備播放該加密影片,播放成功,則步驟 (2)生成的KDM文件是正確的,播放失敗,則步驟 (2)生成的KDM文件是錯誤的;

(5)利用RSA私鑰對步驟 (2)生成的正確的KDM文件進行解密解析,分別得到表1中8個字段值;

(6)利用國密模型和步驟 (1)生成的母KDM制作生成KDM文件;

(7)利用SM2私鑰對步驟 (6)生成的KDM文件進行解密解析,分別得到表1中8個字段值;

(8)對比步驟 (5)和步驟 (7)中8個字段的值,如果其中Structure ID、CompositionPlaylistId、Key Type、KeyId、AES Content Decryption Key 5個字段值分別相等,則步驟 (6)生成的KDM文件是正確的,否則錯誤。

基于以上KDM結(jié)果驗證方法,本文對國密模型生成的KDM文件結(jié)果進行驗證,實驗結(jié)果表明該模型生成的KDM文件是正確的。

4.2 實驗對比分析

4.2.1 安全性

由于SM2算法是我國在ECC算法基礎(chǔ)上自主研制的,該算法推薦了一條256比特的曲線作為標準曲線,它在安全性和實現(xiàn)效率方面相當(dāng)于256位的ECC算法。有研究表明在相同安全強度下,ECC算法比RSA算法所需的密鑰規(guī)模要小得多,160位的ECC算法與1024位的RSA算法安全水平相當(dāng),210位的ECC算法與2048位的RSA算法安全水平相當(dāng)。因此SM2算法的安全強度高于RSA-2048算法,大致與RSA-3072相當(dāng)。

學(xué)者汪朝輝等對SM2簽名算法和RSA簽名算法的實現(xiàn)效率進行了對比,發(fā)現(xiàn)在相同的硬件環(huán)境下,SM2簽名118次/s,RSA-1024簽名76次/s,RSA-2048簽名13次/s。SM2簽名效率高于RSA簽名效率。

綜上所述,SM2算法與RSA算法相比,有以下優(yōu)勢:

(1)安全性高:256位的SM2算法密碼強度已超過RSA-2048。

(2)密鑰短:SM2算法用的密鑰長度一般是256位,而RSA算法通常需要2048位。

(3)簽名速度快:同等安全強度下,SM2簽名算法效率高于RSA簽名算法。

因此,本文國密算法模型的安全性高于國際通用密碼算法模型的安全性。

4.2.2 制作效率

為了證明國密模型生成效率高于國際通用模型,本文分別對兩個模型制作KDM的時間進行了統(tǒng)計與對比,統(tǒng)計維度分別為1個、100個、1000個、3000個、5000個,實驗環(huán)境如表2所示,實驗結(jié)果如表3所示。

表2 實驗環(huán)境

表3 國密模型與國際通用模型制作生成KDM的時間 (單位:秒)

從表3的結(jié)果可以看出,國密模型制作效率高于國際通用模型。為了進一步分析國密模型與國際通用模型,本文對模型中涉及的解密算法、加密算法、數(shù)字簽名算法分別進行了對比。結(jié)果如表4、表5所示。

表4 國密模型生成KDM時間 (單位:秒)

表5 國際通用模型生成KDM時間 (單位:秒)

從以上的實驗對比結(jié)果可以發(fā)現(xiàn):國密模型制作效率高于國際通用模型。

5 結(jié)語

本文基于KDM的文件構(gòu)成,提出了基于SM2/SM3算法的KDM制作模型,利用母KDM和國密數(shù)字證書生成KDM文件,其中利用國密SM2加密算法對AES節(jié)目密鑰進行加密,利用SM2signwith-SM3簽名技術(shù)對KDM文件進行數(shù)字簽名。為驗證本文提出的國密模型的正確性,本文提出了KDM結(jié)果驗證模型,驗證了本文國密模型生成的KDM文件結(jié)果正確。實驗表明,本文提出的國密模型在安全性和制作效率方面,均高于國際通用模型。

密鑰傳送消息KDM是電影版權(quán)保護的關(guān)鍵技術(shù),本文提出的基于SM2/SM3算法的KDM制作模型,易于實現(xiàn),能夠在現(xiàn)有國際通用模型的基礎(chǔ)上實現(xiàn)平滑過渡,為電影領(lǐng)域安全自主可控提供了技術(shù)參考。

本文通過將國密算法SM2/SM3應(yīng)用于KDM中,對于普及國產(chǎn)加密算法,保護電影內(nèi)容安全具有重要意義。?

猜你喜歡
加密算法密鑰加密
幻中邂逅之金色密鑰
幻中邂逅之金色密鑰
保護數(shù)據(jù)按需創(chuàng)建多種加密磁盤
谷歌禁止加密貨幣應(yīng)用程序
Android密鑰庫簡析
加密與解密
教育云平臺的敏感信息保護技術(shù)研究
一種改進的加密算法在空調(diào)群控系統(tǒng)中的研究與實現(xiàn)
基于Jave的AES加密算法的實現(xiàn)
AES加密算法的實現(xiàn)及應(yīng)用
苏州市| 九江县| 门源| 东城区| 玉门市| 黄龙县| 临夏市| 定南县| 富源县| 烟台市| 玛多县| 英超| 麦盖提县| 依安县| 昭平县| 建平县| 永修县| 阜平县| 雷山县| 砚山县| 治多县| 普安县| 上高县| 五大连池市| 黄山市| 改则县| 岳阳市| 张家港市| 离岛区| 郯城县| 正宁县| 密山市| 内乡县| 漾濞| 柳林县| 万载县| 西畴县| 元朗区| 谢通门县| 毕节市| 海口市|