summaryrefslogtreecommitdiff
path: root/smcc/src/main/java/at/gv/egiz/smcc/ccid/CCID.java
diff options
context:
space:
mode:
authorclemenso <clemenso@8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4>2009-04-02 19:13:48 +0000
committerclemenso <clemenso@8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4>2009-04-02 19:13:48 +0000
commit2dbf2347bc78fd835c857ad438514fb6251f6f7a (patch)
treeec8eb7876dfdca86eeeec1d08ebbeb31eb464892 /smcc/src/main/java/at/gv/egiz/smcc/ccid/CCID.java
parent1ad095128a98137e2b4c904814722be4ec43eebd (diff)
downloadmocca-2dbf2347bc78fd835c857ad438514fb6251f6f7a.tar.gz
mocca-2dbf2347bc78fd835c857ad438514fb6251f6f7a.tar.bz2
mocca-2dbf2347bc78fd835c857ad438514fb6251f6f7a.zip
1.1-RC7 (pinpad revisited)
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@325 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
Diffstat (limited to 'smcc/src/main/java/at/gv/egiz/smcc/ccid/CCID.java')
-rw-r--r--smcc/src/main/java/at/gv/egiz/smcc/ccid/CCID.java45
1 files changed, 38 insertions, 7 deletions
diff --git a/smcc/src/main/java/at/gv/egiz/smcc/ccid/CCID.java b/smcc/src/main/java/at/gv/egiz/smcc/ccid/CCID.java
index 2c56ce98..56ebaffe 100644
--- a/smcc/src/main/java/at/gv/egiz/smcc/ccid/CCID.java
+++ b/smcc/src/main/java/at/gv/egiz/smcc/ccid/CCID.java
@@ -45,17 +45,48 @@ public interface CCID {
"FEATURE_WRITE_DISPLAY",
"FEATURE_GET_KEY",
"FEATURE_IFD_DISPLAY_PROPERTIES"};
-
- Byte FEATURE_IFD_PIN_PROPERTIES = new Byte((byte) 10);
- Byte FEATURE_MCT_READER_DIRECT = new Byte((byte) 8);
- Byte FEATURE_MODIFY_PIN_DIRECT = new Byte((byte) 7);
- Byte FEATURE_VERIFY_PIN_DIRECT = new Byte((byte) 6);
-
+
+ Byte FEATURE_VERIFY_PIN_START = new Byte((byte) 0x01);
+ Byte FEATURE_VERIFY_PIN_FINISH = new Byte((byte) 0x02);
+ Byte FEATURE_MODIFY_PIN_START = new Byte((byte) 0x03);
+ Byte FEATURE_MODIFY_PIN_FINISH = new Byte((byte) 0x04);
+ Byte FEATURE_GET_KEY_PRESSED = new Byte((byte) 0x05);
+ Byte FEATURE_VERIFY_PIN_DIRECT = new Byte((byte) 0x06);
+ Byte FEATURE_MODIFY_PIN_DIRECT = new Byte((byte) 0x07);
+ Byte FEATURE_MCT_READER_DIRECT = new Byte((byte) 0x08);
+ Byte FEATURE_MCT_UNIVERSAL = new Byte((byte) 0x09);
+ Byte FEATURE_IFD_PIN_PROPERTIES = new Byte((byte) 0x0a);
+ //TODO continue list
+
+ String getName();
+
Card connect() throws CardException;
boolean hasFeature(Byte feature);
/**
+ * not supported by OMNIKEY CardMan 3621 with ACOS card
+ * @param PIN_VERIFY
+ * @return
+ * @throws at.gv.egiz.smcc.PINOperationAbortedException
+ * @throws javax.smartcardio.CardException
+ */
+ byte[] verifyPin(byte[] PIN_VERIFY) throws PINOperationAbortedException, CardException;
+
+ byte[] verifyPinDirect(byte[] PIN_VERIFY) throws CardException;
+
+ /**
+ * not supported by OMNIKEY CardMan 3621 with ACOS card
+ * @param PIN_MODIFY
+ * @return
+ * @throws at.gv.egiz.smcc.PINOperationAbortedException
+ * @throws javax.smartcardio.CardException
+ */
+ byte[] modifyPin(byte[] PIN_MODIFY) throws PINOperationAbortedException, CardException;
+
+ byte[] modifyPinDirect(byte[] PIN_MODIFY) throws CardException;
+
+ /**
*
* @param feature the corresponding control code will be transmitted
* @param ctrlCommand
@@ -63,7 +94,7 @@ public interface CCID {
* @throws at.gv.egiz.smcc.SignatureCardException if feature is not supported
* or card communication fails
*/
- byte[] transmitControlCommand(Byte feature, byte[] ctrlCommand) throws SignatureCardException;
+// byte[] transmitControlCommand(Byte feature, byte[] ctrlCommand) throws SignatureCardException;
/**
* allow subclasses to override default (deal with reader bugs)