IMEI dan Validasinya dengan Algoritma Luhn

dokumen-dokumen yang mirip
Aplikasi Aritmetika Modulo dalam Validasi Nomor Kartu Kredit

Penggunaan Algoritma Modulo 10 LUHN Sebagai Validator Kartu Kredit

ALGORITMA CHECK DIGIT. Djajasukma Tjahjadi. Sekolah Tinggi Manajemen Informatika dan Komputer LIKMI Jl. Ir. H. Juanda 96 Bandung 40132

PENERAPAN ARITMATIKA MODULO PADA ALGORTIMA LUHN UNTUK VALIDASI NOMOR SERI IMEI DAN KARTU KREDIT

Penggunaan Algoritma LUHN Sebagai Validator Kartu Kredit dan Ponsel

Pembangkitan Nomor Kartu Kredit dan Pengecekannya Dengan Menggunakan Algoritma Luhn

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

VALIDASI ISBN 10 DAN 13 ANGKA

Penerapan Teori Bilangan Bulat dalam Pemeriksaan Keabsahan Nomor IBAN

Aplikasi Teori Bilangan pada Nomor Kartu Kredit

STUDI PENGGUNAAN KODE ISBN-10 DAN ISBN-13

Aplikasi Rekursif dalam Analisis Sintaks Program

Teori Algoritma TIPE DATA

Achmad Solichin.

Tipe Data, Variabel, Input/Output

Perulangan, Percabangan, dan Studi Kasus

Penggunaan Digital Signature Standard (DSS) dalam Pengamanan Informasi

Pemanfaatan Metode Pembangkitan Parameter RSA untuk Modifikasi SHA-1

FAQ LAYANAN MEGA CREDIT CARD MOBILE

Soal hari Selasa (13/10) Latihan 7 AN

1. Pendahuluan. 2. Tinjauan Pustaka

idoctor - Software untuk membantu Dokter Praktek berbasis Cloud USER MANUAL idoctor / Software Dokter Praktek

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

BAB IV IMPLEMENTASI DAN EVALUASI. Dalam merancang dan membangun sistem penjualan online ini ada

ISBN-10 dan ISBN-13 II. DASAR TEORI I. PENDAHULUAN

P00 Perintah Dasar dalam Linux

Bab 2. Dasar-Dasar Pemrograman C

Tipe Data dan Variabel. Dosen Pengampu Muhammad Zidny Naf an, M.Kom

e-accounting.id Telp : Modul yang disediakan oleh E-accounting adalah sebagai berikut:

Percobaan Perancangan Fungsi Pembangkit Bilangan Acak Semu serta Analisisnya

APLIKASI TEORI BILANGAN UNTUK AUTENTIKASI DOKUMEN

STRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN

STUDI SEJARAH DAN PERKEMBANGAN BILANGAN PRIMA

RANCANG BANGUN APLIKASI ANTIVIRUS KOMPUTER DENGAN MENGGUNAKAN METODE SECURE HASH ALGORITHM 1 (SHA1) DAN HEURISTIC STRING

Vigènere Chiper dengan Modifikasi Fibonacci

OPERATOR BAHASA C. Obyektif : 4. Mengetahui macam-macam operator dalam Bahasa C. 5. Mengetahui dan dapat menggunakan format pada tiap tipe data..

STUDI ALGORITMA ADLER, CRC, FLETCHER DAN IMPLEMENTASI PADA MAC

Algoritma Pemrograman. Fery Updi,M.Kom

BAB-2 : TIPE DATA, VARIABEL DAN OPERATOR

INPUT OUTPUT. cout. Digunakan untuk mencetak suatu informasi ke layar Contoh : cout << Halo Teknik Informatika

Tipe Data, Identifier, Operator dan Control Statement

Pertemuan 7. Tipe Data Sederhana

1 - Bahasa Pemrograman

Pengamanan Telepon Seluler dengan Menggunakan Tanda Tangan Digital

Kript p ogr g a r f a i f d a d l a am a Keh e idu d pa p n a S eh e ari a -ha h ri a Yus Jayusman 1

Studi Mengenai Perbandingan Sorting Algorithmics Dalam Pemrograman dan Kompleksitasnya

Operator dan Assignment

Algoritma Pemrograman 2B (Pemrograman C++)

C A R A M E N D A F T A R A P P L E D E V E L O P E R A C C O U N T. How to Register Apple Developer Account

Penerapan DFS dan BFS dalam Pencarian Solusi Game Japanese River IQ Test

TUGAS TEORI ALGO LANJUT

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C

PERCABANGAN PADA PYTHON

C Programming (re-view)

ACCOUNT Q VERSI 3 PENGATURAN PROGRAM ACCOUNT Q VERSI 3 PENGATURAN PROGRAM DAFTAR PERKIRAAN DAFTAR BANK DAFTAR CUSTOMER TRANSAKSI KEUANGAN

LAPORAN PRAKTIKUM STRUKTUR DATA

Pemrograman Dasar P E M R O G R A M A N T E R S T R U K T U R I N P U T / O U T P U T

PENGENDALIAN ATAS DATA MASUKAN GUNA MENINGKATKAN KEAKURATAN INFORMASI

Dasar Pemrograman Java

Pemrograman Berbasis Objek Operator dan Assignment

Algoritma Euclidean dan Struktur Data Pohon dalam Bahasa Pemrograman LISP

Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah: Perkalian Pembagian Sisa Pembagian (mod) Penjumlahan 6 2

Tipe Data dan Variabel

Function. Contoh function 1 : // function example #include <stdio.h> int addition (int a, int b){ int r; r=a+b; return (r); }

ABSTRACT. Keyword: Algorithm, Depth First Search, Breadth First Search, backtracking, Maze, Rat Race, Web Peta. Universitas Kristen Maranatha

Object Oriented Programming (OOP)

[Type the company name] [Type the document title] [Type the document subtitle] Gilang Abdul Aziz [Pick the date]

UNIVERSITAS SAM RATULANGI MANADO FAKULTAS TEKNIK, JURUSAN TEKNIK ELEKTRO Program Studi S-1 Teknik Informatika. Data & Ekspresi

PEMROGRAMAN BERORIENTASI OBJEK. Operator. Budhi Irawan, S.Si, M.T

MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER)

APLIKASI ALGORITMA PENCOCOKAN STRING KNUTH-MORRIS-PRATT (KPM) DALAM PENGENALAN SIDIK JARI

Pencarian Solusi Permainan Fig-Jig Menggunakan Algoritma Runut-Balik

Dasar Pemrograman Mikrokontroler dengan Bahasa C

BAB III ANALISA DAN PERANCANGAN SISTEM

Tipe Data dan Operator

Organisasi Sistem Komputer

BAB III ANALISIS DAN PERANCANGAN

int i = 0; while (i < 10) { System.out.println( Informatika Unpas ); i++; }

PENGULANGAN SKEMA PEMROSESAN SEKUENSIAL. Tim Pengajar KU1071 Sem

BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA

6 Maret Structure of Java [Penyeleksian Kondisi]

Aplikasi Document Imaging untuk PT. XYZ dapat diakses melalui web browser

Modul 1 Dasar Dasar Bahasa Pemrograman C

MODUL 1 PENGENALAN PROGRAM C++ DAN PERNYATAAN MASUKAN-KELUARAN

Aplikasi Teori Bilangan pada Angka Standar Buku Internasional

Chapter 2 Tipe Data, Identifier, Operator dan Control Statement

VARIABEL & TIPE DATA PEMROGRAMAN C++

Penggunaan Aplikasi e-monev ver3.0 (User K8) Untuk Pemantauan Pelaksanaan Rencana Pembangunan Serta Pelaporannya

selanjutnya (menampilkan serial number yang tersedia). Back : untuk kembali ke halaman sebelumnya. Halaman yang akan muncul adalah sebagai berikut

PENCARIAN SOLUSI TTS ANGKA DENGAN ALGORITMA RUNUT BALIK BESERTA PENGEMBANGANNYA

Algoritma dan Struktur Data

BFI Jobs. HC System & Architecture 2017 HC BFI

Pendahuluan Struktur Data. Nisa ul Hafidhoh

Algoritma dan Struktur Data I 2014

Algoritma Pemrograman & Struktur Data

1.1 Download Software Yahoo Messenger

RESUME ALGORITMA MERGE SORT DAN REKURENS

Transkripsi:

IMEI dan Validasinya dengan Algoritma Luhn Matthew Wangsadiredja NIM : 13507012 Jurusan Teknik Informatika ITB, Bandung 40135, email: if17012@students.if.itb.ac.id Abstract Makalah ini membahas International Mobile Equipment Identity yang biasa disingkat menjadi IMEI[3] (arti harafiah bahasa Indonesia: identitas internasional perangkat bergerak) dan cara validasi keabsahan suatu IMEI. Suatu perangkat bergerak seperti ponsel GSM dan UMTS memiliki masing-masing IMEI yang unik. IMEI ini memiliki deretan angka 14 digit ditambah 1 karakter uji (check digit). Keabsahan suatu IMEI dapat dihitung dengan menggunakan algoritma Luhn. Selain itu setiap IMEI juga memiliki arti pada masing-masing bagian angkanya. Selain dengan melihat ke bawah baterai, IMEI suatu ponsel juga dapat dilihat dengan menekan tombol *#06# dari ponselnya langsung[2]. Kata Kunci: IMEI, ponsel, karakter uji, algoritma Luhn. 1. PENDAHULUAN IMEI atau International Mobile Equipment Identity yang selama ini kita tau hanya untuk mengecek saat transaksi jual beli suatu ponsel ternyata memiliki banyak arti dan syarat penulisannya. Awalnya sertifikasi untuk IMEI dipegang oleh European R&TTE Directive, namun sejak April 2000, BABT (British Approvals for Telecommunications) telah memegang sertifikasi untuk IMEI yang resmi[6]. Dari saat itulah, dimulai era setiap ponsel yang hingga kini memiliki IMEI yang unik. IMEI pada ponsel umumnya tercetak di badan ponsel di sebelah bawah baterai. Gambar 2: Contoh keluaran dari *#06# pada sebuah ponsel Sebaliknya, jika kita mengetahui suatu nomor IMEI, kita juga dapat mengetahui berbagai informasi mengenai ponsel yang memiliki IMEI tersebut. Sebagai contoh, IMEI 35906200-804373-6 (03 adalah digit SVN, atau software version number yang akan dijelaskan di bab selanjutnya) memiliki deskripsi perangkat sebagai berikut Gambar 1: Contoh lokasi IMEI pada sebuah ponsel Information on IMEI 359062008043736 Type Allocation Holder SonyEricsson Mobile Equipment Type SonyEricsson W810i GSM Implementation Phase 2/2+ IMEI Validity Assessment Very likely Information on range assignment Est. Date of Range Issuance Around Q1 2006 Reporting Body British Approvals Board of Telecommunicati ons (BABT) Primary Market Europe Legal Basis for Allocation EU R&TTE Directive Tabel 1. Informasi dari IMEI 359062008043736

Cara untuk mendapatkan keterangan dari IMEI ada beberapa cara, namun yang termudah adalah dengan menggunakan perangkat yang disediakan INTERNATIONAL numbering plans, yakni dengan membuka halaman web di alamat http://www.numberingplans.com/?page=analysis&sub =imeinr [4] dan memasukan IMEI yang hendak diperiksa. 2. IMEI Sebuah IMEI tidak dibuat dengan sembarangan, melainkan memiliki struktur yang teratur sesuai. IMEI yang standar memiliki 14 digit angka ditambah 1 digit karakter uji. Sedangkan IMEISV memiliki 16 digit, yaitu ditambah 2 digit SVN atau Serial Version Number. Namun, pada makalah yang akan dibahas adalah IMEI standar dengan 14 digit ditambah 1 digit karakter uji. Setiap digit dari IMEI pun bukan merupakan deretan angka yang unik saja, namun juga memiliki arti dibalik deretan-deretan angka tersebut. 2.1. Struktur IMEI Sejak tahun 2004, struktur IMEI dibentuk menjadi AA-BBBBBB-CCCCCC-D, meski belum tentu ditampilkan seperti ini. Struktur IMEI ini seperti yang dispesifikasikan pada 3GPP TS 23.003[1]. Berikut adalah tabel mengenai struktur IMEI AA BBBBBB CCCCCC D Berikut adalah tabel keterangan mengenai ponsel dengan IMEI 359062008043736. Information on number format Full IMEI Presentation 359062-00-804373-6 Reporting Body 35 Identifier Type Allocation Code 35906200 Serial Number 804373 Check Digit 6 Tabel 3. Informasi dari IMEI 359062008043736 2.2. CEIR (Central Equipment Identity Register) Salah satu kegunaan IMEI adalah untuk melaporkan ponsel yang hilang akibat dicuri, lalu mendaftarkan ke CEIR. Pada kasus kehilangan, disertai dengan bukti yang kuat, maka sang pemilik ponsel dapat memblokir ponsel dengan IMEI tersebut. Hal ini disebabkan, semua IMEI telah disimpan pada basis data CEIR. Sehingga setiap ponsel yang sudah didaftarkan untuk di masukan ke list ponsel curian tidak akan dapat digunakan lagi dengan kartu SIM apapun. Namun, untuk beberapa kasus, ada alat khusus yang dapat merubah IMEI secara paksa, maka dengan begitu ponsel dapat kembali digunakan seperti biasa[7]. 3. ALGORITMA LUHN Laporan pengenalan tubuh ponsel Deskripsi dari TAC (Type Allocation Code) Seri kode yang menujukkan model ponsel Karakter uji untuk algoritma Luhn Algoritma Luhn juga yang dikenal sebagai algoritma modulus 10 adalah sebuah algoritma yang memeriksa keabsahan suatu deretan angka dengan algortma modulus. Algoritma Luhn dipakai untuk memeriksa keabsahan suatu deretan angka yang harus benarbenar valid. Tabel 2. Deskripsi Struktur IMEI Sebagai contoh, untuk IMEI 359062008043736 akan di jelaskan secara per bagian. Pertamatama, diambil 2 digit pertama, yaitu 35. 35 adalah kode bahwa IMEI ini terdaftar di BABT (British Approvals for Telecommunications). Selanjutnya 9062 adalah nomor alokasi TAC yang diberikan oleh BABT. 00 menunjukkan kode FAC (Final Assembly Code) yang sejak 1 January 2003 seluruh perangkat memiliki FAC 00. Sedangkan 804373 adalah nomor serial ponsel yang menunjukkan bahwa ponsel dengan IMEI ini adalah ponsel merk SonyEricsson dengan model W810i, dirakit pada sekitar quartal pertama tahun 2006. Sedangkan 6 adalah karakter uji dari untuk algoritma Luhn. 3.1. Sejarah dan Penggunaan Algoritma Luhn Algoritma Luhn dibuat oleh seorang ilmuan IBM, yaitu Hans Peter Luhn dan dipatentkan di paten Amerika pada 23 Agustus 1960[8]. Sejak saat itu, algoritma Luhn ini digunakan untuk memvalidasi suatu nomor kartu kredit dan nomor identitas pemerintahan di beberapa negara. Setelah itu, kemudian muncul nomor IMEI untuk ponsel, dan algoritma Luhn juga digunakan untuk memvalidasi nomor IMEI. Dengan algoritma Luhn, setiap kesalah baik 1 digit pun akan terdeteksi. 3.2. Algoritma Luhn dan cara penggunaannya Suatu deretan angka termasuk karakter ujinya akan memenuhi syarat dari algoritma Luhn bila memenuhi ujicoba berikut: 1. Menghitung mulai dari digit terkanan dan bergerak ke kiri. Lalu, setiap digit genap dari kanan, nilai nya dikali dua. Setelah itu, hasil nilai yang bernilai lebih besar dari 10, kedua

angkanya dijumlahkan lagi. 2. Jumlahkan semua angka yang telah melewati proses 1 tersebut. 3. Nilai penjumlahan dari no 2 jika dimodulus 10 harus kongruen dengan 0, yakni harus merupakan kelipatan 10. Sehingga bila nilai jumlah yang diperoleh adalah 60,70,80, dsb., maka nilai deretan digit tersebut adalah valid memenuhi syarat algoritma Luhn Sebagai contoh, untuk menghitung digit 490154203237518 apakah valid menurut algoritma Luhn, maka akan dibuat sebuah ujicoba berikut: 1. (8 ; 1x2=2 ; 5 ; 7x2=14 1+4=5 ; 3 ; 2x2=4 ; 3 ; 0x2=0 ; 2 ; 4x2=8 ; 5 ; 1x2=2 ; 0 ; 9x2=18 1+8=9 ; 4) maka angka baru yang diperoleh adalah 490258203435528 2. Nilai yang diperoleh dari proses no 1 dijumlahkan, yaitu: 4+9+0+2+5+8+2+0+3+4+3+5+5+2+8 = 60 3. Karena hasil penjumlahan no 2 merupakan kelipatan 10 (60 mod 10 0) maka deretan angka 490258203435528 valid memenuhi algoritma Luhn. Dewasa ini, karena semakin canggihnya dunia bidang informatika, maka dibuatlah algortima untuk dapat langsung memeriksa apakah sebuah deretan digit memenuhi algoritma Luhn atau tidak. Untuk memeriksanya, dapat mengakses alamat web http://www.intermedia-online.com/luhn/#checkform [9] dan memasukan deretan angka yang mau diperiksa. Algoritmanya dalam bahasa phyton adalah sebagai berikut[11]: def cardluhnchecksumisvalid(digits): """ checks to make sure that the card passes a luhn mod-10 checksum """ sum = 0 num_digits = len(digits) oddeven = num_digits & 1 for count in range(0, num_digits): digit = int(digits[count]) if not (( count & 1 ) ^ oddeven ): digit = digit * 2 if digit > 9: digit = digit - 9 sum = sum + digit return ( (sum % 10) == 0 ) Sedangkan algoritma Luhn yang ditulis dalam bahasa C adalah seperti berikut[10]: #include <ctype.h> #include <stdio.h> #include <string.h> static int isvalidnumber(const char *); /* * Test harness for an implementation of the Luhn algorithm that checks the * validity of a credit card number. */ int main(int argc, char *argv[]) { int i; if (argc < 2) { fprintf(stderr, luhn <number>,...\n"); return 1; "Usage: for (i = 1; i < argc; ++i) printf("number '%s' is%s a valid credit card number\n", argv[i], isvalidnumber(argv[i])? "" : " not"); /* * Checks whether a string of digits is a valid credit card number according to * the Luhn algorithm. * * 1. Starting with the second to last digit and moving left, double the value * of all the alternating digits. For any digits that thus become 10 or more, * add their digits together. For example, 1111 becomes 2121, while 8763 * becomes 7733 (from (1+6)7(1+2)3). *

* 2. Add all these digits together. For example, 1111 becomes 2121, then * 2+1+2+1 is 6; while 8763 becomes 7733, then 7+7+3+3 is 20. * * 3. If the total ends in 0 (put another way, if the total modulus 10 is 0), * then the number is valid according to the Luhn formula, else it is not * valid. So, 1111 is not valid (as shown above, it comes out to 6), while * 8763 is valid (as shown above, it comes out to 20). */ static int isvalidnumber(const char *number) { int n, i, alternate, sum; if (!number) n = strlen(number); if (n < 13 n > 19) for (alternate = 0, sum = 0, i = n - 1; i > -1; --i) { if (!isdigit(number[i])) n = number[i] - '0'; if (alternate) { n *= 2; if (n > 9) n = (n % 10) + 1; alternate =!alternate; sum += n; return (sum % 10 == 0); 4. KASUS PEMBAHASAN VALIDASI IMEI DENGAN ALGORITMA LUHN Untuk memeriksa apakah sebuah IMEI merupakan IMEI yang valid atau tidak, dapat digunakan pengujian dengan algoritma Luhn. Cara yang digunakan sama dengan cara untuk memeriksa keabsahan suatu deretan angka dengan menggunakan algoritma Luhn seperti yang sudah dijelaskan pada bab sebelumnya. Pada contoh kasus ini, diberikan suatu persoalan dimana uji kasus yang akan dicoba adalah mengecek sebuah digit yang hilang pada IMEI jika diketahui 14 digit yang lainnya. Dibawah ini adalah sebuah contoh kasus cara mengecek jika diketahui 14 digit awal ( digit TAC dan serial nomor HP). Contoh Kasus 1 Diketahui IMEI sebuah ponsel adalah 35906200-804373-X (X merupakan karakter uji algoritma Luhn), berapakah nilai X, agar IMEI ponsel tersebut merupakan sebuah IMEI yang valid? Jawab Maka, langkah pertama yang harus dilakukan adalah menjumlahkan seluruh digit yang diketahui menurut kaidah algoritma Luhn. (X ; 3x2=6 ; 7 ; 3x2=6 ; 4 ; 0x2=0 ; 8 ; 0x2=0 ; 0 ; 2x2=4 ; 6 ; 0x2=0 ; 9 ; 5x2=10 1+0=1 ; 3) maka angka baru yang diperoleh adalah 31906400804676X Langkah kedua adalah menjumlahkan deretan angka baru yang diperoleh setelah mendapat dari proses no1 yakni: 3+1+9+0+6+4+0+0+8+0+4+6+7+6+X = 54 + X Setelah didapat nilai 54+X, kita kembalikan ke syarat awal dari kaidah algoritma Luhn, bahwa untuk mendapatkan digit nilai yang valid, nilai penjumlahan pada proses kedua haruslah kongruen dengan 0 bila di modulus 10, atau dapat dikatakan juga nilai merupakan kelipatan 10. Sehingga pada persoalan ini, nilai X yang memungkinkan ada 6, karena 54 + 6 = 60 (kelipatan 10). Sehingga, IMEI dari ponsel tersebut diperoleh 35906200-804373-6

Selain untuk menguji karakter uji, algoritma Luhn ini juga dapat memeriksa 1 karakter lain pada IMEI ponsel jika diketahui ke-14 digit lainnya. Berikut ini adalah sebuah contoh kasus bila 1 karakter IMEI ditengah yang hilang. Contoh Kasus 2 David hendak mendaftarkan IMEI ponselnya yang hilang dicuri ke CEIR, namun karena box ponsel SonyEricssonnya sudah kotor, 1 digit IMEInya terhapus. IMEI yang masih terbaca adalah 357Y0401-567581-6-50 dengan Y adalah digit yang terhapus. Berapakan seharusnya IMEI yang dilaporkan David ke CEIR? Jawab Maka, sama dengan contoh 1, langkah pertama yang harus dilakukan adalah menjumlahkan seluruh digit yang diketahui menurut kaidah algoritma Luhn. Namun yang perlu diperhatikan di sini adalah 2 digit terakhir, yaitu -50. 50 disini adalah nilai SVN, sehingga tidak perlu dimasukkan ke dalam perhitungan. (6 ; 1x2=2 ; 8 ; 5x2=10 1+0=1 ; 7 ; 6x2=12 1+2=3 ; 5 ; 1x2=2 ; 0 ; 4x2=8 ; 0 ; Yx2=2Y ; 7 ; 5x2=10 1+0=1 ; 3) maka angka baru yang diperoleh adalah 317(2Y)08025371826 Langkah kedua adalah menjumlahkan deretan angka baru yang diperoleh setelah mendapat dari proses no1 yakni: 3+1+7+2Y+0+8+0+2+5+3+7+1+8+2+6 = 53 + 2Y Setelah didapat nilai 53+2Y, kita kembalikan ke syarat awal dari kaidah algoritma Luhn, bahwa untuk mendapatkan digit nilai yang valid, nilai penjumlahan pada proses kedua haruslah kongruen dengan 0 bila di modulus 10, atau dapat dikatakan juga nilai merupakan kelipatan 10. Sehingga pada persoalan ini, nilai 2Y yang memungkinkan ada Y, karena 53 + 7 = 60 (kelipatan 10). Namun, karena Y bernilai 7, dipastikan hasil perkalian Y menjadi lebih dari 10 sehingga nilainya dijumlahkan. Penjumlahan bilangan dari 10 hingga 18 yang menghasilkan 7 adalah 16, oleh karena itu 2Y= 16, sehingga diperoleh Y bernilai 8 Maka, nilai Y pada IMEI 357Y0401-567581-6-50 adalah 8. Sehingga IMEI pada ponsel david adalah 35780401-567581-6-50 5. KESIMPULAN 1. Setiap ponsel GSM memiliki IMEI yang unik dengan struktur tertentu yang memiliki arti masing-masing. 2. BABT (British Approvals Telecommunications) adalah pemegang sertifikasi untuk IMEI yang resmi, selain itu setiap IMEI juga didaftarkan pada CEIR. Sehingga setiap ponsel yang hilang dicuri dapat didaftarkan ke CEIR dan di blokir. 3. Dengan memanfaatkan halaman web http://www.numberingplans.com/?page=analysis& sub=imeinr info ponsel bisa diperoleh jika IMEI diketahui. 4. Algoritma Luhn adalah sebuah algoritma yang memeriksa sederetan angka dan menjumlahkan dengan aturannya, dan hasil penjumlahannya harus merupakan kelipatan 10. Algoritma Luhn disebut juga algoritma modulus 10. 5. Deretan angka IMEI merupakan deretan angka yang memenuhi persyaratan dari algoritma Luhn, dan angka terakhirnya (ke 15) disebut karakter uji Luhn. DAFTAR REFERENSI [1] Wikipedia, International Mobile Equipment Identity<http://en.wikipedia.org/wiki/IMEI>, diakses tanggal 31 Desember 2008 pukul 11.24 [2] Wireless Technology Terms, Glossary and Dictionary<http://www.javvin.com/wireless/IME I2.html>, diakses tanggal 31 Desember 2008 pukul 11.25 [3] GSM Security, What is an IMEI?, <http://www.gsm-security.net/faq/imeiinternational-mobile-equipment-identitygsm.shtml>, diakses tanggal 31 Desember 2008 pukul 11.25 [4] International Numbering Plan, Analysis of IMEI numbers,<http://www.numberingplans.com/?pag e=analysis&sub=imeinr>, diakses tanggal 31 Desember 2008 pukul 11.25 [5] BABT, about us, <http://www.babt.com/aboutus.asp>, diakses tanggal 31 Desember 2008 pukul 13.00 [6] Wikipedia, British Approvals Board for Telecommunications<http://en.wikipedia.org/wik i/british_approvals_board_for_telecommunicat ions>, diakses tanggal 31 Desember 2008 pukul 13.00

[7] Wikipedia, Central Equipment Identity Register <http://en.wikipedia.org/wiki/central_equipment _Identity_Register>, diakses tanggal 31 Desember 2008 pukul 13.00 [8] Wikipedia, Luhn_algorithm, <http://en.wikipedia.org/wiki/ Luhn_algorithm>, diakses tanggal 31 Desember 2008 pukul 13.00 [9] InterMedia, Luhn (or MOD 10) Check Algorithm<http://www.intermediaonline.com/luhn/#checkform>, diakses tanggal 1 Januari 2008 pukul 11.15 [10] <http://www.chriswareham.demon.co.uk/ software/luhn.c>, diakses tanggal 1 Januari 2008 pukul 11.35 [11] ActiveState Code, Python Luhn checksum validation,<http://code.activestate.com/recipes/1 72845/>, diakses tanggal 1 Januari 2008 pukul 11.35