Dave Mercer
Dave Mercer
The Access Mode Enumeration described [here](https://openfips201.atlassian.net/wiki/spaces/OD/pages/459060/Appendix+-+ASN.1+Schema#5.1-Schema) does not allow for a complete expression of all access modes described in 800-73-4. You define: ``` AccessMode ::= ENUMERATED { never (0), pin...
The [PUT_DATA_ADMIN schema](https://openfips201.atlassian.net/wiki/spaces/OD/pages/459060/Appendix+-+ASN.1+Schema#5.1-Schema) enumerates ```pin (1)``` and ```pinAlways (2)``` which makes sense. For occ you have only defined ```occ (4)``` and have omitted ```occAlways```. If you look at the Security...
The [NIST compliant Profile for key objects](https://openfips201.atlassian.net/wiki/spaces/OD/pages/491612/Appendix+-+NIST+Compliant+Profile#6-Key-Object-Scripts) does not specify any OCC conditions. While I realize that OCC is not currently supported It would be good to address them in...
JC 3.0.5 introduced [`Cipher.OneShot`](https://docs.oracle.com/javacard/3.0.5/api/javacardx/crypto/Cipher.OneShot.html) operations. Our experience with `OneShot` signatures indicates a significant performance boost (40ms+ ???, I don't remember the exact number) when using ECDSA P-256 on one of...
`TLVWriter` doesn't offer _good_ support for multibyte tags. It should also have a `writeTag(byte[] tag)` method. I also noticed that `writeTag(short tag)` doesn't set a multibyte indicator byte nor does...
The TLV reader class seems to handle multibyte TLVs correctly when seeking the length field but not when getting a tag. `static short getLength(byte[] data, short offset)` handles multibyte tags...
The TLV parser will read nested TLVs beyond the length of their parent container. Consider the nested TLV below: `010108 020100 0303000000` this parses correctly. Now consider the erroneous TLV...
There should be a mechanism which allows for the use of transactions when performing multi step operations which result in changes to the data managed by the applet. An example...
There is an attack where using a carefully crafted public key not on the curve can compromise a private key during ECDH. It is unclear if the ECDH implementation in...