Background:
The HTC Sensation has a sim unlock code on /dev/block/mmcblk0p6.
This was found and exploited months ago by Sensation users.
For the One S, HTC have decided to get a bit sneaky. The code still exists on the same block but they have encrypted the actual SIM unlock code by adding a key generated from the phone’s IMEI number.
This method uses the IMEI number to calculate the key which can then be subtracted to give a working SIM unlock code.
Thanks to contributions from various users, we now have 3 different methods of obtaining your SIM unlock code.
All are tested and confirmed to work on all versions of the HTC One S.
Method 1 (details below) requires no downloads and takes about 5 minutes.
Method 2 uses the first step of method 1 and then a small executable program on a Windows PC to do the calculation.
Method 3 requires the download of a Bash Script but fully automates the procedure.
Note 1: All methods require Root and only work at present for the S4 version.
Note 2: It is possible that the 'strings' command referred to in the text will only work if you have Busybox installed. If you are already using a custom ROM, you will probably have this. If you are on a rooted Stock ROM and cannot execute the strings command, try installing Busybox first.
Any feedback on this issue would be welcomed in the thread.
Note 3: CM10 based ROMS will normally return the correct values for UN_Lock_code, but fail to unlock when a new SIM card is inserted. If you have this problem, revert to a Sense-based ROM (e.g Trickdroid, Venom) for the unlock process. You may return to a CM10 base after the phone is unlocked.
Methods 2 and 3 can be found in Post 2.
METHOD 1
To find your SIM UNLOCK CODE you need:
1) Root
2) Android Terminal Emulator (free from the market)
3) Your IMEI number (dial *#06# on your dialler)
There are 4 steps to the process:
1) Obtain your UN_lock_code from your phone
2) Calculate the key from your IMEI number
3) Subtract (2) from (1)
4) Unlock your phone
Step 1
Obtain your UN_lock_code from your phone as follows:
Open the Terminal Emulator app and type:
su [enter]
strings -n 8 /dev/block/mmcblk0p6 [enter]
It will output several lines of data (including your IMEI number)
One of the lines will be [eg] UN_Lock_code=063312345
Make a note of this number (This is NOT your SIM unlock code)!
Step 2
Make a key from your IMEI number:
a) Write down the last 7 digits of your IMEI number in this format: 1234 567
b) Reverse the 2 blocks: 567 1234
c) Add a 4th digit X: 567 X 1234 where:
X = the sum of the first 3 digits (If the sum is 2 digits, write only the 2nd digit)
[5 + 6 + 7 = 18 in the example above so X = 8]
[if the sum is 3, X = 3]
[if the sum is 17, X = 7]
[if the sum is 25, X = 5] etc.
Using the above IMEI number we get:
567 8 1234 (= the key)
Step 3
Perform a simple sum.
UN_Lock_code [step 1] – key [step 2] = SIM UNLOCK CODE
e.g. 063312345 - 56781234 = 6 531 111
This needs to be an 8-digit number, so add a zero at the beginning if necessary
YOUR SIM UNLOCK CODE IS: 0653 1111
Step 4
Unlock your phone
a) Remove your SIM card (no need to turn off the phone)
b) Insert alternate SIM card
c) When prompted, enter SIM UNLOCK CODE obtained from step 3
d) Reboot when instructed
The HTC Sensation has a sim unlock code on /dev/block/mmcblk0p6.
This was found and exploited months ago by Sensation users.
For the One S, HTC have decided to get a bit sneaky. The code still exists on the same block but they have encrypted the actual SIM unlock code by adding a key generated from the phone’s IMEI number.
This method uses the IMEI number to calculate the key which can then be subtracted to give a working SIM unlock code.
Thanks to contributions from various users, we now have 3 different methods of obtaining your SIM unlock code.
All are tested and confirmed to work on all versions of the HTC One S.
Method 1 (details below) requires no downloads and takes about 5 minutes.
Method 2 uses the first step of method 1 and then a small executable program on a Windows PC to do the calculation.
Method 3 requires the download of a Bash Script but fully automates the procedure.
Note 1: All methods require Root and only work at present for the S4 version.
Note 2: It is possible that the 'strings' command referred to in the text will only work if you have Busybox installed. If you are already using a custom ROM, you will probably have this. If you are on a rooted Stock ROM and cannot execute the strings command, try installing Busybox first.
Any feedback on this issue would be welcomed in the thread.
Note 3: CM10 based ROMS will normally return the correct values for UN_Lock_code, but fail to unlock when a new SIM card is inserted. If you have this problem, revert to a Sense-based ROM (e.g Trickdroid, Venom) for the unlock process. You may return to a CM10 base after the phone is unlocked.
Methods 2 and 3 can be found in Post 2.
METHOD 1
To find your SIM UNLOCK CODE you need:
1) Root
2) Android Terminal Emulator (free from the market)
3) Your IMEI number (dial *#06# on your dialler)
There are 4 steps to the process:
1) Obtain your UN_lock_code from your phone
2) Calculate the key from your IMEI number
3) Subtract (2) from (1)
4) Unlock your phone
Step 1
Obtain your UN_lock_code from your phone as follows:
Open the Terminal Emulator app and type:
su [enter]
strings -n 8 /dev/block/mmcblk0p6 [enter]
It will output several lines of data (including your IMEI number)
One of the lines will be [eg] UN_Lock_code=063312345
Make a note of this number (This is NOT your SIM unlock code)!
Step 2
Make a key from your IMEI number:
a) Write down the last 7 digits of your IMEI number in this format: 1234 567
b) Reverse the 2 blocks: 567 1234
c) Add a 4th digit X: 567 X 1234 where:
X = the sum of the first 3 digits (If the sum is 2 digits, write only the 2nd digit)
[5 + 6 + 7 = 18 in the example above so X = 8]
[if the sum is 3, X = 3]
[if the sum is 17, X = 7]
[if the sum is 25, X = 5] etc.
Using the above IMEI number we get:
567 8 1234 (= the key)
Step 3
Perform a simple sum.
UN_Lock_code [step 1] – key [step 2] = SIM UNLOCK CODE
e.g. 063312345 - 56781234 = 6 531 111
This needs to be an 8-digit number, so add a zero at the beginning if necessary
YOUR SIM UNLOCK CODE IS: 0653 1111
Step 4
Unlock your phone
a) Remove your SIM card (no need to turn off the phone)
b) Insert alternate SIM card
c) When prompted, enter SIM UNLOCK CODE obtained from step 3
d) Reboot when instructed
Last edited: