-
Notifications
You must be signed in to change notification settings - Fork 14
Open
Description
I used Kotlin's KotlinxSerializationCbor to generate following CBOR, encoding it in base64 urlsafe format:
v2dzdWNjZXNz9G5taXNzaW5nRmFjdG9yc5-fn2h3ZWJhdXRobr____-fn2d5dWJpb3Rwv_______
I can decode it using cbor2pretty.rb tool with the following command:
echo v2dzdWNjZXNz9G5taXNzaW5nRmFjdG9yc5-fn2h3ZWJhdXRobr____-fn2d5dWJpb3Rwv_______ \
| basenc -d --base64url | cbor2pretty.rbHere is the result:
bf # map(*)
67 # text(7)
73756363657373 # "success"
f4 # primitive(20)
6e # text(14)
6d697373696e67466163746f7273 # "missingFactors"
9f # array(*)
9f # array(*)
9f # array(*)
68 # text(8)
776562617574686e # "webauthn"
bf # map(*)
ff # primitive(*)
ff # primitive(*)
ff # primitive(*)
9f # array(*)
9f # array(*)
67 # text(7)
797562696f7470 # "yubiotp"
bf # map(*)
ff # primitive(*)
ff # primitive(*)
ff # primitive(*)
ff # primitive(*)
ff # primitive(*)
This indicates to me that this is a valid CBOR and that probably Kotlin serializer is not at fault.
When I try to decode this CBOR using this library using code snippet:
require 'cbor'
require 'base64'
CBOR.decode(Base64.urlsafe_decode64('v2dzdWNjZXNz9G5taXNzaW5nRmFjdG9yc5-fn2h3ZWJhdXRobr____-fn2d5dWJpb3Rwv_______'))I get error:
in `decode': invalid byte (CBOR::MalformedFormatError)
Is this library not supporting map(*) and/or array(*) elements? If this is the case, is it possible to add support for such elements?
Metadata
Metadata
Assignees
Labels
No labels