可分级视频比特流的加密/解密方法及系统的制作方法

文档序号:7971554阅读:224来源:国知局
专利名称:可分级视频比特流的加密/解密方法及系统的制作方法
技术领域
本发明涉及在可分级视频编码(SVC)中加密,更具体地说,涉及在加密和解密处理期间用于保持可分级性功能的可分级视频加密方法,以及基于可分级视频加密方法在可分级视频比特流中用于特定比特流的条件访问控制的方法。
背景技术
可分级视频编码(SVC)是新引入的概念,它包括空域可分级性、时域可分级性和质量可分级性。根据空域可分级性,将图像分为具有较低空域分辨率的基本层(例如,标准清晰度电视)和具有较高空域分辨率的增强层(例如,高清晰度电视)。首先对基本层编码,并且对基本层和增强层的插入分量之间的不同的分量编码,从而将两个编码的比特流一起发送。当发送经受这种处理的图像时,标准清晰度电视可基于它自己的屏幕质量通过对基本层比特流解码来显示用于高清晰度电视的广播,而高清晰度电视可通过对两种比特流解码来再现高清晰度电视。数字电视和高清晰度电视可接收数字电视广播和高清晰度电视广播,从而两者之间具有完全的兼容性。
与空域可分级性相似,时域可分级性和质量可分级性将图像分为基本层和增强层,并且发送基本层的编码的比特流以及基本层和增强层的扩展分量之间的不同的分量的编码的比特流。然而,在时域可分级性和质量可分级性的情况下,不同之处在于时域可分级性中沿时间轴(即,屏幕前进方向)分为基本层和增强层,质量可分级性基于每个像素的比特表示中的分辨率分为基本层和增强层。
ITU-T和ISO/IEC的联合视频组(JVT)将当基于H.264/MPEG-4AVC发送视频时能够保证服务质量(QoS)的SVC方法标准化。这种SVC方法显示了当各种访问消耗视频时较强的适应性,这是现有编码方案不能提供的。
根据现有的MPEG-4编码技术,每当有必要使内容适应不同的终端时,需要转换代码处理,并且为使内容适应不同的终端,还需要非常复杂的适应处理和大容量服务器。相反,根据当前标准化的SVC方法,一旦视频流已经编码,可以通过从编码的视频流提取期望的比特流使各种视频具有不同空间、时间和质量,而不执行再编码处理。
如上所述,这是因为编码的比特流具有能够在空间、时间和质量上增强的结构,并且因为可通过比特流提取处理容易地创建各种服务的视频数据。具有这种新结构的比特流需要适合于新结构的视频加密方案。
运动图像专家组(MPEG)的知识产权管理和保护(IPMP)当前致力于标准化视频内容保护的研究,并且已经提供了根据IPMP标准的各种服务和加密方案。然而,对可分级视频的加密的进行的研究仅是最少的。此外,甚至直到现在研究的可分级视频加密方案仅支持有限的可分级因数,并且不能完全支持空间、时间和质量的多维可分级性。
因此,在对支持空间、时间和质量的完全多维可分级性的可分级视频保持全部可分级性功能的同时,需要开发能够对多维可分级视频进行条件访问从而基于可分级性功能对特定比特流加密和解密的方法。

发明内容
因此,本发明至少解决上述发生在现有技术中的问题,并且本发明的目的在于提供一种加密/解密可分级视频比特流的方法和系统,所述方法和系统允许对比特流进行基于可分级单元的条件访问。
本发明的另一目的在于提供用于加密/解密可分级视频比特流的方法和系统,所述方法和系统可在不增加用于编码和解码可分级视频的编码器和解码器的复杂度的情况下容易地实现。
本发明的另一目的在于提供用于加密/解密可分级视频比特流的方法和系统,所述方法和系统可适应比特流提取处理,所述比特流提取处理是可分级视频适应转换处理。
本发明的另一目的在于提供用于加密/解密可分级视频比特流的方法和系统,所述方法和系统可通过对支持多维可分级性的可分级视频数据加密来保护可分级内容。
为实现这些和其它目的,根据本发明的一方面,提供一种在可分级视频比特流加密/解密系统中的可分级视频编码(SVC)比特流加密部分,其中,所述SVC比特流加密部分包括SVC比特流创建单元,用于通过使用输入视频信号根据预设可分级性创建与编码的视频数据相应的网络提取层(NAL)数据和NAL数据的头,并创建包括NAL数据和NAL头的SVC比特流;NAL数据识别单元,用于从包括在SVC比特流中的NAL数据识别将被加密的NAL数据,并从将被加密的NAL数据提取可分级性信息;密钥输入单元,用于输出与可分级性信息相应的加密密钥;以及数据加密单元,用于通过使用加密密钥对具有可分级性信息的NAL数据加密,所述可分级性信息等于基于SVC句法的提取的可分级性信息。
根据本发明的另一方面,提供一种在可分级视频比特流加密/解密系统中的可分级视频编码(SVC)比特流解密部分,其中,所述SVC比特流解密部分包括SVC比特流接收单元,用于接收SVC比特流,所述SVC比特流包括与由比特流提取单元提取的可分级性相应的多个网络提取层(NAL)数据;密钥输入单元,用于提供解密密钥;数据解密单元,用于通过使用解密密钥对NAL数据解密;以及SVC比特流解码单元,用于对包括解密的NAL数据的SVC比特流解码。
根据本发明的另一方面,提供一种对可分级视频编码(SVC)比特流加密的方法,所述方法包括根据可分级性将输入视频信号编码为SVC比特流,所述SVC比特流包括网络提取层(NAL)数据和NAL头;在包括在SVC比特流中的NAL数据中识别将被加密的NAL数据;接收加密密钥,所述加密密钥与将被加密的NAL数据相应,并用于对将被加密的NAL数据加密;以及基于SVC比特流句法对将被加密的NAL数据加密,。
根据本发明的另一方面,提供一种对可分级视频编码(SVC)比特流解密的方法,所述方法包括根据由比特流提取单元提取的可分级性接收SVC比特流,所述SVC比特流包括网络提取层(NAL)数据和NAL头;当提取的NAL数据包括加密的NAL数据时,根据可分级性对加密的NAL数据解密;以及对解密的NAL数据和未解密的NAL数据解码。


通过下面结合附图进行的详细描述,本发明的上述和其它目的、特点和优点将会变得更加清楚,其中图1A是示出根据本发明创建、加密和发送SVC比特流的SVC比特流加密部分的结构的框图;
图1B是示出根据本发明在SVC比特流加密部分中数据加密单元的结构的框图;图2是示出根据本发明在SVC比特流加密部分通过使用接收的视频信号创建SVC比特流的程序的框图;图3是示出根据本发明创建的SVC比特流的结构的示图。
图4A是示出根据本发明的用于接收并解密SVC比特流的SVC比特流解密部分的结构的框图;图4B是示出本发明在SVC比特流解密部分中的数据解密单元的结构的框图;图5是示出根据本发明的在SVC比特流加密部分中根据NAL数据加密并发送SVC比特流的程序的流程图;图6是示出根据本发明的加密的NAL数据的示图;图7是示出根据本发明的在SVC比特流加密部分中加密NAL数据的程序的流程图;图8是显示应用根据本发明的加密方法的SVC比特流的数据结构的示例的示图;图9是示出根据本发明的在SVC比特流解密部分中接收并解密加密的NAL数据,并输出解密的NAL数据的程序的流程图;以及图10是示出根据本发明的在SVC比特流解密部分中对加密的NAL数据解密的程序的详细流程图。
具体实施例方式
以下,参照附图来说明本发明的优选实施例。应该注意的是在整个附图中相同的标号指示相同的部件。在本发明的下面描述中,当合并与此的众所周知的功能和结构可能模糊本发明的主题内容时,将省略对其的详细描述。
根据本发明,SVC(可分级视频编码)比特流加密部分将输入视频信号编码为SVC比特流,并且通过使用网络提取层(NAL)头从编码的SVC比特流识别与将被加密的可分级性相应的NAL数据。明显的是将被加密的可分级性的数量可以是一个或更多。通过分配给每个相应可分级性的加密密钥对与将被加密的每个可分级性相应的NAL数据加密。
各种加密方法可用于加密具有可分级性的NAL数据。例如,可使用从将被加密的可分级性的NAL数据提取特定值,改变特定值并对其进行加扰的方法。在这种情况下,根据本发明,创建加扰NAL数据的种子值,并通过使用所述种子值对NAL数据进行加扰。SVC比特流加密部分对已经用于加扰的种子值加密,并通过将加密的种子值插入到NAL数据而将加密的种子值和SVC比特流一起发送。通常,通过在一帧中提供相同可分级性的每个域使用相同的密钥对视频内容加密。然而,如上所述,种子值不用作直接密钥,而是通过可靠的标准加密方案对种子值加密,接着将其插入到比特流。从而可以在用相同的密钥加密的域中使用不同的种子,使得视频内容变得足以抵抗通过预测加密数据而构成的攻击。
术语“NAL数据”表示包括在SVC视频流的每一帧中的每个可分级性元素的数据。当可分级视频比特流可支持标准清晰度电视和高清晰度电视(HDTV)的空域可分级性时,可分级视频比特流包括用于标准清晰度电视的空域可分级性的NAL数据和用于HDTV的空域可分级性的NAL数据。
比特流提取单元基于对SVC比特流解码的终端的服务设置状态仅提取与部分可分级性相应的NAL数据。当对SVC比特流解码的终端仅可使用与标准清晰度电视级别的基本层相应的可分级性时,比特流提取单元仅提取具有与基本层相应的可分级性的NAL数据。当对SVC比特流解码的终端可使用与HDTV级别的所有增强层相应的可分级性时,比特流提取单元从比特流提取所有NAL数据。必须基于NAL数据执行加密以适应比特流提取处理。以基于比特平面编码的FGS数据格式构建与质量增强层相应的NAL数据,其中,FGS数据格式允许比特流甚至从NAL数据的一个单元被提取。当提取具有FGS数据格式的质量增强层的比特流时,必须能够甚至从NAL数据的一个单元提取比特流。
SVC比特流解密部分接收提取的NAL数据。SVC比特流解密部分通过使用接收的NAL数据的NAL头检查加密的NAL数据,并对NAL数据解密。当SVC比特流加密部分使用改变与特定可分级性相应的NAL数据的特定值并对其加扰的加密方法时,如上所述,SVC比特流解密部分从加密的NAL数据提取加密的种子值。SVC比特流解密部分通过使用为加密的种子进行解密所分配的密钥对加密的种子值解密。当加密的NAL数据包括多个可分级性时,SVC比特流解密部分提取多个加密的种子值。为了解密所有加密的种子值,需要与种子值相应的多个解密密钥。
根据本发明,SVC比特流解密部分通过使用提取的种子值对加扰的NAL数据解扰。SVC比特流解密部分对解扰的SVC比特流解码。如上所述,根据本发明,用户终端可仅对与存储在其中的解密密钥相应的NAL数据解密,使得每个终端可被限制为接收仅与存储的解密密钥相应的可分级性元素的服务。
图1A是示出根据本发明创建、加密和发送SVC比特流的SVC比特流加密部分的结构的框图。
SVC比特流的加密部分110包括SVC比特流创建单元100、NAL数据识别单元102、数据加密单元104、SVC比特流发送单元106和密钥输入单元108。
当接收视频信号时,SVC比特流创建单元100通过基于能够提供各种可分级性的SVC方法对视频信号进行编码创建可分级视频比特流。稍后将参照图2详细描述基于SVC方法的SVC比特流创建单元100的视频信号编码方法。
NAL数据识别单元102提取包括在基于SVC方法编码的比特流中的NAL数据的NAL头,并且确定相应的NAL数据是否为将被加密的NAL数据。术语“将被加密的NAL数据”表示SVC比特流中具有实际视频数据信息的NAL单元。当相应的NAL数据是将被加密的NAL数据时,从提取的NAL数据的NAL头提取关于相应可分级性的信息。术语“关于相应可分级性的信息”表示关于在一帧中增强相应NAL数据的可分级性的信息。另外,由于将被加密的NAL数据不包括参数信息而包括数据信息,所以可通过SVC比特流解密单元402对将被加密的NAL数据解密。
数据加密单元104通过使用由密钥输入单元108创建的密钥对具有与已经从将被加密的NAL数据提取的可分级性信息相同的可分级性信息的NAL数据加密,其中,由NAL数据识别单元102识别所述将被加密的NAL数据。在这种情况下,数据加密单元104基于SVC比特流句法对NAL数据加密。密钥输入单元108计算用于可分级性的加密的密钥,所述可分级性将根据可分级性被加密,并且将计算的密钥提供给数据加密单元104。当将被加密的可分级性的数量大于或等于2时,创建同等数量的密钥。当接收创建的密钥时,数据加密单元104根据将被加密的可分级性通过使用每个相应密钥对NAL数据加密。当已经对与特定可分级性相应的NAL数据加密时,SVC比特流加密部分110根据可分级性发送包括加密的NAL数据的SVC比特流。
数据加密单元104被设计为接收将被加密的NAL数据,并通过使用从密钥输入单元108输入的加密密钥对NAL数据加密。在这种情况下,加密方法可包括对称加密算法,诸如数据加密算法(DES)、先进的加密算法(AES)、三重DES、SEED等,或可包括非对称加密算法,诸如RSA(Revest ShamirAdleman),其中加密对象可包括纹理值、运动向量值和FGS(精细粒度可分级性)值,它们都包括在比特流中。
当比特流较大并且需要复杂的编码步骤时,比如视频内容,仅对部分比特流编码,从而使编码步骤的效率不受加密的影响。根据本发明,仅改变先前编码的SVC比特流中的将被加密的部分NAL数据,使得通过使用加扰方案对与将被加密的可分级性相应的部分NAL数据加扰。
图1B是示出根据本发明的SVC比特流加密部分110的数据加密单元104的结构的框图。
数据加密单元104可包括随机值产生模块152、种子创建模块154、种子加密模块156、种子插入模块158和基于NAL数据的加密模块150。种子创建模块154创建种子值,所述种子值是能够改变与将被加密的可分级性相应的NAL数据的特定值的变量。随机值产生模块152通过使用创建的种子值产生伪随机值。基于NAL数据的加密模块150通过使用伪随机值改变与将被加密的可分级性相应的NAL数据的特定值。因此,基于NAL数据的加密模块150输出具有噪声效果的加扰的NAL数据。另外,基于NAL数据的加密模块150可按这样的方式对具有FGS数据的每个NAL单元加密,即使在比特流提取处理中分离NAL单元,也可对具有FGS数据的NAL单元解密。
术语“伪随机值”表示可将特定值改变为不同值的随机值,其中,通过特定种子创建随机值。也就是说当存在相同的种子时,可创建相同的随机值。
SVC比特流加密部分110的种子加密模块156以密钥输入单元108提供的密钥对种子值加密。SVC比特流加密部分110的种子插入模块158将加密的种子值插入加扰的NAL数据。由于将加密应用于完全编码的比特流,因此,本发明可在不增加编码复杂度的情况下容易地实现。另外,根据本发明,可以发送对加密的可分级性元素具有加扰效果的视频信号,甚至对编码的比特流没有单独的解码程序。
图2是示出根据本发明的在SVC比特流加密部分的SVC比特流创建单元100中通过使用接收的视频信号创建SVC比特流的程序的框图。
当接收视频信号200时,SVC比特流创建单元100执行二维(2D)抽选210,使得提供空域可分级性。在这种情况下,根据将被支持的空域可分级性的数量可多次执行2D抽选210。通过执行等级的B图像220构建时域可分级性,其中,按照空域可分级性的数量重复地构建等级的B图像220。质量可分级性(空域转换SNR可分级熵编码)230基于比特平面通过FGS编码构建残余值。通过复用器240将根据空间、时间、质量编码的比特流合并为一个比特流。由于用纹理值和运动向量值构建空域和时域增强层,并且用SVC中纹理的FGS值构建质量增强层,所以必须将加密应用于所有类型的纹理、运动向量和FGS数据,以保护全部比特流。
图3是示出根据本发明由SVC比特流创建单元100创建的SVC比特流的结构的示图。
图3示出包括空间和质量之一的两个增强层的编码的SVC比特流的结构,其中,一个图像组(GOP)包括16帧。在图3中,每个四边形表示比特流的NAL数据。
SVC比特流中的最低空域被建立为基本层300并被解码,空域增强层320用在空域的增强上。当空域被增强时,时域也被增强,其中,通过等级的B图像实现时域。每个NAL数据包括其NAL头中的temporal_layer,并且图3中的每个四边形号表示temporal_layer号。通过使用GOP中的temporal_layer#0的NAL数据和下一GOP中的temporal_layer#0的NAL数据创建GOP中的temporal_layer#1的NAL数据。通过使用temporal_layer#0的NAL数据和temporal_layer#1的NAL数据创建temporal_layer#2的NAL数据。基于GOP中的帧号确定temporal_layer号。通过上述方法创建时域可分级性。
当对所有NAL数据解码时,对具有可由原始视频信号200提供的最大帧速率的视频信号解码。另外,当去除作为最大temporal_layer号的temporal_layer#N的NAL数据时,可以在原始视频信号的时域内获得具有一半所述帧速率的视频信号的比特流。当去除temporal_layer#N和temporal_layer#N-1的NAL数据时,可以获得可从所述比特流对具有四分之一原始视频信号帧速率的视频信号解码的比特流。通过这种方式可以获得具有不同帧速率的各种视频信号。
参照图3,假设原始视频信号是支持30帧/秒的比特流,通过去除temporal_layer#4的NAL数据获得15帧/秒的视频信号,通过去除temporal_layer#4和temporal_layer#3的NAL数据获得7.5帧/秒的视频信号,从而可以提供时域可分级性。一旦质量域被增强为质量增强层310和基本层300的空域,则接着增强的空域被增强为质量增强层330。每当空域被增强时,就可以实现质量的增强。每个增强层根据编码器的参数可包括一个或多个层,并且通过NAL数据构建这种基本层和增强层。这种NAL数据单元可容易地适应比特流提取处理中对帧单元的视频信号解码。
图4A是示出根据本发明的用于接收并解密SVC比特流的SVC比特流解密部分的结构的框图。
比特流提取单元400根据已经在解码SVC比特流的终端中预设的服务设置状态仅提取所需的NAL数据,并将提取的NAL数据输入到SVC比特流解密部分402。
SVC比特流解密部分402包括SVC比特流接收单元404,用于接收SVC比特流;数据解密单元406,当存在加密的NAL数据时,用于对加密的NAL数据解密;SVC比特流解码单元408,对包括解密的NAL数据的SVC比特流解码;密钥输入单元410,用于提供解密NAL数据所需的解密密钥。
当SVC比特流接收单元404接收由比特流提取单元400提取的NAL数据时,数据解密单元406通过使用与可分级性相应的解密密钥对接收的NAL数据解密。数据解密单元406从密钥输入单元410接收与可分级性相应的解密密钥。当允许用户使用特定可分级性服务时,可将这种解密密钥提供给用户。
数据解密单元406基于包括在比特流中的可分级性以预设顺序执行解密操作。这是因为以这样的方式对具有可分级性的NAL数据彼此相关地进行编码,在所述方式中,可分级比特流在具有基于基本层增强的结构的同时,包括基本层和增强层。因此,数据解密单元406以基于从NAL头提取的可分级性信息进行解码所需的顺序对NAL数据解密。在程序中通过解密算法执行这种处理,在所述程序中,将NAL数据输入到数据解密单元406。基于这种关系的NAL数据的加密和解密可通过在实时解码器中对解密的NAL数据首先解码减少解码的延时。
当已经通过数据解密单元406对加密的NAL解密时,SVC比特流解码单元408对包括解密的NAL数据的SVC比特流解码,并输出解码的SVC比特流。当接收到包括加密的NAL数据的SVC比特流时,如果用户终端不具有与加密的NAL数据相应的解密密钥,则通过SVC比特流解码单元408对SVC比特流的加密的NAL数据解码。
然而,当通过使用如上所述的预设密钥对加密的NAL数据解密时,存在必须单独并连续地对SVC比特流的一部分解码的问题。为了解决这个问题,根据本发明的方法和系统使用加扰方法,使得解码程序简单化。
图4B是示出本发明在SVC比特流解密部分402中的数据解密单元406的结构的框图,其提供了上述问题的解决方法。
SVC比特流解密部分402还包括种子提取模块450、种子解密模块454、随机值产生模块456和NAL数据解密模块452。种子提取模块450检查从SVC比特流接收单元404接收的NAL数据是否为加密的NAL数据。当接收的NAL数据是加密的NAL数据时,种子提取模块450从加密的NAL数据提取加密的种子值。种子解密模块454对加密的种子值解密。在这种情况下,从密钥输入单元410输入到种子解密模块454的密钥被用作解密种子值的解密密钥。
密钥输入单元410根据已经允许用户终端访问的可分级性存储多个解密密钥。计算并创建根据每个可分级性解密所需的密钥的数量,并将其输入到种子解密模块454。多个解密密钥与不同的可分级性相应,并且每个解密密钥被用于解密其相应可分级性的NAL数据。然而,当SVC比特流加密系统采用改变SVC比特流中的NAL数据的特定值的加扰方案时,由密钥输入单元410提供的密钥被用作恢复改变的特定值的密钥。如上所述,可将用于可分级性的加扰应用于两个或多个可分级性元素。当加扰的可分级性的数量大于或等于2时,需要相等数量的种子值,以恢复所有可分级性。因此,解密加密的种子值所需的密钥的数量也大于或等于2。
如果密钥输入单元410不存储与种子值相应的所有密钥,则由于密钥没有存储在密钥输入单元410中,所以不能解密种子值。在这种情况下,向用户提供可分级视频,所述可分级视频在保持与未解密的种子值相应的可分级性元素的噪声分量的条件下被解码。
当已经解密种子值时,随机值产生模块456根据在SVC比特流解密部分解密的种子值产生伪随机值。当已经产生伪随机值时,NAL数据解密模块452通过使用伪随机值将改变的加扰的NAL数据的特定值恢复成原始特定值。当已经恢复所述特定值时,加扰的NAL数据的噪声分量消失,从而恢复具有原始可分级性元素的NAL数据,并通过SVC比特流解码单元408对恢复的NAL数据解码。
图5是示出在SVC比特流加密部分中根据NAL数据加密SVC比特流并发送加密的SVC比特流的程序的流程图。
参照图5,当输入视频信号200时,SVC比特流加密部分110接收原始视频信号200(步骤500)。在步骤502中,SVC比特流加密部分110根据可分级性将已经由NAL数据识别单元102接收的视频信号编码为包括NAL数据的SVC比特流。
在步骤504,SVC比特流加密部分110通过检查包括在编码的SVC比特流中的NAL数据识别将被加密的NAL数据。SVC比特流加密部分110从将被加密的NAL数据提取可分级性信息。在步骤506,SVC比特流加密部分110计算将被加密的可分级性的数量,并根据将被加密的可分级性创建加密密钥。在步骤508,SVC比特流加密部分110通过使用根据NAL数据的可分级性创建的密钥对NAL数据加密。在这种情况下,SVC比特流加密部分110基于SVC比特流句法对NAL数据加密。
图6是示出根据本发明的在SVC比特流加密部分中通过不同的密钥加密的NAL数据的示图。
根据可分级性通过不同的密钥对加密的比特流的NAL数据分别加密。因此,当解密具有特定可分级性的视频时,需要特定密钥的组合。
图6显示NAL数据的概念示图,识别所述NAL数据,从而提供可分级性并通过使用多个密钥对其进行加密。使用的多个密钥被表示为“key(space,time,and quality)”,其为数学函数,从而表示关于在加密中使用的实际可分级性的信息。所述“key(space,time,and quality)”与从NAL头中指定的“defendency_id(space)”、“temporal_layer(time)”和“quality_level(quality)”提取的值相同,其中,所述值表示由NAL数据提供的可分级性。
对于当对一帧解码时使用的具有可分级性的所有NAL数据,用不同的密钥对提供不同可分级性的NAL数据加密,用相同的密钥对提供相同可分级性的NAL数据加密。视频内容包括一组帧,并且逐个增强每一帧以增强视频内容的可分级性。由于以在一帧中提供空间、时间和质量的多层可分级性的结构来实现这种可分级性增强,所以必须用不同的密钥对帧单元中分配给增强层的所有NAL数据加密。结果,当执行解密时,可以对每个可分级性提供逐个的增强功能。
参照图6,在SVC方法中提供的空域、时域和质量可分级性中的每个都存在两层。也就是说,第i帧、第(i+1)帧和第(i+2)帧中的每个都包括空间1、空间0、质量1、质量0、时间1和时间0的可分级性层。从而,一个视频帧总共包括六个可分级性层。这意味着可将一帧构建为具有六个NAL数据的元素的视频流,所述六个NAL数据的元素具有不同的空间、时间和质量特性。
在图6中,为了对视频流加密从而提供理想的可分级性,加密六个NAL数据的元素需要六个密钥。对于在帧单元中提供相同可分级性的多个NAL数据,通过使用相同密钥重复执行加密。参照图六的上述描述仅是加密的示例,密钥和将被加密的NAL数据的数量可根据将被加密的可分级性的数量改变。
为了对以上述方式加密的SVC比特流解密,去除除了具有所需级别的比特流之外的比特流。与用户要求的级别相应的NAL数据存在于可对一个帧进行解码的范围内,从而可以仅用用户具有的密钥对一帧解码。由于这个原因,经受比特流提取处理的加密的比特流需要全部密钥之中几个密钥的结合,从而对与提供特定的可分级性需要的可分级性相同的加密的比特流解密。因此,可对于特定可分级性构建条件访问控制。
表1显示如图6所示构建的NAL数据的单元加密可通过适合密钥的结合来提供用于时间、空间和质量的所有可分级性,所述所有可分级性已经由初始SVC比特流提供。例如,当想要访问空间0、质量0和时间0的可分级性时,用户需要key(0,0,0),当想要用于空间的增强时,用户需要key(0,0,1)和key(1,1,0)。
表1

表2显示当基于表1所示的访问条件各种密钥用于访问特定视频时,可访问和不可访问的情况,其中,由CIF(空间1)、30fps(时间1)和FGS(质量1)构建所述特定视频。应该注意必须包括访问条件所需的所有密钥以访问特定视频。当不能访问特定视频时,不对相应可分级性的NAL数据进行解密,从而NAL数据被解码为噪声图像。
表2

由SVC比特流提供的基于可分级性的数量所需的加密密钥的数量和每个可分级性的层数可表示为等式(1)Keytotal=Σn=0N-1nq*nt---(1)]]>用于SVC比特流的NAL数据的密钥的数量是基于可分级性的数量和每个可分级性的层数。因此,所需加密密钥的数量是基于可分级性的数量和每个可分级性的层数,所述加密密钥用在初始编码上。当假设SVC比特流具有N个空域、基于N个空域的Nq个质量、和基于N个空域的Nt个时域,通过等式(1)可获得用于加密可分级视频的加密密钥的总数“KEYtotal”。另外,如表1和表2所示,可通过特定密钥的结合或分离获得密钥。如表1和表2所示,尽管仅使用两个密钥“0”和“1”,但是可以仅通过结合并分配所述两个密钥来提供访问控制服务,所述访问控制服务给出对各种可分级性的访问。
如上所述,在步骤508中加密相应可分级性的NAL数据的方法可以是改变编码的SVC比特流中的相应NAL数据的特定值的加扰方法。步骤508可以是改变编码的SVC比特流中的相应NAL数据的特定值的处理。关于这种情况,将参照图7和图8详细描述仅改变相应NAL数据的特定值并对其加扰的程序。
在步骤508之后,SVC比特流加密部分110将SVC比特流发送到比特流提取单元400(步骤510),所述SVC比特流包括加密的可分级性的NAL数据和未加密的可分级性的NAL数据。
图7是示出根据本发明的在SVC比特流加密部分中改变NAL数据的特定值,并对其加扰的程序的流程图,图8是显示应用于根据本发明的加密方法的SVC比特流的数据结构的示例的示图。
参照图7,当采用改变编码的SVC比特流中的相应NAL数据的特定值的方法以对相应可分级性的NAL数据加密时,SVC比特流加密部分进行步骤700,其中,SVC比特流加密部分的种子创建模块154创建与提取的可分级性相应的种子值。明显的是将被加密的可分级性的数量可以大于或等于2。在这种情况下,提取相同数量的一些可分级性信息,因此也创建两个或多个种子值。
在步骤702,SVC比特流加密部分110的随机值产生模块152通过使用由种子创建模块154创建的每个种子值产生伪随机值。在步骤704,SVC比特流加密部分110从编码的SVC比特流提取纹理值,并提取纹理值的符号值。
根据提出的SVC比特流加扰方案可以实现,当创建SVC比特流时,可在相应比特流经受CABAC(基于上下文的自适应二进制算术编码)处理之前分别提取纹理值、运动向量值和FGS值的符号值。因此,根据基于本发明的SVC比特流加密系统,对纹理值、运动向量值和FGS值的符号值都进行加密。
参照图8所示的SVC比特流句法,在相应比特流经受CABAC处理之前,符号值“coeff_Sign-flag[i]”802和纹理值“coeff_abs_level_minusl[i]”800分别包括在所述比特流中,这意味着可单独提取符号值。
在步骤706,SVC比特流加密部分110通过使用产生的伪随机值使纹理值的符号值802反向,从而在图像中具有噪声效果。使用符号值802的原因是当使符号值802反向时,可以通过仅改变一个比特值将相应纹理值改变为完全不同的值,换句话说,因为每个符号值产生的影响比比特流中的其它任何比特的影响大,所以使用符号值。因此,通过仅使将被加密的可分级性NAL数据的纹理值中的一个比特值的符号反向,本发明的SVC比特流加密系统可具有满意的噪声效果,甚至可以不需要复杂的编码和解码处理。
在步骤708,SVC比特流加密部分通过使用预设加密密钥对相应种子值加密。根据可分级性以不同值设置加密密钥,从而所述加密密钥与相应于每个可分级性的每个种子值相应。SVC比特流加密部分将加密的种子值插入到加密的可分级性NAL数据。
图9是示出根据本发明的在SVC比特流解密部分中接收和解密加密的NAL数据,并输出解密的NAL数据的程序的流程图。
在步骤900,SVC比特流解密部分402从SVC比特流加密部分110接收SVC比特流。在步骤902,SVC比特流解密部分402从接收的SVC比特流仅提取根据服务设置状态(即,根据基于可由SVC比特流解密部分402提供的可分级性确定的服务级别)所需的NAL数据。
在步骤904,SVC比特流解密部分402检查接收的SVC比特流是否包括加密的NAL数据。可通过检查包括在SVC比特流中每个NAL数据的NAL头来确定接收的SVC比特流中是否存在加密的NAL数据。
当在接收的SVC中不存在加密的NAL数据时,SVC比特流解密部分402不改变地输出通过SVC比特流接收单元404接收的NAL数据(步骤910)。当在步骤902确定在接收的SVC中存在加密的NAL数据时,SVC比特流解密部分402检查与加密的NAL数据相应的可分级性信息(步骤906)。在步骤908,SVC比特流解密部分402通过使用密钥输入单元410提供的解密密钥对加密的NAL数据解密。SVC比特流解密部分402的SVC比特流解码单元408对包括解密的NAL数据的SVC比特流解码。解密的NAL数据与通过对具有由SVC比特流加密部分110中的NAL数据识别单元102识别的数据信息的NAL数据加密获得的数据相应。尽管因为在用户终端中不存在对NAL数据解密所需的密钥,所以存在未解密的NAL数据,但是因为NAL数据具有与句法匹配的数据信息,所以可执行解码操作。SVC比特流解密部分通过使用根据可分级性而不同地设置的密钥仅对NAL数据解密,从而,可以限制用户终端通过可分级性访问可分级视频,其中,所述NAL数据是已经允许用户终端访问的数据。
图10是示出根据本发明的在通过SVC比特流解密部分接收的SVC比特流中通过恢复相应NAL数据的特定值来对加密的NAL数据解密的程序的详细流程图。
当在步骤908确定通过改变NAL数据的特定值的方式对SVC比特流的相应可分级性NAL数据加密时,SVC比特流解密部分进行到步骤1000,其中,SVC比特流解密部分的种子提取模块450从加密的NAL数据提取加密的种子值。在步骤1002,SVC比特流解密部分402通过使用在密钥输入单元410中预存储的密钥对加密的种子值解密。
在步骤1004,SVC比特流解密部分402将解密的种子值输入到随机值产生模块456,从而创建与种子值相应的伪随机值。
在步骤1006,SVC比特流解密部分402从编码的SVC比特流提取纹理值、运动值和FGS值。在步骤1008,SVC比特流解密部分402通过使用伪随机值恢复已经反向的符号值,并执行加扰处理。因此,本发明具有对编码的可分级视频的加密的可分级性进行加扰的效果,甚至不使用单独的加密密钥执行解码处理。
如上所述,根据本发明的加密方法,甚至在对通过SVC编码的比特流被加密之后还保持可分级性功能,加密的比特流在不解密的情况下适应比特流提取处理,这是SVC的特殊的适应转换处理,并且,可以对SVC比特流提供的所有数据类型加密。
另外,根据本发明,不管由SVC比特流提供的用于空间、时间和质量的可分级性的数量,提供用于加密的至少一个或多个不同的密钥,从而可以限制用户访问未认可的可分级比特流的可分级性,因此具有能够通过可分级性保护可分级视频内容的效果。
尽管已经参照其特定的优选示例性实施例显示和描述了本发明,但本领域的技术人员应该理解,在不脱离由所附权利要求限定的本发明的精神和范围的情况下,可以对其进行形式和细节的各种改变。具体地,尽管已经在使纹理值、运动值和FGS值的符号值反向以执行加扰操作的情况下描述了本发明,但是这只是本发明的最明显的效果的示例,本发明的范围不由这个实施例限制。也就是说,明显的是,如果改变某一比特可引起更大的加扰效果,则除了纹理值、运动值和FGS值的符号值之外,可用所述某一比特来代替所述符号值。另外,尽管已经对仅改变符号值的情况描述了本发明的实施例,但是明显的是,可通过改变除了符号值之外的某一值实现本发明。因此,本发明的范围不限于上述实施例,而是由权利要求及其等同物来限定。
权利要求
1.一种可分级视频比特流加密/解密系统,包括可分级视频编码(SVC)比特流加密部分,用于对可分级视频比特流加密;比特流提取单元,用于从SVC比特流提取特定可分级性的网络提取层(NAL)数据;以及SVC比特流解密部分,用于对从SVC比特流加密部分发送的可分级视频比特流解密,所述SVC比特流加密部分包括SVC比特流创建单元,用于通过使用输入视频信号根据预设可分级性创建NAL数据和NAL数据的头,并创建包括NAL数据和NAL头的SVC比特流;NAL数据识别单元,用于从包括在SVC比特流中的NAL数据识别将被加密的NAL数据,并从将被加密的NAL数据提取可分级性信息;密钥输入单元,用于输出与可分级性信息相应的加密密钥;以及数据加密单元,用于通过使用加密密钥对具有可分级性信息的NAL数据加密,所述可分级性信息与基于SVC句法的提取的可分级性信息相同。
2.如权利要求1所述的系统,其中,所述NAL数据识别单元通过使用包括在SVC比特流中NAL数据的NAL头信息来识别将被加密的NAL数据。
3.如权利要求2所述的系统,其中,所述NAL数据识别单元从NAL头提取可分级性信息。
4.如权利要求1所述的系统,其中,所述数据加密单元包括种子创建模块,用于创建种子值,所述种子值与可分级性信息相应,并用于对与由可分级性信息指定的可分级性相应的NAL数据加密;加密模块,用于通过使用创建的种子值对将被加密的NAL数据加密;以及种子加密模块,用于通过使用加密密钥对创建的种子值加密,并将加密的种子值插入到加密的NAL数据。
5.如权利要求4所述的系统,其中,所述加密模块包括随机值产生器,用于从种子创建模块接收创建的种子值,并根据种子值产生伪随机值;以及基于NAL数据的加密器,用于从将被加密的NAL数据提取特定值,并基于根据种子值产生的伪随机值改变提取的值。
6.如权利要求5所述的系统,其中,所述特定值包括从将被加密的NAL数据提取的纹理值、运动向量值和FGS数据值的符号值。
7.如权利要求1所述的系统,其中,可分级性信息的数量至少为2。
8.如权利要求7所述的系统,其中,所述密钥输入单元计算与每条可分级性信息相应的加密密钥的数量,并当可分级性信息的数量至少为2时提供所述加密密钥,并且数据加密单元通过使用加密密钥对NAL数据加密,所述NAL数据具有与以基于SVC句法的NAL数据为基础的可分级性信息相同的可分级性信息。
9.如权利要求8所述的系统,其中,所述数据加密单元包括种子创建模块,用于创建与每条可分级性信息相应的种子值;加密模块,用于通过使用创建的种子值根据每条可分级性信息对NAL数据加密;以及种子加密模块,用于通过使用每个加密密钥对创建的种子值加密,并将加密的种子值插入到加密的NAL数据。
10.如权利要求9所述的系统,其中,所述加密模块包括随机值产生器,用于从种子创建模块接收创建的种子值,并根据种子值产生伪随机值;以及基于NAL数据的加密器,用于从将被加密的NAL数据提取特定值,并通过使用伪随机值改变特定值,所述特定值与每条可分级性信息相应。
11.如权利要求10所述的系统,其中,所述基于NAL数据的加密器基于NAL数据对NAL数据加密,从而,在加密之前或之后保持可分级性的同时,可将NAL数据应用于比特流提取处理。
12.如权利要求10所述的系统,其中,所述基于NAL数据的加密器对NAL数据加密,从而,即使当NAL数据在比特流提取处理中分离时,也可对具有FGS数据的NAL数据解密。
13.如权利要求10所述的系统,其中,所述特定值包括从将被加密的NAL数据提取的纹理值、运动向量值和FGS数据值的符号值。
14.如权利要求8所述的系统,其中,通过下式获得加密密钥的数量Keytotal=Σn=0N-1nq*nt,]]>其中,N表示空域可分级性的数量,Nq表示基于N个空域可分级性的质量可分级性的数量,Nt表示基于N个空域可分级性的时域可分级性的数量。
15.一种可分级视频比特流加密/解密系统,包括可分级视频编码(SVC)比特流加密部分,用于对可分级视频比特流加密;比特流提取单元,用于从SVC比特流提取特定可分级性的网络提取层(NAL)数据;以及SVC比特流解密部分,用于对从SVC比特流加密部分发送的可分级视频比特流解密,所述SVC比特流解密部分包括SVC比特流接收单元,用于接收SVC比特流,所述SVC比特流包括与由比特流提取单元提取的可分级性相应的多个NAL数据;密钥输入单元,用于提供解密密钥;数据解密单元,用于通过使用解密密钥对NAL数据解密;以及SVC比特流解码单元,用于对包括解密的NAL数据的SVC比特流解码。
16.如权利要求15所述的系统,其中,所述数据解密单元基于可分级性之间的关系以与解码顺序相同的顺序对具有不同可分级性的NAL数据解密。
17.如权利要求15所述的系统,其中,尽管因为不存在所有需要的密钥,所以不能对加密的SVC比特流完全地解密,但是数据解密单元能够对SVC比特流解码。
18.如权利要求15所述的系统,其中,所述数据解密单元包括种子提取模块,用于确定提取的NAL数据是否已经被加密,并且当NAL数据被加密时,提取加密的种子值以对NAL数据解密;密钥输入模块,用于输出解密密钥以对加密的种子值解密;种子解密模块,用于通过使用从密钥输入模块输入的解密密钥对加密的种子值解密;以及解密模块,用于接收解密的种子,并通过使用解密的种子对NAL数据解密。
19.如权利要求15所述的系统,其中,所述解密模块包括随机值产生器,用于接收种子值,并根据种子值产生伪随机值;以及NAL数据解密器,用于从加密的NAL数据提取特定值,并基于伪随机值恢复提取的值。
20.如权利要求19所述的系统,其中,所述特定值包括从将被加密的NAL数据提取的纹理值、运动向量值和FGS数据值的符号值。
21.如权利要求15所述的系统,其中,所述SVC比特流接收单元接收具有不同可分级性的至少两个加密的NAL数据。
22.如权利要求21所述的系统,其中,所述密钥输入模块提供解密密钥,使得对每个加密的NAL数据解密,并且数据解密单元通过使用解密密钥对每个NAL数据解密。
23.如权利要求22所述的系统,其中,所述数据解密单元包括种子解密模块,用于通过使用解密密钥对加密的种子值解密;以及解密模块,用于通过使用解密的种子值基于至少两个提取的加密的可分级性对每个NAL数据解密。
24.如权利要求23所述的系统,其中,所述数据解密单元包括随机值产生器,用于从种子解密模块接收解密的种子值,并根据所述种子值产生伪随机值;以及NAL数据解密器,用于从至少两个加密的NAL数据提取特定值,并通过使用伪随机值恢复特定值。
25.如权利要求24所述的系统,其中,所述特定值包括从将被加密的NAL数据提取的纹理值、运动向量值和FGS数据值的符号值。
26.如权利要求22所述的系统,其中,所述密钥输入单元基于下式计算解密密钥的数量Keytotal=Σn=0N-1nq*nt,]]>其中,N表示空域可分级性的数量,Nq表示基于N个空域可分级性的质量可分级性的数量,Nt表示基于N个空域可分级性的时域可分级性的数量。
27.如权利要求25所述的系统,其中,当部分NAL数据没有被解密时,所述SVC比特流解码单元在解码操作期间添加噪声,从而根据与未解密的NAL数据相应的可分级性的数量改变噪声的程度。
28.一种由在可分级视频比特流加密/解密系统中的SVC比特流加密部分对可分级视频编码(SVC)比特流加密的方法,所述SVC比特流加密部分用于对可分级视频比特流加密;比特流提取单元用于从SVC比特流提取特定可分级性的网络提取层(NAL)数据;以及解密部分用于对从SVC比特流加密部分发送的可分级视频比特流解密,所述方法包括步骤根据可分级性将输入视频信号编码为SVC比特流,所述SVC比特流包括NAL数据和NAL头;在包括在SVC比特流中的NAL数据中识别将被加密的NAL数据;接收加密密钥,所述加密密钥与将被加密的NAL数据相应,并用于对将被加密的NAL数据加密;以及基于SVC比特流句法对将被加密的NAL数据加密。
29.如权利要求28所述的方法,其中,在NAL数据识别步骤中,通过使用NAL头来识别将被加密的NAL数据,并从将被加密的NAL数据提取可分级性信息。
30.如权利要求28所述的方法,其中,加密步骤包括创建与可分级性信息相应的种子值;根据创建的种子值产生伪随机值;从将被加密的NAL数据提取特定值;通过使用伪随机值改变提取的特定值来对将被加密的NAL数据加密;以及通过使用加密密钥对相应可分级性的种子值加密。
31.如权利要求30所述的方法,其中,所述特定值包括从将被加密的NAL数据提取的纹理值、运动向量值和FGS数据值的符号值。
32.一种由在可分级视频比特流加密/解密系统中的SVC比特流解密部分对可分级视频编码(SVC)比特流解密的方法,所述系统包括SVC比特流加密部分,用于对可分级视频比特流加密;比特流提取单元,用于从SVC比特流提取需要的特定可分级性的网络提取层(NAL)数据;以及SVC比特流解密部分,用于对从SVC比特流加密部分发送的可分级视频比特流解密,所述方法包括步骤根据由比特流提取单元提取的可分级性接收SVC比特流,所述SVC比特流包括NAL数据和NAL头;当提取的NAL数据包括加密的NAL数据时,根据可分级性对加密的NAL数据解密;以及对解密的NAL数据和未解密的NAL数据解码。
33.如权利要求32所述的方法,其中,在解密步骤中,根据可分级性以与SVC比特流的解码顺序相同的顺序对具有不同可分级性的NAL数据解密。
34.如权利要求32所述的方法,其中,解密步骤包括从加密的NAL数据提取与加密的NAL数据相应的可分级性的种子值;当种子值已经被加密时,通过使用预分配的解密密钥对种子值解密;根据解密的种子值产生伪随机值;根据可分级性从加密的NAL数据提取特定值;基于每个相应可分级性通过使用根据种子值产生的伪随机值恢复提取的特定值;以及恢复加密的NAL数据。
35.如权利要求34所述的方法,其中,所述特定值包括从将被加密的NAL数据提取的纹理值、运动向量值和FGS数据值的符号值。
36.如权利要求35所述的方法,其中,在解码步骤中,当部分NAL数据没有被解密时添加噪声,从而根据与未解密的NAL数据相应的可分级性的数量改变噪声的程度。
全文摘要
公开了一种作为下一代编码技术的可分级视频编码(SVC)比特流的加密系统和方法。所述加密方法对网络提取层(NAL)数据加密,其中,对SVC编码之后创建的比特流根据空间、时间和质量的多维可分级性来识别所述NAL数据,因而甚至在加密之后提供空间、时间和质量的多维可分级性功能,从而甚至在加密之后的比特流提取处理中也保持可分级性。根据这种可分级加密方法,在比特流提取处理中去除加密的比特流的特定部分,并且基于访问特定可分级性的密钥的结合限制用户访问比特流。因此,可以保护可分级视频内容,并基于可分级性访问视频内容。
文档编号H04N7/167GK1992879SQ200610148510
公开日2007年7月4日 申请日期2006年11月17日 优先权日2005年11月17日
发明者鲁勇满, 元容根, 裴泰眠 申请人:三星电子株式会社, 韩国情报通信大学校产学协力团
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1