J2ME SIM卡更改检测

时间:2009-12-29 09:40:41

标签: security java-me mobile

我想创建J2ME应用程序,其中应用程序应仅适用于安装期间使用的SIM卡。在SIM卡(GSM)上更改应用程序现在应该工作。 为了达到这个目的,我考虑采用simcard的签名并将其保存在持久存储中。在每次启动应用程序时,都可以验证签名。知道如何实现这一点。 提前致谢

3 个答案:

答案 0 :(得分:1)

可以从J2ME应用程序中使用'SATSA'(安全和信任服务API,即JSR177)与SIM通信。您可以发送'3GPP TS 11.11'命令来获取IMSI(选择文件DG_GSM,选择文件EF_IMSI,读取二进制文件)。

缺点是:(1)您在相对较低的抽象级别(ISO7816-4层)上与SIM交谈; (2)目前并非所有手机都支持JSR177。

答案 1 :(得分:0)

我相信这是不可能的。如果有可能使用特定的手机,则无法通用。

答案 2 :(得分:0)

对于美国的ATT,对于J2ME应用程序,手机会在Jad文件中嵌入“CarrierDeviceId”。这是每张SIM卡唯一的。因此,如果您可以使用类似的东西,只需在应用程序第一次启动时读取此Jad参数,将其保存到RMS或将其发送到服务器。现在,每次应用程序启动时,您都可以验证此号码是否匹配,从而验证SIM卡是否相同。

您还可以尝试获取与SIM卡绑定的电话号码,从而验证是否正在使用旧SIM卡。

相关问题