获取IMSI
转:http://letsunlockiphone.guru/find-imsi-number/
HOW TO FIND IMSI NUMBER (UPDATED)
You probably already know about possibility to unlock your iPhone on any firmware version and any baseband using SAM unlock. It’s really working method, and involves some skills like knowing IMSI number of your device. We will now try to explain what it is and where to find it.
Let’s start form the very beginning. Subscriber Identification Module (SIM) is a chip that stores:
- International Mobile Subscriber Identity (IMSI)
- ICCID – unique serial number
- Security authentication and ciphering information
- Info that is stored temporarily and sent to your local network
- List of services available for user
- Personal identification number (PIN)
- Personal unblocking code (PUK)
How it works: your iPhone sends IMSI number to the network while registering. IMSI number is exactly the thing that allows network hardware to identify the subscriber. To avoid the interception IMSI is sent as rarely as it is possible. Sometimes instead of IMSI the phone sends TMSI (temporarily generated code for mobile subscriber identity).
Be careful not to confuse IMSI and IMEI (which stands for International Mobile Equipment Identity – 15-digit number unique for every phone on GSM and UMTS). IMEI is also sent to the carrier by registering in network. IMEI can be easily used for tracking phones and blocking stolen ones on carrier level.
So let’s see, you know about SAM unlock, you’ve downloaded it and installed on your device but you’re unable to find your IMSI (or don’t know what it is at all), then just continue reading. IMSI is International Mobile Subscriber Identity – a unique SIM card number. This is NOT a feature or a function of your phone . It consists of 15 digits that can be splitted in three categories:
- MCC (Mobile Country Code) – first three digits of IMSI code
- MNC (Mobile Network Code) – fourth and fifth for EMEA countries (Europe, the Middle East and Africa) or fourth, fifth and sixth digits in the code for the other (NAR) countries
- MSIN (Mobile Station Identification Number) – the last 9/10 digits of the code

IMSI NUMBER FOR EMEA COUNTRIES LOOKS LIKE THIS:
IMSI NUMBER FOR NAR COUNTRIES:
The MCC and MNC digits from 1 to 5/6 (red and yellow on the images) show the network. Subsets and regional operators can be calculated by last 9 or 8 digits (blue and yellow) aka MSIN.
Where is IMSI stored locally: all the IMSI bundles are stored in /System/Library/Carrier Bundles. For instance, if you use AT&T SIM card, his name will be ATT_US.bundle var/mobile/Library/Carrier Bundles. The iOS will also create shortcut to that folder which will look like this: var/mobile/Library/Carrier Bundle.bundle.
To find your iPhone’s IMSI number you can use two methods. One is to check IMSI by running minicom in your terminal and typing in:
AT+CIMI
then press enter and you’ll see your IMSI number.
The second method fits SAM unlock better. Run installed SAM app on your iPhone and go to More Information->IMSI under SIM Details submenu. You’ll see a 15-digit IMSI code that corresponds to your SIM card. That’s it.
IMPORTANT! HOW TO FIND YOUR CARRIER WITHIN IMSI:
- When you have that number just check iPhone operator
- Type it in to the field called Enter IMSI number
- It will show your SIM carrier’s country, operator, your MCC and MNC
ATTENTION: If you’ve already detected your iPhone’s IMSI (Country, carrier and Mobile Station Identificator Number) but it isn’t listed in SAM’s By Country and Carrier activation list, or know your IMSI number but don’t know your carrier then check out my FULL IMSI list of international carriersto unlock iPhone with SAM.
How to enter your IMSI number to By Country and Carrier activation method:
Let’s say your IMSI is 234150829435109. The digits stand for:
- Country - 234- UNITED KINGDOM OF GREAT BRITAIN AND NORTHERN IRELAND
- Carrier – 15 – VODAFONE LTD
- SIM ID – 23415
iphone下获取:
#include <dlfcn.h> #define PRIVATE_PATH "/System/Library/PrivateFrameworks/CoreTelephony.framework/CoreTelephony" - void getImsi(){ #if !TARGET_IPHONE_SIMULATOR
void *kit = dlopen(PRIVATE_PATH,RTLD_LAZY);
NSString *imsi = nil;
int (*CTSIMSupportCopyMobileSubscriberIdentity)() = dlsym(kit, "CTSIMSupportCopyMobileSubscriberIdentity");
imsi = (NSString*)CTSIMSupportCopyMobileSubscriberIdentity(nil);
dlclose(kit); UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"IMSI"
message:imsi
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
[alert release];
#endif
}
NSString *imsi = CTSIMSupportCopyMobileSubscriberIdentity(); NSString *userMobileType = [StatisticsOperation getCarrier:imsi];
getCarrier 方法如下
+ (NSString *)getCarrier:(NSString *)imsi { if (imsi == nil || [imsi isEqualToString:@"SIM Not Inserted"] ) {
return @"Unknown";
}
else {
if ([[imsi substringWithRange:NSMakeRange(0, 3)] isEqualToString:@"460"]) {
NSInteger MNC = [[imsi substringWithRange:NSMakeRange(3, 2)] intValue];
switch (MNC) {
case 00:
case 02:
case 07:
return @"China Mobile";
break;
case 01:
case 06:
return @"China Unicom";
break;
case 03:
case 05:
return @"China Telecom";
break;
case 20:
return @"China Tietong";
break;
default:
break;
}
}
}
return @"Unknown"; }
android下获取:
TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
String imei = tm.getDeviceId(); //取出IMEI
String tel = tm.getLine1Number(); //取出MSISDN,很可能为空
String ICCID =tm.getSimSerialNumber(); //取出ICCID
String imsi =tm.getSubscriberId(); //取出IMSI
参考http://www.oschina.net/code/snippet_99237_46665
http://letsunlockiphone.guru/global-imsi-list-number/
获取IMSI的更多相关文章
- android 获取IMSI信息(判断是移动,联通,电信手机卡)
首先我们需要知道手机IMSI号前面3位460是国家,紧接着后面2位00 02是中国移动,01是中国联通,03是中国电信.那么第一步就是先获取手机IMSI号码:代码如下 /** *获取IMSI信息 * ...
- Android获取IMSI和IMEI
IMSI是一个 唯一的数字, 标识了GSM和UMTS 网络里的唯一一个用户. 它 存储 在手机的SIM卡里,它会通过手机发送到网络上. IMEI也是一串唯一的数字, 标识了 GSM 和 UMTS网络里 ...
- Android中获取IMSI和IMEI
TelephonyManager mTelephonyMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); Str ...
- (三)获取iphone的IMSI
今天的任务是 iPhone上怎样获取 imsi 信息 来判断所属运营商,资料找了很久!总体有两种方案,但是其中一种好像不行 这里我都记录下来吧: 1: 这是使用coreTelephony.framew ...
- 【Android】如何获取本机号码、IMSI、EMSI
获取本机号码: 获取本机号码,需要在配置文件中加入权限: <uses-permission android:name="android.permission.READ_PHONE_ST ...
- Android 获取可靠的手机编码
项目中出现了将设备和用户信息进行绑定的需求.最先想到的是IMEI串码和IMSI串码.手机登陆的时候一直都没有问题.换了一个平板中之后IMEI和IMSI串码都获取不到了.后来查了一下原因,是因为平板上是 ...
- Android 获取运营商信息(完整版)-解决高通,MTK等双卡问题
由于国内的运营商问题,双卡手机获取IMSI号问题要根据厂商API 来实现. 下面我们就来做一套完整的分析运营商获取IMSI号逻辑. 1,首先我们要判断手机的平台. 1.1,判断手机是否MTK平台 1 ...
- Android 双卡获取当前使用流量在线卡的信息
最近接触了一个项目,需要获取在线流量卡的信息,下面的方式,可以获取大部分手机的正确手机卡信息. 一 获取获取IMEI public static String getDeviced(int solt ...
- 如何使用HackRF做一个简单的IMSI捕获器
关于IMSI IMSI为国际用户识别码(International Mobile Subscriber Identity)的缩写,是用于区分蜂窝网络中不同用户的,在所在蜂窝网络中不重复的识别码.IMS ...
随机推荐
- 如何查询mysql中date类型的时间范围记录?
java date类型 会不会自动转换 mysql date类型? 抹除掉后面 时间 ? 时间不是查询条件?
- MySQL免安装版中 my-default.ini 的配置
拷贝一份 “my-default.ini” 文件 重命名为 “my.ini” 这样根目录下就有两个.ini文件了 一个是my-default.ini 一个是my.ini 接下来我们只需修改my.i ...
- vos忙时闲时费率不一样怎么设置
问题: 现有一客户要求上午闲时由原来的9:00追加到9:30 即: 9:30——12:00为忙时 14:00——18:00为忙时 其他为闲时 忙时费率为0.04元即4分 闲时费率为0.025元即2分5 ...
- PAT1137
题意 一个学生的成绩由上机,期中,期末共3部分构成,现要求找出有资格获得证书的同学们. 证书获得者要求:上机分至少200,最终成绩及格. 最终成绩的生成规则:若期中分>期末分,则f = 期中 * ...
- Sliding Window - The Smallest Window II(AIZU) && Leetcode 76
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=DSL_3_B For a given array a1,a2,a3,...,aNa1 ...
- 其他信息: 尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。在VS中的解决方法
第一种,不使用dataaccess,使用通用的Oracle.ManagedDataAccess,可以忽略版本问题 第二种,在属性——生成——web中iis express换成用本地IIS执行,但是这样 ...
- 前端高质量知识(四)-JS详细图解作用域链与闭包
攻克闭包难题 初学JavaScript的时候,我在学习闭包上,走了很多弯路.而这次重新回过头来对基础知识进行梳理,要讲清楚闭包,也是一个非常大的挑战. 闭包有多重要?如果你是初入前端的朋友,我没有办法 ...
- Android_ListView适配器
ListView如何优化 复用convertView缓存(减少ListView绘制). 自定义静态类ViewHolder(减少findViewById次数),通过setTag().getTag()获取 ...
- 【转】NodeJS教程--基于ExpressJS框架的文件上传
本文是翻译的一篇文章,原文地址:Handle File Uploads in Express (Node.js). 在NodeJS发展早期上传文件是一个较难操作的功能,随后出现了formidable. ...
- removing vmware debugger from visual studio
removing vmware debugger from visual studio by Ross on 十月 14, 2010 at 5:30 下午 under Visual Studio | ...