数字签名(Digital Signature)相对于手写签名,是指利用数学方法及其密码算法对视频、音频、图像、动画、文本等数字媒体进行关键信息提取和加密处理,以形成一组特定的符号或代码(即数字签名),并将其附加在数字媒体中,用于标识签发者的身份以及签发者对于数字媒体的认可,并能被接收者用来验证数字媒体在传输过程中是否被篡改或伪造。 

      数字签名技术建立在公开密钥加密技术(非对称密钥加密技术)的基础之上,其工作流程如图28所示。消息由发送方A传输到接收方B,发送方A首先利用哈希(Hash)函数对消息进行运算处理,生成消息摘要(MD, Message Digest),然后利用公钥密码体制和A的私钥对消息摘要进行加密,即生成数字签名,随后将原始消息与数字签名一起通过公共信道传送给接收方B。

      接收方B接收到带有数字签名的消息之后,一方面利用公钥密码体制及A的公钥对数字签名进行解密,得到原始消息摘要,另一方面使用与发送方A相同的哈希函数对传送来的消息重新计算摘要,并比较两个摘要是否相等。如果相等,表明消息在传送过程中未被篡改,并能确认其来自发送方A,即签名有效;如果不相等,表明消息在传送过程中被篡改,即签名无效。

blob.png

      数字签名的本质是验证数字媒体来源的真实性,防止其在传输过程中被篡改或伪造,从而有效地保证数据的真实性与完整性。在数字电影领域,数字签名技术主要应用于合成播放列表(CPL)、打包列表(PKL)、密钥传送消息(KDM)及事件日志(LOG)中。通常采用RSA非对称密钥加密算法进行数字签名。