aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/asn1
Commit message (Collapse)AuthorAgeFilesLines
* Increase ASN1_Time maximum allowed year to 3100Jack Lloyd2019-05-131-1/+2
| | | | See #1931
* Fix X509_DN comparisonJack Lloyd2019-05-083-2/+5
| | | | | | An issue in #1936 indicated that X509_DN operator< was not behaving correctly. Indeed, DNs could compare in such a way that DN1 < DN2 && DN2 < DN1. STL containers do not like this.
* s/as_string/to_string/Jack Lloyd2019-03-014-7/+10
| | | | | A few older APIs use as_string where everywhere else uses to_string. Add to_string's where missing, and deprecate X::as_string.
* Revamp BigInt encoding and decoding.Jack Lloyd2019-01-241-1/+1
| | | | Deprecate some crufty functions. Optimize binary encoding/decoding.
* Fix some warnings from PVS-StudioJack Lloyd2019-01-171-1/+1
| | | | No real bugs, but pointed out some odd constructs and duplicated logic
* Remove trailing whitespaceJack Lloyd2019-01-131-1/+1
|
* Make ctz and high_bit faster and const-time-ishJack Lloyd2018-12-221-1/+1
| | | | | | | They get compiled as const-time on x86-64 with GCC but I don't think this can be totally relied on. But it is anyway an improvement. And, faster, because we compute it recursively
* Remove support for Visual C++ 2013Jack Lloyd2018-10-011-2/+0
| | | | Closes GH #1557
* Add OIDs for SIV and OCB mode ciphersJack Lloyd2018-08-231-0/+26
|
* Add PBES2 as alias for PBE-PKCS5v20Jack Lloyd2018-08-231-1/+2
| | | | Easier to remember and type.
* Cleanup of BigInt encoding/decoding functionsJack Lloyd2018-08-141-1/+1
| | | | | | | | | | | | | Instigated by finding a bug where BigInt::encode with decimal output would often have a leading '0' char. Which is papered over in the IO operator, but was exposed by botan_mp_to_str which called BigInt::encode directly. Split BigInt::encode/decode into two versions, one taking the Base argument and the other using the (previously default) binary base. With a view of eventually deprecating the versions taking a base. Add BigInt::to_dec_string() and BigInt::to_hex_string()
* Add path validation to FFIJack Lloyd2018-08-132-0/+9
|
* Add some final annotationsJack Lloyd2018-08-131-1/+1
|
* Combine SM2 key types for signatures and encryptionJack Lloyd2018-08-011-1/+2
| | | | | | It seems in practice the same key may be end up used for both operations, so maintaining a distinction at the type level just complicates things.
* Add OID for HMAC with SHA-512/256Jack Lloyd2018-08-011-1/+3
|
* Add OID for SM2 with SM3 signaturesJack Lloyd2018-07-241-1/+3
|
* Remove RC2 related OIDsJack Lloyd2018-07-131-5/+1
| | | | Since RC2 has been removed since 1c0bc3cc6b no reason to have these around.
* Add a couple of OIDs commonly seen in certificatesJack Lloyd2018-07-041-1/+5
|
* Add OID for ChaCha20Poly1305Jack Lloyd2018-07-011-1/+3
| | | | From RFC 8103
* Add missing statementJack Lloyd2018-06-081-0/+1
|
* Attempt at MSVC 2013 workaroundJack Lloyd2018-06-081-2/+4
|
* Expose BER_Decoder constructor taking BER_Object&&Jack Lloyd2018-06-081-2/+8
|
* Reduce copying/allocations when BER decodingJack Lloyd2018-06-082-81/+194
| | | | | | | We are constrained in how far we can go because BER_Object must mandatorily copy its value (due to the public member variable exposting the bytes). But this reduces the number of allocations when parsing a sample X.509 certificate by about 15%
* Allow passing a writer function callback to DER_EncoderJack Lloyd2018-06-082-10/+18
|
* Declare copy and move constructors on BER_ObjectJack Lloyd2018-06-081-0/+8
|
* Improve error reporting on unexpected EOF when decoding ASNJack Lloyd2018-06-081-4/+17
|
* Improve error message on BER decoding errorJack Lloyd2018-05-242-6/+50
|
* Add OIDS for Camellia and SM4 in GCM and CBC modesJack Lloyd2018-05-221-1/+17
| | | | Making them usable for private key encryption
* DER improvementsJack Lloyd2018-05-225-36/+103
| | | | | | | | | | | Let DER_Encoder write to a user specified vector instead of only to an internal vector. This allows encoding to a std::vector without having to first write to a locked vector and then copying out the result. Add ASN1_Object::BER_encode convenience method. Replaces X509_Object::BER_encode which had the same logic but was restricted to a subtype. This replaces many cases where DER_Encoder was just used to encode a single object (X509_DN, AlgorithmIdentifier, etc).
* Merge GH #1571 DER_Encoder optimizationsJack Lloyd2018-05-212-83/+123
|\
| * Make MSVC happyJack Lloyd2018-05-211-0/+13
| |
| * Cleanups and optimizations in DER_EncoderJack Lloyd2018-05-212-83/+110
| |
* | Use BER_Decoder::get_next to cleanup X.509 cert decoding codeJack Lloyd2018-05-212-1/+11
|/
* Add Scrypt key dervation functionJack Lloyd2018-05-161-1/+3
|
* Add message to BOTAN_ARG_CHECK and use it more widelyJack Lloyd2018-05-131-10/+6
|
* Add OpenPGP-specific curve OIDsMarcus Brinkmann2018-05-021-1/+5
|
* Allow year up to 2200 in ASN1 time objectsJack Lloyd2018-04-122-4/+19
| | | | | | Also tighten up checking of days Fixes GH #1536
* Avoid creating a map from a DN when not requiredJack Lloyd2018-03-211-0/+2
|
* Support Ed25519 certificate formatJack Lloyd2018-03-201-1/+1
| | | | Able to create certificate chain and verify it with OpenSSL 1.1.1
* Remove use of ;; to end linesJack Lloyd2018-03-191-1/+1
|
* Support custom DN entriesJack Lloyd2018-03-141-0/+5
| | | | GH #1490
* Allow decoding ASN.1 OID 0.0Jack Lloyd2018-03-051-1/+3
| | | | | | | | I had no idea this was a valid OID but apparently it is. And for some who-knows-why reason FreeTSA certificate includes it in their certificate policy extension. GH #355
* Use API annotationsJack Lloyd2018-03-021-2/+2
|
* Use BOTAN_DEFAULT_BUFFER_SIZE instead of DEFAULT_BUFFERSIZEJack Lloyd2018-03-011-1/+1
|
* Merge GH #1448 Support custom curves in TLS handshakeJack Lloyd2018-02-191-10/+0
|\
| * Remove house curve supportJack Lloyd2018-02-131-10/+0
| |
* | Of course they are public member variables, not functions ...Jack Lloyd2018-02-133-3/+3
| |
* | Add BOTAN_DEPRECATED_PUBLIC_MEMBER_FUNCTIONSJack Lloyd2018-02-133-1/+3
|/ | | | | | Makes such things easier to find in the future. Also adds BOTAN_NO_DEPRECATED which causes them to be private instead.
* Use new literal syntax for OIDsJack Lloyd2018-02-072-204/+210
| | | | Reduces size of oid_maps object file by a ~16K
* Merge GH #1444 Add (back) modifyable OID mapsJack Lloyd2018-02-073-413/+560
|\