资源预览内容
第1页 / 共21页
第2页 / 共21页
第3页 / 共21页
第4页 / 共21页
第5页 / 共21页
第6页 / 共21页
第7页 / 共21页
第8页 / 共21页
第9页 / 共21页
第10页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
跳码发射器原理说明特性安全可编程28位序列号每次位发送位加密密钥32位跳码28位序列号、4位按钮代码和2位状态位框图:发射器将非线性加密算法生成的32位跳码与28位序列号和6个信息位组合在一起,形成了一个66位的编码字。这种编码 字消除了编码扫描的风险,并且跳码机制使得每次发送都是惟一 的,从而使编码截获和重发机制无效。密钥、序列号和配置数据固化在芯片中,不能通过任何外部连接 对它们进行访问。这样防止了获取密钥或对同步值进行操作的企 图。1.0 系统概述 主要术语 下面列出了本数据手册中所使用的主要 术语。 跳码使编码在每次被发送时从系统外部看来似 乎总在 无规律地变化的方法。 编码字当激活时,被重复发送的一块数据(见图 4-1)。 发送由重复的编码字组成的一串数据流 密钥一个惟一且保密的用来加密和解密数据的64 位数字。在对称的分组密码 (如 KEELOQ 算 法)中,加密和解密密钥是相同的,因此统称为密 钥。 编码器产生和编码数据的器件。 加密算法使用密钥打乱数据的方法。数据只能 由使用同 一密钥的解密算法破译。 解码器将从编码器接收到的数据解码的器件。 解密算法使用相同的密钥将由加密算法打乱的 数据恢 复原状的方法。 学习学习包括接收器计算发送器的相应密钥、 将接收到 的跳码解密,并将序列号、同步计数值和 密钥存储在 EEPROM 中。下面是一些学习所包括的内容示例。简单学习 接收器使用固定的密钥 (同一制造商生产的 所有系统中的所有 元件共用同一密钥)来解密接收到的编码字的加密部分。- 正常学习 接收器使用正常操作中发送的信息产生密钥并 使 用该密钥解密接收到的编码字的加密部分。- 安全学习 发送器通过一个特殊的按钮组合激活,并发送 一 个存储其中的用于产生发送器密钥的 60 位 种子值。接收器使 用该种子值产生相同的密钥 并使用该密钥解密编码字的加密部 分。 厂家编码用来生成惟一的编码器密钥的惟一而 保密的64 位数。使用密钥编程每个编码器,所使用的密钥是厂家编码 的函数。每个解码器均使用厂家编码编程。本跳码编码器是专门为无线系统设计的,主要应用在汽车和家庭 安防系统. 它只需要极少的 外部元件 (见图 2-1)。大多数低端的无钥门禁发送器在每次按下按钮时都将发 送一个固定的识别码。低端系统中的惟一识别码通常是 一个相对较小 的数字。这些缺点为老道的窃贼们创造了 机会,使他们能制造 出一个被“截获”发送并在稍后重 发的设备,或能快速“扫描” 所有可能的识别码直到找 到正确识别码的设备。与之相反, Si4010 采用动态跳码技术,结合 66 位的发送长 度,基本消除了编码被 “截获”和编码被 “扫描”的可能性, 具有很高的安全性.使用以 32 位分组长度和 64 位密钥长度为基础的分组密码。该 算法使用下面的方法 加密信息,即使下一次发送信息(在编码 前)只有一位 与上一次发送不同,但下一次编码后发送将完全 不同。 从统计学的角度讲,如果 32 位数据串中只有一位发生 了改变,但编码后的发送中将有至少 50% 的位发生改 变。如第一页中的框图所示,Si4010具有一个小的EEPROM阵列, 在使用之前必须向其中装载几个参数;这些参数 通常在生产时 已由厂家编程。最重要的参数如下: 28 位序列号,通常所有编码器的序列号均不同 密钥 初始的 16 位同步计数值 16 位配置值通常将发送器序列号和 64 位厂家编码输入到密钥生成 算法中 以产生密钥 (见图 1-1)。由系统制造商选择厂 家编码,必须 很小心地控制这一编码,因为这是整个系 统安全至关重要的部 分。图九九在生产址程中创建井存储密钥厂凉 编玛16位同步计数值是发送的编码字在每次发送时改变的依据,每 次按下按钮时,它都将递增。由于跳码算法的复杂性,同步计 数值每次递增都将导致发送的编码字中50%的位发生变化。图1-2给出了 EEPROM中的主要值是如何在编码器中使用 的。一但编码器检测到按钮被按下的信息,它就会 读取按钮输 入并更新同步计数器。同步计数值和密钥输入给加密算法,从 而输出一个32位的加密信息。每次按下按钮,该加密信息都 将发生改变,从外部看上去,该信息的值在“随机地来回跳动” 因此它被称为编码字的跳码部分。这个32位的跳码与按钮信 息和序列号 组合起来形成了发送给接收器的编码字。第4.0 节更详 细地说明了编码字的格式。接收器可使用任何类型的控制器作为解码器,但是通常是要具 有兼容固件的单片机,能与基于Si4010的发送器协同工作。 第7.0节提供了将Si4010集成到系统的详细信息。在允许系统使用发送器之前,发送器必须首先被接收器“学 习”。学习包括计算发送器的相应密钥、将接收到的跳码解密, 并将序列号、同步计数值和密钥存储在 EEPROM 中。 在正常操作中,将评估每个接收到的有效格式的消息。 序列号 用来判断消息是否来自于一个已被学习的发送 器。如果来自已 被学习的发送器,那么消息将被解密并 将校验同步计数值。最 后,检查按钮状态,获知请求的 操作。图 1-3 给出了接收器存 储的某些值与从发送器接 收的值之间的关系。EEPROMP?!S1序刊号32恸加密魅境遼的信息图1 -3t接收霍的基本撫作(解码番)I按齟信息序列号32拉加嵌雉据O接收到的信息EEPROM驚珂检鑑否厂球鋼另序列号同步讣竝佢C5、:.a救密的同 歩计数值-懺否连.鬪隅内囲龜字表示执行的顺,寧.2.0编码器的工作原理典型应用电路(见图2-1)所示图 2-1:oCR2032COIN CELL1,Bto3.6VC2011GPIDGPIO1GNDGPIO2U1TXMGPIO3Si4010-GTTXPGPIG4VDDLEDSW0SW19aSW3SW46-O O - O - OLOOP 1uF ANTENNA 打Si4010是一款带可编程高频发射的单片机.通过对Si4010进行编程,将跳码算法写入芯片中,实现跳码发射.当检测到有按钮被按下时,Si4010将被唤醒,并延时 大约10ms以等待按钮抖动平息(见图2-2)。加密同步计数值、识另I码和按钮信息以形成跳码。每次发送的跳码部分都将改变,即 便是再次按下同一个按钮也是如此。发送的编码字在超过64K 次传输中都不会重复。以每天执行10次操作为例,跳码可以 保证在18年之内编 码字不会重复。编码器发送的溢出信息可 用来将惟一发 送的次数提高至超过192K。如果在发送过程中检测到有新的按钮按下,那么将立即 发生复 位,并且当前的编码字将不会完成。请注意只要 有按钮处于按下状态,松开其他按钮就不会对编码字产生任何影响;在这种情况下编码字将完成并在随后断电.4.0发送的字4.1编码字的格式Si4010 编码字由几部分组成 (见图 4-1)。每个编码 字均包含 一个占空比为 50% 的前导符、一个数据头、一 个 32 位加密 数据和一个 34 位固定数据,并在开始另一 个编码字之前还跟 有一个防护周期。 有关编码字的时 序,请参见表 8-4。 4.2编码字的构成当有按钮按下时,Si4010会发送一个66位的编码字。这一 66 位的字由固定编码部分和加密编码部分组成(见 图 4-2)。32 位的加密数据是由 4 个按钮位, 12 个识别位和 16 个 同步 计数值位生成的。仅加密部分就能提供最多 40 亿 种不同的编 码组合。34 位固定码数据是由 2 个状态位、4 个按钮位和 28 位 的序 列号组成的。固定和加密的部分组合在一起将编码 组合的数量 提升到了 7.38 x 1019。Te Te -Te .邂辑0I位周期I*4750%占空比 前尋舞TP住送的Thop4.住送的Tfikj-lllllT it m . rn rn irLTuroriL-_rnmniTg I囲4-2f编码字构成MSbVlow序列昌OVRDISC同涉计掘慣c-也、他、(1OD82S1soS3S2S1soS334 定部分过加密怖分阳人数堀位 首生煤送LSbMSbaSVlow序列号种子(J位)1状11125 僮心2也)崔*刍同穴激话所有琶菊增i入时,划I:科子G替岫空用裁=LSb5.0特殊性能5.1编码字完成编码字完成功能确保成功发送整个编码字,即便按钮在编码字 完成之前松开也是如此。如果按下按钮的时间超 过了一个编码 字的时间,将会发送多个编码字。如果在发送过程中激活另一 个按钮,当前发送将会被中止,而将使用新按钮信息开始新的 发送。5.2 LED 输出操作在正常发送过程中,LED输出为低电平。如果供电电压低于低 电压跳变点,那么在发送过程中 LED 输出将以将 约 5 Hz 的 频率交替翻转7.0 将 Si4010 集成到系统在系统中使用 Si4010 需要一个兼容的解码器。该解码 器通常 是一个带有兼容固件的单片机。通过一款固件程序,以接受来自 Si4010 的 发送并将数据流的跳码部分破译。这些程序为系统设 计 人员提供了开发解码系统的方法。7.1使接收器学习发送器在允许系统使用发送器之前,发送器必须首先被接收器 “学 习”。有几种学习策略,图 7-1 详细说明了典型的学 习序列。 每种策略的核心都在于解码器必须至少将每个 学习过的发送器 的序列号和当前的同步计数值保存在 EEPROM 中。此外,通常 解码器还会存储每个发送器 的惟一密钥。 可学习的发送器的最 大数量与可用的 EEPROM 空间有关。 发送器序列号可不加密发送,但同步计数值只能处于编 码字的 加密部分中。 通过加密信息所用的相同密钥解 密,解码器可获 得计数值。跳码算法是一种对称的分组加密算法,因此加密和解 密密钥相同,它们被统称 为密钥。编码器在生产过程中获得密 钥。解码器被编程 为具有生成密钥和其他所有需要输入到密钥 生成程序的 信息的功能,但通常不包括发送器的序列号。图 7-1 总结了典型的学习序列。解码器接收并验证第一 次发送 (第一次按下按钮时)。验证包括生成相应的密 钥、解密、通过 识别位验证密钥使用是否正确并缓存计 数值。接收并验证第二 个发送。最后,检查计数值是否与上一次连续 (按下按钮是连 续的)。如果成功完成了 学习序列,解码器就会将已被学习的发 送器的序列号、 当前同步计数值和相应的密钥保存起来。此后 在正常操 作中,就能从 EEPROM 获取密钥,而不用在每次接 收 到发送时重新计算密钥。(瞬評Jr11W1性用乍1辭糠夢定恒加密密钥 同歩讣蠡值( 退出7.2解码器的操作图 7-2 总结了常规的解码器操作。解码器等待直到接收 到发送 信息。接收到的序列号将与 EEPROM 中已被学 习的发送器的 数据表做比较,以首先确定该发送器是否 允许在系统中使用。 如果消息来自一个已被
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号