text and style. Suspect string formatter used "%*.*s" , we normally use "%.*s"
[RRG-proxmark3.git] / doc / loclass_notes.md
blob43398f749f78d5eecf22cafa6a9a9989221c417b
1 # Notes about the LOCLASS attack
2 <a id="top"></a>
4 # Table of Contents
5 - [Notes about the LOCLASS attack](#notes-about-the-loclass-attack)
6 - [Table of Contents](#table-of-contents)
7 - [Unit testing](#unit-testing)
10 This document is primarily intended for understanding `hf iclass loclass` and files used with it.
12 LOCLASS aim is to recover the used masterkey for that specific reader configured in Elite mode / High Security mode.
14 LOCLASS, is a two part attack. First is the online part where you gather needed information from the reader by presenting a carefully selected CSN and save the responses to file.  For the first part you run `hf iclass sim -t 2` and take notice of the saved filename.
16 The second part is offline,  where the information gathered from the first step is used in a series of DES operations to figure out the used 
17 masterkey.
18    run `hf iclass loclass -f abc.bin`
20 If you don't have access to a iClass SE reader configured in Elite mode there is a test file which you can use.
21    `hf iclass loclass -f iclass_dump.bin` 
24 # Unit testing
25 ^[Top](#top)
27 In order to verify that loclass is actually working, there is a "unit" test mode.
28 run `hf iclass loclass --test`.
30 This test mode uses two files. 
32 - `iclass_dump.bin`
33    this is a sample file from `hf iclass sim -t 2`, with complete keytable recovery, using 128 carefully selected CSN and the file contains the MAC results from reader. 
34 - `iclass_key.bin`
35    this is file shall contain the legacy masterkey, AA1 key. loclass uses it to verify that permutation / reversing / generation of key is correct.