Mifare Classic的详细破解,含理论、实践、源码

Mifare Classic在08年的时候就已经被破解。一直以来都想实操一下,但是很有不务正业的嫌疑。

最近有朋友问mifare的3次握手具体算法,于是google了一番,总结如下:

  1. Practical Attacks on the MIFARE Classic

    • 英国伦敦帝国大学的一份paper,61页,2009年。貌似还是我国武大学生。其中详细介绍了破解的方方面面。基本上理论、软件、硬件、实操都可以参照实施了。其列出的参考文献链接也非常丰富,涵盖了本博文列出的所有链接。
  2. Dismantling MIFARE Classic
    • 荷兰Radboud大学,详细介绍了Mifare Classic的Crypto1算法。偏理论。也分析了该算法的弱点,给出了攻击方法。
  3. Crypto1
    • 维基百科的算法页面
  4. Crapto1
    • Open implementations of attacks against the crypto1 cipher
    • 开源的攻击代码,C语言
  5. Proxmark 3
    • 配套的攻击设备,其中一种
    • 用普通PCSC读卡器也可以攻击,方法不一
    • 使用方法可以去freebuf看视频
  6. 智能卡面临低廉破解威胁 看MC的前缘今世
    • 一篇相关的新闻报道,可以看看Mifare Classic的使用广泛程度。
  7. 某公司员工卡金额校验算法破解
    • 乌云上的Mifare Classic的破解实例,BAT中的某家公司
  8. RadioWar
    • RadioWar专注研究无线类安全方面的团队,我们主要专注于研究2.4GHz无线网络安全、RFID安全、NFC安全以及移动终端等等。
    • 他们还开了淘宝店!!!
    • 生财有道啊O_O

总结: Mifare Classic的破解,涉及到算法知识并不浅显。 网上很多破解介绍只不过是各种对卡一无所知的小白的操作过程流水账而已。 建议还是多看看原始出处的论文。

时间: 2024-11-07 02:15:26

Mifare Classic的详细破解,含理论、实践、源码的相关文章

.NET开发邮件发送功能的全面教程(含邮件组件源码)

ref: http://www.cnblogs.com/heyuquan/p/net-batch-mail-send-async.html 今天,给大家分享的是如何在.NET平台中开发"邮件发送"功能.在网上搜的到的各种资料一般都介绍的比较简单,那今天我想比较细的整理介绍下: 1)         邮件基础理论知识 2)         邮件发送相关.NET类库 3)         介绍我开发的一个发送邮件的小组件(MailHelper) 4)         MailHelper组

集合之HashSet(含JDK1.8源码分析)

一.前言 我们已经分析了List接口下的ArrayList和LinkedList,以及Map接口下的HashMap.LinkedHashMap.TreeMap,接下来看的是Set接口下HashSet和LinkedHashSet,其实在分析完了HashMap.LinkedHashMap之后,再来看HashSet和LinkedHashSet就会非常简单. 二.hashSet的数据结构 因为hashSet的底层是基于hashMap或linkedHashMap的(new hashSet的时候可以指定),

集合之LinkedHashSet(含JDK1.8源码分析)

一.前言 上篇已经分析了Set接口下HashSet,我们发现其操作都是基于hashMap的,接下来看LinkedHashSet,其底层实现都是基于linkedHashMap的. 二.linkedHashSet的数据结构 因为linkedHashSet的底层是基于linkedHashMap实现的,所以linkedHashSet的数据结构就是linkedHashMap的数据结构,因为前面已经分析过了linkedHashMap的数据结构,这里不再赘述.集合之LinkedHashMap(含JDK1.8源

集合之TreeSet(含JDK1.8源码分析)

一.前言 前面分析了Set接口下的hashSet和linkedHashSet,下面接着来看treeSet,treeSet的底层实现是基于treeMap的. 四个关注点在treeSet上的答案 二.treeSet的数据结构 因为treeSet的底层是基于treeMap的,所以treeSet的数据结构就是treeMap的数据结构:红黑树,因为前面已经分析过了treeMap的数据结构,这里不再赘述.集合之TreeMap(含JDK1.8源码分析). 三.treeSet源码分析-属性及构造函数 3.1 类

Navi.Soft20.WebMVC4操作手册(含EasyUI组件源码)

阅读导航 Navi.Soft20.WebForm操作手册http://www.cnblogs.com/xiyang1011/p/4049711.html Navi.Soft20.WinForm操作手册http://www.cnblogs.com/xiyang1011/p/3972118.html Navi.Component.工作流开发手册(含示例)http://www.cnblogs.com/xiyang1011/p/3820038.html Navi.Component.DataWindow

最佳实践 | 源码升级gcc

1.下载升级包所需软件 boost_1_60_0.tar.gz http://www.boost.org/users/history/version_1_60_0.html gcc-4.8.0.tar.gz http://ftp.gnu.org/gnu/gcc/gcc-4.8.0/ 必须 isl-0.11.1.tar.gz http://isl.gforge.inria.fr/ 必须 mpc-1.0.3.tar.gz http://ftp.heanet.ie/mirrors/gnu/mpc/ 必

Django对中间件的调用思想、csrf中间件详细介绍、Django settings源码剖析、Django的Auth模块

目录 使用Django对中间件的调用思想完成自己的功能 功能要求 importlib模块介绍 功能的实现 csrf中间件详细介绍 跨站请求伪造 Django csrf中间件 form表单 ajax csrf相关装饰器 在CBV上加csrf装饰器 Django settings源码剖析及模仿使用 Django settings源码剖析 查看内部配置文件 模仿使用 Auth模块 auth简介 auth模块常用方法 创建用户 校验用户名和密码 保存用户登录状态 判断当前用户是否登录 校验原密码 修改密

Mediator中介者模式(含个人Demo源码)

重新温习GOF23到第18个中介者模式了,感觉还是蛮不错的,写了一个小小的Demo来解释下他们之间的关系. 中介者模式其实就相当于:中介,租房人,还有房主三者之间的关系. 房主A,租房人B首先联系了中介,在中介那里记名字了. 房主A有空房了,发条消息给中介,中介将A有空房的消息发给其他人. 在此之上,demo做了小小扩充,当又有租房人C联系中介,B发了条消息,A与C都会收到B的消息. #include <iostream> #include <vector> using names

【jsp】JSP 读取表单数据(含可运行源码.jsp&amp;&amp;.html)

<a href="http://www.runoob.com/jsp/jsp-form-processing.html">来源</a> 1 getParameter(): 使用 request.getParameter() 方法来获取表单参数的值. 2 getParameterValues(): 获得如checkbox类(名字相同,但值有多个)的数据. 接收数组变量 ,如checkbox类型 3 getParameterNames():该方法可以取得所有变量的名