CN111600879A - 一种数据输出/获取方法、装置和电子设备 - Google Patents
一种数据输出/获取方法、装置和电子设备 Download PDFInfo
- Publication number
- CN111600879A CN111600879A CN202010406807.0A CN202010406807A CN111600879A CN 111600879 A CN111600879 A CN 111600879A CN 202010406807 A CN202010406807 A CN 202010406807A CN 111600879 A CN111600879 A CN 111600879A
- Authority
- CN
- China
- Prior art keywords
- data
- key
- target
- secret key
- key table
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 124
- 239000003999 initiator Substances 0.000 claims abstract description 36
- 230000000977 initiatory effect Effects 0.000 claims abstract description 8
- 238000003860 storage Methods 0.000 claims description 56
- 239000012634 fragment Substances 0.000 claims description 36
- 238000004590 computer program Methods 0.000 claims description 35
- 230000002452 interceptive effect Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 abstract description 29
- 238000013500 data storage Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 33
- 238000012545 processing Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 13
- 238000012544 monitoring process Methods 0.000 description 9
- 230000001960 triggered effect Effects 0.000 description 7
- 238000013144 data compression Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000002829 reductive effect Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000005336 cracking Methods 0.000 description 4
- 235000019800 disodium phosphate Nutrition 0.000 description 4
- 238000012806 monitoring device Methods 0.000 description 4
- 230000036961 partial effect Effects 0.000 description 4
- 230000007774 longterm Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本说明书实施例提供一种数据输出/获取方法、装置和电子设备。数据输出方法包括:使用已保存的秘钥表中的秘钥对目标数据进行加密;生成目标加密数据,目标加密数据包括对目标数据进行加密后得到的数据以及秘钥表中的秘钥索引,其中,目标加密数据中包括的秘钥索引与加密目标数据所使用的秘钥为在秘钥表中相互对应的秘钥索引与秘钥;在接收到用于请求访问目标数据的访问请求的情况下,将秘钥表以及目标加密数据传输到访问请求的发起方,其中,访问请求的发起方在发起访问请求时未持有秘钥表。根据本说明书一实施例的方法,使用保存在数据输出侧的秘钥进行数据加密,降低了数据访问方的数据保存安全性要求,大大增强了数据传输的安全性。
Description
技术领域
本申请涉及数据处理领域,特别涉及一种数据输出/获取方法、装置和电子设备。
背景技术
随着网络技术的发展,基于网络进行数据的传输被广泛的应用到多种不同的应用场景中。例如,将视频数据采集设备采集的视频数据发送到视频播放设备就是一种常见的数据传输应用场景。具体的,在安防领域,视频监控设备(例如前端摄像机IPC/IPD)采集到的视频监控数据就需要传输到播放设备上才能实现监控图像的播放。
在数据传输方案中,数据的保密性是一个关键技术需求。在现有技术的方案中,通常采用一固定秘钥进行加密的方案,将数据加密后再传输,这样,即使传输环节被入侵,被窃取的加密数据也无法被解读。
然而,秘钥也存在被窃取的可能,由于使用一固定的秘钥进行加密,一旦该秘钥被窃,后续传输的加密数据都存在被破解的可能。因此,在现有技术方案中,数据传输的安全性并不能得到很好的保证。
发明内容
针对现有技术方案中数据传输的安全性不高的问题,本申请提供了一种数据输出/获取方法、装置以及电子设备。
本说明书实施例采用下述技术方案:
第一方面,本说明书一实施例提供一种数据输出方法,包括:
使用已保存的秘钥表中的秘钥对目标数据进行加密,其中,所述秘钥表包含多个秘钥以及多个秘钥索引,所述秘钥表中的秘钥与秘钥索引一一对应;
生成目标加密数据,所述目标加密数据包括对所述目标数据进行加密后得到的数据以及所述秘钥表中的秘钥索引,其中,所述目标加密数据中包括的秘钥索引与加密所述目标数据所使用的秘钥为在所述秘钥表中相互对应的秘钥索引与秘钥;
在接收到用于请求访问所述目标数据的访问请求的情况下,将所述秘钥表以及所述目标加密数据传输到所述访问请求的发起方,其中,所述访问请求的发起方在发起所述访问请求时未持有所述秘钥表。
在上述第一方面的一种可行的实现方式中,所述方法应用于数据获取设备。
在上述第一方面的一种可行的实现方式中,所述方法还包括:基于预设规则,根据所述数据获取设备的设备信息创建所述秘钥表。
在上述第一方面的一种可行的实现方式中,所述将所述秘钥表以及所述目标加密数据传输到所述访问请求的发起方为:基于不同的交互会话分别传输所述秘钥表以及所述目标加密数据。
在上述第一方面的一种可行的实现方式中,所述秘钥表中所述秘钥的个数由秘钥生命周期以及所述秘钥表的生命周期而定;在一个秘钥生命周期内,所述秘钥表中只存在一个与该秘钥生命周期对应的秘钥被启用,只有被启用的秘钥可以被用于对所述目标数据进行加密。
在上述第一方面的一种可行的实现方式中,所述目标加密数据包括使用所述秘钥表中秘钥为所述目标数据的数据片段加密而生成的目标加密子数据,所述目标加密子数据通过如下方式生成:
确定所述秘钥表中处于启用状态的目标秘钥;
使用所述目标秘钥对所述目标数据的数据片段加密直到所述目标秘钥的秘钥生命周期结束,其中,在所述目标秘钥的秘钥生命周期结束时划分数据片段,所述目标秘钥的秘钥生命周期结束时刻所对应的数据为:使用所述目标秘钥加密的最后一个数据片段的尾数据;
将所述目标秘钥对应的秘钥索引编入所述使用目标秘钥加密的数据片段中,得到所述目标加密子数据。
在上述第一方面的一种可行的实现方式中,所述目标数据为视频数据,所述目标加密数据包括标准帧加密数据,所述生成目标加密数据包括:
在编码码流阶段,使用所述秘钥对所述视频数据的视频片段的标准帧数据进行加密;
将所述秘钥索引编入加密后的标准帧数据,得到所述标准帧加密数据,以生成所述目标加密数据。
在上述第一方面的一种可行的实现方式中,所述生成目标加密数据后,所述方法还包括:将所述目标加密数据发送至存储服务器保存;
所述将所述秘钥表以及所述目标加密数据传输到所述访问请求的发起方,包括:
从所述存储服务器获取到所述目标加密数据,以及,将所述秘钥表以及所述目标加密数据传输到所述访问请求的发起方。
在上述第一方面的一种可行的实现方式中,所述生成目标加密数据后,所述方法还包括:将所述目标加密数据发送至存储服务器保存;
所述将所述秘钥表以及所述目标加密数据传输到所述访问请求的发起方,包括:
将所述秘钥表传输到所述访问请求的发起方,以及,发送指令使得所述存储服务器将所述目标加密数据传输到所述访问请求的发起方。
第二方面,本说明书一实施例提供一种数据获取方法,包括:
发送用于请求访问目标数据的访问请求,其中,在所述访问请求被发送时,所述访问请求的发送方并未持有秘钥表;
获取所述秘钥表以及目标加密数据,其中:所述秘钥表包含多个秘钥以及多个秘钥索引,所述秘钥表中的秘钥与秘钥索引一一对应;所述目标加密数据包括使用所述秘钥表中的秘钥对所述目标数据进行加密后得到的数据以及所述秘钥表中的秘钥索引,其中,所述目标加密数据中包括的秘钥索引与加密所述目标数据所使用的秘钥为在所述秘钥表中相互对应的秘钥索引与秘钥;
获取所述目标加密数据中的秘钥索引;
获取所述秘钥表中,对应所述目标加密数据中秘钥索引的秘钥;
基于对应所述目标加密数据中秘钥索引的秘钥,解密所述目标加密数据,得到所述目标数据。
在上述第二方面的一种可行的实现方式中,所述秘钥表为基于预设规则,根据数据获取设备的设备信息所创建的秘钥表,其中,所述秘钥表中所述秘钥的个数由秘钥生命周期以及所述秘钥表的生命周期而定。
在上述第二方面的一种可行的实现方式中,所述目标数据为视频数据,所述目标加密数据包括标准帧加密数据,所述标准帧加密数据为将所述秘钥索引编入加密后的标准帧数据所生成的数据,所述加密后的标准帧数据为在编码码流阶段使用所述秘钥对所述视频数据的视频片段的标准帧数据进行加密而生成的数据;所述获取所述目标加密数据中的秘钥索引包括:获取所述标准帧加密数据中的秘钥索引。
在上述第二方面的一种可行的实现方式中,所述获取秘钥表以及目标加密数据为:基于不同的交互会话分别获取所述秘钥表以及所述目标加密数据。
在上述第二方面的一种可行的实现方式中,所述方法还包括:在完成所述目标加密数据的解密之后,删除所述秘钥表。
第三方面,本说明书一实施例提供一种数据输出装置,所述装置包括:
秘钥表存储模块,其用于保存秘钥表,所述秘钥表包含多个秘钥以及多个秘钥索引,所述秘钥表中的秘钥与秘钥索引一一对应;
加密模块,其用于使用已保存的秘钥表中的秘钥对目标数据进行加密,用于生成目标加密数据,所述目标加密数据包括对所述目标数据进行加密后得到的数据以及所述秘钥表中的秘钥索引,其中,所述目标加密数据中包括的秘钥索引与加密所述目标数据所使用的秘钥为在所述秘钥表中相互对应的秘钥索引与秘钥;
响应模块,其用于在接收到用于请求访问所述目标数据的访问请求的情况下,将所述秘钥表以及所述目标加密数据传输到所述访问请求的发起方,其中,所述访问请求的发起方在发起所述访问请求时未持有所述秘钥表。
第四方面,本说明书一实施例提供一种数据获取装置,包括:
请求输出模块,其用于发送用于请求访问目标数据的访问请求,其中,在所述访问请求被发送时,所述访问请求的发送方并未持有秘钥表;
数据接收模块,其用于获取所述秘钥表以及目标加密数据,其中:所述秘钥表包含多个秘钥以及多个秘钥索引,所述秘钥表中的秘钥与秘钥索引一一对应;所述目标加密数据包括使用所述秘钥表中的秘钥对所述目标数据进行加密后得到的数据以及所述秘钥表中的秘钥索引,其中,所述目标加密数据中包括的秘钥索引与加密所述目标数据所使用的秘钥为在所述秘钥表中相互对应的秘钥索引与秘钥;
解密模块,其用于:获取所述目标加密数据中的秘钥索引;获取所述秘钥表中,对应所述目标加密数据中秘钥索引的秘钥;基于对应所述目标加密数据中秘钥索引的秘钥,解密所述目标加密数据,得到所述目标数据。
第五方面,本说明书一实施例提供一种电子设备,所述电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述电子设备执行如上述第一方面所述的方法步骤。
第六方面,本说明书一实施例提供一种电子设备,所述电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述电子设备执行如上述第二方面所述的方法步骤。
第七方面,本说明书一实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如上述第一方面所述的方法步骤。
第八方面,本说明书一实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如上述第二方面所述的方法步骤。
第九方面,本说明书一实施例提供一种计算机程序产品,所述计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行如上述第一方面所述的方法步骤。
第十方面,本说明书一实施例提供一种计算机程序产品,所述计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行如上述第二方面所述的方法步骤。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
根据本说明书一实施例的方法,使用保存在数据输出侧的秘钥进行数据加密,仅在数据被访问时才传输秘钥,使得秘钥不会被长期保存在数据访问方,从而避免了在数据访问方被入侵时数据输出侧所使用的所有秘钥均被窃取的情况的发生,降低了数据访问方的数据保存安全性要求,大大增强了数据传输的安全性;
进一步的,根据本说明书一实施例的方法,使用秘钥表中的秘钥进行数据加密,由于秘钥表中包含多个秘钥,这样就不需要长期使用固定不变的秘钥执行加密操作,从而避免了由于单次秘钥泄露而导致影响后续所有的加密数据的安全性的情况的发生;
进一步的,根据本说明书一实施例的方法,采用秘钥表+秘钥索引的方式传输秘钥,非法用户只有同时获取秘钥表以及秘钥索引才能确认正确的秘钥,大大增加了非法入侵破解的难度。
附图说明
图1为根据本说明书一实施例的数据输出方法的流程图;
图2为根据本说明书一实施例的数据输出方法的部分流程图;
图3为根据本说明书一实施例的数据输出方法的部分流程图;
图4为根据本说明书一实施例的数据获取方法的流程图;
图5为根据本说明书一实施例的数据获取方法的流程图;
图6为根据本说明书一实施例的数据输出装置的结构图;
图7为根据本说明书一实施例的数据获取装置的结构图;
图8为根据本说明书一实施例的数据传输系统的结构图;
图9为根据本说明书一实施例的应用场景的数据传输系统示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
针对现有技术中由于秘钥泄露而导致数据传输的安全性降低的问题,本说明书一实施例提出了一种数据输出方法。为了提出本说明书实施例的方法,发明人首先分析数据传输过程的应用场景。
在传输数据的过程中,如果要使用加密方案,那么就需要确保传输数据的两侧(输出数据的加密方与接收数据的解密方)均得到秘钥。一种可行的方案是,在数据的接收方一侧确定一固定的秘钥并保存,在进行数据传输之前将秘钥发送给数据的发送方,发送方对数据进行加密后将加密数据发送给接收方,接收方根据自身保存的秘钥进行解密。在上述方案中,由于秘钥是固定的,一旦泄露,就不再安全。例如,在多发送方对单接收方的应用场景中(例如,视频监控应用场景,多个视屏采集设备向同一监控查看设备发送视频数据),单个发送方的秘钥传输被破解会导致所有发送方的视频数据外泄。
另一种可行的方案是,在数据的接收方一侧定期或不定期更改秘钥和/或针对不同的数据发送方设置不同的秘钥。例如,每次进行数据传输之前,在数据的接收方一侧针对数据发送方确定新的秘钥。在进行数据传输之前,将新确定的秘钥发送给数据的发送方,发送方对数据进行加密后将加密数据发送给接收方,接收方根据自身保存的秘钥进行解密。上述方案虽然可以确保单次秘钥泄露不会造成长期的安全隐患,但是,秘钥的生成必然会占据相当的数据处理资源并需要添加对应的数据安全防护措施,这会大大增加数据处理压力以及硬件配置压力。对于某些远端控制查看解决方案来说,数据处理压力以及硬件配置压力的增加会直接导致方案无法实施。例如,在通过网页客户端(WEB客户端)进行多监控摄像头的视频查看的应用场景中,受限于加载WEB客户端的客户端硬件配置,数据处理压力以及硬件配置压力的增加很可能导致WEB页面的显示卡顿甚至是运行死机。另外,由于WEB客户端本质上是一种临时性的客户端,在WEB客户端中添加秘钥生成模块以及为秘钥生成模块添加额外的数据安全防护措施存在很高的实施难度。
进一步的,在数据的接收方一侧保存秘钥(在生成秘钥到使用秘钥进行解密期间需要一直保存),势必为数据的接收方一侧带来巨大的数据安全压力。例如,在某些临时性的视频数据播放应用场景中,很难实现长期的秘钥安全保存。并且,在多发送方对单接收方的应用场景中,在数据的接收方一侧会同时保存多个秘钥,这就导致一旦数据的接收方一侧被入侵,就会导致所有的秘钥外泄。例如,在通过WEB客户端进行多监控摄像头的视频查看的应用场景中,由于WEB客户端本质上是一种临时性的客户端,很难实现在WEB客户端安全的长期保存秘钥。
基于上述分析,在本说明书一实施例中,秘钥保存在数据发送方一侧,仅当数据的访问方需要访问视频数据时,才将加密后的数据以及秘钥发送到数据的访问方。数据的访问方不会长期保存秘钥,这样就大大降低了数据的访问方的数据安全压力。
进一步的,秘钥保存在数据发送方一侧,在数据的访问方需要访问视频数据时,加密后的数据以及秘钥被发送到数据的访问方,这样,数据的访问方在接收到加密后的数据以及秘钥后可以自动进行数据解密操作,而无需用户人工进行密码输入以及解密操作执行确认,从而可以实现解密操作的无感知执行,大大提高了解密操作执行效率,提高了用户体验。
进一步的,考虑到单一秘钥的安全性较低,在本说明书一实施例中,使用包含多个秘钥以及多个秘钥索引的秘钥表,秘钥表中的秘钥与秘钥索引一一对应。在加密数据时选取秘钥表中的一个秘钥进行加密。当数据的访问方需要访问数据时,将加密后的数据、秘钥表以及加密数据时使用的秘钥所对应的秘钥索引发送到数据的访问方。这样,非法用户只有同时获取秘钥表以及秘钥索引才能确认正确的秘钥,大大增加了非法入侵破解的难度。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为根据本说明书一实施例的数据输出方法的流程图。在本说明书一实施例中,如图1所示,数据输出方法包括以下步骤:
步骤110,使用已保存的秘钥表中的秘钥对目标数据进行加密,其中,秘钥表包含多个秘钥以及多个秘钥索引,秘钥表中的秘钥与秘钥索引一一对应;
步骤120,生成目标加密数据,目标加密数据包括对目标数据进行加密后得到的数据以及秘钥表中的秘钥索引,其中,目标加密数据中包括的秘钥索引与加密目标数据所使用的秘钥为在秘钥表中相互对应的秘钥索引与秘钥;
步骤130,在接收到用于请求访问目标数据的访问请求的情况下,将秘钥表以及目标加密数据传输到访问请求的发起方,其中,访问请求的发起方在发起访问请求时未持有秘钥表。
根据本说明书一实施例的方法,使用保存在数据输出侧的秘钥进行数据加密,仅在数据被访问时才传输秘钥,使得秘钥不会被长期保存在数据访问方,从而避免了在数据访问方被入侵时数据输出侧所使用的所有秘钥均被窃取的情况的发生,降低了数据访问方的数据保存安全性要求,大大增强了数据传输的安全性;进一步的,由于秘钥保存在数据输出侧并且在数据传输过程中秘钥会自动发送到数据访问方,因此,数据访问方在接收到加密后的数据以及秘钥后可以自动进行数据解密操作,而无需用户人工进行密码输入以及解密操作执行确认,从而可以实现解密操作的无感知执行,大大提高了解密操作执行效率,提高了用户体验。
进一步的,根据本说明书一实施例的方法,使用秘钥表中的秘钥进行数据加密,由于秘钥表中包含多个秘钥,这样就不需要长期使用固定不变的秘钥执行加密操作,从而避免了由于单次秘钥泄露而导致影响后续所有的加密数据的安全性的情况的发生。
进一步的,根据本说明书一实施例的方法,采用秘钥表+秘钥索引的方式传输秘钥,非法用户只有同时获取秘钥表以及秘钥索引才能确认正确的秘钥,大大增加了非法入侵破解的难度。
根据具体的应用场景,图1所示实施例的各个步骤可以具体多种不同的实现方式。以下具体描述图1所示实施例的不同实现方式。
在根据本说明书一实施例的数据输出方法的应用场景中,该方法应用在数据获取设备中,在访问请求的发起方发起访问请求之前,目标加密数据可以被保存在数据获取设备,如数据采集设备上,也可以保存到云端的存储服务器。
具体的,在本说明书一实施例中,在步骤120执行之后,将生成的目标加密数据发送到存储服务器保存;在执行步骤130的过程中,从存储服务器获取到目标加密数据,以及,将秘钥表以及目标加密数据传输到访问请求的发起方。
在本说明书另一实施例中,在步骤120执行之后,将生成的目标加密数据发送到存储服务器保存;在执行步骤130的过程中,将秘钥表传输到访问请求的发起方,以及,发送指令使得存储服务器将目标加密数据传输到访问请求的发起方。
例如,在一应用场景中,数据获取设备获取到目标数据后,基于自身保存的秘钥表中的秘钥加密目标数据,生成目标加密数据,将目标加密数据发送到存储服务器保存。当访问设备需要访问目标数据时,其向数据获取设备发送访问请求。
在本说明书实施例的一种实现方式中,在数据获取设备接收到访问请求后,数据获取设备从存储服务器处获取目标加密数据,之后将目标加密数据以及秘钥表发送到访问设备。
在本说明书实施例的另一种实现方式中,在数据获取设备接收到访问请求后,数据获取设备将秘钥表发送到访问设备,同时,数据获取设备发送指令使得存储服务器将目标加密数据传输到访问设备。例如,数据获取设备发送指令到存储服务器,令存储服务器发送目标加密数据到访问设备;又例如,数据获取设备发送指令到存储服务器,令存储服务器对访问设备开放目标加密数据的读取权限,同时,数据获取设备发送指令到访问设备,指示访问设备从存储服务器读取目标加密数据。
在本说明书另一实施例中,在步骤120执行之后,将生成的目标加密数据发送到存储服务器保存。在执行步骤130的过程中,将秘钥表传输到访问请求的发起方。在上述过程中,存储服务器开放目标加密数据的读取权限,即,访问请求的发起方可以直接访问存储服务器以获取保存的目标加密数据,而无需由相关指令命令存储服务器将目标加密数据传输到访问请求的发起方。这样就大大降低了秘钥表保存方的数据处理压力以及秘钥表保存方与存储服务器间的通信压力。虽然存储服务器开放目标加密数据的读取权限会导致存在非法访问方获取到目标加密数据的情况的发生,但是,由于非法访问方无法获取秘钥表,因此,非法访问方也就无法解密目标加密数据,数据传输仍然可以得到有效的安全防护。
进一步的,在步骤130的一种实现方式中,为了提高数据传输安全性,在向访问请求的发起方传输秘钥表以及目标加密数据的过程中,基于不同的交互会话分别传输秘钥表以及目标加密数据。
进一步的,在步骤130的一种实现方式中,在传输秘钥表和/或目标加密数据时,需要对其进行加密。具体的,在步骤130的一种实现方式中,秘钥表和/或目标加密数据通过AES128算法加密后被传输到访问请求的发起方。
进一步的,为了实现步骤110,在本说明书一实施例的方法中,还包括创建秘钥表步骤。在具体实现场景中,在创建秘钥表步骤中,可以采用多种不同的方案生成图1所示实施例中所使用的秘钥表。具体的,在本说明书一实施例中,在创建秘钥表的过程中,基于预设规则,根据数据获取设备的设备信息创建秘钥表。秘钥表与数据获取设备绑定,并且,不同的数据获取设备对应的秘钥表不同。这样,在存在多个数据获取设备的应用场景中,非法用户想要获取所有数据获取设备所获取的数据,只能针对每个数据获取设备分别进行入侵破解,有效避免了单个秘钥表泄露而导致所有加密操作被破解的情况的发生,从而大大提高了数据传输的安全性。
进一步的,数据输出方法应用于数据获取设备,较优的,数据获取设备可以包括数据采集设备如摄像机,数据采集设备基于自身所保存的秘钥表为自身所采集的数据进行加密。数据的加密由采集该数据的数据采集设备来执行,每个数据采集设备对自身所采集到的数据进行加密操作,这样,就可以有效避免使用统一的加密设备进行数据加密操作时,由于加密设备被入侵而导致所有数据外泄的情况的发生。并且,由于加密操作被分到多端执行,大大降低了单端数据处理量压力。
进一步的,在本说明书一实施例中,基于预设规则,根据数据获取设备的设备信息生成字符串,基于字符串生成所述秘钥表中的秘钥。例如,根据设备序列号、设备型号、软件版本号、当前时间、设备随机数(例如,设备随机数采用/dev/random)进行散列值计算;截取计算结果中的n位字符作为秘钥,其中,n为预设秘钥长度。预设秘钥长度n的大小可以在具体实现时根据系统性能和/实现需求等自行设定,本实施例对预设秘钥长度n的大小不作限定。这里需要说明的是,上述实施例中的秘钥生成规则仅代表具体的一实施例所采用的秘钥生成规则,在本说明书其他实施例中,可以采用不同于上述实施例的秘钥生成规则。
进一步的,为了避免长期使用同一个秘钥而带来安全隐患,在本说明书一实施例中,秘钥表中的秘钥被设置为具备生命周期,在一个秘钥生命周期内,秘钥表中只存在一个与该秘钥生命周期对应的秘钥被启用,只有被启用的秘钥可以被用于对目标数据进行加密。这样就能够有效控制秘钥的使用时长,避免同一秘钥被长期使用。具体的,秘钥表中同一时间只存在一个被启用的秘钥,只有被启用的秘钥可以被用于对视频数据进行加密;秘钥表中的秘钥被轮流启用,当一个秘钥的生命周期结束后该秘钥被无效,下一个秘钥被启用,直到秘钥表中所有的秘钥均被无效。
这里需要说明的是,在本申请一实施例中,预设的秘钥生命周期的大小可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对秘钥生命周期的大小不作限定。
进一步的,在本说明书一实施例中,秘钥表中的秘钥个数可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对秘钥表中的秘钥个数不作限定。具体的,在一种实现方式中,秘钥表中秘钥的个数由秘钥生命周期以及秘钥表的生命周期而定,从而确保秘钥表中的秘钥可以满足秘钥表的生命周期。
进一步的,在一种创建秘钥表的实现方式中,可以通过第三方设备创建秘钥表并将秘钥表保存到数据获取设备,也可以使用数据获取设备自行创建秘钥表,可以在数据获取设备的生产阶段生成秘钥表。
例如,在一种创建秘钥表的实现方式的应用场景中,数据获取设备为视频数据采集设备(例如,电子摄像头、前端摄像机IPC/IPD)。视频数据采集设备在软件固件生产阶段随机生成一个秘钥表。秘钥表中动态秘钥的生成规则为:根据设备序列号、设备型号、软件版本号、当前时间、/dev/random进行散列值计算,然后截取计算结果中的16位字符。秘钥表的大小根据每条秘钥的生命周期,以使用10年为目标进行设计。从秘钥安全规范角度考虑,动态秘钥的更新周期选择90天(太短的周期会导致动态密码表的体积变大,频繁更换秘钥的实际价值也不大)。为了增加冗余度,将秘钥表的大小定为64条,足够存储15年不重复的秘钥。单条秘钥表占用内存28字节(其中包含3个保留字节),整个秘钥表占用内存空间为1792字节,这个大小目前对设备剩余内存来说没有压力。(在另一应用场景中,如果IPC内存足够,就可以选择更短的更新周期)。动态表数据结构如表1所示。
表1
进一步的,在秘钥表中的秘钥具备生命周期时,存在在使用一个秘钥加密目标数据的过程中该秘钥生命周期结束的情况。针对上述情况,在本说明书一实施例中,数据传输采用分段(分包)传输模式。例如,在传输数据A时,将数据A划分为多个数据片段(A1、A2、A3…),分别传输数据片段(A1、A2、A3…)。目标加密数据包括使用秘钥表中秘钥分别为目标数据的数据片段加密而生成的目标加密子数据,在传输目标加密数据的过程中,传输目标加密数据的所有目标加密子数据。具体的,在步骤120的一种实现方式中,生成目标加密子数据的过程包括:
确定秘钥表中处于启用状态的目标秘钥;
使用目标秘钥对目标数据的数据片段加密直到目标秘钥完成加密或者目标秘钥的秘钥生命周期结束,其中,在目标秘钥的秘钥生命周期结束时划分数据片段,目标秘钥的秘钥生命周期结束时刻所对应的数据为:使用目标秘钥加密的最后一个数据片段的尾数据;
将目标秘钥对应的秘钥索引编入使用目标秘钥加密的数据片段中,得到目标加密子数据。
具体的,在步骤120的一种实现方式中,目标数据中数据片段的划分是基于预设规则,预先划分好的数据片段。生成目标加密数据的过程是针对每个已划分好的数据片段分别加密的过程,其中,在针对某数据片段进行加密时,如秘钥生命周期结束,则以秘钥生命周期结束时刻对应的数据为界,将该数据片段划分为2个数据片段。
例如,针对某目标数据,设定每10K数据量为一个数据片段,将其划分为数据片段P11、数据片段P12、数据片段P13。在开始对数据片段P11加密时,秘钥表中处于启用状态的秘钥为秘钥M11。使用秘钥M11加密数据片段P11,在加密数据片段P11的过程中,秘钥M11的秘钥生命周期未结束。使用秘钥M11完成对数据片段P11的加密之后,将秘钥M11对应的秘钥索引编入数据片段P11的加密数据中,得到数据片段P11对应的目标加密子数据S11。
使用秘钥M11继续加密数据片段P12,如果之后的加密数据片段P12以及数据片段P13过程中,秘钥M11的秘钥生命周期未结束。那么目标数据的目标加密数据就包括数据片段P11对应的目标加密子数据S11、数据片段P12对应的目标加密子数据S12以及数据片段P13对应的目标加密子数据S13。
如果在加密数据片段P12的过程中,秘钥M11的秘钥生命周期结束,例如,当使用秘钥M11加密数据片段P12的前5K数据之后,秘钥M11的秘钥生命周期结束。此时,将秘钥M11对应的秘钥索引编入使用秘钥M11加密数据片段P12的前5K数据所得到的加密数据中,得到数据片段P12的前5K数据所对应的目标加密子数据S121。使用秘钥表中新启用的秘钥M12开始对数据片段P12的后5K数据进行加密,加密完成后将秘钥M12对应的秘钥索引编入使用秘钥M12加密数据片段P12的后5K数据所得到的加密数据中,得到数据片段P12的后5K数据所对应的目标加密子数据S122。即,相当于,以秘钥M11的秘钥生命周期结束时刻对应的数据为界,将数据片段P12划分为数据片段P121以及数据片段P122,使用秘钥M11以及秘钥M12分别加密数据片段P121以及数据片段P122,获得目标加密子数据S121以及目标加密子数据S122。最终目标数据的目标加密数据就包括数目标加密子数据S11(使用秘钥M11加密)、目标加密子数据S121(使用秘钥M11加密)、目标加密子数据S122(使用秘钥M12加密)以及目标加密子数据S13(使用秘钥M12加密)。
具体的,在步骤120的一种实现方式中,目标数据中数据片段的划分是基于预设规则,在加密的过程中一边加密一边划分数据片段。具体的,使用秘钥对目标数据进行加密,当已加密的数据满足数据片段划分的预设规则或者用于加密的秘钥的秘钥生命周期结束时,划分一个数据片段。
例如,针对某目标数据,设定每10K数据量为一个数据片段。在开始对数据量为30K的目标数据加密时,秘钥表中处于启用状态的秘钥为秘钥M21。使用秘钥M21加密目标数据,在加密目标数据的第0~10K的数据的过程中,秘钥M21的秘钥生命周期未结束。使用秘钥M21完成对目标数据第的0~10K的数据加密之后,将秘钥M21对应的秘钥索引编入目标数据的0~10K的数据的加密数据中,得到目标加密子数据P21。
使用秘钥M21继续加密目标数据的第10K之后的数据,如果之后的加密过程中,秘钥M21的秘钥生命周期未结束。那么目标数据的目标加密数据就包括目标数据的第0~10K的数据对应的目标加密子数据P21、目标数据的第10~20K的数据对应的目标加密子数据P22以及目标数据的第20~30K的数据对应的目标加密子数据P23。
如果在目标数据的第15K数据后,秘钥M21的秘钥生命周期结束。此时,将秘钥M21对应的秘钥索引编入使用秘钥M21加密的目标数据的第10~15K的数据所得到的加密数据中,得到目标加密子数据P24。使用秘钥表中新启用的秘钥M22开始对目标数据的第15K以后的数据进行加密。最终目标数据的目标加密数据就包括目标数据的第0~10K的数据对应的目标加密子数据P21(使用秘钥M21加密)、目标数据的第10~15K的数据对应的目标加密子数据P24(使用秘钥M21加密)、目标数据的第15~25K的数据对应的目标加密子数据P25(使用秘钥M22加密)以及目标数据的第25~30K的数据对应的目标加密子数据P26(使用秘钥M22加密)。
进一步的,在一实际应用场景中,目标数据为视频数据。针对视频数据,在进行数据传输前一般要进行视频数据压缩。一种视频数据的压缩方案是将视频流划分为多个视频片段,每个视频片段的第一帧为标准帧(I帧),视频数据中标准帧的数据为完整图像数据,同一视频片段中标准帧之后的帧的数据是基于标准帧数据进行压缩之后生成的压缩帧数据。也就是说,针对标准帧以外的帧,必须将该帧的压缩帧数据结合标准帧数据之后才能获取该帧的图象。基于上述格式标准,如果脱离标准帧数据,其他帧的压缩帧数据即使被窃取也无法正确解读,因此,如果在加密视频数据的过程中,针对标准帧进行加密,在标准帧的加密数据未被破解之前,其他帧的压缩帧数据即使没有被加密也是无法被正确读取的,这就可以大大降低加密操作的数据处理量。
具体的,在一实际应用场景中,目标数据为视频数据,目标加密数据包括标准帧加密数据,在步骤120的一种实现方式中,生成目标加密数据包括:
在编码码流阶段,使用秘钥对视频数据的视频片段的标准帧数据进行加密;
将秘钥索引编入加密后的标准帧数据,得到标准帧加密数据,以生成目标加密数据。
进一步的,在一实际应用场景中,目标加密数据还包括压缩帧数据,压缩帧数据为视频数据的视频片段中除标准帧以外的其他帧基于标准帧进行数据压缩而生成的数据。即,目标加密数据包括标准帧加密数据以及压缩帧数据,其中,标准帧加密数据是经过加密并编入了秘钥索引的数据。压缩帧数据是未经过加密的数据。在解密目标加密数据的过程中,只需要解密标准帧加密数据以得到标准帧数据,压缩帧数据则是根据解密得到的标准帧数据进行解压缩。
进一步的,在一实际应用场景中,目标加密数据还包括加密后的压缩帧数据。即,目标加密数据包括标准帧加密数据以及加密后的压缩帧数据,其中,标准帧加密数据是使用秘钥对视频片段的标准帧数据进行加密并编入了秘钥索引的数据,加密后的压缩帧数据是使用与加密该视频片段中标准帧数据相同的秘钥,对该视频片段中除标准帧数据外的压缩帧数据进行加密得到的数据。
进一步的,考虑到实际应用场景中,视频数据通常包含多个视频片段,因此,在步骤120的一种实现方式中,可以存在使用同一秘钥对多个不同的视频片段进行加密的情况。并且,当使用同一秘钥对多个连续视频片段进行加密时,可以仅在第一个视频片段的加密后的标准帧数据中编入秘钥索引,当然,对于由同一秘钥加密的多个不同的视频片段,也可以在每个视频片段的加密后的标准帧数据中都编入该秘钥的秘钥索引。或者,在步骤120的一种实现方式中,使用多个不同的秘钥分别对多个不同的视频片段进行加密,为每个视频片段的加密后的标准帧数据编入其加密秘钥的秘钥索引。
具体的,在步骤120的一种实现方式中,在加密视频数据的过程中,将秘钥索引编入第一个视频片段的标准帧数据中,如果加密视频数据的过程中没有更换秘钥,则第一个视频片段之后的视频片段的加密后的标准帧数据中不再被编入秘钥索引。如果在加密视频数据的过程中更换秘钥,则仅在更换秘钥后的第一个视频片段的加密后的标准帧数据中编入新的秘钥索引。
进一步的,在步骤120的一种实现方式中,在视频数据被压缩后,针对压缩的视频数据进行加密,即,首先获取视频压缩数据,然后针对视频压缩数据中的各个视频片段的标准帧数据进行加密。
进一步的,在步骤120的一种实现方式中,在对视频数据进行压缩的过程中,同步执行加密操作。即,针对视频数据的码流,每划分一个新的视频片段后,生成该视频片段的标准帧数据,加密标准帧数据并编入秘钥索引生成标准帧加密数据,然后生成该视频片段标准帧后续的帧数据。
具体的,图2为根据本说明书一实施例的数据输出方法的部分流程图。在本说明书一实施例中,如图2所示,视频数据的加密包括以下步骤:
步骤200,读取已保存的秘钥表;
步骤210,读取视频数据中单个视频片段的标准帧数据;
步骤211,使用秘钥表中当前被启用的秘钥加密标准帧数据;
步骤212,将秘钥对应秘钥索引编入加密后的标准帧数据,生成标准帧加密数据;
步骤213,将标准帧加密数据以及该视频片段中除标准帧数据以外的其他帧的压缩帧数据保存为该视频片段对应的目标加密数据;
步骤220,判断步骤211中加密的标准帧数据是否为视频数据的最后一个视频片段的标准帧数据;
如果是,加密操作结束;
如果否,返回步骤210,读取下一个视频片段的标准帧数据。
在实际应用场景中,图2所示的各个步骤可以采用多种不同的实现方式。具体的,在实际应用场景中,步骤220的目的是判断视频数据的加密是否完成,在步骤220的具体实现过程中,也可以采用其他实现方式来判断视频数据的加密是否完成。例如,在步骤220的一种实现方式中,尝试读取当前视频片段的下一个视频片段,当读取失败时说明当前视频片段为视频数据的最后一个视频片段。
在视频数据完成加密后,就可以基于加密视频数据后得到的目标加密数据来响应针对该视频数据的访问请求。具体的,图3为根据本说明书一实施例的数据输出方法的部分流程图。在本说明书一实施例中,如图3所示,视频数据访问请求的响应包括以下步骤:
步骤310,监控是否存在合法的视频数据访问请求;
如果不存在,返回步骤310;
如果存在,执行步骤320以及330;
步骤320,加密秘钥表,发送加密的秘钥表到视频数据访问请求的发起方;
步骤330,发送所请求的视频数据的所有视频片段的目标加密数据到视频数据访问请求的发起方。
进一步的,针对秘钥具备秘钥生命周期的应用场景中,在加密视频数据的过程中秘钥的秘钥生命周期结束会导致新秘钥被启用。这就有可能存在秘钥在视频片段的时长范围内被更换的情况。也就是说,在对视频数据的码流进行加密时,依次读取视频片段视频帧,在生成某一视频片段的标准帧并加密时,采用的是秘钥A,在生成该视频片段中的标准帧之后的帧的过程中,秘钥A更换为秘钥B,相当于视频片段跨越了两个秘钥,这就有可能导致解密时的秘钥有效期出现冲突(例如,视频片段的生成时间超出了秘钥有效期,可能被认定为采用了无效秘钥对视频片段进行加密)。针对上述情况,在步骤120的一种实现方式中,在选用秘钥表中的一个秘钥对视频数据进行加密,根据选用的秘钥生成对应的秘钥索引的过程中:当当前使用的秘钥的秘钥生命周期结束并启用新的秘钥时,执行切视频片段操作。
具体的,在步骤120的一种实现方式中,使用秘钥对视频数据的视频片段的标准帧进行加密,包括:
从秘钥表中提取处于启用状态的秘钥A;
使用秘钥A对视频数据的视频片段依次进行标准帧加密;
当秘钥A的秘钥生命周期结束时,执行切视频片段操作,秘钥A所加密的最后一个标准帧所属的视频片段的尾帧即为秘钥A的秘钥生命周期结束时对应的视频帧;
当秘钥A的秘钥生命周期结束时,从秘钥表中提取新启用的秘钥B;
使用秘钥B对视频数据的视频片段依次进行标准帧加密,其中,秘钥B所加密的第一个标准帧所属视频片段的首帧为秘钥A的秘钥生命周期结束时对应的视频帧的下一帧;具体的,由于一个视频片段的标准帧通常为该视频片段的首帧,因此,秘钥B所加密的第一个标准帧为秘钥A的秘钥生命周期结束时对应的视频帧的下一帧。
具体的,在根据本说明书一实施例的应用场景中,视频数据采集设备的微处理器(例如,digital signal processor,DSP)在编码码流阶段,在标准帧中编入当前阶段码流的秘钥的索引,随码流一起输出。当前一个秘钥的生命周期结束,需要启用下一个秘钥时,新的秘钥索引会被传递给DSP,当检查到录像缓冲区中的秘钥索引发生变更之后,立即执行切视频片段动作,结束当前的视频片段,划分出新的视频片段,保证使用下一个秘钥的标准帧存放在新的视频片段文件中。这样就保证了不同秘钥和对应视频片段的无缝切换。
进一步的,在根据本说明书一实施例的数据输出方法的应用场景中,数据获取设备可以在完成加密操作后再将加密数据发送到数据的访问方,例如,针对某视频数据,视频数据采集设备可以在完成加密操作后再将加密视频数据发送到视频数据的访问方。在根据本说明书一实施例的数据输出方法的另一应用场景中,数据获取设备也可以一边对数据进行加密,一边将已加密的数据发送到数据的访问方,例如,针对视频数据,视频数据采集设备也可以一边对视频数据的码流数据进行加密,一边将已加密的码流数据发送到视频数据的访问方。
进一步的,基于本说明书实施例的数据输出方法,本说明书一实施例还提出了一种数据获取方法。图4为根据本说明书一实施例的数据获取方法的流程图。在本说明书一实施例中,如图4所示,数据的获取方法包括以下步骤:
步骤400,发送用于请求访问目标数据的访问请求,其中,在访问请求被发送时,访问请求的发送方并未持有秘钥表;
步骤410,获取秘钥表以及目标加密数据,其中:
秘钥表包含多个秘钥以及多个秘钥索引,秘钥表中的秘钥与秘钥索引一一对应;
目标加密数据包括使用秘钥表中的秘钥对目标数据进行加密后得到的数据以及秘钥表中的秘钥索引,其中,目标加密数据中包括的秘钥索引与加密目标数据所使用的秘钥为在秘钥表中相互对应的秘钥索引与秘钥;
步骤420,获取目标加密数据中的秘钥索引;
步骤430,获取秘钥表中,对应目标加密数据中秘钥索引的秘钥;
步骤440,基于对应目标加密数据中秘钥索引的秘钥,解密目标加密数据,获取目标数据。
进一步的,在步骤410的一种实现方式中,在获取秘钥表以及目标加密数据的过程中,基于不同的交互会话分别获取目标加密数据以及秘钥表。
例如,在根据本说明书一实施例的应用场景中,使用WEB客户端获取/回放视频监控设备(视频数据采集设备)采集的视频数据。当WEB客户端需要获取/回放视频监控设备采集的视频数据时,首先会单独进行一次http/https交互,获取视频监控设备上生成的秘钥表。
进一步的,在本说明书一实施例中,步骤410中所获取的秘钥表为基于预设规则,根据数据获取设备的设备信息所创建的秘钥表,其中,秘钥表中秘钥的个数由秘钥生命周期以及秘钥表的生命周期而定;在一个秘钥生命周期内,秘钥表中只存在一个与该秘钥生命周期对应的秘钥被启用,只有被启用的秘钥可以被用于对所述目标数据进行加密。
进一步的,在本说明书一实施例中,访问请求所针对的目标数据为视频数据,步骤410中所获取的目标加密数据包括标准帧加密数据,标准帧加密数据为将秘钥索引编入加密后的标准帧数据所生成的数据,加密后的标准帧数据为在编码码流阶段使用秘钥对视频数据的视频片段的标准帧数据进行加密而生成的数据。步骤420中,获取目标加密数据中的秘钥索引,包括:获取标准帧加密数据中的秘钥索引。
进一步的,在本说明书一实施例中,访问请求所针对的目标数据为视频数据,步骤410中所获取的目标加密数据包括标准帧加密数据以及压缩帧数据,压缩帧数据为视频数据的视频片段中除标准帧以外的其他帧基于标准帧进行数据压缩而生成的数据,标准帧加密数据为将秘钥索引编入加密后的标准帧数据所生成的数据,加密后的标准帧数据为在编码码流阶段使用秘钥对视频数据的视频片段的标准帧数据进行加密而生成的数据。
进一步的,在本说明书一实施例中,步骤410中所获取的目标加密数据包括标准帧加密数据以及加密后的压缩帧数据,其中,标准帧加密数据是使用秘钥对视频片段的标准帧数据进行加密并编入了秘钥索引的数据,加密后的压缩帧数据是使用与加密该视频片段中标准帧数据相同的秘钥,对该视频片段中除标准帧数据外的压缩帧数据进行加密得到的数据。
具体的,在根据本说明书一实施例的应用场景中,使用WEB客户端获取/回放视频监控设备(视频数据采集设备)采集的视频数据。WEB客户端回放视频数据时,播放库模块完成码流的解析和解密。WEB客户端将预先收到的视频监控设备发送过来的秘钥表,提供给底层的播放库使用。在回放解码录像过程中,播放库在解析码流时,先解析出录像码流标准帧中的秘钥索引,然后根据索引值到对应的秘钥表中检索到该段录像的秘钥,进行码流动态解密。
进一步的,在本说明书一实施例中,秘钥表为基于预设规则,根据数据获取设备的设备信息所创建的秘钥表,其中,秘钥表中秘钥的个数由秘钥生命周期以及秘钥表的生命周期而定,详细说明可见前述实施例中的相关说明,在此不再赘述。
进一步的,在本说明书一实施例中,为了降低秘钥表的泄露风险,在访问请求的发起方侧不长期保存秘钥表。具体的,在本说明书一实施例中,在步骤440之后,在完成目标加密数据的解密之后,删除缓存的秘钥表。
具体的,图5为根据本说明书一实施例的数据获取方法的流程图。在本说明书一实施例中,如图5所示,数据获取方法包括以下步骤:
步骤510,发送视频数据访问请求;
步骤520,接收加密的秘钥表,解密获取秘钥表;
步骤530,接收包含标准帧加密数据的视频数据码流;
步骤540,从接收到的视频数据码流中一个视频片段的标准帧加密数据中提取秘钥索引;
步骤550,根据秘钥索引从秘钥表中确定该标准帧加密数据对应的秘钥,解密标准帧加密数据,获取标准帧数据;
步骤560,根据标准帧数据解压缩压缩帧数据,回放视频片段;
步骤570,判断是否触发视频回放结束流程;
如果未触发视频回放结束流程,返回步骤540,从下一个视频片段的标准帧加密数据中提取秘钥索引;
步骤571,如果触发视频回放结束流程,删除缓存的秘钥表,视频数据回放结束。
在实际应用场景中,图5所示的各个步骤可以采用多种不同的实现方式。具体的,在步骤570的一种实现方式中,通过判断视频数据回放操作是否结束来判断是否触发视频回放结束流程,当视频数据回放操作结束时触发视频回放结束流程。
具体的,在步骤570的一种实现方式中,判断当前回放完毕的视频片段是否为视频数据最后一个视频片段,当当前回放完毕的视频片段为视频数据最后一个视频片段时,触发视频回放结束流程。例如,尝试读取当前视频片段的下一个视频片段的标准帧加密数据,当读取失败时说明当前视频片段为视频数据的最后一个视频片段。
具体的,在步骤570的一种实现方式中,判断视频回放界面是否关闭,当视频回放界面关闭时,触发视频回放结束流程。
具体的,在一种可行的实现方式中,也可以不执行步骤570这一判断动作,在执行完步骤560后,返回继续执行步骤540,从下一个视频片段的标准帧加密数据中提取秘钥索引;同时,在执行整个方法步骤的过程中,一旦获取到触发视频回放结束流程的信号,则删除缓存的秘钥表,视频数据回放结束。
进一步的,基于本说明书实施例的数据输出方法,本说明书一实施例还提出了一种数据输出装置。图6为根据本说明书一实施例的数据输出装置的结构图。在本说明书一实施例中,如图6所示,数据输出装置包括:
秘钥表存储模块610,其用于保存秘钥表,秘钥表包含多个秘钥以及多个秘钥索引,秘钥表中的秘钥与秘钥索引一一对应;
加密模块620,其用于使用已保存的秘钥表中的秘钥对目标数据进行加密,用于生成目标加密数据,目标加密数据包括对目标数据进行加密后得到的数据以及秘钥表中的秘钥索引,其中,目标加密数据中包括的秘钥索引与加密所述目标数据所使用的秘钥为在秘钥表中相互对应的秘钥索引与秘钥;
响应模块630,其用于在接收到用于请求访问目标数据的访问请求的情况下,将秘钥表以及目标加密数据传输到访问请求的发起方,其中,访问请求的发起方在发起访问请求时未持有秘钥表。
进一步的,在本说明书一实施例中,图6所示的数据输出装置构造在数据获取设备中。
具体的,在本说明书一实施例中,秘钥表存储模块610所保存的秘钥表为:基于预设规则,根据数据获取设备的设备信息所创建的秘钥表。
具体的,在本说明书一实施例中,秘钥表存储模块610所保存的秘钥表中秘钥的个数由秘钥生命周期以及秘钥表的生命周期而定;在一个秘钥生命周期内,秘钥表中只存在一个与该秘钥生命周期对应的秘钥被启用,只有被启用的秘钥可以被用于对目标数据进行加密。
在本说明书一实施例中,图6所示的数据输出装置构造在数据获取设备中。
进一步的,在响应模块630的一种实现方式中,响应模块630用于基于不同的交互会话分别传输秘钥表以及目标加密数据。
进一步的,在本说明书一实施例中,加密模块620所生成的目标加密数据包括使用秘钥表中秘钥为目标数据的数据片段加密而生成的目标加密子数据。加密模块620使用如下方式生成目标加密子数据:
确定秘钥表中处于启用状态的目标秘钥;
使用目标秘钥对目标数据的数据片段加密直到目标秘钥的秘钥生命周期结束,其中,在目标秘钥的秘钥生命周期结束时划分数据片段,目标秘钥的秘钥生命周期结束时刻所对应的数据为:使用目标秘钥加密的最后一个数据片段的尾数据;
将目标秘钥对应的秘钥索引编入使用目标秘钥加密的数据片段中,得到目标加密子数据。
进一步的,在本说明书一实施例中,加密模块620所加密的目标数据为视频数据,加密模块620所生成的目标加密数据包括标准帧加密数据。加密模块620生成目标加密数据的过程包括:
在编码码流阶段,使用秘钥对所述视频数据的视频片段的标准帧数据进行加密;
将秘钥索引编入加密后的标准帧数据,得到标准帧加密数据,以生成目标加密数据。
进一步的,在本说明书一实施例中,加密模块620生成目标加密数据后,将目标加密数据发送至存储服务器保存。响应模块630在接收到用于请求访问目标数据的访问请求的情况下,从存储服务器获取到目标加密数据,以及,将秘钥表以及目标加密数据传输到访问请求的发起方。
进一步的,在本说明书一实施例中,加密模块620生成目标加密数据后,将目标加密数据发送至存储服务器保存。响应模块630在接收到用于请求访问目标数据的访问请求的情况下,将秘钥表传输到访问请求的发起方,以及,发送指令使得存储服务器将目标加密数据传输到访问请求的发起方。
图6所示的本说明书一实施例提供的装置可用于执行本说明书实施例的方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
进一步的,基于本说明书实施例的数据获取方法,本说明书一实施例还提出了一种数据获取装置。图7为根据本说明书一实施例的数据获取装置的结构图。在本说明书一实施例中,如图7所示,数据获取装置包括:
请求输出模块700,其用于发送用于请求访问目标数据的访问请求,其中,在访问请求被发送时,访问请求的发送方并未持有秘钥表;
数据接收模块710,其用于获取秘钥表以及目标加密数据,其中:
秘钥表包含多个秘钥以及多个秘钥索引,秘钥表中的秘钥与秘钥索引一一对应;
目标加密数据包括使用秘钥表中的秘钥对目标数据进行加密后得到的数据以及秘钥表中的秘钥索引,其中,目标加密数据中包括的秘钥索引与加密目标数据所使用的秘钥为在秘钥表中相互对应的秘钥索引与秘钥;
解密模块720,其用于:
获取目标加密数据中的秘钥索引;
获取秘钥表中,对应目标加密数据中秘钥索引的秘钥;
基于对应目标加密数据中秘钥索引的秘钥,解密目标加密数据,得到目标数据。
图7所示的本说明书一实施例提供的装置可用于执行本说明书实施例的方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
具体的,在本说明书一实施例中,数据接收模块710所获取的秘钥表为基于预设规则,根据数据获取设备的设备信息所创建的秘钥表,其中,秘钥表中秘钥的个数由秘钥生命周期以及秘钥表的生命周期而定。
进一步的,在本说明书一实施例中,解密模块720所要解密得到的目标数据为视频数据,数据接收模块710获取的目标加密数据包括标准帧加密数据,标准帧加密数据为将秘钥索引编入加密后的标准帧数据所生成的数据,加密后的标准帧数据为在编码码流阶段使用秘钥对视频数据的视频片段的标准帧数据进行加密而生成的数据;解密模块720获取目标加密数据中的秘钥索引包括:获取标准帧加密数据中的秘钥索引。
进一步的,在本说明书一实施例中,数据接收模块710基于不同的交互会话分别获取秘钥表以及目标加密数据;
进一步的,在本说明书一实施例中,数据获取装置在解密模块720完成目标加密数据的解密之后,删除获取到的秘钥表。
进一步的,本说明书一实施例还提出了一种数据传输系统。图8为根据本说明书一实施例的数据传输系统的结构图。在本说明书一实施例中,如图8所示,数据传输系统包括:
数据输出设备810,其用于保存秘钥表,基于秘钥表对目标数据加密以生成目标加密数据,以及,在数据获取装置发起用于请求访问目标数据的访问请求时向数据获取装置传输秘钥表以及目标加密数据;具体的,数据输出设备810包括如图6所示的数据输出装置;
数据获取设备820,其用于发起访问请求,接收来自数据输出设备的秘钥表以及目标加密数据,以及,根据秘钥表以及目标加密数据获取目标数据;具体的,数据获取设备820包括如图7所示的数据获取装置。
具体的,图9为根据本说明书一实施例的应用场景的数据传输系统示意图。以及功能模块示意图。在本说明书一实施例中,如图9所示,数据传输系统包括视频拍摄设备侧910(数据输出设备)以及WEB客户端侧920(数据获取设备)。
具体的,视频拍摄设备侧910中构造有:
秘钥表生成模块911,其用于生成秘钥表;
秘钥表加密模块912,其用于加密秘钥表;
秘钥表输出模块913,其用于将加密的秘钥表发送到WEB客户端侧920;
秘钥切换管理模块914,其用于确认当前启用的秘钥并确定对应的秘钥索引;
视频数据压缩模块918,其用于切分视频片段,确定标准帧并基于标准帧压缩其他帧的数据;
数据加密模块915,其用于加密标准帧数据;
秘钥索引编入模块916,其用于将秘钥切换管理模块914确定的秘钥索引编入加密的标准帧数据;
码流输出模块917,其用于输出码流数据到WEB客户端侧920。
当秘钥切换管理模块914发现当前的秘钥的秘钥生命周期结束,启用新秘钥时,输出新的秘钥索引。视频数据压缩模块918发现秘钥索引更新时启动切视频片段操作,开启新的视频片段。
具体的,WEB客户端侧920中构造有:
秘钥表接收模块921,其用于接收加密的秘钥表;
秘钥表解密模块922,其用于解密获取秘钥表;
码流数据接收模块923,其用于接收视频拍摄设备侧910发送的码流数据;
秘钥索引获取模块924,其用于从码流数据的标准帧加密数据中提取秘钥索引;
秘钥解析模块925,其用于解析秘钥索引,从秘钥表中检索秘钥;
数据解密模块926,其用于解密并解码码流数据;
回放模块927,其用于回放视频片段。
本领域普通技术人员可以意识到,本说明书实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
具体的,以上图6~图9所示的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块以软件通过处理元件调用的形式实现,部分模块通过硬件的形式实现。例如,检测模块可以为单独设立的处理元件,也可以集成在电子设备的某一个芯片中实现。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit;以下简称:ASIC),或,一个或多个微处理器(Digital Singnal Processor;以下简称:DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array;以下简称:FPGA)等。再如,这些模块可以集成在一起,以片上系统(System-On-a-Chip;以下简称:SOC)的形式实现。
进一步的,基于本说明书实施例提出的数据输出方法,本说明书实施例提出还提出了一种电子设备,该电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该电子设备执行本说明书实施例的数据输出方法的方法步骤。在本说明书一实施例中,上述电子设备可以为视频监控设备(例如,前端摄像机IPC,前端球机IPD)配置有摄像头移动终端(例如,手机)等设备。其中上述一个或多个计算机程序被存储在上述存储器中,上述一个或多个计算机程序包括指令,当上述指令被上述设备执行时,使得上述设备执行本说明书实施例的数据输出方法。
进一步的,基于本说明书实施例提出的数据获取方法,本说明书实施例提出还提出了一种电子设备,该电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该电子设备执行本说明书实施例的数据获取方法的方法步骤。在本说明书一实施例中,上述电子设备可以为移动终端(手机),智慧屏,个人电脑,网络终端设备或车载终端设备等设备。其中上述一个或多个计算机程序被存储在上述存储器中,上述一个或多个计算机程序包括指令,当上述指令被上述设备执行时,使得上述设备执行本说明书实施例的数据获取方法。
进一步的,本说明书一实施例所示的电子设备可以是终端设备也可以是内置于上述终端设备的电路设备。该设备可以用于执行本说明书实施例提供的方法中的功能/步骤。
具体的,在本说明书一实施例中,电子设备包括处理器以及存储器。其中,处理器和存储器之间可以通过内部连接通路互相通信,传递控制和/或数据信号,该存储器用于存储计算机程序,该处理器用于从该存储器中调用并运行该计算机程序。
上述存储器可以是只读存储器(read-only memory,ROM)、可存储静态信息和指令的其它类型的静态存储设备、随机存取存储器(random access memory,RAM)或可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者还可以是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质等。
上述处理器可以和存储器可以合成一个处理装置,更常见的是彼此独立的部件,处理器用于执行存储器中存储的程序代码来实现上述功能。具体实现时,该存储器也可以集成在处理器中,或者,独立于处理器。
应理解,上述电子设备能够实现本说明书实施例提供的方法的各个过程。电子设备中的各个模块的操作和/或功能,分别为了实现上述方法实施例中的相应流程。具体可参见本说明书实施例方法实施例中的描述,为避免重复,此处适当省略详细描述。
应理解,电子设备中的处理器可以是片上系统SOC,该处理器中可以包括中央处理器(Central Processing Unit;以下简称:CPU),还可以进一步包括其他类型的处理器,例如:图像处理器(Graphics Processing Unit;以下简称:GPU)等。
总之,处理器内部的各部分处理器或处理单元可以共同配合实现之前的方法流程,且各部分处理器或处理单元相应的软件程序可存储在存储器中。
以上各实施例中,涉及的处理器可以例如包括CPU、DSP、微控制器或数字信号处理器,还可包括GPU、嵌入式神经网络处理器(Neural-network Process Units;以下简称:NPU)和图像信号处理器(Image Signal Processing;以下简称:ISP),该处理器还可包括必要的硬件加速器或逻辑处理硬件电路,如ASIC,或一个或多个用于控制本申请技术方案程序执行的集成电路等。此外,处理器可以具有操作一个或多个软件程序的功能,软件程序可以存储在存储介质中。
本说明书一实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行本说明书实施例提供的数据输出方法。
本说明书一实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行本说明书实施例提供的数据获取方法。
本申请实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行本说明书实施例提供的数据输出方法。
本申请实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行本说明书实施例提供的数据获取方法。
在本说明书所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本说明书的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。
本说明书实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c或a和b和c,其中a,b,c可以是单个,也可以是多个。
以上,仅为本说明书实施例的具体实施方式,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以权利要求的保护范围为准。
Claims (11)
1.一种数据输出方法,其特征在于,所述方法包括:
使用已保存的秘钥表中的秘钥对目标数据进行加密,其中,所述秘钥表包含多个秘钥以及多个秘钥索引,所述秘钥表中的秘钥与秘钥索引一一对应;
生成目标加密数据,所述目标加密数据包括对所述目标数据进行加密后得到的数据以及所述秘钥表中的秘钥索引,其中,所述目标加密数据中包括的秘钥索引与加密所述目标数据所使用的秘钥为在所述秘钥表中相互对应的秘钥索引与秘钥;
在接收到用于请求访问所述目标数据的访问请求的情况下,将所述秘钥表以及所述目标加密数据传输到所述访问请求的发起方,其中,所述访问请求的发起方在发起所述访问请求时未持有所述秘钥表。
2.根据权利要求1所述的方法,其特征在于,所述方法应用于数据获取设备,所述方法还包括:基于预设规则,根据所述数据获取设备的设备信息创建所述秘钥表;
所述将所述秘钥表以及所述目标加密数据传输到所述访问请求的发起方为:基于不同的交互会话分别传输所述秘钥表以及所述目标加密数据;
所述秘钥表中所述秘钥的个数由秘钥生命周期以及所述秘钥表的生命周期而定;在一个秘钥生命周期内,所述秘钥表中只存在一个与该秘钥生命周期对应的秘钥被启用,只有被启用的秘钥可以被用于对所述目标数据进行加密。
3.根据权利要求1所述的方法,其特征在于,所述目标加密数据包括使用所述秘钥表中秘钥为所述目标数据的数据片段加密而生成的目标加密子数据,所述目标加密子数据通过如下方式生成:
确定所述秘钥表中处于启用状态的目标秘钥;
使用所述目标秘钥对所述目标数据的数据片段加密直到所述目标秘钥的秘钥生命周期结束,其中,在所述目标秘钥的秘钥生命周期结束时划分数据片段,所述目标秘钥的秘钥生命周期结束时刻所对应的数据为:使用所述目标秘钥加密的最后一个数据片段的尾数据;
将所述目标秘钥对应的秘钥索引编入所述使用目标秘钥加密的数据片段中,得到所述目标加密子数据。
4.根据权利要求1所述的方法,其特征在于,所述目标数据为视频数据,所述目标加密数据包括标准帧加密数据,所述生成目标加密数据包括:
在编码码流阶段,使用所述秘钥对所述视频数据的视频片段的标准帧数据进行加密;
将所述秘钥索引编入加密后的标准帧数据,得到所述标准帧加密数据,以生成所述目标加密数据。
5.根据权利要求1所述的方法,其特征在于,所述生成目标加密数据后,所述方法还包括:将所述目标加密数据发送至存储服务器保存;
所述将所述秘钥表以及所述目标加密数据传输到所述访问请求的发起方,包括:
从所述存储服务器获取到所述目标加密数据,以及,将所述秘钥表以及所述目标加密数据传输到所述访问请求的发起方;
或者,
将所述秘钥表传输到所述访问请求的发起方,以及,发送指令使得所述存储服务器将所述目标加密数据传输到所述访问请求的发起方。
6.一种数据获取方法,其特征在于,包括:
发送用于请求访问目标数据的访问请求,其中,在所述访问请求被发送时,所述访问请求的发送方并未持有秘钥表;
获取所述秘钥表以及目标加密数据,其中:所述秘钥表包含多个秘钥以及多个秘钥索引,所述秘钥表中的秘钥与秘钥索引一一对应;所述目标加密数据包括使用所述秘钥表中的秘钥对所述目标数据进行加密后得到的数据以及所述秘钥表中的秘钥索引,其中,所述目标加密数据中包括的秘钥索引与加密所述目标数据所使用的秘钥为在所述秘钥表中相互对应的秘钥索引与秘钥;
获取所述目标加密数据中的秘钥索引;
获取所述秘钥表中,对应所述目标加密数据中秘钥索引的秘钥;
基于对应所述目标加密数据中秘钥索引的秘钥,解密所述目标加密数据,得到所述目标数据。
7.根据权利要求6所述的方法,其特征在于:
所述秘钥表为基于预设规则,根据数据获取设备的设备信息所创建的秘钥表,其中,所述秘钥表中所述秘钥的个数由秘钥生命周期以及所述秘钥表的生命周期而定;
所述目标数据为视频数据,所述目标加密数据包括标准帧加密数据,所述标准帧加密数据为将所述秘钥索引编入加密后的标准帧数据所生成的数据,所述加密后的标准帧数据为在编码码流阶段使用所述秘钥对所述视频数据的视频片段的标准帧数据进行加密而生成的数据;所述获取所述目标加密数据中的秘钥索引包括:获取所述标准帧加密数据中的秘钥索引;
所述获取秘钥表以及目标加密数据为:基于不同的交互会话分别获取所述秘钥表以及所述目标加密数据;
所述方法还包括:在完成所述目标加密数据的解密之后,删除所述秘钥表。
8.一种数据输出装置,其特征在于,所述装置包括:
秘钥表存储模块,其用于保存秘钥表,所述秘钥表包含多个秘钥以及多个秘钥索引,所述秘钥表中的秘钥与秘钥索引一一对应;
加密模块,其用于使用已保存的秘钥表中的秘钥对目标数据进行加密,用于生成目标加密数据,所述目标加密数据包括对所述目标数据进行加密后得到的数据以及所述秘钥表中的秘钥索引,其中,所述目标加密数据中包括的秘钥索引与加密所述目标数据所使用的秘钥为在所述秘钥表中相互对应的秘钥索引与秘钥;
响应模块,其用于在接收到用于请求访问所述目标数据的访问请求的情况下,将所述秘钥表以及所述目标加密数据传输到所述访问请求的发起方,其中,所述访问请求的发起方在发起所述访问请求时未持有所述秘钥表。
9.一种数据获取装置,其特征在于,包括:
请求输出模块,其用于发送用于请求访问目标数据的访问请求,其中,在所述访问请求被发送时,所述访问请求的发送方并未持有秘钥表;
数据接收模块,其用于获取所述秘钥表以及目标加密数据,其中:所述秘钥表包含多个秘钥以及多个秘钥索引,所述秘钥表中的秘钥与秘钥索引一一对应;所述目标加密数据包括使用所述秘钥表中的秘钥对所述目标数据进行加密后得到的数据以及所述秘钥表中的秘钥索引,其中,所述目标加密数据中包括的秘钥索引与加密所述目标数据所使用的秘钥为在所述秘钥表中相互对应的秘钥索引与秘钥;
解密模块,其用于:获取所述目标加密数据中的秘钥索引;获取所述秘钥表中,对应所述目标加密数据中秘钥索引的秘钥;基于对应所述目标加密数据中秘钥索引的秘钥,解密所述目标加密数据,得到所述目标数据。
10.一种电子设备,其特征在于,所述电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述电子设备执行如权利要求1~5中任一项所述的方法步骤。
11.一种电子设备,其特征在于,所述电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述电子设备执行如权利要求6或7所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010406807.0A CN111600879B (zh) | 2020-05-14 | 2020-05-14 | 一种数据输出/获取方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010406807.0A CN111600879B (zh) | 2020-05-14 | 2020-05-14 | 一种数据输出/获取方法、装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111600879A true CN111600879A (zh) | 2020-08-28 |
CN111600879B CN111600879B (zh) | 2023-02-17 |
Family
ID=72183781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010406807.0A Active CN111600879B (zh) | 2020-05-14 | 2020-05-14 | 一种数据输出/获取方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111600879B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112910843A (zh) * | 2021-01-15 | 2021-06-04 | 深圳市欢太科技有限公司 | 数据传输方法、电子设备、服务器、移动终端及存储介质 |
CN115296852A (zh) * | 2022-07-08 | 2022-11-04 | 珠海市小源科技有限公司 | 数据加密、解密方法、装置及数据加密解密系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060161774A1 (en) * | 2005-01-14 | 2006-07-20 | Samsung Electronics Co., Ltd. | Authentication method and system between device with small computational resources and device using public key |
CN102238002A (zh) * | 2010-04-30 | 2011-11-09 | 国际商业机器公司 | 用于网络通信的动态加密和解密的方法和设备 |
CN103209188A (zh) * | 2013-04-16 | 2013-07-17 | 百度在线网络技术(北京)有限公司 | 数据推送方法、数据推送系统及数据推送服务器 |
CN105553654A (zh) * | 2015-12-31 | 2016-05-04 | 广东信鉴信息科技有限公司 | 密钥信息查询处理方法和装置、密钥信息管理系统 |
CN106209886A (zh) * | 2016-07-22 | 2016-12-07 | 广州爱九游信息技术有限公司 | web接口数据加密加签方法、装置及服务器 |
CN107707514A (zh) * | 2017-02-08 | 2018-02-16 | 贵州白山云科技有限公司 | 一种用于cdn节点间加密的方法及系统及装置 |
CN108154038A (zh) * | 2016-12-06 | 2018-06-12 | 北京京东尚科信息技术有限公司 | 数据处理方法及装置 |
CN108270739A (zh) * | 2016-12-30 | 2018-07-10 | 华为技术有限公司 | 一种管理加密信息的方法及装置 |
CN109818734A (zh) * | 2017-11-21 | 2019-05-28 | 中国移动通信有限公司研究院 | 一种基本密钥分发方法、装置和介质 |
-
2020
- 2020-05-14 CN CN202010406807.0A patent/CN111600879B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060161774A1 (en) * | 2005-01-14 | 2006-07-20 | Samsung Electronics Co., Ltd. | Authentication method and system between device with small computational resources and device using public key |
CN102238002A (zh) * | 2010-04-30 | 2011-11-09 | 国际商业机器公司 | 用于网络通信的动态加密和解密的方法和设备 |
CN103209188A (zh) * | 2013-04-16 | 2013-07-17 | 百度在线网络技术(北京)有限公司 | 数据推送方法、数据推送系统及数据推送服务器 |
CN105553654A (zh) * | 2015-12-31 | 2016-05-04 | 广东信鉴信息科技有限公司 | 密钥信息查询处理方法和装置、密钥信息管理系统 |
CN106209886A (zh) * | 2016-07-22 | 2016-12-07 | 广州爱九游信息技术有限公司 | web接口数据加密加签方法、装置及服务器 |
CN108154038A (zh) * | 2016-12-06 | 2018-06-12 | 北京京东尚科信息技术有限公司 | 数据处理方法及装置 |
CN108270739A (zh) * | 2016-12-30 | 2018-07-10 | 华为技术有限公司 | 一种管理加密信息的方法及装置 |
CN107707514A (zh) * | 2017-02-08 | 2018-02-16 | 贵州白山云科技有限公司 | 一种用于cdn节点间加密的方法及系统及装置 |
CN109818734A (zh) * | 2017-11-21 | 2019-05-28 | 中国移动通信有限公司研究院 | 一种基本密钥分发方法、装置和介质 |
Non-Patent Citations (1)
Title |
---|
王磊等: "多群组和设备侧密钥分发的安全认证和密钥协商", 《信号处理》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112910843A (zh) * | 2021-01-15 | 2021-06-04 | 深圳市欢太科技有限公司 | 数据传输方法、电子设备、服务器、移动终端及存储介质 |
CN115296852A (zh) * | 2022-07-08 | 2022-11-04 | 珠海市小源科技有限公司 | 数据加密、解密方法、装置及数据加密解密系统 |
CN115296852B (zh) * | 2022-07-08 | 2023-09-01 | 珠海市小源科技有限公司 | 数据加密、解密方法、装置及数据加密解密系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111600879B (zh) | 2023-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109379397B (zh) | 基于区块链的交易共识处理方法及装置、电子设备 | |
CN101098478B (zh) | 提供具有完整性视频流的装置和方法 | |
WO2017071512A1 (zh) | 一种多媒体数据的云存储、云下载方法及相关装置 | |
US20110170687A1 (en) | Content decoding apparatus, content decoding method and integrated circuit | |
CN111600879B (zh) | 一种数据输出/获取方法、装置和电子设备 | |
CA2829689A1 (en) | An instant communication method and system | |
CN103457995A (zh) | 终端设备数据信息的存储方法、终端设备和云端服务器 | |
CN101969545A (zh) | 一种对多媒体文件进行加密的方法及装置 | |
WO2021072878A1 (zh) | 基于rtmp的音视频数据加解密方法、装置及可读存储介质 | |
US20110142227A1 (en) | Method and apparatus for encoding data and method and apparatus for decoding data | |
CN115248940A (zh) | 基于区块链的视频存证方法、验证方法及装置 | |
CN110661805B (zh) | 数据处理方法、装置、存储介质和客户端 | |
CN112491832A (zh) | 一种文件传输方法及装置 | |
WO2012126257A1 (zh) | 媒体数据处理方法及其装置 | |
CN111669650A (zh) | 视频处理方法、装置、电子设备及存储介质 | |
CN109168033A (zh) | 一种视频隐私数据保护系统及方法 | |
CN116318665A (zh) | 一种文件加密方法、存储介质和电子设备 | |
CN105554518A (zh) | 一种控制视频流传输的方法和装置 | |
CN109831782B (zh) | 一种电子卡信息的安全传输验证方法 | |
CN104092680A (zh) | 一种音频信号的编码、解码方法和装置及系统 | |
CN105471876A (zh) | 一种通讯加密的方法及装置 | |
RU2573745C2 (ru) | Способ и система gsm безопасности и соответствующие устройства | |
CN113132484A (zh) | 一种数据传输方法及装置 | |
CN111865891A (zh) | 一种数据传输方法、用户端、电子设备及可读存储介质 | |
KR20060123882A (ko) | 이동통신망을 이용한 녹음/녹화 데이터의 워터마킹 방법 |
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 |