entropia dell'identificazione del lettore di carte bancarie online del Regno Unito

5

Nel Regno Unito è comune utilizzare una smart card e un lettore per accedere al servizio di banking online. Inserisci la carta, inserisci il PIN e recupera un codice a 8 cifre dal lettore per accedere al sito web della banca online. Si noti che non è seminato in alcun modo dalla banca, tutto ciò che serve è la carta e il PIN.

Ho sempre pensato che il codice a 8 cifre restituito non fosse molto casuale (in particolare le prime due cifre erano uguali), quindi ho iniziato a tenere traccia. Fondamentalmente il codice a 8 cifre è in aumento monotono da circa 60.000 a 90.000 ogni volta.

Questo non sembra corretto sulla base del modo in cui ho capito che funzioni. Ovviamente c'è un'entropia molto bassa nel seminare l'algoritmo di identificazione (usa solo un contatore interno sulla scheda se ho capito bene le cose) ma ho pensato che il 3DES sulla scheda avrebbe dato come risultato una sequenza di codici a 8 cifre simile al rumore.

È davvero così che dovrebbe funzionare il sistema?

    
posta holidaymonkey 30.06.2017 - 13:01
fonte

1 risposta

3

Il protocollo è discusso in Ottimizzato per fallire: Lettori di schede per il banking online - Drimer, Murdoch e Anderson 2009

Il documento mostra le immagini dei lettori di Natwest & Barclays oltre a menzionare HBOS. Visivamente sono identici ai lettori utilizzati da Nationwide, Coop e sono sicuro che altri. Per quanto ne so, questi dispositivi non sono cambiati dal 2009 - ne ho uno di allora che funziona ancora.

Il filtro bit sembra variare in base al banco. I primi bit sembrano essere il "codice di identificazione CID (Cryptogram Identification Data)" che immagino sia costante tra le transazioni. I bit successivi (il cui numero varia) sembrano provenire dal "contatore delle transazioni di applicazione (ATC)", che si prevede di incrementare con ciascuna transazione. Mi aspetto che questo sia il luogo da cui deriva il grande incremento che vedi.

Anche i dati dell'applicazione dell'emittente non sono una fonte di entropia.

Questo lascia "Application Cryptogram (AC)". Questo è un MAC (una forma di hash - solitamente 3DES CBC) che coinvolge una chiave di sessione sulla carta. Sembra che vengano presi 10-20 bit che sarebbero la fonte primaria di entropia.

    
risposta data 19.12.2017 - 17:30
fonte

Leggi altre domande sui tag