aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Refactored EC_Params, renamed EC_Data, added first test vectors.J08nY2017-03-2614-157/+275
|
* Fixed loading private key from file.J08nY2017-03-251-1/+1
|
* Implemented ECDHC testing.J08nY2017-03-246-28/+84
| | | | | | - also some work on ECDH/ECDHC compatibility testing - new option -dhc / --ecdhc [count] the same as ecdh option, except it does ECDHC algo
* Fixed XML schema.xsdJ08nY2017-03-231-69/+36
|
* Added new corruption type and X962 point compression methods.J08nY2017-03-225-13/+47
|
* Added Cleanup command to request object deletion, prevents memory corruption.J08nY2017-03-174-13/+59
|
* Applet: better handling of exceptions, new command for memory cleanup.J08nY2017-03-176-121/+243
|
* Cleanup, add ECDH corruption tests.J08nY2017-03-167-125/+108
| | | | | | | | | | | Reader: - added ECDH corruption tests - fixed EC_Data keys.xml search path - added more output to --list-named / -ln Both: - changed up ECDH command to support arbitrary temporary pubkey corruption
* fix mistypeJ08nY2017-03-141-1/+1
|
* Created a new command: CorruptJ08nY2017-03-146-62/+205
| | | | | Originaly a part of a set command, now allows more control of keypairs
* Reader: fixed ECDH and ECDSA output, also named curve testingJ08nY2017-03-094-13/+47
|
* Reader: added verbose flag, made CardMngr quiet.J08nY2017-03-073-29/+64
|
* Added timing output to responses, added bulk ECDH/ECDSA testing.J08nY2017-03-072-48/+93
|
* Added support for named curves (in jar).J08nY2017-03-0623-196/+748
| | | | | - Doesn't work well while simulating, some weird memory bug. Will investigate. - Has categories of curves, more will be added.
* removed newlines, changed f2m format, removed old SimpleAPDUJ08nY2017-02-21132-853/+784
| | | | | | | | | | | | | | data: - now truly csv - f2m format now: m,e_1,e_2,e_3,a,b,gx,gy,r,k,wx,wy,s reader: - removed SimpleAPDU - changed f2m format applet: - changed f2m format
* Added export instruction, and action to readerJ08nY2017-01-319-369/+527
| | | | | | | | | | One can now export the default domain parameters of the card/simulation with: `ectester.jar -e -fp -b 192 -o params.txt` - Renamed ParamReader to ECParams - Added Command.Export and Response.Export - Moved ECKeyGenerator.KEY_* to EC_Consts.KEY_*
* Added option to generate fresh keys(-f) also implemented basic ECC testingJ08nY2017-01-276-100/+260
| | | | | | | | - Added -f/--fresh - Fixed response align - Implemented basic EC testing, more advanced/complex tests are gonna be done through pre-generated files/curves/keys inside the jar or externally. Such as the invalid curve attack test and others.
* reader: Added a Command and Response abstractionJ08nY2017-01-2260-264/+973
| | | | | | | | | | | | | - For easier testing - Command assembles the correct instruction from params in its constructor - Command.send() sends the command and obtains the Response with timing - Response parses the ResponseAPDU in its constructor and provides convenience methods to access its contents/SWs/success /failure/print data: Added more curves
* reader: fixed -h optionJ08nY2017-01-171-2/+6
|
* reader: implemented ecdh and ecdsa actions, also added some docsJ08nY2017-01-175-109/+248
| | | | | | - ecdh and ecdsa instructions now work, although without output to file, yet. - added MIT license headers to main classes
* implemented ecdh testing reader side:J08nY2017-01-174-108/+210
| | | | ectester -dh -fp -b 192
* data: renamed curves, since they arent really saved in csv...J08nY2017-01-1733-0/+0
|
* major changes, ECTester rewrite, moved to valid packageJ08nY2017-01-1747-2291/+2032
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | reader: ECTester, mostly rewritten SimpleAPDU - communication with applet now done through simpler instructions: allocate, set, generate, ecdh, ecdsa - moved to a valid Java package dir cz.crcs.ectester - SimpleAPDU: renamed to ECTester - CardMngr: seamlessly supports simulation vs real card - DirtyLogger: takes a nullable String and creates file - ECTester: currently only supports key generation, curve testing under way - supports external curve setting, example files in data package - tests can be done through files, to achieve a more modular approach - Util: static utility class - ParamReader: reads curve domain parameters and keys from simple csv-like human-readable files with hex strings applet: ECTesterApplet, rewrite of SimpleECCApplet - more granularity in instructions - moved complexity over to the reader side - ECKeyGenerator: now a class that takes KeyPair as param - ECKeyTester: now a class that takes KeyPair as param - EC_Consts: removed ecsp curves(now done externally), removed unused methods - ECTesterApplet: currently only tested instructions are: allocate, set, generate data: contains several curve and pubkey files in format supported by ParamReader - Prime field curves: p,a,b,gx,gy,r,k - Binary field curves: e1,a,b,gx,gy,r,k or e1,e2,e3,a,b,gx,gy,r,k - Public key: wx,wy - Private key: s - Key: wx,wy,s - all values are hex strings
* SimpleAPDU: some cleanupJ08nY2017-01-172-18/+17
|
* Fixed some issues with errors in key generation, and their propagationJ08nY2016-12-113-35/+47
|
* Added CLI options, Apache commons-cli lib, anomalous curve key exportJ08nY2016-12-105-202/+258
| | | | | | | | - Added CLI options, see SimpleAPDU.jar -h - Added Apache commons-cli for CLI options, it uses Apache license - Added support for anomalous curve export both reader/applet side: `java -jar SimpleAPDU.jar -g 10 -b 256 -fp -s` generates 10 curves over ECSP256 an anomalous 256bit curve.
* Changed ECSP curves, 192b and 521b, to ones that have a prime pubkey order.J08nY2016-11-302-184/+185
|
* Fixed small-pub degree test, still crashes most cards.J08nY2016-11-302-14/+20
|
* fixed small pubkey order test, this times out on some ↵J08nY2016-11-282-36/+46
| | | | | | cards(SCARD_E_NOT_TRANSACTED) yet some cards run fine and report illegal value.
* Added test for small public key degree in ECDHJ08nY2016-11-284-30/+134
|
* EC_Consts: addded anomalous curves, with ordinady base points and small ↵J08nY2016-11-281-16/+780
| | | | order pubkeys
* Added tests for non-prime p, ECDSA into the main test suite.J08nY2016-11-263-48/+79
| | | | Also fixed ECDSA test.
* SimpleAPDU: Added cli parsingJ08nY2016-11-261-82/+121
| | | | | | | | | Just a simple command line parsing for two options, should be changed to use some CLI parser lib in the future. -g [num] - generates [num] keys, if [num] is ommitted runs forever -a - runs the test suite for all standard key sizes and field types By default -a is run.
* Merge branch 'devel' of github.com:petrs/ECTester into develJ08nY2016-11-215-80/+281
|\
| * Added support for multiple readerspetrs2016-11-185-65/+266
| | | | | | | | Added support for mass gathering of ECC keys (refactoring needed)
* | ECKeyGenerator: fixes to key genertion,J08nY2016-11-215-78/+102
| | | | | | | | | | | | | | | | ECKeyTester: fixed ECDH/ECDHC pubkey length issue. EC_Consts: fixed decompressG and getCurveParameter array copy mismatch SimpleECCApplet: fixed B parameter test All tests now pass as before.
* | EC_Consts: added sect233r1, sect283r1, sect409r1, sect571r1J08nY2016-11-211-2/+396
| |
* | Implemented External curve setting on applet sideJ08nY2016-11-213-8/+200
| | | | | | | | | | | | | | | | SimpleECCApplet: added TestEC_SupportExternal which receives an FP or F2M elliptic curve parameters in an APDU, sets it and tries ECDH, ECDSA. ECKeyGenerator: added setExternalCurve, which reads and sets external parameters from one buffer, with data order: field | a | b | g | r | k
* | EC_Consts: made parameters maskableJ08nY2016-11-214-41/+35
| | | | | | | | | | | | ECKeyGenerator: since parameters are maskable, one can now setCustomInvalidCurve(curve, PARAMETER_A | PARAMETER_B,...) and the resulting curve will have both A and B invalid.
* | EC_Consts: added F2M curve support, + F2M curve sect163r1 to startJ08nY2016-11-215-1067/+1085
| |
* | refactoring ECTester: created ECKeyGenerator, ECKeyTesterJ08nY2016-11-213-3/+363
|/
* fixed incorrect curve parameter P for secp384r1 curvepetrs2016-10-041-1/+1
|
* EC curve testing in separate apdu due to weird behavior of some cards after ↵v0.0.3petrs2016-10-042-12/+83
| | | | multiple errors within single apdu
* fixed issue with setting rewrite offset optionpetrs2016-10-041-19/+22
|
* corruption of parameter B addedpetrs2016-10-032-45/+222
|
* valid/invalid B set also into private keypetrs2016-09-291-0/+2
|
* added test which repeatedly tries to set invalid B parameter and generate ↵petrs2016-09-272-9/+205
| | | | new keypair with it (shoudl fail)
* more options for corruptions of B argument addedpetrs2016-09-271-15/+45
|
* more systematic was how to skip tests which are stictly dependent on ↵petrs2016-09-091-99/+144
| | | | previous test which must succedd
* removal of leftover codev0.0.1v0petrs2016-09-092-137/+101
|