Newsgroup: it.comp.lang.delphi
Titolo: [OT]? Smart Card + Delphi

Salve a tutti,
Sto per lanciarmi (spero non dalla finestra... :) ) in una "nuova"
avventura.
Mi sono procurato un ble kit di sviluppo per Smart Card, che funge sotto
windows e linux.
La prima cosa che vorrei realizzare, è la gestione dell'accesso ad una
macchina windows 2000.
Ho cominciato a cercare un pò di documentazione, ma tutto sembra condurmi a
Crypto API
e smart card in grado di gestire certificati, codifica RSA, 3DES ed amenità
varie.
Quello di cui ho bisogno, è che al posto della finestrella di login di
windows 2000, mi appaia
la richiesta di identificarmi per mezzo di una smart card.
In primis, vorrei utilizzare una smart card abbastanza stupida (al massimo
con eeprom protetta
da un pin):
Dovendo realizzare il tutto in Delphi, c'è qualche suggerimento che potete
darmi?
(sto già smanettando con google)
grazie per il Vs aiuto.
Saluti,
Carmine

Devi sostituire MSGINA.DLL, ma non è proprio banale.
In rete cmq trovi credo un pò di tutto sull'argomento.
Ciao
Andrea

 darmi? (sto già smanettando con google)
Cerca GinaStub su msdn (
www.msdn.microsoft.com
) fino ad un po' di tempo fa
c'era del bel materiale (con sorgenti) da cui prendere spunto
Bye
--
- Carlo -

 Per la smart effettua una ricerca con Tampering su google.
Per il momento, mi è sufficiente una smart card con eeprom protetta da pin.
Magari le informazioni ce le piazzo su criptandole via sw.
Grazie ancora per la vostra disponibilità.
Saluti,
Carmine

 Magari le informazioni ce le piazzo su criptandole via sw.
Si, ma tieni conto che il problema di una smart criptata è quella che ha poi
resto facilmente apribili le varie chiavettine per il caffè etc.
Non importa il contenuto criptato, ma importa sapere che se tu "leggi" il
contenuto di quella eeprom e la riporti su un file potrai, in seguito,
continuare ad usufruirne senza scoprire il codice che c'è dietro. Diverso
sarebbe se venisse utilizzato un sistema "asimmetrico": la smart tiene parte
della chiave e l'altra parte è posseduta solo dal proprietario della stessa.
Infine posso dirti che, nella mia università, un laureando per stage si è
riscritto assieme ad un amico la msgina.
Si da il caso che questo laureando sia un mio "amico" tuttavia non so quanto
sia diponibile a "passare" le informazioni su cui ha faticato ...
--
- Carlo -

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/security/se
curity/loading_and_running_a_gina_dll.asp
Questo e' il link diretto, spiega come dare un'altra "gina" a windows (cioe'
dirgli "prendi quest'altra dll invece della standard") e cosa deve fare
specificatamente questa DLL..
Mi pare che sia un lavoro abbastanza pesante..
Non vorrei essere nei tuoi panni :P

 sia diponibile a "passare" le informazioni su cui ha faticato ...
Capisco bene il discorso tuttavia, sono curioso di sapere come ha avuto
accesso
alle informazioni, gelosamente custodite da M$ sui dettagli
dell'implementazione.
In un documento "msgina.doc" di M$ c'è descritta sommi capi l'interazione
tra winlogon e gina. C'è la documentazione delle funzioni con la relativa
interfaccia,
ed una breve descrizione di cosa facciano.
Tutto sapientemente orientato a far nascere l'idea in chi legge che: "E'
meglio se
wrappi il tutto intorno alla msgina originale, e ti limiti ad aggiungere le
tue funzionalità".
Non ho minimamente intenzione di mettermi con un debugger a livello kernel,
e tracciarmi tutti i salti mortali :) fino all'apertura del desktop
utente...
Nota curiosa: tutte le varie incarnazioni dei wrapper a cui sono approdato,
vengono
dalle università!
C'era un tizio (un certo MADSHI) che diceva di aver riscritto gina.dll in
Delphi ma il sito è sparito da un bel pò.
Stesso discorso per un'altra reincarnazione di gina (ma li scelgono davvero
a caso i nomi?? :) ).
M$: Vediamo come va a finire oggi...
Non vedo l'ora di cimentarmi nella stessa impresa dal lato Linux. Sono
curioso di vedere che tipo
di approccio hanno utilizzato.
Saltui,
Carmine

 Non vorrei essere nei tuoi panni :P
Grazie del link :) Ci sono gią passato da quelle parti, ed in effetti dice
come dare un altro vestito alla stessa gina ;)
Se si tratta solo di riscrivere ul wrapper attorno a gina, non credo sia
tutta sta fatica.
Il vero problema sorge quando la malsana (purtroppo!) idea di riscrivere
gina.dll
da 0 comincia a girarti in testa.
Saluti,
Carmine