- 証明書ファイルを保存する特定のパーティションを設定する
- 複数の証明書ファイルの管理
- 証明書形式の変換
- 証明書をフラッシュにダウンロードする
- 対応する証明書ファイルを使用する
1. 証明書ファイルを保存する特定のパーティションを設定します。
次のように、プロジェクト パーティション テーブル ファイルで証明書ファイル パーティションを定義します。
- 上記のように、変換された
certificate.bin
ダウンロードアドレスは、0x41000
- 証明書ファームウェアのサイズは です
300 KB
。パーティションが重複しないようにする必要があり、bin ファイルのサイズがフラッシュ サイズ設定を満たしていることを確認する必要があります。
2. 複数の証明書ファイルの管理
- 顧客プロジェクトの下にカスタマイズされたフォルダーを作成します
- カスタマイズされたフォルダー ディレクトリに証明書フォルダーとcertificate.csv ファイルを作成します。
certificate
さまざまな証明書ファイルがフォルダーの下に保存されます (例server_ca.crt
: 、、server_cert.crt
)。server.key
certificate.csv
[ファイル]で、さまざまな証明書のファイル パスを次の形式で指定します。
key,type,encoding,value
server_cert,namespace,,
server_cert,file,binary,E:\esp\test\customized\server_cert\server_cert.crt
server_key,namespace,,
server_key,file,binary,E:\esp\test\customized\server_key\server.key
server_ca,namespace,,
server_ca,file,binary,E:\esp\test\customized\server_ca\server_ca.crt
管理対象としてサポートされているファイル タイプについては、「CSV ファイル形式の説明」を参照してください。
- ストレージの種類が異なると、異なる設定を行う必要があります
Encoding
3. 証明書形式の変換
- esp-idf/components/nvs_flash/nvs_partition_generatorファイルの下にある
nvs_partition_gen.py
スクリプト使用します。
E:\esp\test\customized\certificate.csv
ファイルをcertificate.bin
形式に変換します
NVS スクリプト ツールの使用方法については、「NVS パーティション ジェネレーター」を参照してください。
コマンドは次のとおりです。
python nvs_partition_gen.py generate E:\esp\test\customized\certificate.csv certificate.bin 0x4B000
0x4B000
変換された bin ファイルのサイズです
4. 証明書をフラッシュにダウンロードします。
パーティション テーブルが上記で設定されているため、変換されたcertificate.bin
ダウンロードアドレスは となり0x41000
、Flash ダウンロード ツールを直接使用してcertificate.bin
ファイル
- 新しい証明書ファイルを置き換える必要がある場合は、対応する
E:\esp\test\customized\certificate
フォルダー、nvs_partition_gen.py
スクリプト ツールを使用して証明書ファイル形式を bin ファームウェアに変換するだけです。 - 新しい証明書をプロジェクトに配置し、プロジェクトを再コンパイルして証明書ファームウェア (bin ファイル) を取得する必要はありません。
5. 対応する証明書ファイルを使用します。
アプリケーションで証明書ファイルを使用する必要がある場合は、nvs_open_from_partition API を使用して証明書ファイルを取得し、対応するパラメータは次のように設定されます。