什么是滚动码?什么工作原理?

一、什么是滚动码?

        这里我们将简单了解什么是滚动码及其工作原理。首先简要描述其概念和操作。然后,我们将看一个示例来进一步阐明。最后,我们将研究滚动代码以防止攻击的原因。

        滚动码,也称为跳跃码,是远程无钥匙进入系统中常用的一种安全技术。实际上,当前的许多系统都采用这种技术,包括车辆锁定系统、车库门开启器和其他无线遥控系统。在这样的系统中,我们有两个设备:发射器和接收器。发射器设备向接收器发送数字代码。如果接收器确认代码有效,则依次执行操作(例如开门)。因此,滚动码的主要目的是防止对系统的未经授权的访问。基本思想是使攻击者难以拦截和复制发送器和接收器之间交换的任何代码。

        因此,每次我们按下按钮时,使用滚动代码功能的遥控器都会生成一个新代码。发送和接收设备都使用允许接收器检查每个代码是否有效的策略。另外,接收设备在收到有效代码后,只会再次响应下一个有效代码。

        这种机制使得被盗的代码对入侵者毫无用处,因为代码仅有效一次。

        接下来,让我们看一个使用滚动代码技术的示例,以了解其工作原理。

二. 一个例子

        在此示例中,我们描述了滚动代码应用于汽车远程锁定系统时的工作原理。在所描述的情况下,远程控制设备是汽车钥匙扣,并且接收设备是汽车的中央锁定系统。

        下图说明了这种情况。完整的过程包含四个步骤:(1) 初始同步,(2) 代码生成,(3) 计数器递增,以及 (4) 接收器验证:

        在第一步中,我们需要将汽车钥匙扣与汽车的中控锁系统配对。这样,两个设备建立同步的起始码和计数器。

        从那时起,每次我们按下遥控器上的按钮时,它都会生成一个唯一的代码并将其发送到接收设备(步骤 2)。

        在此步骤中,算法会考虑同步代码和计数器来生成唯一代码。每次传输后,传输设备都会递增其计数器(步骤 3)。

        这确保了下一个发送的代码将与上一个不同。

        接收设备对接收到的每个代码执行验证检查(步骤4)。执行此验证的常见方法是检查接收到的代码是否存在于接下来k个有效代码的窗口中。

        更准确地说,假设n是用于生成先前有效代码的计数器。因此,只有当接收设备确认发射机使用范围[n+1,n+k]中的计数器生成代码时,接收设备才会接受接收到的代码。否则,接收设备将拒绝该代码。

        此外,在步骤4中,在成功验证代码并执行预期动作之后,接收设备更新其本地计数器。换言之,它将在最近接收的代码的验证过程中发现的范围[n+1,n+k]中的值分配给计数器。

三、为什么滚动代码可以防止攻击?

        一个重要的好处是滚动代码技术消除了固定代码技术中存在的漏洞。例如,这可以防止重放攻击,其中攻击者故意重复甚至延迟代码。滚动代码功能提供的安全性在于代码仅有效一次。也就是说,即使攻击者拦截了传输的代码,该代码在使用后也会变得过时,因为计数器会在下一次传输时递增。

        此外,在不知道同步代码和计数器值的情况下,攻击者很难预测或复制未来的代码。设备仅在同步阶段交换代码。因此,必须仅在安全环境中同步设备,远离可能的入侵者。否则,入侵者可能会在同步阶段危害系统。

        在本文中,我们研究了滚动代码的概念。滚动代码是一种安全技术,可以显着降低未经授权访问无钥匙进入系统的风险。

        其操作基于这样的理念:一个设备通过先前建立的计数器生成的代码向另一个设备发送命令。鉴于该技术在无钥匙进入系统中的广泛使用,我们可以得出结论,滚动代码可能会使入侵者更难以进入车辆、车库门或其他安全区域。

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

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

相关文章

两整数之和 -- 位运算

个人主页:Lei宝啊 愿所有美好如期而遇 本题链接 力扣(LeetCode) 输入描述 输入两个要相加的数,a和b 输出描述 返回a和b的和,这里其实直接return ab; 直接就过了,但是人题目要求还是给点面子~ 算法…

【mars3d】批量关闭矢量数据的startFlicker()闪烁或者全部关闭startFlicker()

问题 1.graphic/entity/billboard怎么能够批量关闭startFlicker()闪烁或者 全部关闭startFlicker()呢? 相关链接 1.http://mars3d.cn/editor-vue.html?idgraphic/entity/billboard 2.http://mars3d.cn/apidoc.html#FlickerEntity 期望效果 1.graphic.stopFlic…

国图公考:2024年上半年中小学教师资格考试(笔试)报考须知

(一)信息填报时间:2024年1月12日9:00至1月15日16:00 (二)信息确认时间:2024年1月13日9:00至1月16日16:00 (三)网上缴费时间:2024年1月13日9:00至1月17日24:00

宝宝洗衣机哪个牌子质量好?好用的小型洗衣机推荐

当婴儿的到来,确实会给家庭带来许多变化,就好比如对于宝宝相关衣物的清洗需求。对于新生儿及婴幼儿的衣服,一般都要给予特殊的照顾与清洗,以保证不含细菌及过敏原。尤其是刚刚出生的婴儿,这时候宝宝们的皮肤很是幼嫩。…

python实现给定两个列表,“求同存异”

目录 问题描述: 代码实现: 问题描述: 给定两个列表,list1和list2。 python实现求list1和list中重复的元素,以及在list1中,不在list2的元素。 代码实现: def common_unique(pred_list, gold_l…

pyparamvalidate 项目背景和需求分析

目录 一、前置说明1、总体目录2、本节目标 二、项目背景三、需求分析三、后置说明1、要点小结2、下节准备 一、前置说明 1、总体目录 《 pyparamvalidate 参数校验器,从编码到发布全过程》 2、本节目标 阐述 pyparamvalidate 项目背景和需求分析。 二、项目背景…

由浅入深理解C#中的事件

目录 本文较长,给大家提供了目录,可以直接看自己感兴趣的部分。 前言有关事件的概念示例​ 简单示例​ 标准 .NET 事件模式​ 使用泛型版本的标准 .NET 事件模式​ 补充总结 参考前言 前面介绍了C#中的委托,事件的很多部分都与委托…

sql如何获取字段是数组中的数字【搬代码】

我们可以看到表中字段是一个数组怎么获取其中的数据呢? SELECT sim->>$[0] FROM fin_xxx如果使用左外链接,如下,其他连接时一样的 SELECT a.* FROM fin_aaaa a LEFT JOIN fin_xxx b ON b.sim_r->>$[0]a.corr WHERE b.tid20210 …

安全典型配置(六)配置IPSG限制非法主机访问内网案例(静态绑定)

相关文章学习: 安全典型配置(一)使用ACL限制FTP访问权限案例 安全典型配置(二)使用ACL限制用户在特定时间访问特定服务器的权限案例 安全典型配置(三)使用ACL禁止特定用户上网案例安全典型配置…

yolov8人脸识别-脸部关键点检测(代码+原理)

1. 人脸识别: Yolov8可用于人脸识别,它可以识别人脸的位置、大小和角度等信息,并对人脸进行精确的识别。通过使用Yolov8,可以实现高效准确的人脸识别,不仅可以应用于安防领域,也可以应用于人脸支付、人脸门…

x-cmd pkg | gitui - git 终端交互式命令行工具

目录 简介首次用户功能特点类似工具与竞品进一步探索 简介 gitui 由 Stephan D 于 2020 年使用 Rust 语言构建的 git 终端交互式命令行工具,旨在终端界面中便捷管理 git 存储库。 首次用户 使用 x gitui 即可自动下载并使用 在终端运行 eval "$(curl https:/…

open3d连线可视化

目录 写在前面准备代码运行结果参考完 写在前面 1、本文内容 open3d 2、平台/环境 windows10, visual studio 2019 通过cmake构建项目,跨平台通用;open3d 3、转载请注明出处: https://blog.csdn.net/qq_41102371/article/details/135407857…

呼叫 Mac 用户 | Navicat Premium 原生支持在搭载 Apple Silicon 芯片的电脑上使用

作为桌面端数据库管理开发软件,Navicat Premium 与 Navicat for MongoDB 16.3 (或更高版本) 已原生支持搭载 Apple Silicon 芯片的 Mac 电脑上使用。这是一次重要的技术改进,通过原生技术将大幅提升 Mac 用户在使用 Navicat 过程中的响应速度、流畅性以及…

Hex2Bin转换工具文档、Bootloader 、OTA 、STM32等MCU适用

说明:这个工具可以将 Hex 文件 转换为 Bin 格式文件,软件是按自己开发 STM32 OAT 功能需求开发的一款辅助 上位机软件。 有兴趣的朋友可留言探讨。 附加功能: 1.另外可以生成指定大小的bin 格式文件,文件多余的空余位置填充随机…

回归预测 | Matlab实现基于GA-Elman遗传算法优化神经网络多输入单输出回归预测

回归预测 | Matlab实现基于GA-Elman遗传算法优化神经网络多输入单输出回归预测 目录 回归预测 | Matlab实现基于GA-Elman遗传算法优化神经网络多输入单输出回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现基于GA-Elman遗传算法优化神经网络多输入单输…

鸿蒙原生应用/元服务开发-短时任务

概述 应用退至后台一小段时间后,应用进程会被挂起,无法执行对应的任务。如果应用在后台仍需要执行耗时不长的任务,如状态保存等,可以通过本文申请短时任务,扩展应用在后台的运行时间。 约束与限制 申请时机&#xf…

腾讯云跨云迁移工具案例实践:阿里云迁移到腾讯云

对于阿里云批量迁移到腾讯云,HyperMotion可以支持批量一键式安装Agent软件,做到了操作步骤简单化、自动化,可以满足常见源端操作系统类型。 例如:Windows 2003-2019,CentOS、RedHat 6.x-7.x、Ubuntu 14.x - 16.x、SUS…

微服务应用可观测性解决方案介绍

目录 一、可观测性出现背景 二、什么是可观测性(Observability) 2.1 可观测性的不同解析 2.1.1 百度维基解析 2.1.2 IBM解析 2.1.3 CNCF(云原生计算机基金会)组织解析 2.1.4 我的个人理解 2.2 可观测性和监控的区别与联系 …

Python中User-Agent的重要作用及实际应用

摘要: User-Agent是HTTP协议中的一个重要字段,用于标识发送请求的客户端信息。在Python中,User-Agent的作用至关重要,它可以影响网络请求的结果和服务器端的响应。将介绍User-Agent在Python中的重要作用,并结合实际案…

Unity组件开发--升降梯

我开发的升降梯由三个部分组成,反正适用于我的需求了,其他人想复用到自己的项目的话,不一定。写的也不是很好,感觉搞的有点复杂啦。完全可以在优化一下,项目赶工期,就先这样吧。能用就行,其他的…