CRC碰撞概率 与CRC校验长度的理解
Clear["Global`*"]
prst0[n_, d_] := 1 - d!/(d^n (d - n)!); (*取值空间为d,取值范围为n*)
prst1[n_, d_] := 1 - E^(-((n (n - 1))/(2 d)));
prst0[2, 255] // N (*8 bit*)
prst0[8, 8*32] // N
prst0[8, 8*8192] // N
Plot[prst1[x, 8*32], {x, 1, 50}] (*16 bit*)
Plot[prst1[x, 8*8192], {x, 1, 800}] (*16 bit*)
Plot[prst1[128, 8*y], {y, 1000, 8192}] (*16 bit*)
看上面这二张图,
1.就是8BIT CRC8 同时错10个BIT 碰撞的概率是20% ,同时错50个BIT 碰撞的概率约是99%
2.就是16BIT CRC16 同时错200个BIT 碰撞的概率是20% ,同时错800个BIT 碰撞的概率约是99%
而不管校验的长度是多少字节,只要同时错这么多个位。不管你校验多长的字节数,CRC8的计算结果都是256BIT CRC16 是65536BIT
CRC32也同理可得:
如图所示
欢迎批评指正,我是这样理解的。
参考
1.hash碰撞的概率推导(生日攻击生日问题)_grin_star的博客-CSDN博客
2.哈希碰撞概率计算_ZTao-z的博客-CSDN博客
CRC碰撞概率 与CRC校验长度的理解相关推荐
- linux crc 函数,Linux/CRC校验
简介 CRC即循环冗余校验码(Cyclic Redundancy Check):是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定. CRC校验实用程序库在数据存储和 ...
- java String长度与varchar长度匹配理解(字符和字节长度理解)
java String长度与varchar长度匹配理解(字符和字节长度理解) string中的length()长度,返回的是char的数量,每个char可以存储世界上任何类型的文字和字符,一个char ...
- Validform自定义规则同时校验长度和判重
Validform自定义规则 背景 本页面是一个部署服务页面 上一个页面是服务列表页面 我们希望能够在在部署服务的时候,检查一下服务名是否重复 于是就需要自定义规则 代码 html部分为: <f ...
- MySQL字符集编码中,VARCHAR 字符长度与字节长度的理解
MySQL中基于 UTF-8 字符集编码,VARCHAR 字符长度与字节长度的理解 UTF-8 字符集 utf8mb4 字符集 参考 UTF-8 字符集 在 mysql 4.1 及之前早期版本中,如果 ...
- 常用的数据校验方式(奇偶,CRC,异或校验, LRC校验,累加和,MD5等校验)概念及源码
数据校验概念 数据在传输的过程中,会受到各种干扰的影响,如脉冲干扰,随机噪声干扰和人为干扰等,这会使数据产生差错.为了能够控制传输过程的差错,通信系统必须采用有效的检错方案.因此产生了数据校验. 数据 ...
- CRC(循环冗余校验) BCC校验(异或校验) 温度换算 在线计算
1,CRC(循环冗余校验)在线计算 2,BCC校验(异或校验)在线计算 3,温度换算 4,在线换算器
- matlab中crc,matlab中CRC的函数使用
先学习一下matlab中CRC函数. 语法如下: h = crc.generator('Polynomial', polynomial, 'param1', val1, etc.) 再看一个例子就比较 ...
- jsp input输入实时校验长度并提示_HotCRC未公开发布的高版本穷举输入规则(V3.02)...
HotCRC未公开发布的高版本穷举输入规则(V3.02): text ?poly-poly #init-init ^xor-xor $CRC4~64LlRr?poly#init:code,%*Nn(i ...
- java 报文长度_关于报文长度的理解
不知不觉做接口系统也有较长时间,对接口系统来说,会遇到各式各样的报文如8583报文.类8583报文及各种软件商家自定义的报文. 面对交易流程:接收请求报文---->处理报文----->接收 ...
最新文章
- 利用现有资源快速实现汉语专用分词系统
- 覆盖(override)和重载(overload)
- nginx配置图片防盗链
- Java 序列化 之 单例模式
- 关于一些blog优化
- 开发们 点广告-赚点BT币
- 华为机试HJ99:自守数(附带提速方案)
- java 命令设计模式_Java设计模式之命令设计模式
- MSN登录问题:Error 80072ee7
- ajax(3)---Conmon.js
- 怎样在电脑上面简单的记账,了解账户收支
- dw2xls已升级至pb11.5
- 奥的斯自动人行道服务器密码,奥的斯服务器中文说明21页
- 惠普179fnw打印机使用说明_惠普179fnw驱动下载
- 从一个例子看ASCII点阵字库的应用原理
- android时间显示秒,MIUI 12桌面如何显示带秒时钟?
- unity上线流程_新的Unity商店上线了
- Python采集视频数据,下载流媒体m3u8格式
- JSP智能小区物业管理系统
- google 输入栏不显示历史搜索记录方法