Hi,

this patch adds two new ATR to the cryptoflex driver
and uses the atr mask to ignore the content of the last
two bytes. maybe we should do that for all cards?

if anyone knows the older cryptoflex cards: did they
also have the firmware version in the last two atr bytes?
if so can we ignore those bytes?

feedback on this patch - whether to apply or even use
the atr mask for all atr entries - is very welcome.

Regards, Andreas
Index: card-flex.c
===================================================================
--- card-flex.c	(revision 2969)
+++ card-flex.c	(working copy)
@@ -37,8 +37,25 @@
 	{ "3B:85:40:20:68:01:01:05:01", NULL, "Cryptoflex 8K", SC_CARD_TYPE_FLEX_CRYPTO, 0, NULL },
 	/* 16k */
 	{ "3B:95:94:40:FF:63:01:01:02:01", NULL, "Cryptoflex 16K", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL },
+	/* "16K+SS1" alias Cryptoflex 16 card with Standard Softmask V1 */
+	/* (taken from Cryptoflex Card Programmers Guide 4.5 Page xviii) */
+	/* last two bytes can be ignored - version of the softmask */
+	{ "3B:95:15:40:FF:63:01:01:02:01", "FF:FF:FF:FF:FF:FF:FF:FF:00:00",
+		"Cryptoflex 16K", SC_CARD_TYPE_FLEX_CRYPTO,
+		SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL },
 	/* 32K v4 */
-	{ "3B:95:18:40:FF:64:02:01:01:02", NULL, "Cryptoflex 32K v4", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL },
+	/* "32K+SS1" alias Cryptoflex 32 card with Standard Softmask V1 */
+	/* (taken from Cryptoflex Card Programmers Guide 4.5 Page xviii) */
+	/* last two bytes can be ignored - version of the softmask */
+	{ "3B:95:18:40:FF:64:02:01:01:02","FF:FF:FF:FF:FF:FF:FF:FF:00:00",
+		"Cryptoflex 32K v4", SC_CARD_TYPE_FLEX_CRYPTO,
+		SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL },
+	/* "32K+e-gate" alias Cryptoflex e-gate 32K card */
+	/* (taken from Cryptoflex Card Programmers Guide 4.5 Page xviii) */
+	/* last two bytes can be ignored - version of the softmask */
+	{ "3B:95:18:40:FF:62:01:01:00:00", "FF:FF:FF:FF:FF:FF:FF:FF:00:00",
+		"Cryptoflex e-gate 32K", SC_CARD_TYPE_FLEX_CRYPTO,
+		SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL },
 	/* 32K e-gate */
 	{ "3B:95:18:40:FF:62:01:02:01:04", NULL, "Cryptoflex 32K e-gate", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL },
 	/* 32K e-gate v4 */
_______________________________________________
opensc-devel mailing list
opensc-devel@lists.opensc-project.org
http://www.opensc-project.org/mailman/listinfo/opensc-devel

Reply via email to