Newsgroup: it.comp.sicurezza.crittografia
Titolo: securID RSA (mediolungo)

la mia banca ha deciso di dotarmi di questo bel giocattolino
http://www.unicreditbanca.it/web/io/opero/viainternet/sicurezza/?idc=2257
che nella versione no brand :P sarebbe
http://www.rsasecurity.com/node.asp?id=1158
innanzitutto non ho ben capito come funzia, nel senso è basato sul tempo..
ma la sincronizzazione tra l'oggetto in questione ed il server come può
essere precisa mica contiene un'orologio atomico :P
infine essendo che da quel poco che ho capito è moolto sicuro essendo anche
che sul sito rsa c'è questa simpatica applicazione
http://www.rsasecurity.com/node.asp?id=2520
come potrei usarla? nel senso tutto starebbe nel farmi capire il
funzionamento dell'aggeggio, crea tramite un'algoritmo dei codici numerici
basati sull'ora in cui li ha generati ed una combinazione di questo numero
con il pin personale permette l'autenticazione, quindi un qualsiasi token
andrebbe bene? oppure hanno una specie di numero seriale univoco?
e poi esso genera un numero n di chaivi oppure ne puo' generare un numero
infinito?
scusate per leprobabili ovvietà ma i paper che ho scaricato non mi hanno
illuminato piu di tanto e nemmeno le ricerche effettuate e poi mi son detto
basta lurkare :P
ciao e grazie :)

 infinito?
Finche' dura la batteria, suppongo.
Alessandro.

 essere precisa mica contiene un'orologio atomico :P
Una cosa simpatica.
Non so come funzia ma ti dico come mi aspetto che funzioni, deducendo dalle
poche info che traspaiono dalla pubblicita'. Enfatizzo che vengo a cono-
senza del prodotto solo ora da te e quindi NON SO come funziona.
Provo a inventarlo io.
Parto dalle deduzioni.
Sul sito RSA dicono che non e' necessaria alcuna manutenzione, neppure per
cambiare la batteria, cio vuol dire che e' a esaurimento. Naturalmente puo'
durare molto piu' di un orologio al quarzo perche' il display immagino lo
accendo solo a richiesta, quindi e' probabile che duri anche piu' di 5
anni. Bene. Quindi si puo' ipotizzare un piccolo orologio, non necessa-
riamente di grande precisione e neppure settato sull' ora di qualche fuso
orario, solo un contatore che incrementa con i ticks di un quarzo.
Bassisimo
consumo quindi, fino a che non accendi il display.
Dalla animazione flash mi sembra di aver capito che il passcode e'
l' unione del tuo PIN con il codice generato che chiamano tokencode.
Ora, il PIN puo' essere usato come chiave crittografica per il contatore
di minuti insieme a un codice di controllo.
Quando il sistema di autenticazione riceve la login, decifra con il PIN
che lui conosce  la one-time-password e ottiene il tuo contatore
attuale, che anche se non e' l' ora attuale, puo' andare solo in avanti,
mediande il codice di controllo verifica che la decrittografia abbia
prodotto un datagramma valido e se si' accedi ai servizi e il sistema
di autenticazione si segna l' ultimo valore del contatore all' ultima
login. Il codice e quelli piu' vecchi non potranno piu' essere usati.
(tu che ce' l' hai puoi provare: genera piu' passcode es. 10 e te li segni
in sequenza a come li hai generati. Aspetti 2 ore e usi il quinto generato.
se ancora funziona vuol dire che non e' invalidato dal trascorrere del
tempo, ma il suo uso invalida i primi quattro. verifica che i primi quattro
non siano piu' validi per login. Verifica che il decimo sia ancora valido.
Se si verifica che quelli dal sesto generato al nono generato NON siano
piu' validi.)
Sto solo facendo delle ipotesi sia chiaro!! Non so' se e' proprio cosi'!!
Praticamente lo sto' reinventando. Non ti fidare di cio' che segue.
Le perplessita' che mi vengono sono solo sull' esiguo numero di cifre che
vedo nella figura. Con 6 cifre posso avere in teoria 999999 minuti
quindi codici per 2 anni, ma ipotizzando che alcuni bits dovrebbero essere
usati come codice di controllo (es 6 bits) i 20 bits necessari per
rappresentare 6 cifre decimali divengono 14 quindi per 16384 codici
diversi. Quindi anche se il dispositivo e' in grado di generare un codice
al minuto, non dovrebbe sprecare codici se non effettivamente richiesti.
16000 codici solo sufficienti per una login all' ora per 2 anni.
quindi e' probabile che il divisore di frequenza del quarzo non faccia
incrementare direttamente il contatore incrementale, ma semplicemente
armi un flag che abilitera' l' incremento del contatore alla pressione
di un bottone (ma c' e' il bottone o e' sempre acceso?) cosi da non 
"spararsi tutte le carcucce"
Si possono fare varie ipotesi su come funzioni.
Magari illustraci come lo stai usando.
ciao
Roberto
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 l' unione del tuo PIN con il codice generato che chiamano tokencode.
esatto il codice e' una combinazione dei due

serve solo per le transazioni quando devi farne una ti chiede di inserire il
codice, a dir la verita' non ne sono ancora in possesso sul sito dice meta'
novembre :P altrimenti avrei le idee piu chiare, che sarebbe, se puo'
generare un numero infinito di codici lo potrei sfruttare ad uso personale
per autenticazioni varie.
Ti ringrazio per la risposta appena ne entrero' in possesso postero' la mia
recensione :)

test wrote:

il token e' valido per 5 anni ma io volevo sapere appunto, se io per ipotesi
genero codici a caso poi li invalido?
La cosa interessante sarebbe appunto usarlo per 'scopi' personali, che so'
per l'autenticazione sul mio PC :P
Ma come ho gia' detto a Roberto C non ne sono ancora in possesso, ho postato
in anticipo per eccessiva smania di capire, e' un'oggetto che avevo gia'
visto in qualche contesto qualche anno fa' ma non ricordo quale, forse un
film.., se effettivamente avessi aspettato di averlo molte domande non le
avrei fatte, credo che almeno due righe di istruzioni le diano, del tipo di
non giocherellarci schiacciando il pulsante per indovinare le combinazioni
del lotto :P, che comunque essendo che si usa solo per le transazioni 6
cifre in 5 anni fanno comunque un bel giro.
La cosa che non sappiamo ancora e' se ha un numero seriale che ha un nesso
con il codice, non credo, anche se in effetti se un numero lo genera solo
una volta non posso usare un'altro token che magari mi genera un numero che
risulta gia' generato dal mio quindi invalidato.
comunque sia ripeto che appena lo vado vi faccio sapere e grazie :)

 
Per l'accesso ad 
http://www.e-family.it
 si usa un token simile. Per 
l'accesso viene richiesto il nome utente, il codice del token (e' 
stampato sul retro) ed il numero generato dal token. Non viene fatta 
alcuna raccomandazione riguardo all'uso del token (salvo forse non 
lasciarlo in mani sbagliate e denunciarne lo smarrimento).
La prima osservazione che faccio e' che il numero di serie del token 
dovrebbe essere virtualmente inutile (dovrebbe bastare il nome utente 
per sapere quale sia il numero di serie del token che gli e' stato 
assegnato).
La seconda e' che il numero di serie non dovrebbe essere significativo 
ai fini del calcolo fatto dal token, altrimenti anziche' essere stampato 
in modo visibile sul retro dovrebbe rimanere ben nascosto. La mia 
speranza e' che serva solo per identificare fisicamente il token, mentre 
l'associazione tra questo e la chiave sulla quale si basa l'algoritmo di 
generazione dei codici sia nota solo a chi deve verificare il codice.
Alessandro.

 generazione dei codici sia nota solo a chi deve verificare il codice.
si effettivamente anche io penso che il numero seriale sia solo per
identificare fisicamente il token senza aver rilevanza nei codici, che
comunque non significa poter usare un'altro token poiche' resta la
possibilita' che esso generi un codice gia' usato, e allo stesso modo non
credo che lo smarrimento dello stesso possa pregiudicare la sicurezza
dell'intero sistema, almeno credo..

 Vuoi riciclare lo stesso token per autenticazioni custom? 
-cut-
qualcosa di questo tipo ad esempio
http://www.joerg.cc/cgi-bin/wiki.pl?MySecurID-page
bello vero?
ho trovato anche questo che spiega anche, secondo loro, i vantaggi dei
dispositivi la cui chiave non e' generata in base al tempo
http://www.cryptocard.com/index.cfm?PID=377&PageName=CRYPTOCard%20Tokens
-cut-
buonanotte :)

 
Cercavo di spiegarti che se anche conoscessi l'algoritmo probabilmente 
non ti basterebbe.
Alessandro.

 
Non ho trovato dove lo dice, comunque dal punto di vista della sicurezza 
non mi sembra un vantaggio.
Alessandro.

 
Secondo me invece il valore potrebbe essere un hash calcolato su un 
valore segreto contenuto nel token e l'"ora" al suo interno. Il sistema 
di autenticazione conosce il valore segreto e calcola gli hash validi 
per in orari intorno a quello corrente, se ne trova uno corrispondente 
allora l'autenticazione ha successo.
In questo modo, volendo, sarebbe possibile tenere traccia di un 
eventuale sfasamento progressivo dell'orologio del token rispetto a 
quello del server e tenerne conto per i tentativi di accesso futuri.
Alessandro.

 potenzialmente molto lunga di valori non validi.
Infatti avevo ipotizzato che dei 20 bits necessari 16 dovrebbero essere il
contatore incrementale e 6 una specie di CRC ridotto del concatenamento
di questo con user  e pin e pattern a piacere. Sparando crittogrammi a
caso e molto probabile azzeccarne uno  maggiore di quello usato dal
legittimo proprietario, ma far portare il calcolo pari il calcolo del
"CRC" (o mini hash o MAC) e' molto piu' improbabile. Per questo
si sacrifica l' ordinalita' dei 20 bits (sempre che sia come dico io),
per dare spazio al codice di controllo di integrita'.
Secondo questo scenario, non hai codici da 000000 a 999999 cioe'
un milione, ma solo 2 pow 14 cioe' 16384. Magari un sistema patended e'
piu' astuto pero'.
Potremo fare altre considerazioni quando Dantez ci dara' altri input.
Spero presto: ora sono veramente curioso.
Ciao
Roberto.


 
Io ho il token di e-family, ho preso diversi codici a distanza di tempo 
e, usandoli nell'ordine in cui sono stati prodotti e ha accettato solo 
il piu' recente.
Alessandro.

test wrote:

a be' ma questo e' sicuro, intendevo dire che il sw deve avere l'algoritmo
altrimenti come potrebbe convalidare la chiave

 il piu' recente.
Questo e' veramente sorprendente: e l' ultimo generato era prodotto nello
stesso minuto dell' uso o a distanza di tempo? Questo per sapere
definitivamente se la validita' delle chiave dipende dal tempo reale o no.
Per me e Metafisica!
Aspetto di saperne di piu'.
