CN112073660B - Tlv数据生成方法、读取方法、智能设备及存储介质 - Google Patents
Tlv数据生成方法、读取方法、智能设备及存储介质 Download PDFInfo
- Publication number
- CN112073660B CN112073660B CN202010970105.5A CN202010970105A CN112073660B CN 112073660 B CN112073660 B CN 112073660B CN 202010970105 A CN202010970105 A CN 202010970105A CN 112073660 B CN112073660 B CN 112073660B
- Authority
- CN
- China
- Prior art keywords
- data
- tlv data
- tlv
- descrambling
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/913—Television signal processing therefor for scrambling ; for copy protection
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种TLV数据生成方法、读取方法、智能设备及存储介质,所述TLV数据生成方法包括以下步骤:获取第一TLV数据对应的解扰密钥,并根据所述解扰密钥生成第二TLV数据;根据所述第二TLV数据和所述第一TLV数据生成混合TLV数据,并将所述混合TLV数据进行存储。本发明能够对数据存储过程进行优化,减小数据的解扰和加密过程,直接将加扰的数据进行存储,降低存储过程中数据处理所占用的带宽资源,在不同硬件配置的智能设备中均能保障数据的存储效率,避免出现带宽瓶颈而导致存储效率降低。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种TLV数据生成方法、读取方法、智能设备及存储介质。
背景技术
现有的智能设备在使用PVR(Personal video recorder,个人视频录像)功能时,录制得到的数据流需要在进行加扰后封装为TLV(Type-length-value,类型-长度-值结构体)格式的数据包,在将TLV数据存储至存储模块时,需要对加扰后的数据进行解扰,并在解扰后对数据流进行加密存储。并且为了保障数据处理安全,数据流的解扰和重新加密还需要在TEE(Trusted Execution Environment,可信执行环境)中进行处理。即,录制得到的音视频数据在存储至硬盘等存储介质时,还需要执行多次数据处理过程。在数据处理过程中将会占用SoC(System on Chip,系统级芯片)的大量运行带宽,从而产生带宽瓶颈,导致录制存储效率较低。
发明内容
本发明的主要目的在于提供一种TLV数据生成方法、读取方法、智能设备及存储介质,旨在解决数据流存储过程中多次数据处理占用大量系统带宽的问题。
为实现上述目的,本发明提供一种TLV数据生成方法,包括以下步骤:
获取第一TLV数据对应的解扰密钥,并根据所述解扰密钥生成第二TLV数据;
根据所述第二TLV数据和所述第一TLV数据生成混合TLV数据,并将所述混合TLV数据进行存储。
可选地,所述根据所述第二TLV数据和所述第一TLV数据生成混合TLV数据的步骤包括:
将所述第二TLV数据插入至所述第一TLV数据前,以生成所述混合TLV数据。
可选地,所述获取第一TLV数据对应的解扰密钥,并根据所述解扰密钥生成第二TLV数据的步骤之前,还包括:
在录制模式下,将录制得到的音视频数据打包为TLV数据包;
对所述TLV数据包进行过滤以得到第一TLV数据。
可选地,所述对所述TLV数据包进行过滤以得到第一TLV数据的步骤之后,还包括:
判断所述第一TLV数据是否为加扰数据;
在所述第一TLV数据不为加扰数据时,将所述第一TLV数据进行加密存储;
在所述第一TLV数据为加扰数据时,执行步骤:获取第一TLV数据对应的解扰密钥。
可选地,所述判断所述第一TLV数据是否为加扰数据的步骤包括:
根据所述第一TLV数据中的加扰控制参数判断所述第一TLV数据是否为加扰数据。
可选地,所述根据所述解扰密钥生成第二TLV数据的步骤包括:
对所述解扰密钥进行加密,并将加密解扰密钥打包为第二TLV数据。
本发明还提供一种TLV数据读取方法,包括以下步骤:
获取混合TLV数据,并根据所述混合TLV数据得到第一TLV数据和第二TLV数据;
根据所述第二TLV数据获取解扰密钥,并通过所述解扰密钥对所述第一TLV数据进行解扰,得到解扰后的音视频数据。
可选地,所述根据所述第二TLV数据获取解扰密钥的步骤包括:
对所述第二TLV数据进行解封装得到加密解扰密钥;
对所述加密解扰密钥进行解密以生成解扰密钥。
可选地,所述对所述第二TLV数据进行解封装得到加密解扰密钥的步骤包括:
对所述第二TLV数据进行解封装以得到所述加密解扰密钥和数据包ID;
所述通过所述解扰密钥对所述第一TLV数据进行解扰的步骤包括:
根据所述数据包ID确定对应的第一TLV数据,并通过所述解扰密钥对所述第一TLV数据进行解扰。
可选地,所述通过所述解扰密钥对所述第一TLV数据进行解扰,得到解扰后的音视频数据的步骤包括:
对所述第一TLV数据进行解封装以得到未解扰的音视频数据;
通过所述解扰密钥对所述音视频数据进行解扰,并根据解扰后的音视频数据进行音视频播放。
此外,为实现上述目的,本发明还提供一种智能设备,所述智能设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的TLV数据生成程序和TLV数据读取程序,其中:所述TLV数据生成程序和所述和TLV数据读取程序被所述处理器执行时实现如上所述的TLV数据生成方法或TLV数据读取方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有TLV数据生成程序和TLV数据读取程序,所述TLV数据生成程序和TLV数据读取程序被处理器执行时实现如上所述的TLV数据生成方法或TLV数据读取方法的步骤。
本发明实施例提出的一种TLV数据生成方法、读取方法、智能设备及存储介质,通过对数据进行TLV封装和加扰,并将对应的解扰密钥封装为第二TLV数据后与第一TLV数据混合生成无法直接加载的混合TLV数据,将混合TLV数据直接存储至设备的存储模块内,该混合TLV数据即使被读取也无法正常加载,即不需要在TEE环境中执行解扰和加密过程即可实现数据的密流存储。在读取混合TLV数据后,可以从第二TLV数据中获取解扰密钥对第一TLV数据中的数据进行解扰操作,以实现数据的正常加载。通过消除数据存储过程中的解扰和加密过程,直接将加扰的数据进行封装后存储,能够降低存储过程中数据处理所占用的系统资源,在不同硬件配置的智能设备中均能保障数据的存储效率,避免出现带宽瓶颈而导致存储效率降低,还能够为设备的系统芯片节省带宽资源。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图;
图2为本发明TLV数据生成方法第一实施例的流程示意图;
图3为本发明TLV数据生成方法第二实施例的流程示意图;
图4为本发明TLV数据生成方法第三实施例的流程示意图;
图5为本发明TLV数据生成方法第四实施例的流程示意图;
图6为本发明TLV数据生成方法第五实施例的流程示意图;
图7为本发明TLV数据生成方法第六实施例的流程示意图;
图8为本发明TLV数据读取方法第一实施例的流程示意图;
图9为本发明TLV数据读取方法第二实施例的流程示意图;
图10为本发明TLV数据读取方法第三实施例的流程示意图;
图11为本发明TLV数据生成方法第四实施例的流程示意图;
图12为本发明TLV数据生成方法中第二TLV数据的数据包结构。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图。
本发明实施例终端可以为智能设备,智能设备可以是摄像机、智能手机、平板电脑、电子书阅读器、便携计算机等具有个人视频录像功能的终端设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选的用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在硬件设备移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别硬件设备姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,硬件设备还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及TLV数据生成程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的TLV数据生成程序,并执行以下操作:
获取第一TLV数据对应的解扰密钥,并根据所述解扰密钥生成第二TLV数据;
根据所述第二TLV数据和所述第一TLV数据生成混合TLV数据,并将所述混合TLV数据进行存储。
进一步地,处理器1001可以调用存储器1005中存储的TLV数据生成程序,还执行以下操作:
将所述第二TLV数据插入至所述第一TLV数据前,以生成所述混合TLV数据。
进一步地,处理器1001可以调用存储器1005中存储的TLV数据生成程序,还执行以下操作:
在录制模式下,将录制得到的音视频数据打包为TLV数据包;
对所述TLV数据包进行过滤以得到第一TLV数据。
进一步地,处理器1001可以调用存储器1005中存储的TLV数据生成程序,还执行以下操作:
判断所述第一TLV数据是否为加扰数据;
在所述第一TLV数据不为加扰数据时,将所述第一TLV数据进行加密存储;
在所述第一TLV数据为加扰数据时,执行步骤:获取第一TLV数据对应的解扰密钥。
进一步地,处理器1001可以调用存储器1005中存储的TLV数据生成程序,还执行以下操作:
根据所述第一TLV数据中的加扰控制参数判断所述第一TLV数据是否为加扰数据。
进一步地,处理器1001可以调用存储器1005中存储的TLV数据生成程序,还执行以下操作:
对所述解扰密钥进行加密,并将加密解扰密钥打包为第二TLV数据。
处理器1001还可以用于调用存储器1005中存储的TLV数据读取程序,并执行以下操作:
获取混合TLV数据,并根据所述混合TLV数据得到第一TLV数据和第二TLV数据;
根据所述第二TLV数据获取解扰密钥,并通过所述解扰密钥对所述第一TLV数据进行解扰,得到解扰后的音视频数据。
进一步地,处理器1001可以调用存储器1005中存储的TLV数据读取程序,还执行以下操作:
对所述第二TLV数据进行解封装得到加密解扰密钥;
对所述加密解扰密钥进行解密以生成解扰密钥。
进一步地,处理器1001可以调用存储器1005中存储的TLV数据读取程序,还执行以下操作:
对所述第二TLV数据进行解封装以得到所述加密解扰密钥和数据包ID;
根据所述数据包ID确定对应的第一TLV数据,并通过所述解扰密钥对所述第一TLV数据进行解扰。
进一步地,处理器1001可以调用存储器1005中存储的TLV数据读取程序,还执行以下操作:
对所述第一TLV数据进行解封装以得到音视频数据;
通过所述解扰密钥对所述音视频数据进行解扰,并根据解扰后的音视频数据进行音视频播放。
本发明应用智能设备的具体实施例与下述应用TLV数据生成方法及TLV数据读取方法各实施例基本相同,在此不作赘述。
请参照图2,图2为本发明TLV数据生成方法第一实施例的流程示意图,其中,所述TLV数据生成方法包括如下步骤:
步骤S10,获取第一TLV数据对应的解扰密钥,并根据所述解扰密钥生成第二TLV数据;
本实施例中的终端可以为智能设备,智能设备可以在录制模式下进行个人视频录像,并将录制得到的音视频数据存储至智能设备的存储模块中。智能设备在进行录制时,录制得到的音视频数据将被封装为TLV格式数据进行存储。TLV(Type-length-value,类型-长度-值结构体)是一种由数据的类型Tag,数据的长度Length,数据的值Value组成的结构体,TLV数据包的最大长度可以为1500字节。
在智能设备的录制过程中,音视频数据将被进行加扰并封装为第一TLV数据。即将第一TLV数据进行解封装后,由于数据仍为加扰数据而无法被正常读取,需要对数据进行解扰后才能正常读取或加载。智能设备在生成第一TLV数据后,可以获取第一TLV数据对应的解扰密钥,即CW key,并将解扰密钥打包为第二TLV数据。
可以理解的是,现有的音视频数据存储方式为TEE环境下对第一TLV数据进行解封装后进行解扰,并在解扰得到能够正常加载的音视频数据后,对该音视频数据进行AES加密后存储至HDD(Hard Disk Drive,硬盘驱动器)等存储介质中,实现音视频数据的加密存储。而在音视频数据的解扰和加密过程中,都需要对全部的音视频数据进行相应的数据处理操作,即存储过程中音视频数据将经过多次数据处理,从而占用系统芯片的运行资源,产生带宽瓶颈而导致音视频数据的存储速度降低。
步骤S20,根据所述第二TLV数据和所述第一TLV数据生成混合TLV数据,并将所述混合TLV数据进行存储;
在根据第一TLV数据对应的解扰密钥生成第二TLV数据后,可以将第二TLV数据与第一TLV数据进行组合,以生成由第一TLV数据和第二TLV数据混合成的混合TLV数据。在第二TLV数据与第一TLV数据混合前,多个第一TLV数据为录制生成的音视频数据在顺序排列后进行TLV封装生成,例如,TLV数据包的最大长度为1500字节,在录制生成的音视频数据大于1500字节时,音视频数据将会被封装为多个第一TLV数据,且多个第一TLV数据的排列顺序与音视频数据的录制生成顺序相对应。智能设备可以将每个第一TLV数据与对应的第二TLV数据进行混合,在存在有多个第一TLV数据时,确定每个第一TLV数据对应的第二TLV数据,并将对应相同的第二TLV数据的第一TLV数据与第二TLV数据进行混合,以将多个第一TLV数据对应生成多个混合TLV数据。例如,在存在有10个第一TLV数据时,有3个TLV数据对应的第二TLV数据为A数据,3个TLV数据对应的第二TLV数据为B数据,4个TLV数据对应的第二TLV数据为C数据,则A数据与对应的3个第一TLV数据混合生成混合TLV数据,B数据与对应的3个第一TLV数据混合生成混合TLV数据,C数据与对应的4个第一TLV数据混合生成混合TLV数据。即10个第一TLV数据对应3个第二TLV数据混合生成3个混合TLV数据。并将混合TLV数据存储至存储模块内,实现音视频数据的存储。通过将包含音视频数据的第一TLV数据与包含有解扰密钥的第二TLV数据进行混合后存储,能够在实现音视频数据的加扰存储时,不再需要对音视频数据本身进行解扰和加密等数据处理操作,从而大幅减小音视频数据在存储过程中占用的系统芯片资源。
在本实施例中,通过对录制得到的音视频数据进行TLV封装和加扰,并将对应的解扰密钥封装为第二TLV数据后与第一TLV数据混合生成无法直接加载的混合TLV数据,将混合TLV数据直接存储至存储模块内,该混合TLV数据即使被读取也无法正常加载,即,不需要在TEE环境中执行第一TLV数据的解扰和加密过程即可实现音视频数据的密流存储。通过消除音视频数据存储过程中的解扰和加密过程,直接将加扰的音视频数据进行封装后存储,能够降低存储过程中数据处理所占用的系统资源,在不同硬件配置的智能设备中均能保障音视频数据的存储效率,避免出现带宽瓶颈而导致存储效率降低,还能够为设备的系统芯片节省带宽资源。
进一步的,参照图3,图3为本发明TLV数据生成方法第二实施例的流程示意图,基于上述图2所示的实施例,所述步骤S20,根据所述第二TLV数据和所述第一TLV数据生成混合TLV数据,并将所述混合TLV数据进行存储的步骤包括:
步骤S21,将所述第二TLV数据插入至所述第一TLV数据前,以生成所述混合TLV数据并进行存储。
在本实施例中,在确定第一TLV数据及其对应的第二TLV数据后,可以将第一TLV数据及其对应的第二TLV数据进行混合以生成对应的混合TLV数据,混合TLV数据包含有第一TLV数据和第二TLV数据的全部数据信息,在智能设备读取该混合TLV数据时,即可从混合TLV数据中分离出第一TLV数据和第二TLV数据。其中,第一TLV数据和第二TLV数据的混合方式可以为第一TLV数据在前、第二TLV数据在后的拼接混合方式,也可以是第二TLV数据在前,第一TLV数据在后的拼接混合方式。
在第二TLV数据中存储解扰密钥、第一TLV数据中存储音视频数据时,第一TLV数据和第二TLV数据的混合方式可以为在第一TLV数据前插入第二TLV数据包。即,以第二TLV数据包在前,第一TLV数据包在后的拼接方式混合生成混合TLV数据。在读取混合TLV数据时,能够先读取到第二TLV数据,再读取到第一TLV数据。在读取到第二TLV数据时,即可将第二TLV数据进行解封装以得到解扰密钥,根据该解扰密钥即可在读取第一TLV数据并解封装时直接对解封装后得到的数据进行解扰,从而提升解扰效率。
参照图4,图4为本发明TLV数据生成方法第三实施例的流程示意图,基于上述图2所示的实施例,所述步骤S10,获取第一TLV数据对应的解扰密钥,并根据所述解扰密钥生成第二TLV数据的步骤之前,还包括:
步骤S30,在录制模式下,将录制得到的音视频数据打包为TLV数据包;
步骤S31,对所述TLV数据包进行过滤以得到第一TLV数据。
在本实施例中,智能设备可以在录制模式下,将录制得到的音视频数据进行封装打包以得到TLV格式的TLV数据包。其中,智能设备中包含有Demod硬件和TLV Demux,Demod硬件可以将录制生成的音视频数据由模拟信号转换为数字信号并进行TLV封装,TLV Demux则可以对生成的TLV数据包进行过滤,以将需要进行保存的TLV数据包进行过滤识别,并根据过滤后的TLV数据包生成第一TLV数据。
可以理解的是,过滤后得到的多个TLV数据包若对应相同的解扰密钥,则可以将多个TLV数据包进行拼接以得到第一TLV数据,在第一TLV数据前插入第二TLV数据后即可在读取过程中根据第二TLV数据中的解扰密钥对第一TLV数据中的多个TLV数据包进行解扰。
进一步的,参照图5,图5为本发明TLV数据生成方法第四实施例的流程示意图,基于上述图4所示的实施例,所述步骤S31,对所述TLV数据包进行过滤以得到第一TLV数据的步骤之后,还包括:
步骤S32,判断所述第一TLV数据是否为加扰数据;
步骤S33,在所述第一TLV数据不为加扰数据时,将所述第一TLV数据进行加密存储;
在所述第一TLV数据为加扰数据时,执行步骤S10:获取第一TLV数据对应的解扰密钥。
在本实施例中,第一TLV数据中的音视频数据可以为加扰数据或不为加扰数据。其中,音视频数据可以通过与预设扰码进行数字信号的相乘处理,以生成一种新的信号,即加扰数据。与原始的音视频数据信号相比,新的信号在时间上、频率上被打散。经过加扰后的音视频数据(即加扰数据)能够改变其信号特性,以防止非授权的设备或用户接收到清晰的图像和声音。
在对第一TLV数据进行处理前,可以对第一TLV数据中的音视频数据是否为加扰数据进行判断,若第一TLV数据中的音视频数据不为加扰数据,则对第一TLV数据进行解封装后即可得到能够正常加载运行的音视频数据,不能满足密流录制需求。此时智能设备可以对未进行加扰,仅执行封装操作得到的第一TLV数据进行加密操作,并在加密后将该数据存储至存储模块内。若第一TLV数据中的音视频数据为加扰数据,则可以获取第一TLV数据的解扰密钥并继续执行相应步骤,以将第一TLV数据连同解扰密钥一并存储至存储模块内,实现密流存储。
可以理解的是,对于已经加扰的音视频数据,可以作为密流数据进行存储,而未加扰的音视频数据在进行TLV封装后还需要执行加密操作,从而避免将可加载的音视频数据直接存储,满足密流录制需求。
进一步的,参照图6,图6为本发明TLV数据生成方法第五实施例的流程示意图,基于上述图5所示的实施例,所述步骤S32,判断所述第一TLV数据是否为加扰数据的步骤包括:
步骤S321,根据所述第一TLV数据中的加扰控制参数判断所述第一TLV数据是否为加扰数据。
在本实施例中,第一TLV数据中可以包含有header_extension参数,该header_extension参数的MMT scramble control bit字段即为第一TLV数据中存储的加扰控制参数。在MMT scramble control bit字段为00时表示第一TLV数据未加扰,字段为10时表示第一TLV数据为偶key加扰,字段为11时表示第一TLV数据为奇key加扰。按照Key(密钥)使用的先后顺序,将Key依次定义为奇密钥(Odd Key)或者偶密钥(Even Key),形成类似“奇Key、偶Key、奇Key、偶Key…”的密钥序列。在从加扰控制参数对应的字段确定第一TLV数据的加扰方式后,采用预先存储的密钥列表中的奇Key或者偶Key进行加密后封装进TLV包,并在TLV包的包头数据包中通过加扰控制参数来表征第一TLV数据被奇Key或是偶Key进行加扰。相应的,智能设备,例如电视、机顶盒等,对加密后的第一TLV数据进行解密的时候,若判断出当前加扰控制参数表示为奇Key,则使用对应的奇Key进行解密操作,若判断出当前加扰控制参数表示为偶Key,则使用对应的偶Key进行解密操作。奇偶双Key的使用方法,能够实现密钥的灵活更换,提升加密的安全性。并且,通过识别第一TLV数据中的加扰控制参数不仅能够识别奇偶加密方式,还可确定第一TLV数据包中所封装的数据是否为加扰数据。
需要说明的是,若确定第一TLV数据为加扰数据,则可以在加扰的第一TLV包前插入一个packet type的值为0x04的第二TLV数据,以在读取混合TLV数据进行音视频回放的时候从第二TLV数据中获取解扰密钥对加扰数据进行解扰。若第一TLV数据不为加扰数据,则可以对第一TLV数据进行加密存储,在读取该第一TLV数据时可以进行解密并加载音视频数据实现音视频回放。其中,由于TLV包的packet type在0x00-0x03以及0xFE-0xFF已存在定义,则插入的第二TLV数据中packet type的值可以在0x04-0xFD中选取。
可以理解的是,上述混合TLV数据中第一TLV数据可以按照是否加扰分为两种,若第一TLV数据为加扰数据,则混合TLV数据为将第二TLV数据插入第一TLV数据前生成的混合数据;若第一TLV数据为未加扰数据,则混合TLV数据为加密后的第一TLV数据。
进一步的,参照图7,图7为本发明TLV数据生成方法第六实施例的流程示意图,基于上述图2至图6所示的实施例,所述步骤S10,获取第一TLV数据对应的解扰密钥,并根据所述解扰密钥生成第二TLV数据的步骤包括:
步骤S11,获取第一TLV数据对应的解扰密钥,对所述解扰密钥进行加密,并将加密解扰密钥打包为第二TLV数据。
在本实施例中,在获取用于对第一TLV数据进行解扰的解扰密钥后,可以在对解扰密钥进行加密后生成加密解扰密钥,并将该加密解扰密钥进行TLV封装打包以生成为第二TLV数据。可以理解的是,若解扰密钥不经过加密,则任何设备都可以从第二TLV数据中解封装得到解扰密钥并对第一TLV数据中得到的音视频数据进行解扰后正常加载,从而无法满足密流存储需求。
请参照图8,图8为本发明TLV数据读取方法第一实施例的流程示意图,其中,所述TLV数据读取方法包括如下步骤:
步骤S40,获取混合TLV数据,并根据所述混合TLV数据得到第一TLV数据和第二TLV数据;
本实施例中,混合TLV数据被存储在设备的存储模块内,并能够被设备读取。混合TLV数据中包含有第一TLV数据和第二TLV数据,其中,对第一TLV数据进行解封装后即可得到加扰的音视频数据,该音视频数据即为智能设备在录制模式下录制得到的音视频数据。对第二TLV数据进行解封装后即可得到该加扰的音视频数据对应的解扰密钥,通过该解扰密钥即可对加扰的音视频数据进行解扰,以加载解扰后的音视频数据实现音视频回放功能。
在从存储模块中读取混合TLV数据时,可以根据TLV数据包的结构体将混合TLV数据分离为第一TLV数据和第二TLV数据。其中,第二TLV数据可以设置为固定字节长度的TLV数据包。
步骤S50,根据所述第二TLV数据获取解扰密钥,并通过所述解扰密钥对所述第一TLV数据进行解扰,得到解扰后的音视频数据。
在从混合TLV数据读取到第二TLV数据时,可以对第二TLV数据进行解封装以获得解扰密钥,而在读取第一TLV数据并进行解封装后,即可得到加扰的音视频数据,通过解扰密钥即可对加扰的音视频数据进行解扰以得到解扰后能够正常加载运行的音视频数据。
在本实施例中,通过读取混合TLV数据并分离为第一TLV数据和第二TLV数据,即可从第二TLV数据中获取解扰密钥并对第一TLV数据中加扰的音视频数据进行解扰和加载。若直接从混合TLV数据中读取第一TLV数据并进行解封装,所得到的加扰的音视频数据无法实现正常加载,即混合TLV数据为密流数据从而实现了音视频数据的密流存储。
需要说明的是,第一TLV数据还可以为多个TLV数据包的组合,该多个TLV数据包具有相同的解扰密钥。在生成多个TLV数据包时,可以对每个TLV包的解扰密钥进行确定,在多个连续的TLV数据包具有相同的解扰密钥时,可以在多个TLV数据包组合成的第一TLV数据前插入第二TLV数据包。在读取过程中通过第二TLV数据包获取到解扰密钥后,即可对第一TLV数据中的多个TLV数据包进行解扰。从而避免相同的解扰密钥重复插入而造成混合TLV数据的显著增大。
进一步的,参照图9,图9为本发明TLV数据读取方法第二实施例的流程示意图,基于上述图8所示的实施例,所述步骤S50,根据所述第二TLV数据获取解扰密钥,并通过所述解扰密钥对所述第一TLV数据进行解扰的步骤包括:
步骤S51,对所述第二TLV数据进行解封装得到加密解扰密钥;
步骤S52,对所述加密解扰密钥进行解密以生成解扰密钥,并通过所述解扰密钥对所述第一TLV数据进行解扰,得到解扰后的音视频数据。
在本实施例中,在从存储模块中读取混合TLV数据时,可以从混合TLV数据中读取到第二TLV数据以及第一TLV数据。通过对第二TLV数据进行解封装可以得到加密解扰密钥,对加密解扰密钥进行解密即可生成解扰密钥,通过解扰密钥即可对第一TLV数据解封装后得到的音视频数据进行解扰。第一TLV数据中的音视频数据在数据存储过程中仅执行加扰操作,而未进行解扰和加密操作,从而使得智能设备的系统芯片在进行音视频数据的存储时减小了大量数据处理操作,提升了音视频数据的存储效率。
可以理解的是,第二TLV数据中还可以包括对解扰密钥进行加密所采用的加密密钥的序列号。在对第二TLV数据进行解封装后,可以得到加密解扰密钥以及加密密钥对应的序列号,而智能设备内预先存储有密钥列表,根据解封装后得到的序列号即可确定加密解扰密钥对应的解密密钥,从而对加密解扰密钥进行解密得到解扰密钥。
进一步的,参照图10,图10为本发明TLV数据读取方法第三实施例的流程示意图,基于上述图9所示的实施例,所述步骤S51,对所述第二TLV数据进行解封装得到加密解扰密钥的步骤包括:
步骤S511,对所述第二TLV数据进行解封装以得到所述加密解扰密钥和数据包ID;
所述步骤S52,对所述加密解扰密钥进行解密以生成解扰密钥,并通过所述解扰密钥对所述第一TLV数据进行解扰的步骤包括:
步骤S521,对所述加密解扰密钥进行解密以生成解扰密钥,根据所述数据包ID确定对应的第一TLV数据,并通过所述解扰密钥对所述第一TLV数据进行解扰,得到解扰后的音视频数据。
在本实施例中,第二TLV数据中还存储有数据包ID,根据该数据包ID即可从多个第一TLV数据中确定与该第二TLV数据对应的第一TLV数据。在对第二TLV数据进行解封装后,即可获得加密解扰密钥和数据包ID,在对加密解扰密钥进行解密后即可生成解扰密钥,根据数据包ID即可获取对应的第一TLV数据、通过解扰密钥即可对第一TLV数据解封装后的音视频数据进行解扰。
需要说明的是,第二TLV数据可以为长度固定为23字节的TLV数据包,智能设备的TEE环境内还预先存储有加密解扰密钥列表。在获取每个第一TLV数据时,可以根据该第一TLV数据生成对应的数据包ID,并从加密解扰密钥列表中获取该第一TLV数据对应的加密解扰密钥。智能设备可以将加密解扰密钥和数据包ID放入TLV数据包的Value部分,并设置TLV数据包的TLV_TYPE为0x04,以生成第二TLV数据。
解扰密钥可以设置为周期性变化,例如智能设备的TEE环境内可以预先存储解扰密钥列表,并每间隔2s进行解扰密钥的更新。在解扰密钥发生更新后,对音视频数据进行加扰和封装生成的TLV数据包即为第一TLV数据,在第一个TLV数据前插入包含解扰密钥的第二TLV数据,即可通过该第二TLV数据对该周期内采用对应解扰密钥的加扰音视频数据进行解扰。智能设备在同时存储2路视频、6路音频时,每两秒需要插入8个23字节的第二TLV数据包。若智能设备每秒生成的音视频数据为1MB,则增加的数据量为23*8字节,而两秒内的音视频数据为2*1024*1024字节。即,通过插入包含解扰密钥的第二TLV数据,仅使得原有的音视频TLV数据包增大约0.008%,从而在不显著增加音视频文件大小的前提下实现录制密流和存储的需求,避免额外数据增量对系统运行产生负担。
如图12所示,在一个长度固定为23字节的第二TLV数据包中,第1个字节中的2+6bit位为识别位。第2个字节中的8bit为TLV数据包中的Tag,即TLV_TYPE,TLV_TYPE的值可以设置为0x04,以在读取混合TLV数据的过程中根据TLV_TYPE的值将该TLV数据包识别为第二TLV数据。第3-4字节为TLV数据包中的Length长度位,后19字节为TLV数据包中的data部分,即Value数值位。data数据中依次包括Packet_id、Encrypted key list number、scramble control bit以及CW ket,其中Packet_id为数据包ID,Encrypted key listnumber为对CW key进行加密的密钥对应的密钥列表中的序号,scramble control bit为加扰控制参数,字段为00时表示未加扰,字段为10时表示偶key加扰(even key),字段为11时表示奇key加扰(odd key)。CW key则为加密后的解扰密钥,通过Encrypted key listnumber可以获得对应的密钥对加密的解扰密钥进行解密以生成解扰密钥。
进一步的,参照图11,图11为本发明TLV数据生成方法第四实施例的流程示意图,基于上述图2所示的实施例,所述步骤S50,根据所述第二TLV数据获取解扰密钥,并通过所述解扰密钥对所述第一TLV数据进行解扰,得到解扰后的音视频数据的步骤包括:
步骤S60,根据所述第二TLV数据获取解扰密钥,并对所述第一TLV数据进行解封装以得到未解扰的音视频数据;
步骤S61,通过所述解扰密钥对所述音视频数据进行解扰,并根据解扰后的音视频数据进行音视频播放。
在本实施例中,在通过第二TLV数据获取解扰密钥后,对第一TLV数据进行解封装可以得到加扰的音视频数据,通过解扰密钥对该加扰的音视频数据进行解扰即可得到能够正常加载的音视频数据。即在读取某一音视频对应的全部第一TLV数据,并对全部第一TLV数据进行解扰后即可得到该音视频的全部音视频数据,从而在读取过程中通过加载已解扰的音视频数据实现音视频回放功能。
此外,本发明还提出一种计算机可读存储介质,其上存储有TLV数据生成程序和TLV数据读取程序。所述计算机可读存储介质可以是图1的终端中的存储器20,也可以是如ROM(Read-Only Memory,只读存储器)/RAM(Random Access Memory,随机存取存储器)、磁碟、光盘中的至少一种,所述计算机可读存储介质包括若干指令用以使得一台具有处理器的智能设备执行本发明各个实施例所述的TLV数据生成方法或TLV数据读取方法。
可以理解的是,在本说明书的描述中,参考术语“一实施例”、“另一实施例”、“其他实施例”、或“第一实施例~第N实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (11)
1.一种TLV数据生成方法,其特征在于,包括以下步骤:
获取第一TLV数据对应的解扰密钥,并对所述解扰密钥进行加密,得到加密解扰密钥;
将所述第一TLV数据对应的数据包ID、所述加密解扰密钥和所述加密解扰密钥对应的加密密钥的序列号打包为第二TLV数据;
根据所述第二TLV数据和所述第一TLV数据生成混合TLV数据,并将所述混合TLV数据进行存储。
2.如权利要求1所述的TLV数据生成方法,其特征在于,所述根据所述第二TLV数据和所述第一TLV数据生成混合TLV数据的步骤包括:
将所述第二TLV数据插入至所述第一TLV数据前,以生成所述混合TLV数据。
3.如权利要求1所述的TLV数据生成方法,其特征在于,所述获取第一TLV数据对应的解扰密钥,并对所述解扰密钥进行加密,得到加密解扰密钥的步骤之前,还包括:
在录制模式下,将录制得到的音视频数据打包为TLV数据包;
对所述TLV数据包进行过滤以得到第一TLV数据。
4.如权利要求3所述的TLV数据生成方法,其特征在于,所述对所述TLV数据包进行过滤以得到第一TLV数据的步骤之后,还包括:
判断所述第一TLV数据是否为加扰数据;
在所述第一TLV数据不为加扰数据时,将所述第一TLV数据进行加密存储;
在所述第一TLV数据为加扰数据时,执行步骤:获取第一TLV数据对应的解扰密钥。
5.如权利要求4所述的TLV数据生成方法,其特征在于,所述判断所述第一TLV数据是否为加扰数据的步骤包括:
根据所述第一TLV数据中的加扰控制参数判断所述第一TLV数据是否为加扰数据。
6.一种TLV数据读取方法,其特征在于,包括以下步骤:
获取混合TLV数据,并根据所述混合TLV数据得到第一TLV数据和第二TLV数据;
对所述第二TLV数据进行解封装得到数据包ID、加密解扰密钥和所述加密解扰密钥对应的加密密钥的序列号,根据所述加密解扰密钥和所述加密密钥的序列号获取解扰密钥;
通过所述解扰密钥对所述第一TLV数据进行解扰,得到解扰后的音视频数据。
7.如权利要求6所述的TLV数据读取方法,其特征在于,所述根据所述加密解扰密钥和所述加密密钥的序列号获取解扰密钥的步骤包括:
根据所述加密密钥的序列号确定所述加密解扰密钥对应的解密密钥,并通过所述解密密钥对所述加密解扰密钥进行解密以生成解扰密钥。
8.如权利要求7所述的TLV数据读取方法,其特征在于,所述通过所述解扰密钥对所述第一TLV数据进行解扰的步骤包括:
根据所述数据包ID确定对应的第一TLV数据,并通过所述解扰密钥对所述第一TLV数据进行解扰。
9.如权利要求6所述的TLV数据读取方法,其特征在于,所述通过所述解扰密钥对所述第一TLV数据进行解扰,得到解扰后的音视频数据的步骤包括:
对所述第一TLV数据进行解封装以得到未解扰的音视频数据;
通过所述解扰密钥对所述音视频数据进行解扰,并根据解扰后的音视频数据进行音视频播放。
10.一种智能设备,其特征在于,所述智能设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的TLV数据生成程序和TLV数据读取程序,其中:所述TLV数据生成程序和TLV数据读取程序被所述处理器执行时实现如权利要求1至9中任一项所述的TLV数据生成方法或TLV数据读取方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有TLV数据生成程序和TLV数据读取程序,所述TLV数据生成程序和所述TLV数据读取程序被处理器执行时实现如权利要求1至9中任一项所述的TLV数据生成方法或TLV数据读取方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010970105.5A CN112073660B (zh) | 2020-09-15 | 2020-09-15 | Tlv数据生成方法、读取方法、智能设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010970105.5A CN112073660B (zh) | 2020-09-15 | 2020-09-15 | Tlv数据生成方法、读取方法、智能设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112073660A CN112073660A (zh) | 2020-12-11 |
CN112073660B true CN112073660B (zh) | 2023-03-10 |
Family
ID=73696455
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010970105.5A Active CN112073660B (zh) | 2020-09-15 | 2020-09-15 | Tlv数据生成方法、读取方法、智能设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112073660B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1137723A (zh) * | 1994-11-26 | 1996-12-11 | Lg电子株式会社 | 防止在数字视频系统中非法收看和复制的方法及其控制方法 |
WO2006040482A2 (fr) * | 2004-10-14 | 2006-04-20 | Viaccess | Dispositif et procede de reception d'informations embrouillees, et unite de desembrouillage, systeme de transmission d'informations et emetteur adaptes pour ce dispositif |
CN101032167A (zh) * | 2004-05-28 | 2007-09-05 | 维亚赛斯公司 | 将数字数据传送到一组目标接收终端的方法 |
JP2011197960A (ja) * | 2010-03-18 | 2011-10-06 | Toshiba Corp | 携帯可能電子装置、及び携帯可能電子装置の制御方法 |
CN103581900A (zh) * | 2012-08-01 | 2014-02-12 | 中国移动通信集团公司 | 通信安全控制方法、装置、第一移动终端及移动健康设备 |
CN105828186A (zh) * | 2016-03-23 | 2016-08-03 | 福建新大陆通信科技股份有限公司 | 一种机顶盒录制节目二次加密的方法 |
CN106454488A (zh) * | 2016-10-09 | 2017-02-22 | 深圳创维数字技术有限公司 | 一种基于机顶盒的节目录制与回放方法及系统 |
CN110290413A (zh) * | 2019-07-02 | 2019-09-27 | 广州清汇信息科技有限公司 | 一种多媒体数据录制方法、播放方法及录制分享系统 |
-
2020
- 2020-09-15 CN CN202010970105.5A patent/CN112073660B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1137723A (zh) * | 1994-11-26 | 1996-12-11 | Lg电子株式会社 | 防止在数字视频系统中非法收看和复制的方法及其控制方法 |
CN101032167A (zh) * | 2004-05-28 | 2007-09-05 | 维亚赛斯公司 | 将数字数据传送到一组目标接收终端的方法 |
WO2006040482A2 (fr) * | 2004-10-14 | 2006-04-20 | Viaccess | Dispositif et procede de reception d'informations embrouillees, et unite de desembrouillage, systeme de transmission d'informations et emetteur adaptes pour ce dispositif |
JP2011197960A (ja) * | 2010-03-18 | 2011-10-06 | Toshiba Corp | 携帯可能電子装置、及び携帯可能電子装置の制御方法 |
CN103581900A (zh) * | 2012-08-01 | 2014-02-12 | 中国移动通信集团公司 | 通信安全控制方法、装置、第一移动终端及移动健康设备 |
CN105828186A (zh) * | 2016-03-23 | 2016-08-03 | 福建新大陆通信科技股份有限公司 | 一种机顶盒录制节目二次加密的方法 |
CN106454488A (zh) * | 2016-10-09 | 2017-02-22 | 深圳创维数字技术有限公司 | 一种基于机顶盒的节目录制与回放方法及系统 |
CN110290413A (zh) * | 2019-07-02 | 2019-09-27 | 广州清汇信息科技有限公司 | 一种多媒体数据录制方法、播放方法及录制分享系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112073660A (zh) | 2020-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3557864A1 (en) | Method and apparatus for image display using privacy masking | |
JP4809616B2 (ja) | 媒体コンテンツを保護する方法およびシステム | |
KR102550672B1 (ko) | 영상처리장치 및 그 제어방법 | |
US8705733B2 (en) | Unique identifier per chip for digital audio/video data encryption/decryption in personal video recorders | |
US20080005586A1 (en) | Systems and techniques for datapath security in a system-on-a-chip device | |
US8510654B2 (en) | Techniques for shuffling video information | |
US20030226029A1 (en) | System for protecting security registers and method thereof | |
EP2699014A1 (en) | Terminal based on conditional access technology | |
US10652595B2 (en) | Content transmission device and content transmission method thereof | |
JP2005287039A (ja) | 共通スクランブル処理 | |
KR20130050664A (ko) | 애플리케이션 데이터 보호를 위한 휴대용 단말기의 장치 및 방법 | |
CN110909371B (zh) | 一种数据加密方法、电子设备及介质 | |
US20160182952A1 (en) | Protected Media Decoding System Supporting Metadata | |
CN111327947A (zh) | 一种截屏管理方法、装置及移动终端 | |
US20240015142A1 (en) | Data transmission encryption control method and apparatus | |
US9268735B2 (en) | Loadable and modular conditional access application | |
US20060045478A1 (en) | Method and apparatus for transmitting and receiving protected contents at home | |
CN112073660B (zh) | Tlv数据生成方法、读取方法、智能设备及存储介质 | |
US9037855B2 (en) | Method for reproducing content data and method for generating thumbnail image | |
KR20060055521A (ko) | 디지털 미디어 카트리지 시스템 및 방법 | |
CN110968885A (zh) | 模型训练数据存储方法及装置、电子设备、存储介质 | |
US20050182955A1 (en) | Apparatus and method for securing external memory for portable terminal | |
CN114902216A (zh) | 数字版权管理drm的方法、装置和系统 | |
CN108259962B (zh) | 节目切换方法、机顶盒及存储介质 | |
CN105872726A (zh) | 一种电视节目播放方法、相关设备及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |