diff options
| author | Tobias Kellner <tobias.kellner@iaik.tugraz.at> | 2015-02-25 10:54:34 +0100 | 
|---|---|---|
| committer | Tobias Kellner <tobias.kellner@iaik.tugraz.at> | 2015-02-25 10:54:34 +0100 | 
| commit | 7f884ec4134d7de42cea84e0a877d4644547291e (patch) | |
| tree | e3aff04fde0f7fe5d9a0fbb14759abbbfed97a45 /smcc/src/main/java/at | |
| parent | 2186b257c74c4c93889ed69e6ff457ca830d3b88 (diff) | |
| download | mocca-7f884ec4134d7de42cea84e0a877d4644547291e.tar.gz mocca-7f884ec4134d7de42cea84e0a877d4644547291e.tar.bz2 mocca-7f884ec4134d7de42cea84e0a877d4644547291e.zip | |
ITCard changes
Diffstat (limited to 'smcc/src/main/java/at')
| -rw-r--r-- | smcc/src/main/java/at/gv/egiz/smcc/SignatureCardFactory.java | 438 | 
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 | 
