Commit Graph

50 Commits

Author SHA1 Message Date
Michele Balistreri de91e33f74 implement low-level BIP32 CKDPriv function 2017-10-18 11:40:20 +03:00
Michele Balistreri 4c0c58ac90 add hint if public key derivation is optimized or not 2017-10-16 17:34:37 +03:00
Michele Balistreri d26b1120a0 support T=0 in tests 2017-10-16 17:00:10 +03:00
Michele Balistreri 232db9b571 separate master and derived chain codes 2017-10-12 13:46:25 +03:00
Michele Balistreri f923e48333 rename ECCCurves to SEC256k1 to avoid confusion with the similarly named
ECCurve class
2017-10-12 13:43:08 +03:00
Michele Balistreri 84d56c95cd javacard applet can only define 1 package. JCMathLib has been integrated
in the main package
2017-10-12 13:39:04 +03:00
Michele Balistreri 48f1905cee add point multiplication through JCMathLib 2017-10-12 13:21:19 +03:00
Michele Balistreri b2543239aa make right shift work on both simulator and JavaCard 2017-10-11 13:26:50 +03:00
Michele Balistreri f134be461c remove duplication in loadKey variants 2017-10-11 12:55:47 +03:00
Michele Balistreri 8424f262df extend LOAD KEY with seed loading support 2017-10-11 12:44:48 +03:00
Michele Balistreri 97d195e6b5 simplify specifications - public key derivation must be somehow implemented 2017-10-11 10:55:04 +03:00
Michele Balistreri 5be35a8fe1 extend LOAD KEY 2017-10-11 10:45:37 +03:00
Michele Balistreri 9396e1448d implement GENERATE MNEMONIC 2017-10-10 20:07:09 +03:00
Michele Balistreri 5ba012fad1 implement GET STATUS 2017-10-09 17:12:21 +03:00
Michele Balistreri f4ea1f6e69 update specs for BIP32/39 2017-10-09 15:06:59 +03:00
Michele Balistreri 3b0319cb37 add interface (and possible implementation) for public key derivation from
private key
2017-10-09 12:37:50 +03:00
Michele Balistreri 3c13025773 add public key to the output of the SIGN command 2017-10-06 15:08:07 +03:00
Michele Balistreri c7e35b8aeb explain compilation 2017-10-06 12:58:10 +03:00
Michele Balistreri 11bfc4a4bf test files 2017-10-06 12:05:31 +03:00
Michele Balistreri 6035857f08 add web3j based test 2017-10-06 11:58:41 +03:00
Michele Balistreri fb24995cee add web3j based test (incomplete) 2017-10-05 14:10:49 +03:00
Michele Balistreri 7c72c16578 test with simulator 2017-10-04 17:25:28 +03:00
Michele Balistreri a78c5340c2 add ability to SIGN precomputed hashes. Switch to ECDSA with SHA256 for
data sign
2017-10-04 15:10:59 +03:00
Michele Balistreri ac5929a9fe implement SIGN 2017-09-30 17:26:06 +03:00
Michele Balistreri dd11e0cfa4 enforce P1 on LOAD KEY 2017-09-30 12:24:19 +03:00
Michele Balistreri 18ff9b1bdb implemented LOAD KEY 2017-09-29 19:02:24 +03:00
Michele Balistreri 5b231fb711 move installation script to gradle with configurable parameters 2017-09-27 20:04:26 +03:00
Michele Balistreri 91b4a96194 implement UNBLOCK PIN 2017-09-27 19:49:02 +03:00
Michele Balistreri f05190111c add PUK installation parameter 2017-09-27 16:01:45 +03:00
Michele Balistreri 8a06c7d074 implement CHANGE PIN 2017-09-27 15:22:34 +03:00
Michele Balistreri b0b5a68d2c implement secure channel encryption 2017-09-26 15:43:35 +03:00
Michele Balistreri 7ae588054b correct data length for decryption 2017-09-26 14:21:57 +03:00
Michele Balistreri 69a27f4c86 correct decryption overlapping offsets 2017-09-26 14:20:23 +03:00
Michele Balistreri 1c56b7fbf2 implement decrypt channel 2017-09-26 14:16:39 +03:00
Michele Balistreri 5a70ed2113 implement secure channel key exchange (open secure channel) 2017-09-26 13:05:59 +03:00
Michele Balistreri 5ddffcc10c document the presence of tests 2017-09-25 14:36:28 +03:00
Michele Balistreri c12ce33fc6 test VERIFY PIN 2017-09-25 14:33:00 +03:00
Michele Balistreri fe37968654 add testing facilities 2017-09-25 14:16:26 +03:00
Michele Balistreri 6b600182dd begin application implementation 2017-09-25 12:26:15 +03:00
Michele Balistreri 360fa6ff5e simplify the LOAD KEY command to use a single APDU 2017-09-25 11:27:55 +03:00
Michele Balistreri da001198f6 document load key and sign APDUs 2017-09-25 10:53:20 +03:00
Michele Balistreri 0276f29198 document overhead 2017-09-25 10:53:04 +03:00
Michele Balistreri a69bd8a0df document PIN-related commands 2017-09-22 12:41:43 +03:00
Michele Balistreri 4d7351d07e document PIN-related commands 2017-09-22 12:14:15 +03:00
Michele Balistreri 9316ff7e76 secure channel specification 2017-09-22 10:40:34 +03:00
Michele Balistreri d55f8efc7f secure channel specification 2017-09-22 10:37:24 +03:00
Michele Balistreri a2887abee4 draft of the secure channel implementation 2017-09-21 17:16:49 +03:00
Michele Balistreri b9b316cb95 make build work without setting environment variables 2017-09-21 16:29:28 +03:00
Michele Balistreri 9427ccf48c add scripts to install on card and a smoke test 2017-09-21 16:06:36 +03:00
Michele Balistreri d977bac7f9 add skeleton app 2017-09-21 15:09:04 +03:00