Domanda:
Cos'è una buona Smartcard per uso domestico?
SEJPM
2015-09-12 21:32:28 UTC
view on stackexchange narkive permalink

Sono sempre alla ricerca di modi per migliorare la mia sicurezza in Internet. Dato che sono anche un programmatore e in qualche modo attivo su InfoSec e Crypto, ho deciso che una smart card è la strada da percorrere.

cercando quindi una smart card (o un token USB) che abbia le seguenti qualifiche:

  • Supporto per crittografia a curva ellittica (256 bit +)
  • Supporto per RSA (2048 bit +)
  • Archiviazione per almeno 10 chiavi di ciascuna di esse
  • FIPS 140-2 Livello 3 certificazione (preferita) o alta certificazione Common Criteria (EAL 4+)
  • Dovrebbe essere acquisita per privati ​​(non aziende)
  • Driver ( PKCS # 11 / CSP / CNG) supporto per Windows 7 e Windows 10 (entrambi x64), direttamente o tramite OpenSC.
  • Supporto per il backup sicuro della chiave e il ripristino della chiave in caso di disastro (ad es. esportazioni di chiavi incartate insieme a un modo per scartare su una scheda fisica diversa)
  • Per le schede effettive: interfacce fisiche standard ( cioè non sono necessari lettori di schede specifici del fornitore)

po gli int includono:

  • Supporto per curve ECC personalizzate
  • Supporto nativo per Curve25519 / Curve448
  • Supporto per RSASSA-PSS o ECDSA (senza che il software esegua l'hashing)
  • Per le carte effettive: operatività senza contatto
  • Prezzo basso (< $ 100 per pezzo)
  • Qualificazione per firme elettroniche qualificate (es firme legalmente vincolanti), preferibilmente secondo il diritto tedesco
Aggiungerò anche Athena SCS IDProtect LASER in un secondo momento, una volta terminato il mio test con esso, se pensi di acquistarlo: Tieni presente che non puoi usare tastiere hardware (ad esempio il pinpad del tuo lettore di schede) con esso .
Voglio anche come prerequisito, la possibilità di utilizzare l'API crittografica con esso.
@Michael Questo è coperto da "supporto driver".
Non necessariamente, alcuni prodotti sono offerti con driver non firmati - un'opzione non per me. @SEJPM
@Michael bene, i Gemaltos e gli Athenas hanno i driver firmati, solo l'SC-HSM che effettivamente prende di mira Linux e non Windows non ha la firma del driver corretta.
Due risposte:
#1
+13
Thomas Pornin
2016-04-19 05:29:03 UTC
view on stackexchange narkive permalink

Fatta eccezione per i requisiti di backup, Gemalto IDPrime MD sembra soddisfare le tue esigenze. Alcuni avvertimenti:

  • Il massimo è di 2048 bit per RSA; per ECC, supporta solo tre curve NIST standard (P-256, P-384 e P-521), non curve personalizzate.
  • Per esperienza, a livello APDU, l'operazione di firma è davvero un comando fare un esponenziale modulare con la chiave privata; quindi, l'hardware è compatibile con tutti i tipi di RSA (PKCS # 1 v1.5, PSS ...) ma l'hashing e il riempimento vengono eseguiti sul computer host.
  • L'MD 830 è FIPS 140- 2 lvl 3, l'MD 840 è EAL 5+. Non sembra esserci alcun modello certificato per entrambe le sponde dell'Atlantico.
  • Le carte sono disponibili come rettangoli di plastica di dimensioni standard, nominalmente compatibili con tutti i lettori standard; ma puoi anche ottenerli nel formato "IDBridge" che è un lettore di schede USB con una scheda al suo interno, di piccole dimensioni.
  • Le singole schede possono essere acquistate da cryptoshop ma non è chiaro esattamente cosa ottieni; ci sono schede IDPrime MD e IDPrime .NET che utilizzano lo stesso packaging e queste ultime non supportano ECC (solo RSA). Il lato positivo è che il prezzo individuale sarà di circa 20 €.
  • Le carte dovrebbero essere riprogrammabili con applicazioni personalizzate (in un sottoinsieme di .NET) ma non l'ho mai provato e non so se richiede licenze extra o cose del genere. Penso che le certificazioni non si estendano alle carte che sono state riprogrammate.

Per quanto riguarda i backup, sono pronto ad affermare che non vuoi backup per le chiavi di firma. In effetti, la presenza di un backup per una chiave di firma può solo abbassare il valore legale di una firma (ma poi, questo solleva la questione del perché dovresti voler firmare qualcosa; una firma che generi è un'arma legale puntata contro te stesso) .

Per le chiavi di crittografia, i backup sono necessari per evitare la perdita di dati e quindi non esiste una soluzione davvero buona con queste schede, se si desidera che le chiavi private non esistano al di fuori dell'hardware certificato. Per uso personale, anche per i paranoici, si potrebbe organizzare una cerimonia di generazione delle chiavi in ​​cui si generano le chiavi su un computer offline, avviato su un CDROM e senza hard disk; il computer quindi spingerebbe la chiave in 4 o 5 smart card, che sarebbero tanti backup.

Nota per l'acquirente interessato: un amico ha effettivamente acquistato una di queste schede e ha avuto enormi problemi a farla funzionare correttamente sotto Linux, poiché apparentemente anche la libreria PKCS # 11 non è stata compilata. Tutto ha funzionato anche se apparentemente sotto Windows. Altri negozi con queste carte sono [SmartCardFocus] (http://www.smartcardfocus.com/) e [Gemalto Webstore] (https://webstore.gemalto.com/INTERSHOP/web/WFS/GEMALTO-B2CCORP-Site/ en_US / - / EUR / Default-Start).
Mi interessava acquistare questa smartcard da utilizzare su Linux e Windows. Ma mi è stato detto che la licenza Gemalto SafeNet è necessaria per ottenere il driver su Linux. Il rivenditore Gemalto che ho contattato mi ha detto che dovevo acquistare almeno 25 licenze. Ho creato un thread qui per confermare o meno quello che mi ha detto il rivenditore: https://security.stackexchange.com/questions/206573/does-opensc-required-proprietary-gemalto-safenet-middleware-to-support-gemalto-iSo questa carta non sembra essere adatta per l'uso domestico se viene confermata.
#2
  0
SEJPM
2016-06-20 03:10:45 UTC
view on stackexchange narkive permalink

Poiché ritengo che alcune persone potrebbero non essere soddisfatte dalla raccomandazione di Thomas sulle carte Gemalto IDPrime, volevo offrire un'altra opzione qui:

Smartcard-HSM

  • Offre RSA a 1024-2048 bit o ECC fino a 320 bit con tutte le curve NIST e Brainpool precaricate e può persino supportare curve personalizzate (sebbene io ' non ho una fonte per questo al momento)
  • Supporta le firme ECDSA e RSA e consente l'hashing basato su scheda SHA-1 (ECDSA) e RSA basato su SHA1 / -256 / -384 / -512 pre-hashing ("PKCS", potrebbe essere PKCS # 1 v1.5)
  • Il sistema operativo è certificato CC EAL5 +, la piattaforma del chip è solo EAL2 +, il TOE può essere trovato qui
  • Viene fornito come fattore di forma della scheda standard (contatto, contactless e doppia interfaccia), come micro SD con elemento sicuro e 1 GB di memoria normale e come token USB
  • Il l'unico rivenditore al momento è card-o-matic, le singole carte costano circa 20 € a pezzo, i gettoni si aggirano intorno agli 80 € em ore
  • Il supporto del driver è disponibile tramite OpenSC, supporta Windows CAPI e PKCS # 11, il driver del dispositivo (per Windows) viene fornito in più e richiede la disabilitazione dei controlli della firma del driver per l'installazione, la libreria OpenSC PKCS # 11 ha i suoi limiti, ad esempio solo un'applicazione può accedere al token allo stesso tempo
  • Se hai inizializzato la carta con una chiave specifica (chiamata device-key-encryption-key (DKEK)) allora tu sarà in grado di eseguire backup delle chiavi fuori scheda, altrimenti no

TL; DR: potrebbe essere un po 'costoso e un po' scomodo di tanto in tanto, e un po 'limitato nel livello di sicurezza, ma se i backup, il brainpool e / o un'elevata certificazione CC sono ciò che stai cercando, questa potrebbe essere la scelta giusta.

Va notato che ho contattato il produttore in merito alla firma del driver e ha risposto che non ne vale la pena perché si rivolgono principalmente a Linux e sistemi embedded e non a Windows.


Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...