unleashed-firmware/applications/external/picopass/helpers/iclass_elite_dict.h
Eric Betts e22668e196
Picopass standard KDF dictionary (#2478)
* Split iclass dictionaries based on KDF
* Allow cancelling during key test

Co-authored-by: あく <alleteam@gmail.com>
2023-03-15 21:35:11 +09:00

30 lines
857 B
C

#pragma once
#include <stdbool.h>
#include <storage/storage.h>
#include <lib/flipper_format/flipper_format.h>
#include <lib/toolbox/stream/file_stream.h>
#include <lib/toolbox/stream/buffered_file_stream.h>
typedef enum {
IclassEliteDictTypeUser,
IclassEliteDictTypeFlipper,
IclassStandardDictTypeFlipper,
} IclassEliteDictType;
typedef struct IclassEliteDict IclassEliteDict;
bool iclass_elite_dict_check_presence(IclassEliteDictType dict_type);
IclassEliteDict* iclass_elite_dict_alloc(IclassEliteDictType dict_type);
void iclass_elite_dict_free(IclassEliteDict* dict);
uint32_t iclass_elite_dict_get_total_keys(IclassEliteDict* dict);
bool iclass_elite_dict_get_next_key(IclassEliteDict* dict, uint8_t* key);
bool iclass_elite_dict_rewind(IclassEliteDict* dict);
bool iclass_elite_dict_add_key(IclassEliteDict* dict, uint8_t* key);