summaryrefslogtreecommitdiff
path: root/smcc/src
diff options
context:
space:
mode:
Diffstat (limited to 'smcc/src')
-rw-r--r--smcc/src/main/java/at/gv/egiz/smcc/SignatureCardFactory.java438
1 files changed, 230 insertions, 208 deletions
diff --git a/smcc/src/main/java/at/gv/egiz/smcc/SignatureCardFactory.java b/smcc/src/main/java/at/gv/egiz/smcc/SignatureCardFactory.java
index afe21ba4..d2d70c05 100644
--- a/smcc/src/main/java/at/gv/egiz/smcc/SignatureCardFactory.java
+++ b/smcc/src/main/java/at/gv/egiz/smcc/SignatureCardFactory.java
@@ -638,251 +638,273 @@ public class SignatureCardFactory {
"at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF x1 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF x1 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x 43 4E 53 10 31
+ // 80 xx
// 0-0 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x01,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:0f:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x0f,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0x81, (byte) 0x31,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x6B, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x01, (byte) 0x00,
+ (byte) 0x00, (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
+ (byte) 0x31, (byte) 0x80, (byte) 0x00 }, new byte[] { (byte) 0xFF,
+ (byte) 0x8F, (byte) 0x8F, (byte) 0xFF, (byte) 0x00, (byte) 0x00,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0x00, (byte) 0x80, (byte) 0x00,
+ (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0xF0, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF x1 xx 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF x1 xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x 43 4E 53 10
+ // 31 80 xx
// 0-1 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x01, (byte) 0x00,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:0f:00:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x0f, (byte) 0x00,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0x81, (byte) 0x00,
+ (byte) 0x31, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x6B,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x01,
+ (byte) 0x00, (byte) 0x00, (byte) 0x43, (byte) 0x4E, (byte) 0x53,
+ (byte) 0x10, (byte) 0x31, (byte) 0x80, (byte) 0x00 }, new byte[] {
+ (byte) 0xFF, (byte) 0x8F, (byte) 0x8F, (byte) 0x00, (byte) 0xFF,
+ (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0xFF, (byte) 0x00,
+ (byte) 0x80, (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00,
+ (byte) 0xF0, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF x1 xx xx 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF x1 xx xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x 43 4E
+ // 53 10 31 80 xx
// 0-2 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x01, (byte) 0x00, (byte) 0x00,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:0f:00:00:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x0f, (byte) 0x00, (byte) 0x00,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0x81, (byte) 0x00,
+ (byte) 0x00, (byte) 0x31, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x6B, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x01, (byte) 0x00, (byte) 0x00, (byte) 0x43, (byte) 0x4E,
+ (byte) 0x53, (byte) 0x10, (byte) 0x31, (byte) 0x80, (byte) 0x00 },
+ new byte[] { (byte) 0xFF, (byte) 0x8F, (byte) 0x8F, (byte) 0x00,
+ (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0x00, (byte) 0x80, (byte) 0x00, (byte) 0x00,
+ (byte) 0xFF, (byte) 0x00, (byte) 0xF0, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF x1 xx xx xx 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF x1 xx xx xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x 43 4E
+ // 53 10 31 80 xx
// 0-3 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x01, (byte) 0x00, (byte) 0x00, (byte) 0x00,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:0f:00:00:00:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x0f, (byte) 0x00, (byte) 0x00, (byte) 0x00,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0xF1, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x31, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x6B, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00, (byte) 0x43,
+ (byte) 0x4E, (byte) 0x53, (byte) 0x10, (byte) 0x31, (byte) 0x80,
+ (byte) 0x00 }, new byte[] { (byte) 0xFF, (byte) 0x8F, (byte) 0xFF,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00,
+ (byte) 0x00, (byte) 0xFF, (byte) 0xFF, (byte) 0x00, (byte) 0x80,
+ (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0xF0,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF xx x1 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF xx x1 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x 43 4E 53 10
+ // 31 80 xx
// 1-0 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x00, (byte) 0x01,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:00:0f:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x00, (byte) 0x0f,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0x00, (byte) 0x81,
+ (byte) 0x31, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x6B,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x01,
+ (byte) 0x00, (byte) 0x00, (byte) 0x43, (byte) 0x4E, (byte) 0x53,
+ (byte) 0x10, (byte) 0x31, (byte) 0x80, (byte) 0x00 }, new byte[] {
+ (byte) 0xFF, (byte) 0x8F, (byte) 0x00, (byte) 0x8F, (byte) 0xFF,
+ (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0xFF, (byte) 0x00,
+ (byte) 0x80, (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00,
+ (byte) 0xF0, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF xx x1 xx 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF xx x1 xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x 43 4E
+ // 53 10 31 80 xx
// 1-1 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x00, (byte) 0x01, (byte) 0x00,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:00:0f:00:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x00, (byte) 0x0f, (byte) 0x00,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0x00, (byte) 0x81,
+ (byte) 0x00, (byte) 0x31, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x6B, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x01, (byte) 0x00, (byte) 0x00, (byte) 0x43, (byte) 0x4E,
+ (byte) 0x53, (byte) 0x10, (byte) 0x31, (byte) 0x80, (byte) 0x00 },
+ new byte[] { (byte) 0xFF, (byte) 0x8F, (byte) 0x00, (byte) 0x8F,
+ (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0x00, (byte) 0x80, (byte) 0x00, (byte) 0x00,
+ (byte) 0xFF, (byte) 0x00, (byte) 0xF0, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF xx x1 xx xx 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF xx x1 xx xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x 43 4E
+ // 53 10 31 80 xx
// 1-2 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:00:0f:00:00:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x00, (byte) 0x0f, (byte) 0x00, (byte) 0x00,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0x00, (byte) 0x81,
+ (byte) 0x00, (byte) 0x00, (byte) 0x31, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x6B, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00, (byte) 0x43,
+ (byte) 0x4E, (byte) 0x53, (byte) 0x10, (byte) 0x31, (byte) 0x80,
+ (byte) 0x00 }, new byte[] { (byte) 0xFF, (byte) 0x8F, (byte) 0x00,
+ (byte) 0x8F, (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00,
+ (byte) 0x00, (byte) 0xFF, (byte) 0xFF, (byte) 0x00, (byte) 0x80,
+ (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0xF0,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF xx x1 xx xx xx 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF xx x1 xx xx xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x
+ // 43 4E 53 10 31 80 xx
// 1-3 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00, (byte) 0x00,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:00:0f:00:00:00:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x00, (byte) 0x0f, (byte) 0x00, (byte) 0x00, (byte) 0x00,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0x00, (byte) 0xF1,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x31, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x6B, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00,
+ (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10, (byte) 0x31,
+ (byte) 0x80, (byte) 0x00 }, new byte[] { (byte) 0xFF, (byte) 0x8F,
+ (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0x00, (byte) 0x80, (byte) 0x00, (byte) 0x00, (byte) 0xFF,
+ (byte) 0x00, (byte) 0xF0, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF xx xx x1 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF xx xx x1 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x 43 4E
+ // 53 10 31 80 xx
// 2-0 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x00, (byte) 0x00, (byte) 0x01,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:00:00:0f:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x00, (byte) 0x00, (byte) 0x0f,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0x00, (byte) 0x00,
+ (byte) 0x81, (byte) 0x31, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x6B, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x01, (byte) 0x00, (byte) 0x00, (byte) 0x43, (byte) 0x4E,
+ (byte) 0x53, (byte) 0x10, (byte) 0x31, (byte) 0x80, (byte) 0x00 },
+ new byte[] { (byte) 0xFF, (byte) 0x8F, (byte) 0x00, (byte) 0x00,
+ (byte) 0x8F, (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0x00, (byte) 0x80, (byte) 0x00, (byte) 0x00,
+ (byte) 0xFF, (byte) 0x00, (byte) 0xF0, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF xx xx x1 xx 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF xx xx x1 xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x 43 4E
+ // 53 10 31 80 xx
// 2-1 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x00, (byte) 0x00, (byte) 0x01, (byte) 0x00,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:00:00:0f:00:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x00, (byte) 0x00, (byte) 0x0f, (byte) 0x00,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0x00, (byte) 0x00,
+ (byte) 0x81, (byte) 0x00, (byte) 0x31, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x6B, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00, (byte) 0x43,
+ (byte) 0x4E, (byte) 0x53, (byte) 0x10, (byte) 0x31, (byte) 0x80,
+ (byte) 0x00 }, new byte[] { (byte) 0xFF, (byte) 0x8F, (byte) 0x00,
+ (byte) 0x00, (byte) 0x8F, (byte) 0x00, (byte) 0xFF, (byte) 0x00,
+ (byte) 0x00, (byte) 0xFF, (byte) 0xFF, (byte) 0x00, (byte) 0x80,
+ (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0xF0,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF xx xx x1 xx xx 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF xx xx x1 xx xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x
+ // 43 4E 53 10 31 80 xx
// 2-2 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x00, (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:00:00:0f:00:00:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x00, (byte) 0x00, (byte) 0x0f, (byte) 0x00, (byte) 0x00,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0x00, (byte) 0x00,
+ (byte) 0x81, (byte) 0x00, (byte) 0x00, (byte) 0x31, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x6B, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00,
+ (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10, (byte) 0x31,
+ (byte) 0x80, (byte) 0x00 }, new byte[] { (byte) 0xFF, (byte) 0x8F,
+ (byte) 0x00, (byte) 0x00, (byte) 0x8F, (byte) 0x00, (byte) 0x00,
+ (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0x00, (byte) 0x80, (byte) 0x00, (byte) 0x00, (byte) 0xFF,
+ (byte) 0x00, (byte) 0xF0, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF xx xx x1 xx xx xx 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF xx xx x1 xx xx xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x
+ // 43 4E 53 10 31 80 xx
// 2-3 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x00, (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00, (byte) 0x00,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:00:00:0f:00:00:00:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x00, (byte) 0x00, (byte) 0x0f, (byte) 0x00, (byte) 0x00, (byte) 0x00,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0x8F, (byte) 0x00, (byte) 0x00,
+ (byte) 0xF1, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x31,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x6B, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x01, (byte) 0x00,
+ (byte) 0x00, (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
+ (byte) 0x31, (byte) 0x80, (byte) 0x00 }, new byte[] { (byte) 0xFF,
+ (byte) 0x8F, (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0x00,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0x00, (byte) 0x80, (byte) 0x00,
+ (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0xF0, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
supportedCards.add(new SupportedCard(
- // ATR = 3B xF xx xx xx x1 xx xx xx 31 FE 7D 00 6B 15 0C 01 81 01 01 01 43 4E 53 10 31 80 F8
+ // ATR = 3B xF xx xx xx x1 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x 43 4E
+ // 53 10 31 80 xx
+ // 3-0 variant
+ new byte[] { (byte) 0x3B, (byte) 0xFF, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x81, (byte) 0x31, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x6B, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00, (byte) 0x43,
+ (byte) 0x4E, (byte) 0x53, (byte) 0x10, (byte) 0x31, (byte) 0x80,
+ (byte) 0x00 }, new byte[] { (byte) 0xFF, (byte) 0xFF, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x8F, (byte) 0xFF, (byte) 0x00,
+ (byte) 0x00, (byte) 0xFF, (byte) 0xFF, (byte) 0x00, (byte) 0x80,
+ (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0xF0,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
+
+ supportedCards.add(new SupportedCard(
+ // ATR = 3B xF xx xx xx x1 xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x
+ // 43 4E 53 10 31 80 xx
+ // 3-1 variant
+ new byte[] { (byte) 0x3B, (byte) 0xFF, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x81, (byte) 0x00, (byte) 0x31, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x6B, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00,
+ (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10, (byte) 0x31,
+ (byte) 0x80, (byte) 0x00 }, new byte[] { (byte) 0xFF, (byte) 0xFF,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x8F, (byte) 0x00,
+ (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0x00, (byte) 0x80, (byte) 0x00, (byte) 0x00, (byte) 0xFF,
+ (byte) 0x00, (byte) 0xF0, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
+
+ supportedCards.add(new SupportedCard(
+ // ATR = 3B xF xx xx xx x1 xx xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx 0x
+ // 43 4E 53 10 31 80 xx
+ // 3-2 variant
+ new byte[] { (byte) 0x3B, (byte) 0xFF, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x81, (byte) 0x00, (byte) 0x00, (byte) 0x31,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x6B, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x01, (byte) 0x00,
+ (byte) 0x00, (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
+ (byte) 0x31, (byte) 0x80, (byte) 0x00 }, new byte[] { (byte) 0xFF,
+ (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x8F,
+ (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0x00,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0x00, (byte) 0x80, (byte) 0x00,
+ (byte) 0x00, (byte) 0xFF, (byte) 0x00, (byte) 0xF0, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
+
+ supportedCards.add(new SupportedCard(
+ // ATR = 3B xF xx xx xx x1 xx xx xx 31 xx xx 00 6B xx 0xxxxxxx xx xx 01 xx
+ // 0x 43 4E 53 10 31 80 xx
// 3-3 variant
- new byte[] { (byte) 0x3B, (byte) 0x0F, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00, (byte) 0x00,
- (byte) 0x31, (byte) 0xFE, (byte) 0x7D, (byte) 0x00,
- (byte) 0x6B, (byte) 0x15, (byte) 0x0C, (byte) 0x01,
- (byte) 0x81, (byte) 0x01, (byte) 0x01, (byte) 0x01,
- (byte) 0x43, (byte) 0x4E, (byte) 0x53, (byte) 0x10,
- (byte) 0x31, (byte) 0x80, (byte) 0xF8
- },
- // mask (ff:0f:00:00:00:0f:00:00:00:ff:ff:ff:ff:ff:ff:ff:ff:ff:..)
- new byte[] { (byte) 0xff, (byte) 0x0f, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x0f, (byte) 0x00, (byte) 0x00, (byte) 0x00,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff, (byte) 0xff,
- (byte) 0xff, (byte) 0xff, (byte) 0xff
- }, "at.gv.egiz.smcc.ITCard"));
+ new byte[] { (byte) 0x3B, (byte) 0xFF, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0xF1, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x31, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x6B,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x01,
+ (byte) 0x00, (byte) 0x00, (byte) 0x43, (byte) 0x4E, (byte) 0x53,
+ (byte) 0x10, (byte) 0x31, (byte) 0x80, (byte) 0x00 }, new byte[] {
+ (byte) 0xFF, (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0xFF,
+ (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0xFF, (byte) 0x00,
+ (byte) 0x80, (byte) 0x00, (byte) 0x00, (byte) 0xFF, (byte) 0x00,
+ (byte) 0xF0, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
+ (byte) 0xFF, (byte) 0xFF, (byte) 0x00 },
+ "at.gv.egiz.smcc.ITCard"));
// ATR for EstEID v.1.0 realised on Micardo Public 2.1 - Warm ATR
// ATR for EstEID v.1.0 realised on Micardo Public 3.0 - Warm ATR