Commit Graph

5826 Commits

Author SHA1 Message Date
Viktor Tarasov
c0c8a89126 mcrd: move driver to the end of detection list
the drivers that need to probe the AIDs to recognize its supported card
have to be placed at the end of the list of internal drivers
2015-03-20 18:08:18 +01:00
Hannu Honkanen
2fffbce65c myeid: update EC support for MyEID-v4 card 2015-03-14 17:47:44 +01:00
Frank Morgner
b8c0df725a Merge pull request #390 from lbakman/master
Fixed issue with building dnie-tool bash_completion script

closes #392
2015-03-11 21:55:04 +01:00
Lau bakman
1becc45c10 Updated dnie-tool.1.xml for consistency
Experienced a problem with dnie-tool where I would receive a warning with the content of /etc/bash_completion.d/dnie-tool.

The cause of the error was a missing case label which in turn was caused by the formatting of the dnie-tool.1.xml.

Options were formatted like <term><option--xarg, -x</option></term> which were not handled by the sed regular expression in the makefiles.

Modified the dnie-tool.1.xml file to be consistent with the other doc files and to generate the dnie-tool file correctly.
2015-03-11 18:22:56 +01:00
Viktor Tarasov
877fa862d9 isoApplet: prototype of asn1_sig_value_sequence_to_rs() has changed 2015-03-10 09:09:14 +01:00
viktorTarasov
595be37fee Merge pull request #305 from philipWendland/master
Add support for the IsoApplet Java Card applet
2015-03-07 23:36:25 +01:00
Viktor Tarasov
2abe135f97 asn1: re-fix error in EC signature encode helper
see comment for 8cf99a9372
2015-03-07 22:40:43 +01:00
Viktor Tarasov
1739300657 pkcs15: fix name of EC curve, add new ones 2015-03-05 10:32:54 +01:00
Viktor Tarasov
6f6286de99 pkcs11: generate EC key: use allocated EC params
For internal use allocate and copy the EC params data from the caller's template,
rather then use them directly as a pointer in internal public key data.
2015-03-04 19:47:13 +01:00
Viktor Tarasov
31124ac4f9 pkcs15init: allocate EC parameters 2015-03-04 19:46:21 +01:00
Viktor Tarasov
1123768ac3 libopensc: invalid 'free' and 'assign NULL' order 2015-03-04 19:45:23 +01:00
Viktor Tarasov
8cf99a9372 asn1: fix error in EC signature encode helper
The raw format of EC signature was invalid when 'r' and 's' had different length.
https://github.com/OpenSC/OpenSC/pull/381#issuecomment-77016382

According to PKCS#11 v2.20:
"If r and s have different octet length, the shorter of both must
be padded with leading zero octets such that both have the same octet length."
2015-03-04 19:43:15 +01:00
Philip Wendland
74aeb8c923
IsoApplet: register supported EC curve *per curve* 2015-02-22 23:08:18 +01:00
Doug Engert
58d1f1db3f Merge pull request #385 from darconeous/patch-2
Allow PKCS15 cache to work with PIV cards (if enabled)
2015-02-21 21:51:50 -06:00
Philip Wendland
85d16fbc57
IsoApplet: use helper function sc_asn1_sig_value_sequence_to_rs() introduced in #381 2015-02-20 23:02:04 +01:00
Philip Wendland
1aeebdaf1c
IsoApplet: react to changes of _sc_card_add_ec_alg() in fa923831f8 2015-02-20 22:56:23 +01:00
Philip Wendland
59eeacb74b
IsoApplet: react to removal of sc_pkcs15_ec_parameters in fa923831f8 2015-02-20 22:07:49 +01:00
Philip Wendland
a9d43af4bf
IsoApplet: use a buffer large enough when generating EC keys larger than 320 bit 2015-02-20 21:55:35 +01:00
Philip Wendland
3312c1e2b9
IsoApplet: install isoApplet.profile on windows 2015-02-20 21:55:35 +01:00
Philip Wendland
da05fa2a47
IsoApplet: try to fix EC parameters when importing private keys from file 2015-02-20 21:55:35 +01:00
Philip Wendland
44d724b012
IsoApplet: fix more (comment) alignment issues with tabstop=8 2015-02-20 21:55:35 +01:00
Philip Wendland
5628a06353
IsoApplet: Align comments with spaces instead of tabs
Better view with tabstop=8.
2015-02-20 21:55:35 +01:00
Philip Wendland
43fa99c0f2
IsoApplet: Move the key gen debug info to the right places 2015-02-20 21:55:35 +01:00
Philip Wendland
0473decae4
IsoApplet: clear memory after prkey import.
Private key import via plain APDUs is dangerous and not recommended anyway, but clearing the apdu buffer does not hurt anyone.
2015-02-20 21:55:34 +01:00
Philip Wendland
73b391731b
IsoApplet: Don't set ECC field length of 512
512 is wrong for EC FP (correct would be 521 bit), and neither of those
two are currently supported by OpenSC.
2015-02-20 21:55:34 +01:00
Philip Wendland
e791948e42
IsoApplet: Simplify the private key import
Use the new features of sc_asn1_put_tag introduced in OpenSC/OpenSC#314.
Additionally, a RSA private key is sent from one large buffer using either extended APDUs or chaining (in compliance to IsoApplet API version 00.05).
2015-02-20 21:55:34 +01:00
Philip Wendland
6cdf6c08a5
IsoApplet: use AID directly when selecting applet
Now that apdu.data is const (see ef94c6b875), this can be done without discarding the const qualifier of the aid parameter.
2015-02-20 21:55:34 +01:00
Philip Wendland
09acfd7ec0
IsoApplet: ECDSA signatures - only strip excess zeroes
It is required to strip excessive zeroes returned by some Java Cards when removeing the ASN1 structural information for PKCS#11 so that the x/y can be calculated by dividing the signature length by 2. However, the leading zero may only be stripped if it is excessive (outside the field length). Otherwise generated signatures are wrong in rare cases (1 out of 256).
2015-02-20 21:55:33 +01:00
Philip Wendland
c463f1a7a1
IsoApplet: Do not set RSA hashes
See: 189e998486
The IsoApplet requires the host to do the hashes with RSA. OpenSC will
add all hashes that are available in software and will not expect the
card to do the hashing.
2015-02-20 21:55:33 +01:00
Philip Wendland
e3cc851b72
IsoApplet: EC key-gen rework and refactorings
Rework the EC key generation mechanism to send the curve parameters to
the card. In earlier versions, the applet had a copy of the curve
parameters and there was a different algorithm reference for every
curve. This is unfeasible when trying to support a larger number of
curves because of size limitations of the applet.
This commit additionally includes some refactorings that should not
change the functionality.
2015-02-20 21:55:33 +01:00
Philip Wendland
6f9e894ebe
IsoApplet: set lock when doing command chaining 2015-02-20 21:55:33 +01:00
Philip Wendland
48bd6b0964
Add support for the IsoApplet (Java Card applet)
The IsoApplet can be found here:
https://github.com/philipWendland/IsoApplet
Add read/write support for this applet, including RSA and
ECC support.
2015-02-20 21:55:26 +01:00
Frank Morgner
9f3dbaa39d honour warnings 2015-02-20 19:54:40 +01:00
Frank Morgner
bff0ea4837 fixed compiler warning 2015-02-20 19:54:40 +01:00
Frank Morgner
16ea926d29 fixed indentation 2015-02-20 19:54:40 +01:00
Frank Morgner
236e68b17c fixed NULL dereference 2015-02-20 19:54:40 +01:00
Frank Morgner
da07e22c97 use memmove for overlapping memory 2015-02-20 19:54:40 +01:00
Pedro Martelletto
ced77ae6c7 cardos: overwrite content of deleted private key
when deleting a private key object, overwrite its contents so the key can no longer be used.

(VTA: original commit touched to use LOG macros and add debug logs)
2015-02-20 18:03:37 +01:00
Viktor Tarasov
b08671fab5 pkcs15-crypt: option for output format of ECDSA signature 2015-02-20 14:20:28 +01:00
Viktor Tarasov
80c496671f helper functions to change format of ECDSA signature 2015-02-20 14:20:19 +01:00
Viktor Tarasov
fa923831f8 introduce EC curve OID into algorithm info data
needed to store information about EC curve supported by card.
Primary usage is when importing/generating key to get know if particular curve is supported by card.
2015-02-20 13:49:18 +01:00
Doug Engert
45a4def5fd Merge pull request #382 from dengert/piv-fix1
Add brackets   in card-piv.c
2015-02-16 10:57:01 -06:00
Doug Engert
d7475c8180 Add brackets in card-piv.c 2015-02-16 10:43:19 -06:00
Doug Engert
e37690aed5 Merge pull request #376 from dengert/piv-reverts
Fix-up changes caused by Coverity scan See #366 in PIV code
2015-02-16 10:29:36 -06:00
Doug Engert
572218c59c Fall through comment before break 2015-02-16 10:11:24 -06:00
Martin Paljak
14ed749a88 Create CONTRIBUTING.md
So that new issues and pull requests could get some information.
2015-02-13 16:52:10 +02:00
Robert Quattlebaum
0ffad3f3bb Fix for bad caching behavior of PIV PKCS15 emulator. 2015-02-12 16:42:17 -08:00
Doug Engert
981a0fbbaf Fix-up changes caused by Coverity scan
piv-tool.c add  /* fall through */ to avoif false warning
card-piv.c - clean up if sc_lock fails.
2015-02-11 13:39:59 -06:00
Viktor Tarasov
3c1d8ad695 accept no output for 'SELECT' MF and 'SELECT' DF_NAME
PR #342
2015-02-07 21:46:44 +01:00
Martin Campbell
d162143964 Updating to fix failure of ePass2003 USB smart card due to failure to re-authenticate secure messaging when card is reset due to multiple applications using PKCS11 sessions 2015-02-07 21:46:44 +01:00