手机 SIM 卡中是否有可用于 RSA 加密的加密材料?

信息安全 加密 安卓 网络服务 IOS 黑莓
2021-08-12 15:53:27

鉴于智能卡存储了无法提取的私钥,因此 SIM 卡在这些方面似乎与智能卡相似。

我需要在手机上存储(或使用现有的)私钥,并使用它来解密从网络服务发送的数据。我还希望私钥存储具有以下属性

  • 不容易克隆(难度等级是主观的)

  • 私钥可供程序员使用(Objective C、Java、Javascript 等)

  • 私钥无法提取,受硬件保护

任何制造商的任何电话都提供这种设施吗?

1个回答

SIM 卡 一种智能卡。它遵循智能卡的所有相关标准,由智能卡供应商生产。

智能卡“只是”一台防篡改计算机。它有自己的CPU、RAM、ROM、存储区(通常是EEPROM)。电源和时钟由外部提供。该设备应该能够抵抗内部存储数据的物理提取:它配备了许多传感器,可以检测外壳的破损,在超出范围的条件下操作(温度过低或过高,时钟率偏离预期频率...),并且,如果尝试对其进行高级逆向工程,最终应该会自毁。

当然,这都是钱的问题。据说用电子显微镜和激光直接检查要花费数千美元;在过去的几年里,这在卫星付费电视黑客中是一个相当大的行业(尤其是在那些从卫星接收到信号但由于缺乏商业基础设施而无法合法订阅的国家——我看到这种情况在北非发生了很多,有欧洲电视台)。此外,学术界和工业界都在认真研究从智能卡中提取密钥的调查方法最后,智能卡本身就是一台小型计算机,它使用软件,因此存在错误,其中一些是可利用的。

我最近使用过这种产品这是一张适合“SIM 格式”的智能卡,但可以存储和使用数十个 RSA 密钥。密钥是在船上生成的,性能对于许多用途来说是完全可以接受的(2048 位 RSA 签名不到 1 秒)。该卡已被认证为符合 FIPS 140-2 Level 3 和 EAL 5+,这两者都相当令人印象深刻(他们不保证该卡是牢不可破的,但它们表明供应商在这方面投入的精力和金钱最少那个目标)。


我在上面解释的是,在技术上可以使用类似 SIM 卡的卡来存储和使用非对称密钥进行加密,并且对私钥提取的抵抗力不可忽略。

当然,现在的问题是现有的已部署 SIM 卡不一定能够做到这一点。SIM 卡的核心功能是存储对称密钥并将其用于与电话提供商网络的身份验证协议。这在 GSM 世界中称为A3/A8 。这只是对称加密,它在计算上要容易得多,并且可以使用基本的 8 位 CPU 来完成,不需要任何加速器电路。这种卡比支持 RSA 的智能卡便宜得多,而且众所周知,电话公司总是尽量降低成本(单个卡的生产成本的数量级约为 5 美元,对于支持 RSA 的卡,对于只做对称加密的卡来说,不到 1 美元)。

一些公司已经部署了可以计算签名的 SIM 卡,但我认为您无法从大多数现有的 SIM 卡中获得它(目前)。技术已经存在,现在需要商业激励

更复杂的情况是是否允许从 Android 应用程序访问。在手机中,SIM 卡是相当孤立的,因为它被用作通信计费的法律依据:如果该卡可以从恶意软件应用程序中被劫持,那么客户就很容易声称他们的手机被黑客入侵,然后拒绝支付他们的账单。


您不会“使用私钥加密”。使用私钥,您可以解密签名我想您的用例是身份验证:您想从服务器确保特定用户位于线路的另一端。