Penjana CURP - Uji Kod Pengenalan Mexico untuk Pembangunan
Hasilkan CURP ujian yang sah untuk pembangunan aplikasi Mexico. Alat percuma mencipta kod pengenalan rawak 18 aksara yang mengikuti format rasmi RENAPO. Sempurna untuk pengujian, pengisian pangkalan data, dan pengesahan API.
Hasilkan sampel CURP rawak yang sah secara sintaksis dengan digit pemeriksaan yang benar.
Dokumentasi
Apakah penjana CURP?
Penjana CURP mencipta sampel CURP rawak, iaitu kod 18 aksara yang digunakan oleh Mexico untuk mengenal pasti penduduk dan warganegaranya. Output itu mempunyai struktur yang betul dan digit semakan yang dikira dengan betul, tetapi tidak dikaitkan dengan orang sebenar. Pembangun menggunakan alat seperti ini untuk menguji perisian tanpa mendedahkan data peribadi sebenar sesiapa.
Apakah CURP?
CURP ialah singkatan bagi Clave Ănica de Registro de PoblaciĂłn, atau Kod Pendaftaran Penduduk Unik. Kod ini dikeluarkan oleh RENAPO (Registro Nacional de PoblaciĂłn e Identidad), iaitu pendaftaran penduduk kebangsaan Mexico. Hampir setiap penduduk Mexico memilikinya. Kod ini terdapat pada borang pendaftaran sekolah, rekod cukai, dokumen perubatan dan pendaftaran pengundi. Kod tersebut dibina daripada bahagian nama seseorang, tarikh lahir, jantina dan negeri kelahiran, serta dua aksara tambahan yang membantu membezakan orang yang mungkin mempunyai kod sama.
Struktur dan format CURP
CURP sentiasa mempunyai 18 aksara, semuanya huruf besar atau digit. Setiap kedudukan mempunyai maksud yang tetap.
| Kedudukan | Maksud |
|---|---|
| 1 | Huruf pertama nama keluarga bapa |
| 2 | Vokal dalaman pertama nama keluarga sebelah bapa (vokal pertama selepas huruf pertama) |
| 3 | Huruf pertama nama keluarga ibu |
| 4 | Huruf pertama nama diberi |
| 5â6 | Dua digit terakhir tahun kelahiran |
| 7â8 | Bulan kelahiran (01â12) |
| 9â10 | Hari kelahiran (01â31) |
| 11 | Jantina: H untuk Hombre (lelaki), M untuk Mujer (perempuan) |
| 12â13 | Kod dua huruf bagi negeri kelahiran, seperti DF untuk Mexico City atau JC untuk Jalisco |
| 14 | Konsonan dalaman pertama nama keluarga sebelah bapa |
| 15 | Konsonan dalaman pertama nama keluarga sebelah ibu |
| 16 | Konsonan dalaman pertama nama diberi |
| 17 | Satu digit bagi orang yang lahir sebelum 2000, atau satu huruf bagi orang yang lahir pada 2000 atau selepasnya |
| 18 | Digit semakan yang dikira daripada 17 aksara pertama |
Mexico mempunyai 32 kod negeri dalam skim ini, satu bagi setiap 31 negeri serta Mexico City.
Apabila empat aksara pertama kebetulan membentuk perkataan yang dianggap lucah dalam bahasa Sepanyol, RENAPO menggantikan aksara kedua dengan X. Seseorang bernama Ines Bueno Estrada sepatutnya bermula dengan BUEI, maka kodnya bermula dengan BXEI. Penjana ini menyekat 82 perkataan yang sama dan menggunakan penggantian yang sama.
Cara mengira digit semakan CURP
Aksara ke-18 mengesan kesilapan menaip dan menyalin. Aksara ini dikira daripada 17 aksara pertama menggunakan kaedah berikut:
- Cari setiap aksara daripada 17 aksara pertama dalam abjad
0123456789ABCDEFGHIJKLMNĂOPQRSTUVWXYZ. Kedudukannya dalam senarai ini, bermula pada 0, ialah nilainya. Jadi,0mempunyai nilai 0,Amempunyai nilai 10,Rmempunyai nilai 28, danZmempunyai nilai 36. - Darabkan nilai setiap aksara dengan pemberat. Pemberat bermula pada 18 untuk aksara pertama dan berkurang satu bagi setiap aksara berikutnya, lalu berakhir pada 2 untuk aksara ke-17.
- Jumlahkan 17 hasil darab untuk mendapatkan jumlah, S.
- Digit semakan ialah
(10 â (S mod 10)) mod 10.
Contoh pengiraan
Pertimbangkan seseorang rekaan bernama Juan PĂŠrez RamĂrez, yang dilahirkan sebagai lelaki pada 15 Mac 1985 di Jalisco.
- Kedudukan 1:
P, huruf pertama âPĂŠrezâ - Kedudukan 2:
E, vokal dalaman pertama âPĂŠrezâ (huruf selepas huruf pertama ialah E, R, E, Z, maka vokal pertama ialah E) - Kedudukan 3:
R, huruf pertama âRamĂrezâ - Kedudukan 4:
J, huruf pertama âJuanâ - Kedudukan 5â10:
850315, untuk 1985-03-15 - Kedudukan 11:
H, lelaki - Kedudukan 12â13:
JC, Jalisco - Kedudukan 14:
R, konsonan dalaman pertama âPĂŠrezâ - Kedudukan 15:
M, konsonan dalaman pertama âRamĂrezâ - Kedudukan 16:
N, konsonan dalaman pertama âJuanâ - Kedudukan 17:
0, satu digit kerana tahun kelahiran adalah sebelum 2000 (rekod sebenar menggunakan peraturan tetap untuk memilih digit; contoh ini menggunakan 0)
17 aksara pertama ialah PERJ850315HJCRMN0. Apabila formula di atas digunakan pada rentetan ini, jumlahnya ialah 2342. Oleh sebab 2342 mod 10 = 2, digit semakannya ialah (10 â 2) mod 10 = 8. CURP penuh ialah PERJ850315HJCRMN08.
Cara penjana ini berfungsi
Alat ini membina sampel CURP dalam beberapa langkah. Alat ini memilih huruf rawak untuk bahagian nama, kemudian tahun kelahiran dari 1940 hingga tahun sebelum tahun semasa, supaya tarikhnya sentiasa berada pada masa lalu. Hari dipilih dalam julat sebenar bulan yang dipilih, jadi Februari 29 hanya muncul pada tahun kabisat. Jantina dan kod negeri dipilih secara rawak. Alat ini kemudian menambah tiga konsonan dalaman, menggunakan penggantian perkataan lucah jika perlu, memilih huruf untuk kedudukan 17 apabila tahun kelahiran ialah 2000 atau selepasnya dan digit apabila tahun itu lebih awal, lalu mengira digit semakan menggunakan formula di atas.
Sebelum memaparkan kod, alat ini menyemaknya sekali lagi: bentuknya mesti sepadan dengan corak 18 aksara, bulannya mesti 01-12, tarikh yang dikodkan mesti wujud dalam kalendar dan berada pada masa lalu, dan digit semakan mesti sepadan. Abad bagi semakan tarikh itu ditentukan oleh kedudukan 17, mengikut peraturan yang sama seperti RENAPO: digit bermaksud tahun 1900-an, manakala huruf bermaksud tahun 2000-an. Kod yang gagal mana-mana semakan ini tidak akan dipaparkan.
Kegunaan lazim CURP yang dijana
Pasukan perisian menggunakan CURP yang dijana untuk menguji borang pendaftaran, medan pangkalan data dan logik pengesahan sebelum melancarkan produk untuk pengguna Mexico. Oleh sebab kod ini rawak, kod tersebut boleh dicipta secara pukal untuk ujian beban atau mengisi pangkalan data pembangunan, tanpa menggunakan atau menyimpan maklumat pengenalan sebenar sesiapa.
Sejarah sistem CURP
Mexico memperkenalkan CURP pada 1996 untuk menggantikan pelbagai sistem pengenalan yang digunakan secara berasingan oleh agensi kerajaan, sehingga menyukarkan pemadanan rekod orang yang sama antara pangkalan data. Sejak itu, CURP diperlukan untuk banyak urusan dengan kerajaan, termasuk pendaftaran sekolah, pemfailan cukai dan permohonan pasport. Bagi orang yang lahir mulai 2000, RENAPO mengisi kedudukan 17 dengan huruf dan bukannya digit.
Perbandingan CURP dengan sistem ID kebangsaan lain
| Negara | Sistem | Format |
|---|---|---|
| Mexico | CURP | 18 aksara, huruf dan digit |
| Amerika Syarikat | Nombor Keselamatan Sosial | 9 digit |
| Kanada | Nombor Insurans Sosial | 9 digit |
| Brazil | CPF | 11 digit |
| India | Aadhaar | 12 digit |
| Sepanyol | DNI/NIE | 8 digit serta satu huruf semakan |
Berbeza daripada nombor yang disusun secara berjujukan semata-mata, CURP mengandungi maklumat yang boleh dibaca: tarikh lahir, jantina dan negeri. Hal ini membolehkan semakan sama ada tarikh yang dikodkan ialah tarikh sebenar dalam kalendar, iaitu salah satu semakan yang dilakukan oleh alat ini semasa menjana sampel kod.
Soalan lazim
Untuk apakah penjana CURP digunakan?
Alat ini mencipta kod rawak dalam format yang sama seperti CURP sebenar, untuk digunakan dalam pengujian perisian, pengisian pangkalan data dan semakan bahawa logik pengesahan berfungsi dengan betul.
Adakah CURP yang dijana dikaitkan dengan orang sebenar?
Tidak. Setiap aksara dipilih secara rawak atau dikira daripada nilai rawak lain. Hasilnya tidak berkaitan dengan mana-mana orang sebenar, sama ada yang masih hidup atau yang telah meninggal dunia.
Bolehkah CURP yang dijana digunakan pada borang rasmi?
Tidak. Hanya RENAPO boleh mengeluarkan CURP yang sah untuk orang sebenar. Menggunakan kod yang dijana pada borang kerajaan, pemfailan cukai atau mana-mana dokumen rasmi boleh dianggap sebagai penipuan.
Mengapakah sesetengah CURP berakhir dengan huruf dan yang lain dengan digit pada kedudukan 17?
Kedudukan 17 membezakan orang yang sebaliknya akan mempunyai CURP yang sama. RENAPO menggunakan digit bagi orang yang lahir sebelum 2000 dan huruf bagi orang yang lahir pada 2000 atau selepasnya.
Mengapakah CURP kadangkala mempunyai X sebagai aksara kedua?
Kerana empat aksara pertama sebaliknya akan membentuk perkataan yang dianggap lucah dalam bahasa Sepanyol. RENAPO menggantikan aksara kedua dengan X dalam keadaan itu, maka BUEI menjadi BXEI.
Adakah alat ini menyimpan CURP yang dijananya?
Tidak. Kod ini dijana dalam pelayar menggunakan JavaScript. Tiada apa-apa dihantar ke pelayan atau disimpan.
Bagaimanakah digit semakan dikira?
Setiap satu daripada 17 aksara pertama ditukar kepada nombor berdasarkan kedudukannya dalam abjad tetap yang mempunyai 37 aksara, didarab dengan pemberat dari 18 hingga 2, kemudian dijumlahkan. Digit semakan ialah (10 â (sum mod 10)) mod 10. Lihat contoh pengiraan di atas.
Rujukan
- SEGOB (SecretarĂa de GobernaciĂłn), portal rasmi CURP.
- RENAPO (Registro Nacional de PoblaciĂłn e Identidad), Instructivo Normativo para la AsignaciĂłn de la CURP.