## 問題点を一行で表すとこうなります
**SE051C2では、アプレットのオブジェクトストアに触れるすべてのコマンドが返されます
**0x6985(条件が満たされていません)** — 一方で「GetRandom」は*同じ*で成功します
会議、武装プラットフォームSCP03チャネルを通じても含まれます。
## 私たちの質問
**Q1.この部分は「強制プラットフォームSCP」/制限付き/輸送状態ですか?
どちらのサンプルも納品時の状態のままで、片方は工場から出荷されたばかりの新品です。もしSE051C2が
オブジェクトストアはプラットフォームSCP03キーがNXPからローテーションされるまでロックされます
デフォルトで、それなら以下のすべての観察を正確に説明できる。もしそうなら、
その州を離れるための文書化された手続きはありますか?
**Q2.オブジェクト操作は顧客キー(回転)プラットフォームSCP03が必要ですか?
デフォルトのプラットフォームキーは?**私たちのチャネルはデフォルトで認証しています。
明らかにトラフィックを運ぶが、その上のすべてのオブジェクトの指令は拒否される。
**Q3.もしQ1/Q2がイエスなら、まずどうやってUNIQUE_IDを読み取るのでしょうか?**
これはまさに鶏と卵の関係であり、我々の行く手を阻むものだ。私たちのプラットフォーム鍵導出は次のようになります
チップは入力としてUIDですが、「ReadObject(UNIQUE_ID)」自体は拒否されたものの一つです
命令。新品部品に対する作業手順の順序はどのようになっていますか?
**Q4.アプレットを報告できるGET DATA / GET STATUSの通知はありますか?
ライフサイクル/VCの状態は?**ステートレスコマンドは私たちにとっては*確かに*動作します、SOもしそのようなクエリが存在するなら
推測するのではなく、自分たちでパーツの状態を確認できます。
**Q5.この部分が通常のオブジェクト作成を拒否するのはなぜでしょうか?明らかに機能しているのに。
他の人にとってはどうでしょうか?DeleteAll/0x6985Thread(m-p/1648349)では、ステップ1は
`Se05x_API_WriteUserID(...FACTORY_RESET...)`が**0x9000**を返し —
WriteSecureObjectがプラットフォームSCP03のみでデフォルトセッションで成功しています。それは
まさに、我々にとって失敗に終わる種類の指揮系統だ。つまりオブジェクト書き込みは本質的にそうではありません
セッションゲート。違いはバリエーションや構成(SE051C2とSE050の違い)なのか、それとも
プラットフォームキーはまだNXPのデフォルトですか?
**Q6.m-p/1716555 は同じ根本原因ですか?そこで別のユーザーが報告しています
「Se05x_API_WriteUserID」が返す「SM_ERR_CONDITIONS_OF_USE_NOT_SATISFIED」――私たちとまったく同じ
症状――そしてその疑問は答えが出ていないようです。
**Q7.`kSE05x_ECCurve_NIST_P256` は明示的な `Se05x_API_CreateECCurve` を必要としますか?
SE051C2 ですか、それとも内蔵されていますか?** (些細なことですが、試してみたところ、CreateECCurve でさえも
拒否した。)
## 測定対象
|チェック|結果|意味 |
|---|---|---|
|「Se05x_API_SELECT」アプレット |**0x9000** |IoT applet selected |
|『Se05x_API_GetRandom』(単純) |実エントロピー |セッション+輸送作業|
|プラットフォームSCP03認証 |**成功** |デフォルトのキーセットが一致 |
|**ランダムに話せ、SCP03チャネル越し** |**成功、本物のエントロピー** |暗号化 + C-MAC + 復号検証済み |
|連続して2回目のラップコマンド |**成功** |コマンドカウンターが同期を保つ |
|「WriteECKey」NIST P-256(生成) |**0x6985** |
|'WriteECKey' secp256k1 (import) |**0x6985** |「CreateCurve_secp256k1」は最初に呼ばれます |
|『WriteECKey』 Ed25519(インポート) |**0x6985** |組み込みの曲線、CreateCurveは不要 |
|『ReadObject(UNIQUE_ID)』 |**0x6985** |政策論争は関係ない |
|「WriteBinary_Ver」(ファイルポリシー付き) |**0x6985** |ファイルオブジェクトも失敗する |
|『CreateECCurve(NIST_P256)』 |**0x6985** |曲線を作ることさえ拒否されます |
|「CheckObjectExists」 |**0x6985** |対象のテストすらできない |
**「GetRandom」コマンドだけが動作します。**すべてのオブジェクトストア操作は以下を返します
0x6985 — 通常のサンプルと SCP03 で包装されたサンプルの両方で発生。
## 実験により既に否定済み
1. **その部分ではありません。**新品のSE051C2も全く同じように動作する。
2. **交通費やセッション費用は含まれません。**SELECT は 0x9000 を返します。GetRandom は実数を返します。
同一セッションにおけるエントロピー。
3. **壊れたり欠落したりしたプラットフォームSCP03チャネルはない。**認証は成功しました
デフォルトのキーセットと、決定的に「GetRandom」が発行された**武装された
チャネル**は実エントロピーを返し、2回目の連続(コマンドカウンター)も同様です。同期)を組み合わせる。
暗号化+C-MAC+応答復号化のすべてが検証されました。失敗するオブジェクトコマンド
機能が証明されたチャネルで運ばれています。
4. **欠損キーポリシーではありません。**実際の `Se05xPolicy_t` を渡しました
すべての `WriteECKey` に対して、(`ALLOW_SIGN|VERIFY|KA|READ|WRITE|GEN`、authID 0) を実行します。変更なし。
(そもそも読みUNIQUE_ID理由は説明できません — 「ReadObject」はポリシーを取らないからです。)
5. **曲線が欠落しているわけではありません。**`CreateCurve_secp256k1`はsecp256k1の前に呼び出されます。
インポート、Ed25519は組み込み、`Se05x_API_CreateECCurve(NIST_P256)`も**
0x6985を返します。
6. **命令のご注文ではない。**プレーンセッションでも、0x6985
認証済みのSCP03チャネル。
7. **ミドルウェア認証ビルド構成ではありません。**再構築
`SSS_HAVE_SE05X_AUTH_PLATFSCP03=1`、`SSS_HAVE_SE05X_AUTH_NONE=0`および
`SSSFTR_SE05X_AuthSession=1`(以前はNONE/0でした)。変更なし。
## 環境
* 部品番号: **SE051C2** — サンプル2個、うち1個は工場出荷時の新品、動作は同一
* ホスト: STM32L562、ベアメタル、TrustZoneセキュアワールド、I2C1 @ 100 kHz、T=1
* ミドルウェア: ベンダー提供の NXP Plug & Trust `Se05x_API_*` をカスタム 上で使用
`smCom_TransceiveRaw`トランスポート(独自のT=1フレーミング - SELECTとGetRandomが証明)
それは動作します)。フルミドルウェアで、**ナノパッケージではありません**。
* プラットフォームSCP03:NXPのデフォルトキー;認証は成功し、トラフィックを運びます
こんにちは、 @winetime さん、
platformSCPを有効にせずに同じ手順を試してみましたか?SE051Cは デフォルトで必須プラットフォームSCPを必要としません。この問題に関するAPDUコマンドログを共有していただければ、さらに確認するかもしれません。
すてきな一日を、
カン
-------------------------------------------------------------------------------
注記:
この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとうございます!
- 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています
もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。
-------------------------------------------------------------------------------
こんにちは カン、 ありがとう のために の 素早い 返事。
はい — プラットフォームSCPなしでテストされたもので、それが私たちの通常のCASEです。 私たちのオブジェクト操作は実行 before se051_scp03_open() が呼ばれているため、すでにプレーンセッション上にあり、そこで失敗します。その後、SCP03プラットフォームを起動しても何の意味もありません — 同じように0x6985 どちら やり方も。
以下はAPDUログです。通常のセッション、SCP03なし(CLA=0x80、なし 0x04 セキュアメッセージングビット。応答は単純な 状態 言葉、 ない (包装済み)
それは CheckObjectExists (INS 04 MGMT、P2 27、TAG_1オブジェクトID 0x2000F030) — 読み取り専用存在テスト — CONDITIONS により拒否されました ない 満足。
オブジェクトストアコマンドを試行するたびに、どのオブジェクトIDでも、同じ0x6985が返されます。 CheckObjectExists、 WriteBinary_Ver (ファイルポリシー付き) WriteECKey (生成およびインポート; P-256、secp256k1 CreateCurve_secp256k1 まず、そしてEd25519) CreateECCurve(NIST_P256)、 ReadObject(UNIQUE_ID) 。
同じ平野会で、 仕事 大丈夫:
SO、輸送手段とアプレットの選択は良好です。object-store commands are refusedのみです。
質問: 工場出荷時のSE051C2が拒否する原因は何でしょうか CheckObjectExists 通常のセッションで?我々は全く同じ行動を目にする の上 二 サンプル、 1つ ブランド 新しい そして 一度もない 書かれた に。
アプレットのライフサイクル/構成状態を報告するGET DATA(またはそれに類する)クエリはありますか?無状態の命令は 私たちのために機能し、 SO 私たちは CAN 走 逃げて 報告 戻せない。
セットアップ:SE051C2、STM32L562ベアメタルホスト、I2C 100kHz、自社のT=1フレーミング(SELECTとGetRandomが証明)、フルPlug & Trustミドルウェア Se05x_API_*, not nanoパッケージ。