diff options
author | Peter Wu <peter@lekensteyn.nl> | 2015-07-03 19:47:00 +0200 |
---|---|---|
committer | Peter Wu <peter@lekensteyn.nl> | 2015-07-03 20:01:08 +0200 |
commit | a17875824df9b1cf76826cc5be300d9d6d3a61a3 (patch) | |
tree | 7c1a824c5ade66ad267356f76668ca29031c5eca /asn1/x509af/packet-x509af-template.c | |
parent | bd6065f13f41a53ea4b3290500e6ce3462524eac (diff) | |
download | wireshark-a17875824df9b1cf76826cc5be300d9d6d3a61a3.tar.gz |
[WIP] x509af: dissect subjectPublicKeyx509-subjectpublickey
The subjectPublicKey field of a Certificate (TBSCertificate) is defined
as type BIT STRING. The actual contents depend on the Algorithm
Identifier which is preceding the subjectPublicKey field.
This patch (aims to) add(s) support for dissection of the public key.
Notes:
Currently only RSA is "half-working" and dissected as:
subjectPublicKeyInfo
algorithm (rsaEncryption)
Algorithm Id: 1.2.840.113549.1.1.1 (rsaEncryption)
subjectPublicKey: 3082010a0282010100b7c769e2d0eacaeb929fc08238a9ff...
modulus : 0x00b7c769e2d0eacaeb929fc08238a9ffc59cab39c28a2e26...
publicExponent: 65537
It should probably become:
subjectPublicKeyInfo
algorithm (rsaEncryption)
Algorithm Id: 1.2.840.113549.1.1.1 (rsaEncryption)
subjectPublicKey
RSAPublicKey
modulus : ...
publicExponent: 65537
Right now DSA and DH keys are displayed instead of subjectPublicKey
due to the hf_id reuse. These should get a new hf ID instead.
TODO:
- Add public key dissections below the BIT STRING subtree. This might
require API changes to dissect_ber_bitstring.
- Import PKIX1Algorithms2008 module from RFC 5480 (Elliptic Curve
Cryptography Subject Public Key Information) which is based on the
PKIX1Algorithms88 module from RFC 3279). Then import DSA, DH and
others from it. This is more correct than exporting it from the
PKCS#1 module.
- Check field names, right now these are displayed as a rather
useless/generic BER integer field (for the DH and DSA params).
Change-Id: Ib92645433b0a0078a947ff0ac26c5e6a64877b93
Diffstat (limited to 'asn1/x509af/packet-x509af-template.c')
-rw-r--r-- | asn1/x509af/packet-x509af-template.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/asn1/x509af/packet-x509af-template.c b/asn1/x509af/packet-x509af-template.c index 21211401ff..20484b7e08 100644 --- a/asn1/x509af/packet-x509af-template.c +++ b/asn1/x509af/packet-x509af-template.c @@ -33,6 +33,7 @@ #include "packet-x509if.h" #include "packet-x509sat.h" #include "packet-ldap.h" +#include "packet-pkcs1.h" #define PNAME "X.509 Authentication Framework" #define PSNAME "X509AF" |