如何在智能卡上定义自己的安全域?

How to define my own security domain on a smart card?

如何在智能卡上定义自定义安全域?假设我的手机里有一张 GSM SIM 卡(我不知道设置了运营商密钥来修改我的 SIM 卡)!如果我想在同一张 sim 卡上安装一个自定义的安全域,以便在 sim 上有一个独立的岛来管理我的几个小程序(而不是运营商),我是否正确?

安全域应具备哪些属性?有可能写一个或使用任何预先写好的在线吗?是否可以在不知道密钥集的情况下将其安装到 SIM 卡上?

首先,JavaCard 是一种编程语言,用于使用 Java 卡 RE/VM 在智能卡上编写 运行 小程序。全球平台是用于安装和管理智能卡应用程序的标准,其中包括安全域的概念。许多智能卡结合了两者(尽管这不是必需的),我认为这也是您的用例。

有两种类型的安全域,(最高、顶级)发行者安全域和补充安全域。首先,如果您不知道颁发者安全域的密钥,则无法添加另一个安全域或任何其他小程序。 ISD 总是预装的,卡上通常有一个 SSD 加载包,可用于安装和实例化 SSD。安全域只是另一个具有安全域权限的小程序,但它具有 load/install/manage 小程序和直接与 JCRE/VM 交互的功能。从技术上讲,您可以将安全域权限添加到您自己编写的小程序中。

所有信息都可以在免费提供的全球平台规范中找到,如果您想深入了解,需要通读这些页面。