mbizzaro ha scritto:
Adesso vogliono piazzare un Totem
forte :D perché allora non usare un lettore di codici a barre al posto della smartcard? Sarebbe molto più semplice: prima prepari la grafica per i due lati di una tessera e da un lato stamperai anche il codice a barre. Poi, pieghi a metà il foglio, lo ritagli e lo plastifichi. Esistono anche metodi più professionali, ovviamente, ma è una soluzione anche molto economica.
mbizzaro ha scritto:
contiene username + password + credito del socio
mmh, no, non metterei sia username che password. Infatti, se la tessera venisse persa, chiunque potrebbe accedere al credito residuo semplicemente introducendola.
La tessera, secondo me, deve trasmettere soltanto lo username e può essere lo stesso username che gli utenti utilizzano quando accedono da web oppure può essere un codice casuale assegnato all'utente. Infatti un codice a barre non è altro che una sequenza di caratteri alfanumerici e quando il lettore lo legge invia semplicemente questi caratteri (più un "invio" finale) alla casella di testo che ha il focus, proprio come se fossero stati digitati dalla tastiera.
Potresti usare il code39:
http://en.wikipedia.org/wiki/Code_39Volendo automatizzare l'emissione delle nuove tessere potresti, con le GDI+, scrivere sull'immagine contenente la grafica base della tessera col font Code39 che trovi su internet.
Io la vedo così: letto il codice, l'utente dovrà poi digitare un pin che lo abiliterà all'uso dei servizi. Pensaci: in fondo questo è il sistema usato più comunemente, dal noleggio dei film al bancomat.
Soprattutto il credito residuo deve essere memorizzato al sicuro nel database della tua applicazione.
Usare una smartcard, invece, non solo sarebbe più dispendioso ma è anche impossibile in questo caso perché non puoi abilitare IIS a ricevere i certificati client che esse conterrebbero.
Se si trattasse di un'applicazione per Windows sarebbe diverso perché, tramite delle API, potresti accedere direttamente alla memoria della smart card per leggerne i dati. Invece, siccome sei in un'applicazione web, sei "chiuso" all'interno del browser e non hai accesso diretto alla smart card ma ricevi semplicemente il certificato client che essa conterrebbe.
Potresti realizzare una maschera di login realizzata con Windows Forms o WPF che raccoglie i dati e dietro le quinte effettua chiamate web... ma perché complicarsi la vita?
Secondo te è fattibile usare codici a barre? Trova un lettore che sia fisso al totem, altrimenti con uno manuale c'è rischio che cada per terra e si roma dopo due giorni.
ciao,