Просмотр исходного кода

Picopass: Remove elite user dictionary from Read Card (#48)

Eric Betts 2 лет назад
Родитель
Сommit
e529b669aa
1 измененных файлов с 16 добавлено и 6 удалено
  1. 16 6
      picopass_worker.c

+ 16 - 6
picopass_worker.c

@@ -282,11 +282,10 @@ ReturnCode picopass_auth(PicopassWorker* picopass_worker) {
         return ERR_NONE;
     }
 
-    FURI_LOG_I(TAG, "Starting user dictionary attack [Elite KDF]");
-    err = picopass_auth_dict(picopass_worker, IclassEliteDictTypeUser);
-    if(err == ERR_NONE) {
-        return ERR_NONE;
-    }
+    /* Because size of the user dictionary and could introduce confusing delay
+     * to the read screen (since there is no feedback), we omit checking it.
+     * It will be checked when the user uses Elite Dict. Attack, which has a progress bar
+     */
 
     FURI_LOG_I(TAG, "Starting system dictionary attack [Elite KDF]");
     err = picopass_auth_dict(picopass_worker, IclassEliteDictTypeFlipper);
@@ -579,7 +578,18 @@ void picopass_worker_elite_dict_attack(PicopassWorker* picopass_worker) {
 
         err = rfalPicoPassPollerCheck(mac, &chkRes);
         if(err == ERR_NONE) {
-            FURI_LOG_I(TAG, "Found key");
+            FURI_LOG_I(
+                TAG,
+                "Found key: %02x%02x%02x%02x%02x%02x%02x%02x",
+                key[0],
+                key[1],
+                key[2],
+                key[3],
+                key[4],
+                key[5],
+                key[6],
+                key[7]);
+
             memcpy(pacs->key, key, RFAL_PICOPASS_BLOCK_LEN);
             pacs->elite_kdf = elite;
             err = picopass_read_card(AA1);