本发明涉及一种数据传输方法和系统,具体涉及一种视频数据安全加密传输方法和系统。
背景技术:
现有技术流媒体服务器软件在传输视频数据时采用人工设定的密码对视频数据进行加密并传输,当需要在客户端软件上播放视频时需要手动输入密码,验证通过后播放实时视频流或回放历史录像。这种方式存在以下问题:密码固定,为保证其安全性,需要定期进行更改,更改密码后,需要通过人工的方式通知客户端使用者,操作不便且存在安全隐患。
现有技术采用人工记录历史密码和历史录像文件对应的方式,密码丢失后将导致历史录像文件无法播放。密码不易保管,完全靠记忆,易泄露。监控平台或前端摄像机对视频数据进行加密,但是密码及密钥信息使用明文传输,将加密使用的密码或密钥使用明文和数据一起传输,提取到密码或密钥后就能破解加密数据,存在安全隐患。
现有技术加密和解密算法都由一个研发团队实现,内部研发人员可以解密信息,存在安全隐患。
现有技术采用前端摄像机实现加密方法,依赖前端摄像机能力,需要前端摄像机支持加密,而且前端摄像机的加密协议必须与安防平台统一,增加了系统建造成本。
现有技术视频数据在网路上使用明文传输,会被非法入侵或者黑客攻击,截取传输数据,篡改或者替换数据。导致监控中心无法对现场画面进行有效的判断,甚至被替换后的数据欺骗。以便达到非法的目的。部分敏感区域图像数据可能会被权限不足的用户访问。由于数据都是明文,只要拿到数据流或者文件,就可以通过播放器进行播放,会导致敏感数据被非法访问。
技术实现要素:
为了解决上述问题,本发明提出一种视频数据安全加密传输方法,其特征在于,包括步骤:
S1、流媒体服务器端随机产生第一密码,并使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧;
S2、流媒体服务器端使用硬件加密锁对第一密码进行加密得到第一密码加密文件,使用硬件加密锁对第一加密关键帧进行加密得到第二加密关键帧,传输包括第二加密关键帧、第一密码加密文件、使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的加密算法算法类型信息的视频数据;
S3、客户端获取包括第二加密关键帧、第一密码加密文件、使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的加密算法算法类型信息的视频数据;
S4、客户端通过与硬件加密锁配对的硬件解密锁对第二加密关键帧解密得到第一加密关键帧,通过与硬件加密锁配对的硬件解密锁对第一密码加密文件进行解密得到第一密码,使用第一密码对第一加密关键帧进行解密。
进一步的,所述步骤S2中流媒体服务器端随机产生的第一密码定时更换。
进一步的,所述步骤S2中流媒体服务器端使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的加密算法定时更换。
为了保证上述方法的实施,本发明还提供一种视频数据安全加密传输系统,包括下列单元:
用于流媒体服务器端随机产生第一密码,并使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的第一加密单元;
用于流媒体服务器端使用硬件加密锁对第一密码进行加密得到第一密码加密文件,使用硬件加密锁对第一加密关键帧进行加密得到第二加密关键帧的第二加密单元,
用于服务器端传输包括第二加密关键帧、第一密码加密文件、使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的加密算法算法类型信息的视频数据的数据传输单元,
用于客户端获取包括第二加密关键帧、第一密码加密文件、使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的加密算法算法类型信息的视频数据的数据接收单元;
用于客户端通过与硬件加密锁配对的硬件解密锁对第二加密关键帧解密得到第一加密关键帧,通过与硬件加密锁配对的硬件解密锁对第一密码加密文件进行解密得到第一密码,使用第一密码对第一加密关键帧进行解密的解密单元。
进一步的,第一加密单元随机产生的第一密码定时更换。
进一步的,第一加密单元中的加密算法定时更换。
本发明的有益效果是,第一密码为随机生成,且定时更新保证了安全性。随机密码经过硬件加密和视频数据经过一次软件加密一次硬件加密,安全性更高。内部研发人员知道视频数据的软件加密算法,但是不知道外部硬件加密锁的算法,无法提取随机密码。即使知道随机密码,没有硬件加密锁时也不能解密数据。不用人工输入和人工记忆密码,杜绝了人为泄密的隐患。用户在客户端软件播放视频时只需要插入配对的硬件加密锁即可播放加密视频,不用关心密码内容,用户体验好;播放完成后取走硬件加密锁则不能再播放加密视频,使用过程不会产生密码泄露,硬件加密锁加密算法不可逆,安全系数高,即使知道随机密码的内容没有配对的硬件加密锁也无法解密。每一帧视频数据包含了加密的算法类型和加密后的随机密码,更新加密算法不影响历史视频的播放。加密不依赖于前端摄像机。加密在流媒体服务器端实现,与前端摄像机是否支持加密无关,只要流媒体服务器收到前端摄像机的视频数据即可实现加密。只对关键帧进行加密,减少了加密的工作量,但是依然能够取得较好的效果。
附图说明
图1为本发明视频数据安全加密传输方法流程图
图2为本发明视频数据安全加密传输系统架构图
具体实施方式
图1为本发种视频数据安全加密传输方法流程图
图2为本发明视频数据安全加密传输系统架构图
图中标号说明
100为第一加密单元,200为第二加密单元,300为数据传输单元,400为数据接收单元,500为解密单元,600为硬件加密锁,700为硬件解密锁 。
实施例1:本发明提出一种视频数据安全加密传输方法,其特征在于,包括步骤:
S1、流媒体服务器端随机产生第一密码,并使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧;
只对关键帧进行加密减少了加密的工作量,缺少关键帧视频无法播放,依然能取到很好的加密效果。
S2、流媒体服务器端使用硬件加密锁对第一密码进行加密得到第一密码加密文件,使用硬件加密锁对第一加密关键帧进行加密得到第二加密关键帧,传输包括第二加密关键帧、第一密码加密文件、使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的加密算法算法类型信息的视频数据;
对第一加密关键帧和第一密码使用硬件加密增加了系统的安全性。随机密码经过硬件加密和视频数据经过一次软件加密一次硬件加密,安全性更高。内部研发人员知道视频数据的软件加密算法,但是不知道外部硬件加密锁的算法,无法提取随机密码。即使知道随机密码,没有硬件加密锁时也不能解密数据。用户在客户端软件播放视频时只需要插入配对的硬件加密锁即可播放加密视频,不用关心密码内容,用户体验好
S3、客户端获取包括第二加密关键帧、第一密码加密文件、使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的加密算法算法类型信息的视频数据;
S4、客户端通过与硬件加密锁配对的硬件解密锁对第二加密关键帧解密得到第一加密关键帧,通过与硬件加密锁配对的硬件解密锁对第一密码加密文件进行解密得到第一密码,使用第一密码对第一加密关键帧进行解密。
用户在客户端软件播放视频时只需要插入配对的硬件加密锁即可播放加密视频,不用关心密码内容,用户体验好;播放完成后取走硬件加密锁则不能再播放加密视频,使用过程不会产生密码泄露,硬件加密锁加密算法不可逆,安全系数高,即使知道随机密码的内容没有配对的硬件加密锁也无法解密。每一帧视频数据包含了加密的算法类型和加密后的随机密码,更新加密算法不影响历史视频的播放。
进一步的,所述步骤S2中流媒体服务器端随机产生的第一密码定时更换。
第一密码定时更换增加了系统的安全性。
进一步的,所述步骤S2中流媒体服务器端使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的加密算法定时更换。
加密算法定时更换增加了系统的安全性。
实施例2:本发明还提供一种视频数据安全加密传输系统,包括下列单元:
用于流媒体服务器端随机产生第一密码,并使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的第一加密单元100;
只对关键帧进行加密减少了加密的工作量,缺少关键帧视频无法播放,依然能取到很好的加密效果。
用于流媒体服务器端使用硬件加密锁600对第一密码进行加密得到第一密码加密文件,使用硬件加密锁600对第一加密关键帧进行加密得到第二加密关键帧的第二加密单元200。
对第一加密关键帧和第一密码使用硬件加密增加了系统的安全性。随机密码经过硬件加密和视频数据经过一次软件加密一次硬件加密,安全性更高。内部研发人员知道视频数据的软件加密算法,但是不知道外部硬件加密锁600的算法,无法提取随机密码。即使知道随机密码,没有硬件加密锁600时也不能解密数据。用户在客户端软件播放视频时只需要插入配对的硬件加密锁即可播放加密视频,不用关心密码内容,用户体验好。
用于服务器端传输包括第二加密关键帧、第一密码加密文件、使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的加密算法算法类型信息的视频数据的数据传输单元300,
用于客户端获取包括第二加密关键帧、第一密码加密文件、使用第一密码对视频数据的关键帧进行加密得到第一加密关键帧的加密算法算法类型信息的视频数据的数据接收单元400;
用于客户端通过与硬件加密锁600配对的硬件解密锁700对第二加密关键帧解密得到第一加密关键帧,通过与硬件加密锁600配对的硬件解密锁700对第一密码加密文件进行解密得到第一密码,使用第一密码对第一加密关键帧进行解密的解密单元500。
用户在客户端软件播放视频时只需要插入配对的硬件加密锁600即可播放加密视频,不用关心密码内容,用户体验好;播放完成后取走硬件加密锁600则不能再播放加密视频,使用过程不会产生密码泄露,硬件加密锁600加密算法不可逆,安全系数高,即使知道随机密码的内容没有配对的硬件加密锁600也无法解密。每一帧视频数据包含了加密的算法类型和加密后的随机密码,更新加密算法不影响历史视频的播放。
进一步的,第一加密单元100随机产生的第一密码定时更换。
第一密码定时更换增加了系统的安全性。 进一步的,第一加密单元100中的加密算法定时更换。
加密算法定时更换增加了系统的安全性。
本发明的有益效果是,第一密码为随机生成,且定时更新保证了安全性。随机密码经过硬件加密和视频数据经过一次软件加密一次硬件加密,安全性更高。内部研发人员知道视频数据的软件加密算法,但是不知道外部硬件加密锁的算法,无法提取随机密码。即使知道随机密码,没有硬件加密锁时也不能解密数据。不用人工输入和人工记忆密码,杜绝了人为泄密的隐患。用户在客户端软件播放视频时只需要插入配对的硬件加密锁即可播放加密视频,不用关心密码内容,用户体验好;播放完成后取走硬件加密锁则不能再播放加密视频,使用过程不会产生密码泄露,硬件加密锁加密算法不可逆,安全系数高,即使知道随机密码的内容没有配对的硬件加密锁也无法解密。每一帧视频数据包含了加密的算法类型和加密后的随机密码,更新加密算法不影响历史视频的播放。加密不依赖于前端摄像机。加密在流媒体服务器端实现,与前端摄像机是否支持加密无关,只要流媒体服务器收到前端摄像机的视频数据即可实现加密。只对关键帧进行加密,减少了加密的工作量,但是依然能够取得较好的效果。
本领域普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。