GB 35114-2017 学习笔记(规避版权阉割版)
GB 35114-2017 学习笔记(规避版权阉割版)
openstd.samr.gov.cn 国家标准全文公开系统
这个政府网站提供GB 35114-2017标准的的预览和下载,有需要的自行下载
GB 35114-2017作为一个国家强制标准,在国家标准全文公开系统
自己做个学习笔记,摘录了部分图片被版权投诉了。
万恶的资本,无奈只能删除所有图片分享给大家了,
图片部分替换成GB 35114-2017标准中的图片编号,请大家谅解。
具体下载地址如下
GB 35114-2017: https://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=B7F5589329EF98B32F0EB8ACEC341C81
有能耐,投诉政府网站去。
注:我只做了A级设备,主要对A级相关内容进行了笔记。
B级和C级内容只是主要描述SVAC编码怎么添加签名和数据怎么加密的,
市面是上SVAC编码也不是公开的,都是收费提供的方案,
能做BC级别开发的人,必然有技术支持。
所有关于BC级大部分只是摘录,有需要的建议大家直接看标准文档。
第四章 公共安全视频监控联网信息安全系统互联结构
阉割内容【图1 公共安全视频监控信息安全系统互联结构示意图】
公共安全视频监控信息安全系统
公共安全视频监控信息安全系统由四部分组成:
- 具有安全功能的前端设备 FDWSF(安全前端设备:Front-end Device With Safety Function)
- 具有安全功能的用户终端
- 视频安全密钥服务系统 (注:一个系统中有且仅有一个)
- 视频监控安全管理平台 (注:一个系统中有且仅有一个)
视频监控安全管理平台
- 中心信令控制服务器
- 信令路由网关
- 流媒体服务
互联方式
系统的级联方式依据GB/T 28181-2016方式,进行级联和互联
第五章 证书和密钥要求
密码算法
a) 非对称密码算法使用 SM2 圆曲线密码算法用于身份认证数字签名、密协商等;
b) 对称密码算法使用 SM1、SM4 分组密码算法 OFB 模式,用于视频数据的加密保护。
b) 使用 SM4 分组密码算法 ECB 模式,用于密钥协商数据的加密保护;
c) 密码杂凑算法使用 SM3 密码杂凑算法,用于完整性校验;
d) 随机数生成算法生成的随机数应能通过 GM/T 005-2012 中规定的方法进行检测。
非对称密码算法
- 非对称密码算法使用SM2椭圆曲线密码算法,用于身份认证、数字签名、密钥协商等;
对称密码算法
- 对称密码算法使用SM2、SM4分组密码算法 的OFB模式,用于视频数据的加密保护
- 对称密码算法使用SM4分组密码算法的ECB模式,用于密钥协商数据的加密保护;
密码杂凑算法
- 密码杂凑算法使用SM3密码杂凑算法,用于完整性校验;
随机数生成算法
- 随机数生成算法需要通过GM/T 0005-2012检测
数字证书类型
- 用户证书:用于对用户的身份认证;
- 前端设备证书:用于前端设备的身份认证以及对设备产生视频数据的数字签名;
- 服务器设备证书:用于服务器设备的身份认证;
- 管理平台证书:用于管理平台的身份认证。
数字证书格式
用户证书格式应符合GM/T 0015-2012中对证书格式和证书撤销列表(CRL)的规定
阉割内容【表A.1 设备证书格式定义】
密钥种类
非对称密钥
- 管理平台内功能实体的签名公私钥和加密公私钥、
- FDWSF(安全前端设备:Front-end Device With Safety Function)签名公私钥、
- 具有安全功能的用户终端签名公私钥
- 等
对称密钥
- 视频密钥加密密钥 => VKEK:视频密钥加密密钥(Video Key Encryption Key)
- 视频加密密钥 => VEK:视频加密密钥(Video Encryption Key)
- 等。
第六章 基本功能要求
统一编码规则
详见GB/T 28181-2016 附录D
身份认证要求
用户身份认证
B/S客户端基于数字证书的用户身份认证流程应按照 GB/T 15843.3-2008执行
C/S客户端应采用基于SIP协议的双向身份认证模式进行用户身份认证
设备身份认证
管理平台应对所有接入的FDWSF(安全前端设备:Front-end Device With Safety Function)进行单向设备身份认证或者双向设备身份认证。
管理平台间认证
管理平台互联互通时应进行管理平台间的双向身份认证。
身份认证方式
单向身份认证
阉割内容【图C.1】 单向身份认证报文交互流程图
阉割内容【章节D.1】 单向身份认证报文交互内容
双向身份认证
阉割内容【图C.2】 双向身份认证报文交互流程图
阉割内容【章节D.2】 双向身份认证报文交互内容
前端设备分级
- A级应基于数字证书与管理平台双向身份认证的能力,达到身份真实目标。
- B级应具备基于数字证书与管理平台双向身份认证的能力和对视频数据签名的能力,达到身份真实和视频来源于真实设备,能够校验视频内容是否遭到篡改的目标。
- C级应具备基于数字证书与管理平台双向身份认证的能力、视频数据签名能力和视频数据加密
能力,达到身份真实和视频来源于真实设备,能够校验视频内容是否遭到篡改,能够达到对视频内容加密保护目标。
阉割内容【表1 前端设备分级】
规避版权,自己也画一个,没有了张屠夫,还吃不上猪肉么?
等级 | 应基于数字证书与管理平台双向身份认证的能力,达到身份真实目标 | 基于数字证书对视频数据签名的能力,达到身份真实和视频来源于真实设备,能够校验视频内容是否遭到篡改的目标 | 基于数字证书视频数据加密能力,能够达到对视频内容加密保护目标 |
---|---|---|---|
A级 | √ | - | - |
B级 | √ | √ | - |
C级 | √ | √ | √ |
控制信令认证
在SIP消息头域中,启用Date域,增加Note域, Note=(Digest nonce=“”, algorithm=“”), nonce的值为杂凑运算结果经过Base64编码后的值,algorithm的值为杂凑算法名称。
跨域访问时,外域的信令添加 Monitor-User-Identity头域,其取值为信令安全路由网关ID和用户的身份信息;若该信令不是由本域的用户发起,则只在原有Monitor-User-Identity域值前添加信令安全路由网关ID;各段分隔符为 “-”。用户的身份为用户ID以及用户身份属性信息(用户身份属性信息包括:用户隶属机构属性、用户类别属性和用户职级属性)
阉割内容【图C.4】 控制信令认证交互流程
视频源签名域完整性校验
- 所有B级和C级FDWSF(安全前端设备:Front-end Device With Safety Function)应对采集的视频进行视频数据签名操作并基于TCP协议进行传输。
- 所有B级和C级FDWSF(安全前端设备:Front-end Device With Safety Function)应支持对视频I帧及其他关键帧的签名。
- 管理平台应支持对视频数据签名结果的接收、存储和验证,实现视频源的抗抵赖及完整性校验。
视频数据签名和验签的格式
B级相关章节截图太多,直接看标准好了。
视频数据签名和验签的流程
B级相关章节截图太多,直接看标准好了。
视音频加密
- 所有C级FDWSF(安全前端设备:Front-end Device With Safety Function)应对采集的视频及音频进行加密操作并传输
- 管理平台应支持视频及音频加密数据的传输,支持用户在权限范围内对实时加密视音频播放、 历史加密视音频回放、加密视音频的存储/下载/分发/导出等操作
- 视频导出时管理平台应更换视频密钥加密密钥。
- 加密视频直接存储到存储设备。
视音频加密格式
C级相关章节截图太多,直接看标准好了。
视音频加密流程
C级相关章节截图太多,直接看标准好了。
实时加密视频
实时加密视频要求
C级相关章节截图太多,直接看标准好了。
实时加密视频流程
符合国标流程
- 接收者发送INVITE请求时:
C级相关章节截图太多,直接看标准好了。 - SIP信令服务器响应INVITE请求时:
C级相关章节截图太多,直接看标准好了。 - 密钥发生改变时SIP信令服务器通知接收者:
C级相关章节截图太多,直接看标准好了。
第七章 性能要求
- 身份认证时间延迟:不超过400ms
- FDWSF视频数据签名:不小于1次/s
- 视频加密/解密增加的延迟:不超过400ms
相关文章:

GB 35114-2017 学习笔记(规避版权阉割版)
GB 35114-2017 学习笔记(规避版权阉割版) openstd.samr.gov.cn 国家标准全文公开系统 这个政府网站提供GB 35114-2017标准的的预览和下载,有需要的自行下载 GB 35114-2017作为一个国家强制标准,在国家标准全文公开系统 自己做个…...

YOLO-FaceV2: A Scale and Occlusion Aware Face Detector
《YOLO-FaceV2:一种尺度与遮挡感知的人脸检测器》 1.引言2.相关工作3.YOLO-FaceV23.1网络结构3.2尺度感知RFE模型3.3遮挡感知排斥损失3.4遮挡感知注意力网络3.5样本加权函数3.6Anchor设计策略3.7 归一化高斯Wasserstein距离 4.实验4.1 数据集4.2 训练4.3 消融实验4.3.1 SEAM块4…...

进程间通信--详解
目录 前言一、进程间通信介绍1、进程间通信目的2、进程间通信发展3、进程间通信的分类4、进程间通信的必要性5、进程间通信的技术背景6、进程间通信的本质理解 二、管道1、什么是管道2、匿名管道pipe(1)匿名管道的原理(2)pipe函数…...

零基础上手WebGIS+智慧校园实例(1)【html by js】
请点个赞收藏关注支持一下博主喵!!! 等下再更新一下1. WebGIS矢量图形的绘制(超级详细!!),2. WebGIS计算距离, 以及智慧校园实例 with 3个例子!!…...

【Github】如何使用Git将本地项目上传到Github
【Github】如何使用Git将本地项目上传到Github 写在最前面1. 注册Github账号2. 安装Git工具配置用户名和邮箱仅为当前项目配置(可选) 3. 创建Github仓库4. 获取仓库地址5. 本地操作(1)进入项目文件夹(2)克隆…...

集合Queue、Deque、LinkedList、ArrayDeque、PriorityQueue详解
1、 Queue与Deque的区别 在研究java集合源码的时候,发现了一个很少用但是很有趣的点:Queue以及Deque; 平常在写leetcode经常用LinkedList向上转型Deque作为栈或者队列使用,但是一直都不知道Queue的作用,于是就直接官方…...

谈一下开源生态对 AI人工智能大模型的促进作用
谈一下开源生态对 AI人工智能大模型的促进作用 作者:开源呼叫中心系统 FreeIPCC,Github地址:https://github.com/lihaiya/freeipcc 开源生态对大模型的促进作用是一个多维度且深远的话题,它不仅加速了技术创新的速度,…...

基于python的机器学习(四)—— 聚类(一)
目录 一、聚类的原理与实现 1.1 聚类的概念和类型 1.2 如何度量距离 1.2.1 数据的类型 1.2.2 连续型数据的距离度量方法 1.2.3 离散型数据的距离度量方法 1.3 聚类的基本步骤 二、层次聚类算法 2.1 算法原理和实例 2.2 算法的Sklearn实现 2.2.1 层次聚类法的可视化实…...

实时数据开发 | 怎么通俗理解Flink容错机制,提到的checkpoint、barrier、Savepoint、sink都是什么
今天学Flink的关键技术–容错机制,用一些通俗的比喻来讲这个复杂的过程。参考自《离线和实时大数据开发实战》 需要先回顾昨天发的Flink关键概念 检查点(checkpoint) Flink容错机制的核心是分布式数据流和状态的快照,从而当分布…...

C++设计模式-策略模式-StrategyMethod
动机(Motivation) 在软件构建过程中,某些对象使用的算法可能多种多样,经常改变,如果将这些算法都编码到对象中,将会使对象变得异常复杂;而且有时候支持不使用的算法也是一个性能负担。 如何在运…...

小程序免备案:快速部署与优化的全攻略
小程序免备案为开发者提供了便捷高效的解决方案,省去繁琐的备案流程,同时通过优化网络性能和数据传输,保障用户体验。本文从部署策略、应用场景到技术实现,全面解析小程序免备案的核心优势。 小程序免备案:快速部署与优…...

Jmeter中的定时器
4)定时器 1--固定定时器 功能特点 固定延迟:在每个请求之间添加固定的延迟时间。精确控制:可以精确控制请求的发送频率。简单易用:配置简单,易于理解和使用。 配置步骤 添加固定定时器 右键点击需要添加定时器的请求…...

C++自动化测试:GTest 与 GitLab CI/CD 的完美融合
在现代软件开发中,自动化测试是保证代码质量和稳定性的关键手段。对于C项目而言,自动化测试尤为重要,它能有效捕捉代码中的潜在缺陷,提高代码的可维护性和可靠性。本文将重点介绍如何在C项目中结合使用Google Test(GTe…...

vscode连接远程开发机报错
远程开发机更新,vscode连接失败 报错信息 "install" terminal command done Install terminal quit with output: Host key verification failed. Received install output: Host key verification failed. Failed to parse remote port from server ou…...

神经网络12-Time-Series Transformer (TST)模型
Time-Series Transformer (TST) 是一种基于 Transformer 架构的深度学习模型,专门用于时序数据的建模和预测。TST 是 Transformer 模型的一个变种,针对传统时序模型(如 RNN、LSTM)在处理长时间依赖、复杂数据关系时的限制而提出的…...

IDEA 2024安装指南(含安装包以及使用说明 cannot collect jvm options 问题 四)
汉化 setting 中选择插件 完成 安装出现问题 1.可能是因为之前下载过的idea,找到连接中 文件,卸载即可。...

Fakelocation Server服务器/专业版 Centos7
前言:需要Centos7系统 Fakelocation开源文件系统需求 Centos7 | Fakelocation | 任务一 更新Centos7 (安装下载不再赘述) sudo yum makecache fastsudo yum update -ysudo yum install -y kernelsudo reboot//如果遇到错误提示为 Another app is curre…...

oracle的静态注册和动态注册
oracle的静态注册和动态注册 静态注册: 静态注册 : 指将实例的相关信息手动告知 listener 侦 听 器 , 可以使用netmgr,netca,oem 以及直接 vi listener.ora 文件来实现静态注册,在动态注册不稳定时使用,特点是:稳定&…...

机器翻译基础与模型 之四:模型训练
1、开放词表 1.1 大词表和未登陆词问题 理想情况下,机器翻译应该是一个开放词表(Open Vocabulary)的翻译任务。也就是,无论测试数据中包含什么样的词,机器翻译系统都应该能够正常翻译。 现实的情况是即使不断扩充词…...

Vue——响应式数据,v-on,v-bind,v-if,v-for(内含项目实战)
目录 响应式数据 ref reactive 事件绑定指令 v-on v-on 鼠标监听事件 v-on 键盘监听事件 v-on 简写形式 属性动态化指令 v-bind iuput标签动态属性绑定 img标签动态属性绑定 b标签动态属性绑定 v-bind 简写形式 条件渲染指令 v-if 遍历指令 v-for 遍历对象的值 遍历…...

ceph 18.2.4二次开发,docker镜像制作
编译环境要求 #需要ubuntu 22.04版本 参考https://docs.ceph.com/en/reef/start/os-recommendations/ #磁盘空间最好大于200GB #内存如果小于100GB 会有OOM的情况发生,需要重跑 目前遇到内存占用最高为92GB替换阿里云ubuntu 22.04源 将下面内容写入/etc/apt/sources.list 文件…...

产品经理的项目管理课
各位产品经理,大家下午好,今天我给大家分享的主题是“产品经理如何做好项目管理”。 其实,我是不想分享这个主题的,是因为在周会中大家投票对这个议题最感兴趣,11个同学中有7个投了这个主题,所以才有了这次…...

Linux 下的 AWK 命令详细指南与示例
目录 简介AWK 的主要特性基本语法示例1. 打印文件的所有行2. 打印特定字段3. 打印匹配模式的行4. 基于条件过滤并打印5. 使用内置变量6. 执行算术运算7. 字符串操作8. 使用 BEGIN 和 END 块9. 处理分隔符文件 高级功能自定义脚本使用外部变量 总结 简介 AWK 是 Linux 中功能强…...

FPGA经验谈系列文章——8、复位的设计
前言 剑法往往有着固定的招式套路,而写代码似乎也存在类似的情况。不知从何时起,众多 FPGA 工程师们在编写代码时开启了一种关于 always 语句块的流行写法,那就是: always @(posedge i_clk or negedge i_rstn) 就笔者所经历的诸多项目以及所接触到的不少工程师而言,大家在…...

C#里怎么样实现操作符重载?
C#里怎么样实现操作符重载? 一般情况,都是表示某种类型的类时,才会使用到操作符重载。 比如实现一个复数类。 在C#中,重载运算符是通过在类或结构中定义特殊的方法来实现的,这些方法的名称是operator关键字后跟要重载的运算符。例如,要重载+运算符,可以定义一个名为op…...

项目实战:Vue3开发一个购物车
这段HTML代码实现了一个简单的购物车实战小项目的前端页面,结合了Vue.js框架来实现数据响应式和交互逻辑。页面展示了购物车中的商品项,每个商品项有增减数量的按钮,并且能显示商品总数以及目前固定为0元的商品总价和总价计算。 【运用响应式…...

Oracle SQL*Plus中的SET VERIFY
在 Oracle SQL*Plus 中,SET VERIFY ON 和 SET VERIFY OFF 是两个用于控制命令执行前后显示变量值的命令。这些命令主要用于调试和验证 SQL 脚本中的变量替换情况。 一、参数说明 1.1 SET VERIFY ON 作用:启用变量替换的验证功能。当启用时,S…...

Spring AI 框架使用的核心概念
一、模型(Model) AI 模型是旨在处理和生成信息的算法,通常模仿人类的认知功能。通过从大型数据集中学习模式和见解,这些模型可以做出预测、文本、图像或其他输出,从而增强各个行业的各种应用。 AI 模型有很多种&…...

二叉树路径相关算法题|带权路径长度WPL|最长路径长度|直径长度|到叶节点路径|深度|到某节点的路径非递归(C)
带权路径长度WPL 二叉树的带权路径长度(WPL)是二叉树所有叶节点的带权路径长度之和,给定一棵二叉树T,采用二叉链表存储,节点结构为 其中叶节点的weight域保存该节点的非负权值,设root为指向T的根节点的指针,设计求W…...

前端:JavaScript (学习笔记)【2】
目录 一,数组的使用 1,数组的创建 [ ] 2,数组的元素和长度 3,数组的遍历方式 4,数组的常用方法 二,JavaScript中的对象 1,常用对象 (1)String和java中的Stri…...