常用加解密工具集合|视频图片加解密方案

最近工作需要做视频加密解密,大概需求就是摄像头录制好的视频实时加密存储到本地,防止别人拔掉存储卡把视频拷贝走。

大胆设想一下,假如现在很多网约车车内都有摄像头,这些对着乘客和司机的车内摄像头都是实时录制视频并存储到本地,如果司机把摄像头的存储卡拔走,把乘客视频拷贝走,用户隐私存在很大安全隐患。

怎么解决这个问题?

解决办法就是对视频进行加密,摄像头录制视频的原理就是连续拍照,一张一张的图片连续播放就是一个视频了,加密就是对每一帧视频(图片)进行加密,然后再存储到本地。

如果视频需要回传到服务器上,在服务器上进行解密,然后就可以播放了。

视频加密算法

我使用的是很成熟的对称加密。

对称加密原理相对比较好理解,就是加密和解密都用的同一把钥匙,保存好钥匙就可以防止视频被破解了,服务器保存钥匙也不能用明文,这里就不多做描述了,如果你处理过用户敏感信息加密,应该很容易想到解决办法,比如用户手机号,银行卡号,等敏感信息,一个负责的企业,如果对用户敏感信息进行加密存储,就算你是企业里权限最高的mysql管理员,那也是看不到用户信息的。

技术圈成熟的加密工具大集合

本来是个table,整理成了一个脑图。

这里都是开源组件,大部分都包含对称加密算法和非对称加密算法

比如

AES(CBC, GCM)

DES/3DES

ChaCha20

RC4

我采用的是chacha20,设备端用c加密,后台服务用java解密(通过JNI技术调用c)

写的比较粗糙,这其中还有很多技术细节,比如视频流读取方式,mp4生成工具,如何使用ffmpeg等工具。可以找我私聊。

建议收藏,没准你啥时候就用到了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/302723.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

修炼九阴真经Windows Phone开发 (7):本地化应用程序栏Localizing an Application Bar 下...

本节介绍另一个本地化的方法: 在项目中添加资源文件:(这个文件将包含应用程序的默认语言的资源) 将要名称和值添加进去。(作为应用程序中向用户显示字符串值). 重复上面的方法,向项目中添加更多…

matlab编程数字信号,MATLAB--数字信号实验.doc

MATLAB--数字信号实验前言MATLAB 是一套功能强大的工程计算及数据处理软件,广泛应用于工业,电子,医疗和建筑等众多领域。它是一种面向对象的,交互式程序设计语言,其结构完整又优良的可移植性。它在矩阵运算&#xff0c…

统治世界的十大算法

全世界有3.14 % 的人已经关注了数据与算法之美软件正在统治世界。而软件的核心则是算法。算法千千万万,又有哪些算法属于“皇冠上的珍珠”呢?Marcos Otero 给出了他的看法。什么是算法?通俗而言,算法是一个定义明确的计算过程&…

Hosting in .NET Core

在.NET Core中,Host负责应用程序的启动和生命周期管理。除此之外,在Host中还可以设置日志(Logging)、配置(Configuration)和依赖关系注入(Dependency Injection)等。Host将一个常规的控制台应用程序(Console Application)变成了一个可以长时间运行的服务…

hilbert曲线序编码matlab,Hilbert曲线扫描矩阵的生成算法及其MATLAB程序代码

Hilbert曲线扫描矩阵的生成算法及其MATLAB程序代码王笋,徐小双(华中科技大学控制科学与工程系,武汉 430074)摘 要Hilbert曲线是一种重要的图像处理工具,在图像处理,特别是图像扫描中广泛应用.为了正确快速的生成Hilbert曲线扫描矩阵,提出了基于矩阵运算的生成Hilber…

java例程练习(一维数组)

public class Test {public static void main(String[] args) {int a[] { 3, 9, 8}; //静态初始化Date days1 [] {new Date(1, 4, 2004),new Date(2, 4, 2004),new Date(3, 4, 2004)};//动态初始化Date [] days2 new Date[3];for (int i 0; i < 3; i) {days2[i] new Da…

如何用大数据找女朋友?

全世界有3.14 % 的人已经关注了数据与算法之美导读找女朋友不仅需要好眼力&#xff0c;还需要一些技术含量。比如眼下正热的大数据&#xff0c;可以认真钻研&#xff0c;用数据分析来实现自己的“脱单计划”。小猿25岁&#xff0c;单身男&#xff0c;热衷大数据&#xff0c;并决…

ASP.NET Core 单元测试:如何 Mock HttpContext.Features.Get()

点击上方蓝字关注“汪宇杰博客”导语在 ASP.NET Core 里&#xff0c;如果你想单元测试 HttpContext.Features.Get<SomeType>()&#xff0c;这个技巧一定不要错过。问题我有个 Error 页面&#xff0c;需要取得异常的详细信息。我使用 HttpContext.Features.Get<IExcept…

php 模拟登录163邮箱,PHP模拟登陆163邮箱发邮件及获取通讯录列表的方

本文实例讲述了PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法。分享给大家供大家参考。具体实现方法如下&#xff1a;代码如下:header("Content-Type: text/html; charsetUTF-8");error_reporting(0);/*** 登陆* $user 163用户名* $pass 密码**/function login($u…

网址收藏

http://www.xdowns.com/ 绿色软件下载转载于:https://blog.51cto.com/guailele/851308

mini api

大部分主流语言都支持web框架&#xff0c;并且实现起来相对轻便&#xff0c;简捷&#xff0c;比如&#xff1a;go的gin包package main import "github.com/gin-gonic/gin" func main() {r : gin.Default()r.GET("/ping", func(c *gin.Context) {c.JSON(200…

qt交叉编译环境搭建方法

&#xff08;一&#xff09;准备工作1、下载最新版本的Qt 4.7.2&#xff1a; http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.2.tar.gz2、安装交叉编译器4.3.3或其它版本3、编译tslib-1.4.1.tar.bz2&#xff0c;这个东西是触摸屏库&#xff0c;编译QT4.7…

edge robert matlab,哪位熟悉matlab的大神路过瞄一眼哈

cxfx(believe truth believe me)UID240430帖子100精华积分1755蛋蛋币1755 枚威望0BT积分0阅读权限60性别男在线时间125 小时注册时间2013-3-27鸵鸟蛋主楼大中小发表于 2013-5-13 21:30 只看该作者哪位熟悉matlab的大神路过瞄一眼哈求大神指点迷津那&#xff01;谁来帮着看一下这…

朋友来网易面试,挂了~

阅读本文大概需要8分钟。最近推荐一个朋友来网易面试&#xff0c;这哥们在小厂工作6年&#xff0c;研发经验非常丰富&#xff0c;但他却挂在了技术终面。事后和他约了个饭&#xff0c;深聊了一次发现他的技术成长路径还是有点问题。软件开发行业需要经验&#xff0c;需要时间来…

php 图片 3d旋转图片,html5实现图片的3D旋转效果

我们先来看一下实现效果&#xff1a;(学习视频分享&#xff1a;html视频教程)H5旋转3D相册&#xff0c;鼠标放置暂停&#xff0c;图片灰度级为0&#xff0c;有放大效果。该实例运用H5和CSS3动画效果&#xff0c;未用javascript。提高了本人对CSS3 新属性的了解及掌握。完整代码…

初级运维工程师面试题总结

该面试题结合了上海龙旗&#xff0c;土豆网&#xff0c;上海激动网络&#xff0c;风之云&#xff0c;广典集团&#xff0c;旅行者传媒等等&#xff0c;有些面试题还在进一步完善之中&#xff0c;希望给想步入运维行业的朋友们一点点帮助&#xff0c;加油!1)Linux启动大致过程&a…

数据这么多,且看R语言怎么处理!

随着科技的不断进步&#xff0c;数据处理量的不断增大&#xff0c;对数据进行处理、分析、统计建模、数据挖掘以及可视化的重要性日渐突出。如果说有一门简单易学、通俗易懂并且集上述功能为一体的编程语言让科研人员从中解脱出来&#xff0c;R语言当仁不让。作为一种统计分析软…

MYSQL数据库表大小计算,计算mysql数据库数据表的大小,不精确,只是大略的数据...

SHOW TABLE STATUS dbname返回数组&#xff1a;Name: xxx (表名)Engine: MyISAM (表引擎)Version: 10 (版本)Row_format: Dynamic (行格式)Rows: (表内总行数)Avg_row_length: (平均每行大小&#xff0c;这里是4.7K)Data_length: (该表总大小&#xff0c;单位字节)Max_data_len…

乘风破浪,.Net Core遇见Dapr,为云原生而生的分布式应用运行时

Dapr是一个由微软主导的云原生开源项目&#xff0c;国内云计算巨头阿里云也积极参与其中&#xff0c;2019年10月首次发布&#xff0c;到今年2月正式发布V1.0版本。在不到一年半的时间内&#xff0c;github star数达到了1.2万&#xff0c;超过同期的kubernetes、istio、knative等…

催人泪下!一个程序员的悲惨故事

全世界有3.14 % 的人已经关注了数据与算法之美编辑&#xff1a;大数据二狗如果你喜欢这篇文章&#xff0c;就把它发给朋友看吧~精品课程推荐&#xff1a;选购数学科普正版读物严选“数学思维好物”送给孩子的益智礼物 | 办公室神器算法工程师成长阅读 | 居家高科技理工…