Random CPF Generator for Testing Purposes and Validation

Generirajte valjane, nasumične CPF (Cadastro de Pessoas Físicas) brojeve za testne svrhe. Ovaj alat stvara CPF-ove koji su u skladu s službenim brazilskim formatom i pravilima validacije, bez korištenja stvarnih osobnih podataka.

Generiraj CPF

📚

Dokumentacija

Generator CPF

Uvod

CPF (Cadastro de Pessoas Físicas) je jedinstveni identifikator koji se dodjeljuje brazilskim građanima i rezidentima u svrhe oporezivanja. Ovaj generator stvara važeće, nasumične CPF brojeve za potrebe testiranja. Važno je napomenuti da ovi generirani CPF-ovi nisu povezani s pravim osobama i trebaju se koristiti samo u testnim okruženjima.

Struktura CPF-a

CPF se sastoji od 11 znamenki:

  • Prvih 9 znamenki su osnovni brojevi
  • Posljednje 2 znamenke su kontrolne znamenke

Format se obično prikazuje kao: XXX.XXX.XXX-XX

Algoritam validacije CPF-a

Algoritam validacije CPF-a osigurava integritet broja. Evo kako to funkcionira:

  1. Pomnožite prvih 9 znamenki s težinama (10 do 2)
  2. Zbrojite rezultate
  3. Izračunajte ostatak zbroja podijeljenog s 11
  4. Ako je ostatak manji od 2, prva kontrolna znamenka je 0; inače, to je 11 minus ostatak
  5. Ponovite postupak za prvih 10 znamenki (uključujući prvu kontrolnu znamenku) s težinama 11 do 2
  6. Izračunajte drugu kontrolnu znamenku koristeći istu pravilo kao prvu

Kako koristiti ovaj generator

  1. Kliknite na gumb "Generiraj CPF"
  2. Važeći, nasumični CPF će se prikazati
  3. Možete kopirati generirani CPF za korištenje u vašim testnim scenarijima

Formula

Formula za generiranje važećeg CPF-a je sljedeća:

1def generate_cpf():
2    # Generirajte 9 nasumičnih znamenki
3    base_cpf = [random.randint(0, 9) for _ in range(9)]
4    
5    # Izračunajte prvu kontrolnu znamenku
6    sum_1 = sum((10 - i) * digit for i, digit in enumerate(base_cpf))
7    check_digit_1 = (sum_1 * 10 % 11) % 10
8    
9    # Izračunajte drugu kontrolnu znamenku
10    sum_2 = sum((11 - i) * digit for i, digit in enumerate(base_cpf + [check_digit_1]))
11    check_digit_2 = (sum_2 * 10 % 11) % 10
12    
13    return base_cpf + [check_digit_1, check_digit_2]
14

Izračun

Generator izvodi sljedeće korake:

  1. Generirajte 9 nasumičnih znamenki
  2. Izračunajte prvu kontrolnu znamenku koristeći gore opisani algoritam
  3. Izračunajte drugu kontrolnu znamenku
  4. Kombinirajte sve znamenke kako biste formirali cjelokupni CPF

Primjeri

Evo nekoliko primjera generiranih CPF-ova:

  1. 123.456.789-09
  2. 987.654.321-00
  3. 111.222.333-96

Upotrebe

Generator CPF-a je koristan u raznim scenarijima razvoja softvera i testiranja:

  1. Testiranje baza podataka: Popunite testne baze podataka važećim CPF brojevima
  2. Validacija obrazaca: Testirajte unos validacije za obrasce registracije brazilskih korisnika
  3. Testiranje API-ja: Koristite generirane CPF-ove u API zahtjevima koji zahtijevaju važeću brazilsku identifikaciju
  4. Testiranje performansi: Generirajte velike skupove jedinstvenih, važećih CPF-ova za testiranje opterećenja
  5. Testiranje UI/UX: Osigurajte pravilno formatiranje i prikaz CPF brojeva u korisničkim sučeljima

Alternative

Iako je CPF primarni identifikator pojedinaca u Brazilu, postoje i drugi identifikatori koji se mogu koristiti u specifičnim kontekstima:

  1. RG (Registro Geral): Državna identifikacijska isprava
  2. CNPJ (Cadastro Nacional da Pessoa Jurídica): Koristi se za tvrtke i pravne osobe
  3. PIS/PASEP: Koristi se u svrhe povezane s zaposlenjem

Povijest

CPF je uveden u Brazilu 1965. godine kao dio šireg napora za modernizaciju poreznog sustava zemlje. U početku se koristio prvenstveno za svrhe poreza na dohodak, ali je s vremenom njegova upotreba proširila na razna druga područja brazilske birokracije i trgovine.

Ključni događaji u povijesti CPF-a:

  • 1965: CPF uveden za pojedince
  • 1972: CPF postaje obavezan za sve porezne obveznike
  • 1990-e: CPF počinje biti široko korišten u komercijalnim i financijskim transakcijama
  • 2000-e: Digitalni sustavi dodatno integriraju CPF u svakodnevni život u Brazilu

Danas je CPF bitan dio interakcija brazilskih građana i rezidenata s vladinim uslugama, financijskim institucijama i mnogim komercijalnim transakcijama.

Primjeri koda

Evo isječaka koda za generiranje i validaciju CPF-ova u raznim programskim jezicima:

1import random
2
3def generate_cpf():
4    cpf = [random.randint(0, 9) for _ in range(9)]
5    for _ in range(2):
6        value = sum((cpf[num] * ((len(cpf) + 1) - num) for num in range(len(cpf)))) % 11
7        cpf.append(11 - value if value > 1 else 0)
8    return ''.join(map(str, cpf))
9
10def validate_cpf(cpf):
11    numbers = [int(digit) for digit in cpf if digit.isdigit()]
12    if len(numbers) != 11 or len(set(numbers)) == 1:
13        return False
14    for i in range(9, 11):
15        value = sum((numbers[num] * ((i + 1) - num) for num in range(i))) % 11
16        if numbers[i] != (11 - value if value > 1 else 0):
17            return False
18    return True
19
20## Primjer korištenja
21cpf = generate_cpf()
22print(f"Generirani CPF: {cpf}")
23print(f"Je li važeći: {validate_cpf(cpf)}")
24

Ovi primjeri prikazuju kako generirati i validirati CPF-ove u Pythonu, JavaScriptu i Javi. Možete prilagoditi ove funkcije prema svojim specifičnim potrebama ili ih integrirati u veće sustave koji zahtijevaju rukovanje CPF-ovima.

Pravni i etički aspekti

Kada koristite generirane CPF-ove, važno je imati na umu sljedeće točke:

  1. Generirani CPF-ovi su samo za testne svrhe i nikada se ne smiju koristiti za impersonaciju stvarnih osoba ili za bilo kakve prijevarne aktivnosti.
  2. Jasno označite sve testne podatke koji sadrže generirane CPF-ove kako biste spriječili zabunu s pravim osobnim podacima.
  3. Budite svjesni zakona o zaštiti podataka i propisa u vašoj jurisdikciji prilikom rukovanja čak i lažnim osobnim identifikatorima.
  4. U proizvodnim okruženjima uvijek koristite stvarne, verificirane CPF-ove koje su pružili korisnici ili ovlašteni izvori.
  5. Implementirajte odgovarajuće sigurnosne mjere za zaštitu i stvarnih i generiranih CPF-ova u vašim sustavima.

Reference

  1. Receita Federal do Brasil. "CPF - Cadastro de Pessoas Físicas." https://www.gov.br/receitafederal/pt-br/assuntos/orientacao-tributaria/cadastros/cpf
  2. Serpro. "Validador de CPF." https://www.serpro.gov.br/links-fixos-superiores/validador-cpf
  3. Ministério da Fazenda. "História do CPF." https://www.gov.br/fazenda/pt-br/assuntos/receita-federal
  4. Lei nº 4.862, de 29 de novembro de 1965. "Altera a legislação do impôsto de renda, adota diversas medidas de ordem fiscal e fazendária, e dá outras providências."