問題タブ [mbedtls]
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.
rsa - ESP32 で RSA を使用してメッセージを暗号化する
ここで達成しようとしているのは、PlatformIO + Arduino フレームワークを使用して構築された ESP32 アプリ内のメッセージを暗号化することです。
いくつか検索した後、このレポを見つけました: https://github.com/espressif/arduino-esp32
内部には、私が望むものを達成するのに役立つツールがあります https://github.com/espressif/arduino-esp32/blob/master/tools/sdk/include/mbedtls/mbedtls/rsa.h
https://platformio.org/lib/show/10874/mbedtlsにあるライブラリ「mbedtls」をPlatformIO プロジェクトにインポートし、そこから作業を開始しました。
質問: アプリに秘密鍵ファイルをロードし、RSA ツールを使用してメッセージを暗号化する方法を教えてください。
私が現在持っているものは次のとおりです。
今のところ、秘密鍵の内容を char* 形式で直接インポートします (pem キー ファイルをアプリにインポートする方法がわかりません)。ヘッダー ファイルを使用します。
const unsigned char *vendorPrivateKey = reinterpret_cast<const unsigned char *>(VENDOR_PRIVATE_KEY);
値は secrets.h 内に格納されます。
次に、プログラムを実行すると、次のエラー メッセージが表示されます。
failed! mbedtls_pk_parse_key returned: 15616
pk.h ファイルの説明によると、このエラー コード 15616 (16 進数) は 3D00 であり、/**< Invalid key tag or value. */
フォーマット チェックを提供し、秘密鍵ファイルが mbedtls の要件に適合しているかどうかを確認できる Web サイトはありますか?