- SIMは、Javaカードの場合 - それはサンズJCRE仕様からJCREが含まれているのでしょうか?
はい、とにかく「サンズ」JCRE仕様に準拠したJCRE(日はもう存在しません、それは今、すべてのOracleの)。
2a。 SIMカードにJCREがある場合、実際にはカードのOSですか、別のレイヤがありますか?
複数のレイヤーが存在する可能性があります。通常は、ネイティブの暗号ライブラリとHAL - ハードウェア抽象化(または適応)レイヤーも備えています。また、別の/ネイティブOSがカードに依存している場合(ただし、SIMカードの場合は表示されません)
2b。もしあれば、どこでそれについて読むことができますか? JCREとAPDUやカードリーダーと対話するオプションはありますか?
オペレーティングシステム/チップの製造元に相談する必要があります。また、それらが入手できない場合は、販売代理店から連絡を受けてください。
- JCREとカードマネージャは同じエンティティですか、カードマネージャはネイティブアプレットですか?
カードマネージャは、グローバルプラットフォームの仕様の一部です。ほとんどのJava Cardはそれらに準拠しています。カードは、ネイティブ、バイトコード、または組み合わせのいずれかです。もう一度、それは製造業者の責任です。
これらが異なる場合は、SMS経由のOTAアップデートが受信されたときにJCREが最初に処理してアプレットに転送するか、カードマネージャが直接受信しますか?
これらは、通常、かなり絡み合っています。私は、HAL(上記参照)が直接通信とAPDUバッファを処理すると想定していますが、カードがそれぞれの規格に準拠している限り、何かが行きます。
もちろん、よく記述されていれば、製造元はおそらくFIPSまたはCommon Criteria認証機関から話を聞くことになります。しかし、設計書は通常、製造業者によって公開されていません。
すばらしい答えをありがとう!私は2つのフォローアップの質問があります - SIMはJCREを持っています。 JCREは任意のアプレットのメソッドを呼び出すことができますか?可能であれば、RMIとINVOKE apdu(またはapduを使用する他の方法)を使用して(任意のメソッドの)呼び出しを行うことができますか? – Bluestar
['Remote'](https://docs.oracle.com/javacard/3.0.5/api/java/rmi/Remote.html):「リモート・インタフェース」で指定されたメソッドのみ、 'java.rmi.Remote'はリモートで利用可能です。 –
RMIに加えて、通常は 'install'メソッド、' process'メソッドと 'select'メソッドにアクセスできます(ただし、最後のパラメータは引数をとりません)。 - 追加のSIMインターフェイス/コールバックのほかに、もちろん。 –