🛠️

Whiz Tools

Build • Create • Innovate

Atsitiktinių CPF numerių generatorius testavimui

Generuokite galiojančius, atsitiktinius CPF (Cadastro de Pessoas Físicas) numerius testavimo tikslais. Šis įrankis kuria CPF, kurie atitinka oficialų Brazilijos formatą ir validacijos taisykles, nenaudodamas jokios tikros asmeninės informacijos.

Generuoti CPF

📚

Dokumentacija

CPF Generator

Įvadas

CPF (Cadastro de Pessoas Físicas) yra unikalus identifikatorius, priskirtas Brazilijos piliečiams ir gyventojams mokesčių tikslais. Šis generatorius sukuria galiojančius, atsitiktinius CPF numerius testavimo tikslais. Svarbu pažymėti, kad šie sugeneruoti CPF nėra susiję su tikrais asmenimis ir turėtų būti naudojami tik testavimo aplinkose.

CPF struktūra

CPF susideda iš 11 skaitmenų:

  • Pirmieji 9 skaitmenys yra baziniai skaičiai
  • Paskutiniai 2 skaitmenys yra kontroliniai skaitmenys

Formatas paprastai atvaizduojamas kaip: XXX.XXX.XXX-XX

CPF patikros algoritmas

CPF patikros algoritmas užtikrina numerio vientisumą. Štai kaip jis veikia:

  1. Pirmuosius 9 skaitmenis padauginkite iš svorių (10 iki 2)
  2. Sudėkite rezultatus
  3. Apskaičiuokite liekaną, padalijus sumą iš 11
  4. Jei liekana yra mažesnė nei 2, pirmasis kontrolinis skaitmuo yra 0; kitaip, tai yra 11 minus liekana
  5. Pakartokite procesą pirmiems 10 skaitmenims (įskaitant pirmąjį kontrolinį skaitmenį) su svoriais 11 iki 2
  6. Apskaičiuokite antrąjį kontrolinį skaitmenį, naudodami tą pačią taisyklę kaip ir pirmam

Kaip naudoti šį generatorių

  1. Paspauskite mygtuką "Generuoti CPF"
  2. Bus rodomas galiojantis, atsitiktinis CPF
  3. Galite nukopijuoti sugeneruotą CPF, kad naudotumėte savo testavimo scenarijose

Formulė

Galiojančio CPF generavimo formulė yra tokia:

1def generate_cpf():
2    # Sugeneruoti 9 atsitiktinius skaitmenis
3    base_cpf = [random.randint(0, 9) for _ in range(9)]
4    
5    # Apskaičiuoti pirmąjį kontrolinį skaitmenį
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    # Apskaičiuoti antrąjį kontrolinį skaitmenį
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

Apskaičiavimas

Generatorius atlieka šiuos veiksmus:

  1. Sugeneruoja 9 atsitiktinius skaitmenis
  2. Apskaičiuoja pirmąjį kontrolinį skaitmenį, naudodamas aukščiau aprašytą algoritmą
  3. Apskaičiuoja antrąjį kontrolinį skaitmenį
  4. Sujungia visus skaitmenis, kad sudarytų visą CPF

Pavyzdžiai

Štai keletas sugeneruotų CPF pavyzdžių:

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

Naudojimo atvejai

CPF generatorius yra naudingas įvairiuose programinės įrangos kūrimo ir testavimo scenarijuose:

  1. Duomenų bazės testavimas: užpildyti testines duomenų bazes galiojančiais CPF numeriais
  2. Formos patikra: testuoti įvesties patikrą Brazilijos vartotojų registracijos formose
  3. API testavimas: naudoti sugeneruotus CPF API užklausose, kurioms reikalingas galiojantis Brazilijos identifikavimas
  4. Veikimo testavimas: generuoti didelius unikalių, galiojančių CPF rinkinius apkrovos testavimui
  5. UI/UX testavimas: užtikrinti tinkamą CPF numerių formatavimą ir atvaizdavimą vartotojo sąsajose

Alternatyvos

Nors CPF yra pagrindinis asmens identifikatorius Brazilijoje, tam tikrose kontekstuose gali būti naudojami ir kiti identifikatoriai:

  1. RG (Registro Geral): valstybės išduotas tapatybės dokumentas
  2. CNPJ (Cadastro Nacional da Pessoa Jurídica): naudojamas verslams ir juridiniams asmenims
  3. PIS/PASEP: naudojamas su darbu susijusiems tikslams

Istorija

CPF buvo pristatytas Brazilijoje 1965 m. kaip platesnių pastangų modernizuoti šalies mokesčių sistemą dalis. Iš pradžių jis buvo naudojamas daugiausia pajamų mokesčių tikslais, tačiau laikui bėgant jo naudojimas išsiplėtė į įvairias kitas Brazilijos biurokratijos ir komercijos sritis.

Pagrindiniai CPF istorijos etapai:

  • 1965: CPF pristatytas asmenims
  • 1972: CPF tampa privalomas visiems mokesčius mokantiems asmenims
  • 1990-aisiais: CPF pradeda plačiau naudoti komercinėse ir finansinėse operacijose
  • 2000-aisiais: skaitmeniniai sistemų sprendimai dar labiau integruoja CPF į kasdienį gyvenimą Brazilijoje

Šiandien CPF yra esminė Brazilijos piliečių ir gyventojų sąveikos su vyriausybinėmis paslaugomis, finansų institucijomis ir daugeliu komercinių sandorių dalis.

Kodo pavyzdžiai

Štai kodo fragmentai, skirti CPF generavimui ir patikrai įvairiose programavimo kalbose:

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## Pavyzdžio naudojimas
21cpf = generate_cpf()
22print(f"Sugeneruotas CPF: {cpf}")
23print(f"Ar galioja: {validate_cpf(cpf)}")
24

Šie pavyzdžiai demonstruoja, kaip generuoti ir patikrinti CPF Python, JavaScript ir Java kalbose. Galite pritaikyti šias funkcijas savo specifiniams poreikiams arba integruoti jas į didesnes sistemas, kurioms reikalingas CPF tvarkymas.

Teisiniai ir etiniai aspektai

Naudodami sugeneruotus CPF, svarbu atkreipti dėmesį į šiuos punktus:

  1. Sugeneruoti CPF yra skirti tik testavimo tikslams ir niekada neturėtų būti naudojami imituojant tikrus asmenis ar bet kokiai sukčiavimo veiklai.
  2. Aiškiai pažymėkite bet kokius testinius duomenis, kuriuose yra sugeneruoti CPF, kad būtų išvengta painiavos su tikrais asmeniniais duomenimis.
  3. Būkite sąmoningi apie duomenų apsaugos įstatymus ir taisykles savo jurisdikcijoje, kai tvarkote net ir netikrus asmeninius identifikatorius.
  4. Produkcijos aplinkose visada naudokite tikrus, patvirtintus CPF, kuriuos pateikia vartotojai ar įgalioti šaltiniai.
  5. Įdiekite tinkamas saugumo priemones, kad apsaugotumėte tiek tikrus, tiek sugeneruotus CPF savo sistemose.

Nuorodos

  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."