|
Welcome to the GSM-Forum forums. You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. Only registered members may post questions, contact other members or search our database of over 8 million posts. Registration is fast, simple and absolutely free so please - Click to REGISTER! If you have any problems with the registration process or your account login, please contact contact us . |
|
Register | FAQ | Donate | Forum Rules | Root any Device | ★iPhone Unlock★ | ★ Direct Codes ★ | Direct Unlock Source |
GSM Programming & Reverse Engineering Here you can post all Kind of GSM Programming and Reverse Engineering tools and Secrets. |
| LinkBack | Thread Tools | Display Modes |
06-16-2004, 10:24 | #4 (permalink) |
No Life Poster Join Date: Sep 2002 Location: EEPROM damaged Age: 44
Posts: 578
Member: 15315 Status: Offline Thanks Meter: 1 | I've translated an document some time ago from engish into german. Sorry I don't have the original document anymore but it was from this forum. I don't want to translate it back, but if someone else want to do it, here it is: --------------------------------------------------------------------------------- So berechnet ihr die letzte Stelle (Prüfstelle) einer IMEI am Beispiel dieser IMEI: 49015420323751? es gibt vier Bereiche: TAC = D14 D13 ... D9 (D9 = höchste Stelle) FAC = D8 D7 (D7 = höchste Stelle) SNR = D6 D5 ... D1 (D1 = höchste Stelle) CHK = D0 hier: FAC: 490154 D14:4 D13:9 D12:0 D11:1 D10:5 D09:4 TAC: 20 D08:2 D07:0 SNR: 323751 D06:3 D05:2 D04:3 D03:7 D02:5 D01:1 die Checksumme wird so berechnet: Schritt 1: die Werte an ungeraden Positionen verdoppeln (D1, D3, D5 ... D13) .D14:4=4 *D13:9x2=18 .D12:0=0 *D11:1x2=2 .D10:5=5 *D09:4x2=8 .D08:2=2 *D07:0x2=0 .D06:3=3 *D05:2x2=4 .D04:3=3 *D03:7x2=14 .D02:5=5 *D01:1x2=2 dann die einzelnen Ziffern zusammen zählen: 4 + 1+8 + 0 + 2 + 5 + 8 + 2 + 0 + 3 + 4 + 3 + 1+4 + 5 + 2 = 52 das Ergebnis von der nächst höheren, durch 10 dividierbaren Zahl abziehen: 60 - 52 = 8 und das ist die Check Stelle. bei 50 wäre sie z.B. 0 |
06-18-2004, 04:23 | #6 (permalink) |
Freak Poster Join Date: Feb 2001 Location: Bacolod, Philippines
Posts: 313
Member: 3360 Status: Offline Thanks Meter: 4 | Posted Aug 10, 2001 Title: IMEI Number Validation http://forum.gsmhosting.com/vbb/showthread.php?t=5033 IMEI in its full name is International Mobile Station Equipment Identity. It is a unique number composed of actually 16 digits and is divided into 4 elements: digits description 01 - 06 TAC (Type approval code) 07 - 08 FAC (Final Assembly Code) 09 - 14 SNR (Serial Number - hardware, phone) 15 - 16 SVN (Software Version Number) This 16-digits IMEI number is referred to as International Mobile Station Equipment Identity and Software Version (IMEISV). What we see when we check our phone's IMEI number (by entering *#06#) is the first 14 digits (TAC, FAC,SNR) and the last is the Check Digit (CD or CHK) which is check against a computation called the "Luhn check" against the 14 digits defined. And so, we get the 15-digits IMEI number. The IMEI provides the information about the presence of a specific mobile equipment in the network, disregarding whatever uses the subscriber makes with it. Its primary purpose is to provide measures against the use of stolen equipment or against the use of the equipment in the GSM system that can no longer be tolerated for technical reasons. It is harcoded into the mobile unit and should not be changed or tampered using physical, electrical, or software means. In checking for a valid IMEI, the last digit of the IMEI number determines if the whole IMEI number is valid or not. The last number of the IMEI is called the Check Digit and is defined using a formula called "Luhn formula", thus sometimes the last digit is called the Luhn Check Digit and does not necessarily always set to 0. This check digit is computed in three steps as follows: Given: 14 most significant digits of the IMEISV without the SVN which are the 6-digit TAC, 2-digit FAC, and 6-digit SNR and are labelled as follows: TAC = D14 D13 ... D9 (with D9 the least significant digit of TAC); FAC = D8 D7 (with D7 the least significant digit of FAC); and SNR = D6 D5 ... D1 (with D1 the least significant digit of SNR). Example IMEI: 49015420323751? (ignore the last digit) FAC: 490154 D14:4 D13:9 D12:0 D11:1 D10:5 D09:4 TAC: 20 D08:2 D07:0 SNR: 323751 D06:3 D05:2 D04:3 D03:7 D02:5 D01:1 CHK: ? Computation of CHK from the IMEI proceeds as follows: Step 1: Double the values of the odd labelled digits D1, D3, D5 ... D13 of the IMEI. .D14:4=4 *D13:9x2=18 .D12:0=0 *D11:1x2=2 .D10:5=5 *D09:4x2=8 .D08:2=2 *D07:0x2=0 .D06:3=3 *D05:2x2=4 .D04:3=3 *D03:7x2=14 .D02:5=5 *D01:1x2=2 Step 2: Add together the individual digits of all the seven numbers obtained in Step 1, 1+8 + 2 + 8 + 0 + 4 + 1+4 + 2 = 30 and then add this sum to the sum of all the even labelled digits D2, D4, D6 ... D14 of the IMEI. 4 + 0 + 5 + 2 + 3 + 3 + 5 = 22 The result is: 30 + 22 = 52 or 4 + 1+8 + 0 + 2 + 5 + 8 + 2 + 0 + 3 + 4 + 3 + 1+4 + 5 + 2 = 52 Step 3: If the number obtained in Step 2 ends in 0, then set CHK to be 0. If the number obtained in Step 2 does not end in 0, then set CHK to be that number subtracted from the next higher number which does end in 0. Since 52 ends in "2", CHK can't be set to "0". The next higher number that does end in "0" after 52 is 60, so we set: CHK = 60 - 52 = 8 So the IMEI number is: 490154203237518 and it ends in 8. P.S. The IMEI number sampled above is fictios and does not reflect nor intended for an existing IMEI number. |
08-11-2004, 08:30 | #8 (permalink) |
Insane Poster Join Date: Jul 2004 Age: 45
Posts: 94
Member: 71880 Status: Offline Thanks Meter: 0 | In new phones approved from January 2003, the final assembly code(FAC) is not used anymore. From April 2004, the type approval code(TAC) will be extended to eight(previously 6) digits. In the interim period until April 2004, the two digit FAC field will be set to 00. this does not affect any previously approved mobile phones and their IMEI. The IMEI will still be 14digits + CD(Check Digit) long since TAC will take the field place from FAC. |
08-18-2004, 16:55 | #9 (permalink) |
Insane Poster Join Date: Oct 2002 Location: SWEDEN Age: 46
Posts: 98
Member: 16622 Status: Offline Thanks Meter: 0 | To calculate checkdigit(last digit) invisual basic... : Public Function CardlastNO(ByRef strInput As String) As String Dim TabIMEI(14) As Byte, IMEIsum1 As Byte, IMEIsum2 As Byte Dim SumOut As Byte, i As Integer, txtBufor As String For i = 14 To 1 Step -1 TabIMEI(i) = Mid(strInput, i, 1) Next i For i = 14 To 2 Step -2 If (TabIMEI(i) * 2) >= 10 Then txtBufor = LTrim(Str(TabIMEI(i) * 2)) IMEIsum1 = IMEIsum1 + Val(Mid(txtBufor, 1, 1)) + Val(Mid(txtBufor, 2, 1)) Else IMEIsum1 = IMEIsum1 + (TabIMEI(i) * 2) End If Next i For i = 13 To 1 Step -2 IMEIsum2 = IMEIsum2 + TabIMEI(i) Next i SumOut = IMEIsum1 + IMEIsum2 If SumOut Mod 10 = 0 Then CardlastNO = 0 Else CardlastNO = (10 - SumOut Mod 10) End If End Function |
Bookmarks |
| |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Need al info about imei calc and algos!! | Gsmhq | Nokia Legacy Phones ( DCT-1 ,2 ,3 ,L ) | 4 | 01-16-2002 11:31 |
Anyone knows a software for changing EMEI | foneman | Nokia Legacy Phones ( DCT-1 ,2 ,3 ,L ) | 1 | 12-27-2001 02:11 |
Anybody able to find out algo of new X35..... | Toto | x1x to x45/x50 | 0 | 06-10-2001 22:39 |
eeprom checksum , mcu rom checksum !!!!! | makona | Nokia Legacy Phones ( DCT-1 ,2 ,3 ,L ) | 5 | 01-25-2001 00:44 |
How to unlock 17 digits EMEI GF768 | xYz | Old Ericsson Phones & Sony Phones | 0 | 08-17-1999 13:54 |
|