問題タブ [cbor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - cbor.tag を cose-js の cose 署名に追加する方法
cose-js の経験がある人は、cbor タグを cose 署名に追加する方法を知っていますか? 具体的には、cose-sign1であることを示すタグ「18」。
私はコンピュータ サイエンス コースで COSE を勉強しています。cose-sign1 手順を使用して、CBOR と COSE を使用して秘密のレシピをエンコードする必要があります。
現在、これを取得しています --> {[[保護されたヘッダー、保護されていないヘッダー]、[ペイロード]、[署名]]}。
しかし、私はこれが必要です --> {Number: 18 Content: [[保護されたヘッダー、保護されていないヘッダー]、[ペイロード]、[署名]]}
何か案は?
ありがとう
javascript - キーのフォーマットに関する CBOR エンコーディングの問題
javascript (ノードを使用しない) では、ライブラリ ( https://github.com/paroga/cbor-js ) を使用して CBOR エンコードを行う場合と、オンラインで CBOR を使用する場合( https://cbor.me/ ) で異なる結果に直面しています。最新の CBOR ライブラリを使用しても、結果は同じであることに注意してください。
たとえば、次のようなオブジェクトを設定します。
オンラインで CBOR を使用してエンコードすると、a201644a6f686e622d321901c8 が得られます。詳細は次のとおりです。
javascript で CBOR ライブラリを使用してエンコードすると、異なる結果が得られます: a26131644a6f686e622d321901c8
これを CBOR オンラインで 16 進数でデコードすると、次のようになりました: {"1": "John", "-2": 456}。結果は、キー 1 が引用符 (") で表示されることを除いて、定数 'initial' とほぼ同じです。
CBOR online は、16 進数値をより「読みやすい」ビューに再フォーマットします。
以下の私のJavascriptコードを参照してください:
次のような特定の 16 進数値を手動で置き換えることができます。
'61 31 64' は '01 64' に置き換えられました
しかし、可能性のあるすべてのオプションをカバーするためにリストが重要になる可能性があるため、それを行うのは好きではありません。
結果を 'a26131644a6f686e622d321901c8' ではなく 'a201644a6f686e622d321901c8' にする必要があるため、回避策はありますか?
c++ - CBOR を使用して既に定義されているクラスをシリアル化する
現在、CBOR を使用して組み込みプロジェクトのデータをシリアル化しようとしています。私はCBORの完全な初心者なので、誰かが私を助けてくれるかもしれません. 私が達成したいのは、組み込みプロジェクトのクラスを表す Python を介して PC 上のデータをシリアル化することです。次に、BLE 経由で組み込みプロジェクトにデータをダウンロードし、そこで逆シリアル化します。
プロジェクトで次のクラスが既に定義されていると仮定しましょう
このクラスのシリアル化は CBOR でどのように見えるでしょうか? CBOR と C++ の良い例はありますか?
CBOR 以外の提案はありますか? 私はProtobufに精通していますが、.protoファイルの書き込みを避けたいので、CBORを調べました。