海康isapi协议原理学习(Intelligent Security API 智能安全API)

海康isapi协议原理学习(Intelligent Security API 智能安全API)ISAPI 协议概述 ISAPI 的定义 ISAPI 全称为 IntelligentS 智能安全 API 是基于 HTTP HypertextTra 的应用层协议 并采用 REST 架构 Representati 表述性状态转移 实现安防设备 如摄像机 数字录像机 网络录像机等 与平台或客户端软件之间的通信 另一说 ISAPI 为 网络脚本应用程序接口 InternetScri

ISAPI协议概述

ISAPI的定义

ISAPI全称为Intelligent Security API(智能安全API),是基于HTTP(Hypertext Transfer Protocol)的应用层协议,并采用REST架构(Representational State Transfer, 表述性状态转移),实现安防设备(如摄像机、数字录像机、网络录像机等)与平台或客户端软件之间的通信。

另一说,ISAPI为“网络脚本应用程序接口”(Internet Script Application Program Interface),到底哪个是对的??额。。。估计是海康自己取了个名字,,,此isapi非彼isapi,看文章前先弄清楚它讲的是哪一个。。。看isapi.pdf,确实智能安全API是对的
参考文章:ISAPI 是什么
参考文章:KYSL 海康摄像头 HEOP ISAPI 信令扩展模块集成开发指南(IP Surveillance API:IP网络监控API接口)(isapiExternDemo使用案例)

自2013年创建以来,ISAPI已经有11000多个接口,内容包括设备管理、车辆识别、停车场管理、人脸智能、门禁权限管理审讯管控、录播管控等功能,应用于公安、司法、交通、消防、安检、教育等各种行业。(这11000多个接口怎么统计来的??

应用场景

用户通过ISAPI对接设备时,设备作为服务端监听固定端口,用户程序作为客户端主动登录设备进行通信。这要求设备具有固定的IP地址,并且保证客户端的请求能够到达服务端。

在这里插入图片描述

网络模型层级

ISAPI是基于HTTP的应用层协议,所以ISAPI继承了HTTP的所有规范和特性。

基于TCP/UDP的RTSP(Real Time Streaming Protocol),用于实现设备实时预览和录像回放等。

在这里插入图片描述

优势对比 ISAPI、Onvif、GB/T 28181

认证方式介绍

Basic Auth

基本认证(Basic access authentication)是一种用来允许网页浏览器或其他客户端程序在请求时提供用户名和口令形式的身份凭证的一种登录验证方式。

优点

基本认证的一个优点是基本上所有流行的网页浏览器都支持基本认证。基本认证很少在可公开访问的互联网网站上使用,有时候会在小的私有系统中使用(如路由器网页管理接口)。后来的机制HTTP摘要认证是为替代基本认证而开发的,允许密钥以相对安全的方式在不安全的通道上传输。

程序员和系统管理员有时会在可信网络环境中使用基本认证,使用Telnet或其他明文网络协议工具手动地测试Web服务器。这是一个麻烦的过程,但是网络上传输的内容是人可读的,以便进行诊断。

缺点

虽然基本认证非常容易实现,但该方案创建在以下的假设的基础上,即:客户端和服务器主机之间的连接是安全可信的。特别是,如果没有使用SSL/TLS这样的传输层安全的协议,那么以明文传输的密钥和口令很容易被拦截。该方案也同样没有对服务器返回的信息提供保护。

现存的浏览器保存认证信息直到标签页或浏览器被关闭,或者用户清除历史记录。HTTP没有为服务器提供一种方法指示客户端丢弃这些被缓存的密钥。这意味着服务器端在用户不关闭浏览器的情况下,并没有一种有效的方法来让用户注销。

Digest Auth

摘要访问认证(Digest access authentication)是一种协议规定的Web服务器用来同网页浏览器进行认证信息协商的方法。它在密码发出前,先对其应用哈希函数,这相对于HTTP基本认证发送明文而言,更安全。

从技术上讲,摘要认证是使用随机数来阻止进行密码分析的MD5加密哈希函数应用,它使用HTTP协议。个人理解:HTTP Digest Auth 是对 HTTP Basic Auth 的增强。由于 HTTP Basic Auth 几乎是以明文传输用户名和密码,容易泄露。而 HTTP Digest Auth 能够传递认证信息,但是传递的是使用摘要算法(如:MD5)产生的密文,服务端也不用存储明文用户信息,降低了泄密的可能性。但是这种方式仍然可以通过中间人攻击的方式拦截、模拟,所以算是一种折中方案。

这里只做个简要描述,说明总体原理,详情请查阅相关文档。

传统实现方式

http作为最常用的网络请求方式,用来交换数据,不同的http客户端,性能使用方式都有所差别,本文将对Apache-HttpClient,OkHttp,Hutool-http三者的put,post请求方式做一个对比。

(略)

Feign原理浅析

(略)

ISAPI对接设计实现

(略)

参考文章:通过Feign对接ISAPI协议接口的总结分享

好像讲的还不是很全呐,还得继续找资料研究ISAPI的原理。。。。。。。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/204742.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午7:38
下一篇 2026年3月19日 下午7:39


相关推荐

  • Spring Boot连接扣子-基础版

    Spring Boot连接扣子-基础版

    2026年3月13日
    3
  • android之SharedPreferences简介[通俗易懂]

    SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置比如窗口状态,一般在Activity中重载窗口状态onSaveInstanceState保存一般使用SharedPreferences完成,它提供了Android平台常规的Long长整型、Int整型、String字符串型的保存.2个activity 之间的数据传递除了可以通过intent来传递,

    2022年3月9日
    27
  • route add命令实例_cmd route

    route add命令实例_cmd route命令作用routeadd添加路由delete删除路由change更改现有路由print打印路由删除静态路由地址routedelete130.0.0.0mask255.0.0.0添加静态路由地址routeadd130.0.0.0MASK255.0.0.0134.32.80.1METRIC10意思是:所有需要发往130.0.0.0地址段的IP数据包,全部由路径134.32.80.1转发其中,路由跳数是可以省略的参数当通往…

    2022年8月12日
    10
  • 字符串反转的实现方法总结「建议收藏」

    文章目录方法1:对称交换法方法2:函数递归法方法3:列表反转法方法4:循环反向迭代法方法5:倒序切片法方法6:遍历索引法方法7:反向遍历索引法方法8:列表弹出法方法9:反向循环迭代法方法10:累积相加法方法11:匿名函数法方法12:列表倒序法方法13:双向队列排序法方法14:双向队列反转法方法1:对称交换法str=’abcdef’deff(s):s=list(s)…

    2022年4月16日
    43
  • 什么是多模态机器学习?「建议收藏」

    什么是多模态机器学习?「建议收藏」首先,什么叫做模态(Modality)呢?每一种信息的来源或者形式,都可以称为一种模态。例如,人有触觉,听觉,视觉,嗅觉;信息的媒介,有语音、视频、文字等;多种多样的传感器,如雷达、红外、加速度计等。以上的每一种都可以称为一种模态。同时,模态也可以有非常广泛的定义,比如我们可以把两种不同的语言当做是两种模态,甚至在两种不同情况下采集到的数据集,亦可认为是两种模态。因此,多模态机器学习,英文全…

    2022年6月15日
    40
  • java instant_Java Instant类

    java instant_Java Instant类InstantClass Aninstantane line Instant 对象表示的就是在时间线上的一点 Instant 对象和时间戳是一一对应的 这个类能干什呢 1 处理和时间戳相关的 2 但是不处理年月日这种单位作用 1 获得当前时间的毫秒的时间戳 Instanttimes Instant now longts times

    2026年3月17日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号