Fråga:
Vad är ett bra smartkort för hemmabruk?
SEJPM
2015-09-12 21:32:28 UTC
view on stackexchange narkive permalink

Jag letar alltid efter sätt att förbättra min säkerhet på internet. Eftersom jag också är programmerare och lite aktiv på InfoSec och Crypto bestämde jag mig för att ett smartkort är vägen att gå.

Jag är letar därmed efter ett smartkort (eller en USB-token) som har följande kvalifikationer:

  • Stöd för kryptografi av elliptisk kurva (256 bitar +)
  • Stöd för RSA (2048 bitar +)
  • Lagring för minst 10 tangenter av var och en
  • FIPS 140-2 Nivå 3 certifiering (föredragen) eller hög Common Criteria-certifiering (EAL 4+)
  • Bör vara önskvärt för privatpersoner (icke-företag)
  • Förare ( PKCS # 11 / CSP / CNG) stöd för Windows 7 och Windows 10 (båda x64), antingen direkt eller via OpenSC.
  • Stöd för säker nyckelbackup och nyckelåterställning i händelse av en katastrof (t.ex. exporterad nyckelexport tillsammans med ett sätt att packa upp på ett annat fysiskt kort)
  • För faktiska kort: Standard fysiska gränssnitt ( dvs inga leverantörsspecifika kortläsare behövs)

Ej obligatorisk po ints inkluderar:

  • Stöd för anpassade ECC-kurvor
  • Native support för Curve25519 / Curve448
  • Support för RSASSA-PSS eller ECDSA (utan att programvaran gör hashing)
  • För faktiska kort: Kontaktlös funktion
  • Lågt pris (< $ 100 per bit)
  • Kvalificering för kvalificerade elektroniska signaturer (dvs. juridiskt bindande underskrifter), helst enligt tysk lag
Jag lägger också till Athena SCS IDProtect LASER vid ett senare tillfälle, när jag är klar med min testning med den, om du överväger att köpa den: Observera att du inte kan använda hårdvarutangentbord (t.ex. din kortläsares pinpad) med den .
Jag vill också som en förutsättning, möjligheten att använda crypto API med det.
@Michael Det täcks av "drivrutinssupport".
Inte nödvändigtvis, vissa produkter erbjuds med drivrutiner som är osignerade - ett inget alternativ för mig. @SEJPM
@Michael väl, Gemaltos och Athenas har signerade drivrutiner, bara SC-HSM som faktiskt riktar sig till Linux och inte Windows har inte rätt drivrutinssignatur.
Två svar:
Thomas Pornin
2016-04-19 05:29:03 UTC
view on stackexchange narkive permalink

Förutom säkerhetskopieringskraven verkar Gemalto IDPrime MD passa dina krav. Några försiktighetsåtgärder:

  • Den toppar vid 2048 bitar för RSA; för ECC stöder den endast tre standard NIST-kurvor (P-256, P-384 och P-521), inte anpassade kurvor.
  • Från erfarenhet, på APDU-nivå, är signaturoperationen verkligen ett kommando att göra en modulär exponentiering med den privata nyckeln; alltså är hårdvaran kompatibel med alla typer av RSA (PKCS # 1 v1.5, PSS ...) men hashing och padding görs på värddatorn.
  • MD 830 är FIPS 140- 2 nivå 3, MD 840 är EAL 5+. Det verkar inte finnas någon modell som är certifierad för båda sidor av Atlanten.
  • Korten finns som standardstorlekar av plast, nominellt kompatibla med alla standardläsare; men du kan också få dem under "IDBridge" -formatet, som är en USB-kortläsare med ett kort i, i liten storlek.
  • Enskilda kort kan köpas från cryptoshop men det är lite oklart exakt vad du får; det finns IDPrime MD och IDPrime .NET-kort som använder samma förpackning, och de senare stöder inte ECC (endast RSA). På den ljusa sidan kommer individuellt pris att vara cirka 20 €.
  • Korten ska vara omprogrammerbara med anpassade applikationer (i en delmängd av .NET) men jag har aldrig provat det och jag vet inte om det kräver extra licenser eller sådant. Jag tror att certifieringarna inte omfattar kort som har omprogrammerats.

När det gäller säkerhetskopior är jag redo att hävda att du inte vill ha säkerhetskopior för signaturnycklar. Faktum är att närvaron av en säkerhetskopia för en signaturnyckel bara kan sänka det legala värdet av en signatur (men då väcker det frågan om varför du skulle vilja signera någonting; en signatur du genererar är ett lagligt vapen som pekar tillbaka på dig själv) .

För krypteringsnycklar är säkerhetskopior nödvändiga för att undvika dataförlust, och då finns det ingen riktigt bra lösning med dessa kort, om du vill att privata nycklar ska aldrig existera utanför den certifierade hårdvaran. För personlig användning, även för paranoid, kan du ordna en nyckelgenereringsceremoni där du genererar nycklarna på en offline-dator, startad över en CDROM och utan hårddisk; datorn skulle sedan trycka på nyckeln i fyra eller fem smartkort, vilket skulle vara så många säkerhetskopior.

Obs för den intresserade köparen: En vän köpte faktiskt ett av dessa kort och han hade stora problem att få det att fungera ordentligt under Linux, eftersom till och med PKCS # 11-biblioteket inte kompilerade. Allt fungerade dock tydligen under Windows. Andra butiker med dessa kort är [SmartCardFocus] (http://www.smartcardfocus.com/) och [Gemalto Webstore] (https://webstore.gemalto.com/INTERSHOP/web/WFS/GEMALTO-B2CCORP-Site/ sv_US / - / EUR / Standardstart).
Jag var intresserad av att köpa detta smartkort för att användas på Linux och Windows. Men jag fick höra att Gemalto SafeNet-licensen krävs för att få drivrutinen på Linux. Gemalto-återförsäljaren som jag kontaktade sa till mig att jag behövde köpa minst 25 licenser. Jag skapade en tråd här för att bekräfta eller inte vad återförsäljaren sa till mig: https://security.stackexchange.com/questions/206573/does-opensc-required-proprietary-gemalto-safenet-middleware-to-support-gemalto-iSo det här kortet verkar inte passa bra för hemmabruk om det blir bekräftat.
SEJPM
2016-06-20 03:10:45 UTC
view on stackexchange narkive permalink

Eftersom jag känner att vissa människor inte är nöjda med Thomas rekommendation av Gemalto IDPrime Cards, ville jag ge ett annat alternativ här:

Smartcard-HSM

  • Den erbjuder 1024-2048-bitars RSA eller upp till 320-bitars ECC med alla NIST- och Brainpool-kurvorna förinstallerade och kan till och med stödja anpassade kurvor (även om jag ' har ingen källa för detta just nu)
  • Den stöder ECDSA- och RSA-signaturer och möjliggör SHA-1 baserat på korthashing (ECDSA) och för SHA1 / -256 / -384 / -512-baserad RSA pre-hashing ("PKCS", kan vara PKCS # 1 v1.5)
  • Operativsystemet är CC EAL5 + certifierat, chipplattformen är bara EAL2 +, TOE finns här
  • Det skickas som en standardformfaktor för kort (kontakt, kontaktlöst och dubbelt gränssnitt), som micro SD med säkert element och 1 GB normalt minne och som USB-token
  • enda återförsäljare för tillfället är kort-o-matic, enskilda kort kommer att vara cirka 20 € stycket, tokens kommer att vara cirka 80 € och m malm
  • Drivrutinssupport är tillgängligt via OpenSC, stödjer Windows CAPI och PKCS # 11, enhetsdrivrutinen (för Windows) levereras extra och kräver inaktivera drivrutinssignaturkontroller för installationen, men OpenSC PKCS # 11-biblioteket har dock sina begränsningar, till exempel kan bara en applikation få åtkomst till token samtidigt
  • Om du har initialiserat kortet med en specifik nyckel (kallad enhetsnyckel-krypteringsnyckel (DKEK)) så kommer att kunna göra nyckelbackups off-card, annars inte

TL; DR: Det kan vara lite dyrt och lite obekvämt från tid till annan, och något begränsad i säkerhetsnivå, men om säkerhetskopior, hjärnpool och / eller hög CC-certifiering är det du letar efter kan det här vara rätt val.

Det bör noteras att jag kontaktade tillverkaren angående förarsignaturen och han svarade att det inte är värt det för dem eftersom de huvudsakligen riktar sig mot Linux och inbäddade system och inte Windows.


Denna fråga och svar översattes automatiskt från det engelska språket.Det ursprungliga innehållet finns tillgängligt på stackexchange, vilket vi tackar för cc by-sa 3.0-licensen som det distribueras under.
Loading...