[go: up one dir, main page]

CN119383378A - 视频处理方法、终端设备及存储介质 - Google Patents

视频处理方法、终端设备及存储介质 Download PDF

Info

Publication number
CN119383378A
CN119383378A CN202411550636.3A CN202411550636A CN119383378A CN 119383378 A CN119383378 A CN 119383378A CN 202411550636 A CN202411550636 A CN 202411550636A CN 119383378 A CN119383378 A CN 119383378A
Authority
CN
China
Prior art keywords
key
file
video
app
terminal device
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.)
Pending
Application number
CN202411550636.3A
Other languages
English (en)
Inventor
陈学艺
马青山
熊亦涛
朱金金
孙永超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Discipline Network Beijing Co ltd
Original Assignee
Discipline Network Beijing Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Discipline Network Beijing Co ltd filed Critical Discipline Network Beijing Co ltd
Priority to CN202411550636.3A priority Critical patent/CN119383378A/zh
Publication of CN119383378A publication Critical patent/CN119383378A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4408Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6334Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
    • H04N21/63345Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key by transmitting keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • H04N21/63775Control signals issued by the client directed to the server or network components directed to server for uploading keys, e.g. for a client to communicate its public key to the server

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例公开了一种视频处理方法、终端设备及存储介质。视频处理方法包括:基于第一终端设备的第一APP接收视频文件、列表文件以及密钥文件;视频文件包括一个或多个视频分段;列表文件包括视频分段的播放列表;密钥文件包括第一密钥;第一密钥用于解密视频文件;将密钥文件存储至第一存储空间;第一存储空间允许第一APP访问且禁止第二APP访问;第二APP不同于第一APP;根据密钥文件在第一存储空间中的存储地址,在列表文件写入密钥信息;密钥信息用于读取密钥文件;在解密视频文件时,基于第一APP和密钥信息从第一存储空间读取第一密钥;使用第一密钥解密视频文件。

Description

视频处理方法、终端设备及存储介质
技术领域
本发明涉及视频技术领域,尤其涉及一种视频处理方法、终端设备及存储介质。
背景技术
通常情况下,视频文件的总数据量相比文本文件、音频文件或图像文件的数据总量都大。随着网络技术的发展,终端设备可以基于网络便捷地进行视频文件的下载和在线观看。为了方便视频文件的网络传输,视频文件可分为多个视频分段,这多个视频分段组合之后形成完整的视频文件。在一些情况下,视频文件的多个视频分段将形成播放列表,方便播放的终端设备有序播放各个视频分段。
发明内容
有鉴于此,本发明实施例在于提供一种视频处理方法、终端设备及存储介质。
本发明的技术方案是这样实现的:
本公开实施例第一方面提供一种视频处理方法,由第一终端设备执行,包括:
基于所述第一终端设备的第一APP(Application:应用程序)接收视频文件、列表文件以及密钥文件;所述视频文件包括一个或多个视频分段;所述列表文件包括播放列表以及所述密钥文件;所述密钥文件包括第一密钥;所述第一密钥用于解密所述视频文件;
将所述密钥文件存储至第一存储空间;所述第一存储空间允许所述第一APP访问且禁止第二APP访问;所述第二APP不同于所述第一APP;
根据所述密钥文件在所述第一存储空间中的存储地址,在所述列表文件写入密钥信息;所述密钥信息用于读取所述密钥文件;
在解密所述视频文件时,基于所述第一APP和所述密钥信息从所述第一存储空间读取所述第一密钥;
使用所述第一密钥解密所述视频文件。
基于上述方案,所述方法还包括:
将所述密钥文件存储到所述第一存储空间的目标文件夹;所述目标文件允许被所述第一终端设备访问且禁止第二终端设备访问;所述第二终端设备不同于所述第一终端设备。
基于上述方案,所述目标文件夹以所述第一终端设备的设备标识命名,且所述设备标识用于验证访问所述目标文件夹是否有权访问所述目标文件夹。
基于上述方案,所述方法还包括:
使用第二密钥加密所述密钥文件和/或存储有所述密钥信息的所述列表文件。
基于上述方案,所述方法还包括:
将所述第二密钥存储在第二存储空间;所述第二存储空间不同于所述第一存储空间。
基于上述方案,所述在解密所述视频文件时,基于所述第一APP和所述密钥信息从所述第一存储空间读取所述第一密钥,包括:
在解密所述视频文件时,使用所述第二密钥解密所述列表文件;
在解密所述列表文件之后,读取所述密钥信息;
根据所述密钥信息,从所述第一存储空间读取所述密钥文件中的第一密钥。
基于上述方案,所述方法包括:
在停止视频播放时,加密所述列表文件和/或所述密钥文件。
本公开实施例第二方面提供一种终端设备,所述终端设备包括:
接收模块,用于基于所述第一终端设备的第一应用程序APP接收视频文件、列表文件以及密钥文件;所述视频文件包括一个或多个视频分段;所述列表文件包括播放列表以及所述密钥文件;所述密钥文件包括第一密钥;所述第一密钥用于解密所述视频文件;
存储模块,用于将所述密钥文件存储至第一存储空间;所述第一存储空间允许所述第一APP访问且禁止第二APP访问;所述第二APP不同于所述第一APP;
写入模块,用于根据所述密钥文件在所述第一存储空间中的存储地址,在所述列表文件写入密钥信息;所述密钥信息用于读取所述密钥文件;
读取模块,用于在解密所述视频文件时,基于所述第一APP和所述密钥信息从所述第一存储空间读取所述第一密钥;
解密模块,用于使用所述第一密钥解密所述视频文件。
本公开实施例第三方面提供一种终端设备,包括:
存储器,至少用于存储计算机可执行指令;
处理器,与所述存储器连接,用于通过所述计算机可执行指令的执行能够实现第一方面任意技术方案所述的视频处理方法。
本公开实施例第四方面提供一种计算机存储介质,所述计算机存储介质存储有计算机可读指令,所述计算机可读指令被执行后能够执行第一方面任一技术方案所述的方法。
本公开实施例第五方面提供一种计算机可读指令,所述计算机可读指令被执行后能够执行上述第一方面任一技术方案所述的方法。
附图说明
图1为本发明一些实施例提供的视频处理方法的流程示意图;
图2为本发明一些实施例提供的视频处理方法的流程示意图;
图3为本发明一些实施例提供的视频处理方法的流程示意图;
图4为本发明一些实施例提供的终端设备的结构示意图;
图5为本发明实施例提供的终端设备的硬件结构示意图。
具体实施方式
在一些场景下,若视频文件是保密的加密视频文件,则终端设备从服务器下载视频文件的同时,还将从服务器或者密钥。该密钥可用于解密加密的视频文件。视频文件被解密之后可正常播放。但是密码和视频文件同时提供终端设备之后,保密视频可能因为用户的不合理使用或者终端设备非法设备入侵的方式,导致保密视频被滥放或者保密视频文件的加密被去掉,导致视频泄密以及播放风险。有鉴于此,本申请实施例提供一种视频处理方法,可提升视频的安全性。具体如图1所示,该方法可包括:
S1101:基于所述第一终端设备的第一APP(第一应用程序APP)接收视频文件、列表文件以及密钥文件;所述视频文件包括一个或多个视频分段;所述列表文件包括播放列表;所述密钥文件包括第一密钥;所述第一密钥用于解密所述视频文件;
S1102:将所述密钥文件存储至第一存储空间;所述第一存储空间允许所述第一APP访问且禁止第二APP(第二应用程序APP)访问;所述第二APP不同于所述第一APP;
S1103:根据所述密钥文件在所述第一存储空间中的存储地址,在所述列表文件写入密钥信息;所述密钥信息用于读取所述密钥文件;
S1104:在解密所述视频文件时,基于所述第一APP和所述密钥信息从所述第一存储空间读取所述第一密钥;
S1105:使用所述第一密钥解密所述视频文件。
在一些实施例中,一个视频文件的视频分段的播放时长可等长也可以不等长。在另一些实施例中,一个视频分段可包括一个或多个画面组(Group of P此图热, GOP)。一个视频分段可包括一个场景或多个场景的所有画面。
在一些实施例中,该视频文件可为各种支持视频分段的视频文件。在一些实施例中,列表文件可为纯文本文件。该列表文件可用于获取和/或确定一个视频文件中多个视频分段的播放顺序等。示例性地,该视频文件可包括但不限于m3u8视频文件。m3u8视频文件可为一种基于超文本协议(Hypertext Transfer Protocol, HTTP)的流媒体件。若视频文件是m3u8视频文件,则列表文件可为m3u8文件。在一些实施例中,m3u8 文件包含的播放列表可以是媒体播放列表(Media Playlist),或者是一个主列表(Master Playlist)。但无论是哪种播放列表,m3u8文件的文字使用的都是 utf-8 编码。
当 m3u8 文件作为媒体播放列表(Media Playlist)时,其内部信息记录的是一系列媒体片段资源,顺序播放该片段资源,即可完整展示多媒体资源。
本公开实施例中,该视频文件可用于直播或点播或视频文件的下载。
对于点播来说,客户端只需按顺序下载上述片段资源,依次进行播放即可。而对于直播来说,客户端需要 定时重新请求 该 m3u8 文件,看下是否有新的片段数据需要进行下载并播放。
当 m3u8 作为主播放列表(Master Playlist)时,其内部提供的是同一份媒体资源的多份流列表资源(Variant Stream)。该m3u8文件可包括视频文件的一个或多个备用流资源的信息。备用流资源指定了多种不同码率,不同格式的媒体播放列表,并且,该备用流资源也可同时提供不同版本的资源内容,比如不同语言的音频文件,不同角度拍摄的视屏文件等等。客户可以根据不同的网络状态选取合适码流的资源,并且最好根据用户喜好选择合适的资源内容。
示例性地,m3u8 文件以 utf-8 进行编码,不能使用 Byte Order Mark(BOM)字节序, m3u8 文件可以报考一个或多个统一资源定位符。通常情况下,m3u8文件中一个文本行可用于写入一个 URI。 m3u8 文件还可包括一个或多个标签。示例性地,这些标签可包括但不限于:
属性列表(Attribute Lists):某些特定的标签的值为属性列表。标签可以具有一个或多个 属性值 对。示例性地,标签的类型可分为五种类型:基础标签(Basic Tags),媒体片段类型标签(Media Segment Tags),媒体播放列表类型标签,主播放列表类型标签 和播放列表类型标签。基础标签(Basic Tags):可同时适用于媒体播放列表(MediaPlaylist)和主播放列表(Master Playlist)。具体标签如下:
例如,类型标签(EXTM3U):表明该文件是一个 m3u8 文件。每个 M3U 文件必须将该标签放置在第一行。版本标签(EXT-X-VERSION)表示 HLS 的协议版本号,该标签与流媒体的兼容性相关。该标签为全局作用域,使能整个 m3u8 文件;每个 m3u8 文件内最多只能出现一个该标签定义。如果 m3u8 文件不包含该标签,则默认为协议的第一个版本。媒体片段类型标签(Media Segment Tags):每个视频分段(也可以称为视频切片) 前面都有一系列媒体片段标签对其进行描述。有些片段标签只对其后切片资源有效;有些片段标签对其后所有切片都有效,直到后续遇到另一个该标签描述。媒体片段类型标签不能出现在主播放列表(Master Playlist)中。标签(EXTINF):表示统一资源符指定的媒体片段时长(单位为秒)。每个 统一资源符对应的 媒体片段之前必须指定该标签。标签(EXT-X-DISCONTINUITY):表明其前一个切片与下一个切片之间存在中断。在一些实施例中,该列表文件还可包括时间戳序列(timestamp sequence)。当然以上仅仅是对列表文件的举例。总之,基于列表文件,第一终端设备可以获取到各个视频分段,并按需播放各个视频分段,从而实现视频的有序播放。
在本公实施例中,第一终端设备除了接收视频文件还将接收到密钥文件。在该密钥文件中存储有第一密钥。该第一密钥可以解密视频文件。示例性地,该第一密钥可为对称加密的密钥或者非对称加密的密钥。
在一些实施例中,密钥文件可包括一个或多个第一密钥。例如,一个视频文件可具有一个第一密钥,则该视频文件的所有视频分段都可以使用这一个第一密钥进行解密。又例如,一个视频文件可具有多个第一密钥,例如,不同的视频分段可具有不同的第一密钥。或者,多个视频分段(例如,有关联性的视频分段)可共用一个第一密钥。例如,这种视频分段的关联性体现在内容关联性或者具有相同的统一资源地址等。当然具体实现时,内容关联性可体现在多个视频分段需连续播放,或者,多个视频文件描述的同一个场景或者视频的相邻场景。
在本公开实施例中,在接收到密钥文件之后,第一终端设备会将密钥文件存储资源至特定的第一存储空间。该第一存储空间被设置有空间特性,仅允许该存储空间对应的第一APP访问。在一些实施例中,该第一存储空间还可为第一APP的沙盒空间。第二APP可为任意安装在第一终端设备中的APP或者远程在线APP。第一存储空间不允许第一APP以外的其他APP访问。如此,密钥文件不在是与视频文件和/或列表文件存储在允许第二APP访问的存储空间,实现了视频文件和列表文件与密钥文件的分离存储,至少提升了密钥文件的安全性,减少了黑客或非法设备通过第一终端设备内的其他APP或者在线远程APP窃取该密钥文件,从而基于该密钥文件存储的第一密钥对视频文件进行解密,从而提升了视频文件的安全性。
在一些实施例中,由于密钥文件并未和列表文件和视频文件存储在相同的存储空间内,因此第一终端设备将密钥文件存储至第一存储空间之后,会根据密钥文件在第一存储空间中的存储地址,将密钥信息写入到该列表文件。该密钥信息可用于第一APP读取到该密钥文件。示例性地,该密钥信息可包括密钥文件在第一存储空间中的存储地址、存储路径等信息。
在一些实施例中,第一APP可为能够播放视频的APP或者接收视频文件的APP。若第一APP为能够播放视频的APP,则第一APP检测到播放指令时,需要先解密视频文件。若第一APP为下载视频文件的APP,则在接收到视频播放APP的播放请求的情况下,确定解密该视频文件,并将解密后的视频分段逐一发送给视频播放APP进行播放。为了进一步提升视频文件的安全性,第一APP一次性仅会向视频播放APP发送一个或少量个数的视频分段,而非所有视频分段,避免视频播放APP一次性拿到所有解密后的视频分度导致的视频泄密。在一些实施例中,该视频分段被设置分段属性,该分段属性可以拒绝任意APP或者第一APP以外的任意APP的视频分段属性的修改、视频分段的永久存储或可供查询的存储。在需要解密视频文件时,使用第一APP根据密钥信息从第一存储空间的对一个位置读取第一密钥,再使用第一密钥进行解密。
在一些实施例中,为了进一步提升密钥文件的安全性,会将密钥文件写入到第一存储空间的目标文件夹。在一些实施例中,目标文件夹具有需要验证访问者身份的特性。在另一些实施例中,目标文件夹可为隐藏文件仅有第一终端设备可见。在一些实施例中,目标文件夹被设置有验证信息,如果需要访问目标文件夹必须进行身份验证。通过身份验证的方式仅允许第一终端设备访问且禁止第二终端设备访问。例如,该身份验证信息可为第一终端设备的设备标识。该设备标识可为任意能够唯一表示该第一终端设备的信息。示例性地,该设备标识可包括但不限于第一终端设备的物理标识。在一些实施例中,该物理标识可包括但不限于国际移动设备识别码(International Mobile Equipment Identity,IMEI)和/或设备的生产序列号。在一些实施例中,该验证信息还可为第一终端设备的其他物理标识,例如,第一终端设备的媒体存取控制(Media Access Control Address, MAC)地址等。
在另一些实施例中,该验证信息还可为第一设备的操作系统设置的最高安全等级的验证信息。如此,基于验证信息完成验证且验证通过之后,目标文件夹允许应用程序读取密钥文件,否则将出现读取错误或者不响应读取操作。因此通过这种方式,将密钥文件写入到目标文件夹,再次对密钥文件进行了保护升级。
在一些实施例中,所述目标文件夹以所述第一终端设备的设备标识命名,且所述设备标识用于验证访问所述目标文件夹是否有权访问所述目标文件夹。
在本公开实施例中,该目标文件夹为第一终端设备的设备标识命名的文件夹,仅允许第一终端设备访问,且不允许其他终端设备访问。示例性地,通过这种方式实现了文件夹和终端设备之间的绑定。这种情况下,即便非法设备直接复制第一终端设备中整个第一APP,由于目标文件夹是以第一终端设备命名的或者通过文件夹属性设置等方式仅允许第一终端设备访问,被写入复制的第一APP的第二终端设备也无法从该目标文件夹中读取该密钥文件。再次通过防止黑客或非法设备复制第一终端设备内整个第一APP导致的视频文件的泄露,从而杜绝了这种方式的保密的视频文件的泄露。
在一些实施例中,所述方法还包括:
使用第二密钥加密所述密钥文件和/或存储有所述密钥信息的所述列表文件。
在一些实施例中,使用第二密钥加密密钥文件。
在一些实施例中,使用第二密钥加密包含密钥信息的列表文件。示例性地,至少使用第二密钥加密列表文件,减少列表文件密钥信息的泄露,减少基于列表文件中密钥信息获取到存储密钥文件的存储地址、存储路径等相关信息。
在一些实施例中,使用第二密钥分别加密密钥文件和包含密钥信息的列表文件。
在一些实施例中,为了提升密钥文件的安全性,在使用第二密钥分别加密密钥文件和列表文件时,使用的解密算法不同。如此,即便非法设备或黑客获取到了第二密钥成功解密了列表文件,也无法使用第二密钥以相同的解密算法就能解密密钥文件。
在一些实施例中,使用第二密钥加密列表文件和密钥文件时,使用第一算法加密列表文件且使用第二算法加密密钥文件。第一算法和第二算法不同。示例性地,基于第一算法加密列表文件,可以基于第二密钥直接将列表文件中的内容转换为密文。而使用第二算法加密列表文件是,基于第二密钥生成第三密钥,并基于第三密钥加密密钥文件中的内容得到加密后的密文。在使用第二密钥加密密钥文件时,第二密钥相当于密钥文件加密的中间密钥而已。当然此处仅仅是使用第二密钥加密列表文件和密钥文件的举例,具体实现时不局限于该举例。
为了再次提升密钥文件中第一密钥的安全性。在密钥文件被下载到第一终端设备本地之后,第一终端设备的操作系统或者第一APP会再次使用第二密钥对存储在第一存储空间和包含密钥信息的列表文件进行加密。在一些实施例中,该第二密钥可由第一终端设备自行生成。例如,第一终端设备的操作系统或者第一APP基于指定的密钥推演算法生成第二密钥。在一些实施例中,该第二密钥的推演算法可由提供视频文件的服务器指定。该服务器还可以提供一些生成第二密钥的参数。当然第二密钥生成所需的参数也均可由第一终端设备自行确定,例如,第一终端设备自行密钥推演算法。不同的加密视频文件可具有不同的第二密钥。在一些实施例中,该第二密钥可为系统级密钥,如此,即便第一APP被完整复制,该系统级密钥不被第一APP知晓,黑客或非法设备也会因为缺少第二密钥增加获取第一密钥的密钥难度。
在一些实施例中,所述方法还包括:
将所述第二密钥存储在第二存储空间;所述第二存储空间不同于所述第一存储空间。
在一些实施例中,第二存储空间并非第一APP所在目录下的存储空间。如此,第一APP被复制也无法复制到第二密钥。
在一些实施例中,第二存储空间可为第一APP不能直接访问的存储空间。例如,第一APP需要获取第二密钥时,根据密钥获取口令请求第一终端设备的操作系统从第二存储空间读取第二密钥并传递给第一APP。
示例性地,第二存储空间可为第一终端设的系统存储空间,或仅允许第一终端设备的操作系统访问的存储空间。
如此,将第二密钥存储在第二存储空间,可通过第二密钥的安全性的提升,再次提升第一密钥的安全性。
如图2所示,本公开实施例提供的视频处理方法可包括视频的解密方法,具体可包括:
S2101:在解密视频文件时,使用第二密钥解密列表文件;
S2102:在解密列表文件之后,读取密钥信息;
S2103:根据密钥信息,从第一存储空间读取密钥文件中的第一密钥;
S2104:使用第一密钥解密视频文件。
本公开实施例中,第一APP不再是直接读取与视频文件处于相同文件夹的密钥文件中直接读取第一密钥进行视频文件的解密。而是需要解密视频文件时,先使用第二密钥解密列表文件。在列表文件解密成功之后,从列表文件的指定位置可读取到密钥信息。根据该密钥信息确定密钥文件在第一存储空间的存储地址,基于该存储地址获取到密钥文件。若使用了第二密钥加密密钥文件,则在执行S2104之前,需要先使用第二密钥解密密钥文件,在密钥文件解密成功之后,从密钥文件中读取第一密钥。若未使用第二密钥加密密钥文件,则无需使用第二密钥进行密钥文件的解密。
在一些实施例中,由于密钥文件存储在目标文件夹中,读取密钥文件之前,需要进行密钥文件访问者的验证,若验证通过允许读取密钥文件,否则拒绝密钥文件的读取请求。此时,不管密钥文件是否加密,一旦访问者不是第一终端设备自身,例如,完成窃密了第一终端设备的整个第一APP的终端设备,就可能没有权限访问该目标文件夹。示例性地,该目标文件夹可为以第一终端设备的设备标识命名的文件夹。
在一些实施例中,该方法还包括:
检测第三终端设备是否合法获取到第一终端设备的第一APP;
在第三终端设备合法获取到第一终端设备的第一APP的情况下,允许第三终端设备访问目标文件夹。
例如,一个用户的新旧设备更换,新设备作为第三终端设备拷贝了作为旧设备的第一终端设备的第一APP。在这种情况下,第三终端设备是合法获取到第一终端设备中第一APP,因此第三终端设备可被允许访问目标文件夹。例如,通过修改目标文件夹的文件夹属性或更改目标文件夹的命名等方式,使得第三终端设备具有访问目标文件夹的权限。
在一些实施例中,若第三终端设备合法获取到第一终端设备的第一APP,此时第三终端设备将使用合法的用户账号以及密码等身份验证信息进行身份验证。在身份验证通过之后可认为第三终端设备合法获取到第一终端设备的第一APP。
在一些实施例中,密钥文件中可包括一个或多个第一密钥。若视频文件所有视频分段共用一个第一密钥,则密钥文件可仅包含一个第一密钥,则使用该第一密钥逐一解密各个视频分段。在一个密钥文件包含多个第一密钥时,一个第一密钥可用于一个视频分段的解密。此时,多个第一密钥可在密钥文件中按照视频分段的播放顺序排列,如此,第一终端设备或第一APP可按需读取第一密钥并解密对应的视频分段。在另一些实施例中,密钥文件可对应存储视频分段的索引和第一密钥。如此,在解密视频分段时,根据视频分段的索引检索密钥文件获得第一密钥。在一些实施例中,视频文件中的部分视频分段也可以共用一个第一密钥。例如,相邻的两个或三个视频分段共用一个第一密钥。在这种情况下,密钥文件中共用同一个第一密钥的视频分段的索引与同一个第一密钥对应存储。或者,在密钥文件中没有视频分段的索引时,密钥文件中可写入共享同一个视频分段的分段数量。如此,第一终端设备或第一APP也可以按顺序解密视频分段时,根据分段数量确定使用一个第一密钥解密的视频分段的段数。
在视频解密或播放的过程中,为了提高视频观影体验,则视频解密或播放的过程中可维持列表文件和/或密钥文件的脱密状态,如此,无需多次解密列表文件和/或密钥文件自身,减少视频分段解密延时大出现的视频播放卡顿的现象。
在一些实施例中,所述方法还包括:
在停止视频播放或视频解密完成后,加密所述列表文件和/或所述密钥文件。
在视频停止播放或者视频解密完成之后,再次加密列表文件和/或密钥文件,如此,可以视频播放停止或解密完成之后的安全性。
在一些实施例中,在再次加密列表文件和/或密钥文件时,更新第二密钥。即首次加密列表文件和/或密钥文件之后,任何一次在第一终端设备中再次加密列表文件和/或密钥文件时,都动态更新第二密钥。如此,可以防止一个第二密钥使用次数太多或者使用时长过长导致的泄密现象,再次提升了视频文件的安全性。
首先,因为m3u8文件中通常会带有密钥(key)的信息,容易导致密钥信息泄露,而且解密过程是在移动设备中,由于移动端的不安全性,可能存在加密算法存在被破解的风险。进一步地,因为视频需要离线播放,视频文件存在于设备中,存在设备中的视频文件存在被复制重复利用在其他设备上播放的风险。该密钥可为视频文件的解密密钥,也即前述的第一密钥。
本公开实施例提供的视频处理方法,可包括:
第1步:服务端对视频进行分段并加密,生成m3u8文件,生成密钥(key)文件,并对密钥(key)文件进行加密。
第2步:APP从服务端获取视频密钥(key),并存放在APP内部存储空间(沙盒空间,仅该APP能访问,常规情况下外部无法读取)以该设备ID命名的文件夹中(目的是绑定设备,其他设备盗用后也无法播放)。
第3步:APP从服务端下载分段加密后的视频文件,并存放在APP内部存储空间中;修改m3u8文件的内容,密钥的位置指向第2步密钥(key)的存放路径,再对该m3u8文件进行加密。
第4步:APP播放视频时先对m3u8文件进行解密,再对密钥(key)进行解密,最后播放器自动加载m3u8文件进行视频播放。
第5步:停止播放时对m3u8文件及密钥(key)进行加密,防止外部盗取。
视频文件、密钥(key)文件均存放于APP内部存储空间,一般情况下其他APP无法访问该空间,只能通过APP自身访问,可以有效防止视频等资源被窃取。密钥(key)存放于以设备标识(Identity,ID)命名的文件夹,与设备进行了绑定,黑客复制APP及视频文件至其他设备时,无法在其他设备中播放。视频文件与设备ID进行绑定,可以有效防止视频文件被复制到其他设备上进行播放;
第6步:播放时进行m3u8文件及密钥(key)的解密,停止播放时重新加密,有效防止被盗取密钥(key)文件。m3u8文件及密钥的用时解密,不用时加密,可以有效隐藏关键数据,大大增加了黑客的分析难度。
如图3所示,本公开实施例基于m3u8文件提供一种视频处理方法,可包括:
服务端处理视频分段加密视频,生成m3u8文件及加密后的密钥key;
APP从服务端获取密钥key,并存储在以设备ID命名的文件夹中;
获取视频全部分段和m3u8文件并存储。
修改m3u8文件内容中密钥路径指向APP中密钥key所在路径;
对m3u8文件和密钥key文件进行加密。
判断进入或退出播放模式,在进入播放模式后播放视频,在退出播放模式后,停止视频播放。
若进入播放模式,对m3u8文件和密钥key文件解密后APP自动播放视频。
若退出播放模式,对m3u8文件和密钥key文件加密。
如图4所示,本公开实施例提供一种终端设备,该终端设备包括:
接收模块4101,用于基于所述第一终端设备的第一应用程序APP接收视频文件、列表文件以及密钥文件;所述视频文件包括一个或多个视频分段;所述列表文件包括播放列表以及所述密钥文件;所述密钥文件包括第一密钥;所述第一密钥用于解密所述视频文件;
存储模块4102,用于将所述密钥文件存储至第一存储空间;所述第一存储空间允许所述第一APP访问且禁止第二APP访问;所述第二APP不同于所述第一APP;
写入模块4103,用于根据所述密钥文件在所述第一存储空间中的存储地址,在所述列表文件写入密钥信息;所述密钥信息用于读取所述密钥文件;
读取模块4104,用于在解密所述视频文件时,基于所述第一APP和所述密钥信息从所述第一存储空间读取所述第一密钥;
解密模块4105,用于使用所述第一密钥解密所述视频文件。
该终端设备可为前述的第一终端设备。
在一些实施例中,该接收模块可对应于终端设备的网络接口或者收发天线。
在一些实施例中,该存储模块可对应于终端设备的存储器。
在一些实施例中,该写入模块、读取模块以及解密模块可对应于终端设备的处理器。
在一些实施例中,存储模块,用于将所述密钥文件存储到所述第一存储空间的目标文件夹;所述目标文件允许被所述第一终端设备访问且禁止第二终端设备访问;所述第二终端设备不同于所述第一终端设备。
在一些实施例中,所述目标文件夹以所述第一终端设备的设备标识命名,且所述设备标识用于验证访问所述目标文件夹是否有权访问所述目标文件夹。
在一些实施例中,所述终端设备还包括:
加密模块,用于使用第二密钥加密所述密钥文件和/或存储有所述密钥信息的所述列表文件。
该加密模块同样可为终端设备中的处理器。
在一些实施例中,所述存储模块,用于将所述第二密钥存储在第二存储空间;所述第二存储空间不同于所述第一存储空间。
在一些实施例中,所述解密模块,用于在解密所述视频文件时,使用所述第二密钥解密所述列表文件;在解密所述列表文件之后,读取所述密钥信息;根据所述密钥信息,从所述第一存储空间读取所述密钥文件中的第一密钥。
在一些实施例中,加密模块,用于在停止视频播放时,加密所述列表文件和/或所述密钥文件。
如图5所示,本公开实施例提供一种终端设备。该终端设备可包括:处理器501和存储器502,可用于执行前述任意一个实施例提供的视频处理方法。所述处理器501可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。这里,所述处理器501执行的程序可以存储在与所述处理器501通过通信总线503连接的存储器502之中,所述存储器502可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,ReadOnly Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,RandomAccess Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,Sync Link Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器502旨在包括但不限于这些和任意其它适合类型的存储器502。本发明实施例中的存储器502用于存储各种类型的数据以支持所述处理器501的操作。这些数据的示例包括:供所述处理器501操作的任何计算机程序,如操作系统和应用程序;联系人数据;电话簿数据;消息;图片;视频等。其中,操作系统包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。
在一些实施例中,本发明实施例中的存储器502可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器 (Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器 (Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(DoubleData Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本文描述的系统和方法的存储器502旨在包括但不限于这些和任意其它适合类型的存储器。
而处理器501可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器501中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器501可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array, FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程 存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器502,处理器501读取存储器502中的信息,结合其硬件完成上述方法的步骤。在一些实施例中,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ApplicationSpecific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable LogicDevice,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等) 来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
本发明又一实施例提供了一种计算机存储介质,该计算机可读存储介质存储有可执行程序,所述可执行程序被处理器501执行时,可实现应用于所述端点设备的视频处理方法的步骤。例如,如图1至图3所示的方法中的一个或多个。
在一些实施例中,所述计算机存储介质可以包括:U盘、移动硬盘、只读存储器(ROM, Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是:本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (11)

1.一种视频处理方法,其特征在于,由第一终端设备执行,包括:
基于所述第一终端设备的第一APP接收视频文件、列表文件以及密钥文件;所述视频文件包括一个或多个视频分段;所述列表文件包括播放列表以及所述密钥文件;所述密钥文件包括第一密钥;所述第一密钥用于解密所述视频文件;
将所述密钥文件存储至第一存储空间;所述第一存储空间允许所述第一APP访问且禁止第二APP访问;所述第二APP不同于所述第一APP;
根据所述密钥文件在所述第一存储空间中的存储地址,在所述列表文件写入密钥信息;所述密钥信息用于读取所述密钥文件;
在解密所述视频文件时,基于所述第一APP和所述密钥信息从所述第一存储空间读取所述第一密钥;
使用所述第一密钥解密所述视频文件。
2.根据权利要求1所述的方法,其特征在于,所述将所述密钥文件存储至第一存储空间,包括:
将所述密钥文件存储到所述第一存储空间的目标文件夹;所述目标文件允许被所述第一终端设备访问且禁止第二终端设备访问;所述第二终端设备不同于所述第一终端设备。
3.根据权利要求2所述的方法,其特征在于,所述目标文件夹以所述第一终端设备的设备标识命名,且所述设备标识用于验证访问所述目标文件夹是否有权访问所述目标文件夹。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
使用第二密钥加密所述密钥文件和/或存储有所述密钥信息的所述列表文件。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
将所述第二密钥存储在第二存储空间;所述第二存储空间不同于所述第一存储空间。
6.根据权利要求4或5所述的方法,其特征在于,所述在解密所述视频文件时,基于所述第一APP和所述密钥信息从所述第一存储空间读取所述第一密钥,包括:
在解密所述视频文件时,使用所述第二密钥解密所述列表文件;
在解密所述列表文件之后,读取所述密钥信息;
根据所述密钥信息,从所述第一存储空间读取所述密钥文件中的第一密钥。
7.根据权利要求1至4任一项所述的方法,其特征在于,所述方法包括:
在停止视频播放时,加密所述列表文件和/或所述密钥文件。
8.一种终端设备,其特征在于,所述终端设备包括:
接收模块,用于基于终端设备的第一APP接收视频文件、列表文件以及密钥文件;所述视频文件包括一个或多个视频分段;所述列表文件包括播放列表以及所述密钥文件;所述密钥文件包括第一密钥;所述第一密钥用于解密所述视频文件;
存储模块,用于将所述密钥文件存储至第一存储空间;所述第一存储空间允许所述第一APP访问且禁止第二APP访问;所述第二APP不同于所述第一APP;
写入模块,用于根据所述密钥文件在所述第一存储空间中的存储地址,在所述列表文件写入密钥信息;所述密钥信息用于读取所述密钥文件;
读取模块,用于在解密所述视频文件时,基于所述第一APP和所述密钥信息从所述第一存储空间读取所述第一密钥;
解密模块,用于使用所述第一密钥解密所述视频文件。
9.一种终端设备,其特征在于,包括:
存储器,至少用于存储计算机可执行指令;
处理器,与所述存储器连接,用于通过所述计算机可执行指令的执行能够实现权利要求1至7任一项所述的方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机可读指令,所述计算机可读指令被执行后能够执行权利要求1至7任一项所述的方法。
11.一种计算机可读指令,其特征在于,所述计算机可读指令被执行后能够执行权利要求1至7任一项所述的方法。
CN202411550636.3A 2024-11-01 2024-11-01 视频处理方法、终端设备及存储介质 Pending CN119383378A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202411550636.3A CN119383378A (zh) 2024-11-01 2024-11-01 视频处理方法、终端设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202411550636.3A CN119383378A (zh) 2024-11-01 2024-11-01 视频处理方法、终端设备及存储介质

Publications (1)

Publication Number Publication Date
CN119383378A true CN119383378A (zh) 2025-01-28

Family

ID=94324863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202411550636.3A Pending CN119383378A (zh) 2024-11-01 2024-11-01 视频处理方法、终端设备及存储介质

Country Status (1)

Country Link
CN (1) CN119383378A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102760084A (zh) * 2012-06-15 2012-10-31 杭州格畅科技有限公司 应用数据的管理方法、划分应用存储空间的方法、在线应用平台及应用
CN111639353A (zh) * 2020-05-26 2020-09-08 浙江大华技术股份有限公司 一种数据管理方法、装置、嵌入式设备及存储介质
CN113411638A (zh) * 2020-12-24 2021-09-17 腾讯科技(深圳)有限公司 视频文件的播放处理方法、装置、电子设备及存储介质
CN116055767A (zh) * 2022-11-08 2023-05-02 天翼云科技有限公司 视频文件的处理方法、装置、设备及可读存储介质
CN116614653A (zh) * 2023-04-21 2023-08-18 中国建设银行股份有限公司 多媒体文件播放方法、装置、系统、设备及存储介质
CN118055270A (zh) * 2024-04-16 2024-05-17 腾讯科技(深圳)有限公司 视频处理方法、系统、装置、电子设备及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102760084A (zh) * 2012-06-15 2012-10-31 杭州格畅科技有限公司 应用数据的管理方法、划分应用存储空间的方法、在线应用平台及应用
CN111639353A (zh) * 2020-05-26 2020-09-08 浙江大华技术股份有限公司 一种数据管理方法、装置、嵌入式设备及存储介质
CN113411638A (zh) * 2020-12-24 2021-09-17 腾讯科技(深圳)有限公司 视频文件的播放处理方法、装置、电子设备及存储介质
CN116055767A (zh) * 2022-11-08 2023-05-02 天翼云科技有限公司 视频文件的处理方法、装置、设备及可读存储介质
CN116614653A (zh) * 2023-04-21 2023-08-18 中国建设银行股份有限公司 多媒体文件播放方法、装置、系统、设备及存储介质
CN118055270A (zh) * 2024-04-16 2024-05-17 腾讯科技(深圳)有限公司 视频处理方法、系统、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
US11886545B2 (en) Federated digital rights management scheme including trusted systems
US8429365B2 (en) Memory device and method for embedding host-identification information into content
CN103189872B (zh) 联网环境中的安全和有效内容筛选的方法和装置
JP5450392B2 (ja) コンテンツライセンスのポータブル記憶装置へのバインド
WO2018177110A1 (zh) 媒体内容的许可方法以及设备
US8549620B2 (en) Information processing device, data processing method, and program
CA2616981C (en) System and method for managing encrypted content using logical partitions
JP2009533908A (ja) 符号化されたコンテンツを配信する方法および装置
CN102761790A (zh) 基于数字水印的iptv终端的数字版权管理方法及装置
JP2004030326A (ja) コンテンツ利用管理システム、コンテンツを利用し又は提供する情報処理装置又は情報処理方法、並びにコンピュータ・プログラム
US8972301B2 (en) Information processing device, data processing method, and program
CN117579338A (zh) 一种流媒体文件的处理方法及相关设备
WO2011061186A1 (en) Method and device for imposing usage constraints of digital content
CN119383378A (zh) 视频处理方法、终端设备及存储介质
JP5350021B2 (ja) ファイル生成装置、ファイル再生装置およびコンピュータプログラム
US20090165112A1 (en) Methods and apparatuses for using content, controlling use of content in cluster, and authenticating authorization to access content
JP2008530673A (ja) 権利ファイル記述の保護方法
JP4213501B2 (ja) データ通信システム、及びデータ通信方法
EP4455908A1 (en) Method for receiving content in user device over cdn
EP1792246A1 (en) Method, apparatus, and medium for protecting content
EP1552420A4 (en) PROCESS FOR MANAGING METADATA
KR101203744B1 (ko) 컨텐츠 재생 관리 시스템 및 컨텐츠 재생 관리 방법
JP5975097B2 (ja) 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム
HK1184252A (zh) 水印提取效率的改進
HK1183534A (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