-
Notifications
You must be signed in to change notification settings - Fork 135
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DER canonical encoding for INTEGERs #1395
Comments
From X.690:
|
Oh, I missed that :(, thanks. |
No worries, it's an elephantine specification |
This error might be better surfaced as |
I agree, maybe |
Changed to |
Trying to decode a simple DER payload
[0x02, 0x00]
as an INTEGER, I get anASN.1 INTEGER not canonically encoded as DER
error. Obviously[0x02, 0x01, 0x00]
works correctly and decode as0
.I took a look at ITU-T X.690 specification and I was not able to find a section describing this restriction, neither in paragraph 9 (Canonical Encoding Rules), nor in paragraph 10 (Distinguished encoding rules). There are some restrictions on Length form, but it seems there is nothing that doesn't allow to have only one byte for length with value
0x00
, as is specified in section 8.1.3.4 (short form) instead.Now, thinking about DER, i suppose that this could make sense, but i would not be wondered if next code succeded:
The text was updated successfully, but these errors were encountered: