Comments (3)
It's possible that this currently can't be done with any ltc version.
Can you provide an example "CMS SignedData certificate" in encoded format (i.e. the expected output)?
from libtomcrypt.
The CMS spec RFC 5652 uses a CONTEXT SENSITIVE [0] IMPLICIT SET OF for the certificates member of a SignedData structure. A second example in CMS is the signedAttrs member of a SignerInfo structure.
But, maybe a toy example will be more useful here. In the example below, the integers are sorted by their DER encoding. This is implemented in der_encode_setof()
but it isn't called from der_encode_custom_type()
.
Toy ::= SEQUENCE {
hello UTF8String,
numbers [0] IMPLICIT SET OF Number }
Number ::= INTEGER { zero(0), one(1) }
30 0F
0C 02 68 69
A0 09
02 01 00
02 01 00
02 01 01
When the data type LTC_ASN1_CUSTOM_TYPE
represents a primitive ASN.1 data type, the member used
indicates the structure of the data
member. Maybe that API could work also for a constructed ASN.1 data type, to distinguish SEQUENCE, SET and SET OF.
from libtomcrypt.
The function der_encode_set()
overwrites the member ltc_asn1_list.used
, then passes the list to the function der_encode_sequence_ex()
. Maybe der_encode_set()
should use the member ltc_asn1_list.optional
instead for set ordering.
It wouldn't be a bad idea to modify ltc_asn1_list
to use an anonymous union to rename the members used
and optional
(for decoding) to custom_type
and set_order
(for encoding).
from libtomcrypt.
Related Issues (20)
- Support for reading SHAKE output in chunks. HOT 5
- Request to make project status (no more releases?) transparent on main page
- Format of r in poly1305? HOT 1
- 3 Warnings 'Implicit conversion loses integer precision' in tweetnacl.c HOT 1
- Warning 'Implicit conversion loses integer precision: 'unsigned long long' to 'unsigned long'' in ed25519_verify.c HOT 1
- 2 Warnings 'Implicit conversion loses integer precision: 'unsigned long' to 'int'' in xts_init.c HOT 1
- Struct corruption in der_decode_sequence_flexi.c HOT 2
- Custom LIBPATH is not reflected in libtomcrypt.pc HOT 3
- Probably a mistake in function der_decode_choice HOT 1
- Wrong sign in documentation of 12.3.2 Extended Key Generation HOT 1
- Buffer overflow in ecc_get_key HOT 1
- Tiger Hash - Question HOT 4
- Signature verification of X509 certificate HOT 2
- Cannot compile with msvc2012 x86 HOT 1
- pkcs_1_pss_decode.c HOT 3
- Is there any plan to support FFDHE (RFC7919)? HOT 2
- ltc_math_descriptor redefinition error when attempting to compile using LTM as math provider. HOT 4
- ECC_Encrypt_Key does not work properly. HOT 1
- Wishlist: Shamir Shared Secret and ECIES HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libtomcrypt.