Pereiti prie turinio

CPF Generatorius - Kurkite Galiojančius Brazilijos Mokestinius ID Testams

Nemokamas CPF generatorius sukuria galiojančius Brazilijos mokestinių ID numerius, kurie praeina tikrinimo algoritmus. Idealus formų, API ir duomenų bazių testavimui be realių asmens duomenų naudojimo.

Spustelėkite, kad sugeneruotumėte galiojantį Brazilijos CPF numerį testavimo tikslais

Įkrovimo skaičiuotuvas...
📚

Dokumentacija

CPF generatorius - sukurkite galiojančius braziliškus mokesčių identifikavimo numerius testavimui

Kodėl Jums Reikia CPF Generatoriaus Testavimui

Kuriant programėles Brazilijos rinkai, greitai susidursite su įprastine problema: formų ir validavimo logikos testavimu nepadarant žalos tikrų vartotojų duomenims. Būtent čia CPF generatorius tampa itin svarbus.

CPF (Cadastro de Pessoas Físicas) yra unikalus 11 skaitmenų identifikacijos numeris, išduodamas Brazilijos piliečiams ir gyventojams mokestiniais tikslais. Šis įrankis sukuria matematiškai teisingus, atsitiktinius CPF numerius, kurie praeina oficialų Brazilijos validavimo algoritmą - idealiai tinka duomenų bazių pildymui, įvesties formų tikrinimui ir automatiniams testams be privatumo pažeidimų.

Kritinis apribojimas: Sugeneruoti CPF numeriai skirti tik testavimo aplinkoms. Jie nėra susieti su tikrais asmenimis ir jokiu būdu negali būti naudojami gamybinėse sistemose ar sukčiavimo tikslais. Jų vertė yra tai, kad jie praeina validavimo patikras, tuo pačiu išlaikant visišką atskyrimą nuo tikrų asmens duomenų.

CPF struktūros ir formato supratimas

Galiojantis CPF susideda iš 11 skaitmenų su specifine struktūra:

  • Pirmieji 9 skaitmenys: Baziniai identifikacijos numeriai
  • Paskutiniai 2 skaitmenys: Patikros skaitmenys validacijai
  • Standartinis formatas: XXX.XXX.XXX-XX (su taškais ir brūkšniu)

Pavyzdys: 123.456.789-09

Patikros skaitmenys užtikrina, kad CPF numeris būtų matematiškai teisingas, apsaugant nuo rašybos klaidų ir neteisingų įrašų Brazilijos sistemose.

Kaip veikia CPF tikrinimas

CPF tikrinimo algoritmas naudoja modulo-11 svertinę kontrolinę skaitmenį sistemą, siekiant užtikrinti numerio vientisumą. Šio algoritmo supratimas yra esminis kuriant CPF tikrinimą jūsų programėlėse.

Tikrinimo proceso paaiškinimas

Algoritmas apskaičiuoja du kontrolinius skaitmenis (paskutinius du CPF skaitmenis) pagal pirmuosius devynis skaitmenis:

Pirmojo kontrolinio skaitmens skaičiavimas:

  1. Padauginti pirmuosius 9 skaitmenis iš mažėjančių svorių (10, 9, 8, 7, 6, 5, 4, 3, 2)
  2. Sudėti visus daugybos rezultatus
  3. Apskaičiuoti dalybos liekaną
  4. Jei liekana < 2, kontrolinis skaitmuo yra 0; priešingu atveju tai yra 11 minus liekana

Antrojo kontrolinio skaitmens skaičiavimas:

  1. Pakartoti procesą pirmiesiems 9 skaitmenims plius pirmasis kontrolinis skaitmuo (iš viso 10 skaitmenų)
  2. Naudoti svorius 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
  3. Taikyti tą pačią liekanos logiką

Šis dviejų etapų tikrinimas aptinka daugumą perrašymo klaidų ir neleidžia atsitiktiniams numeriams būti laikomiems galiojančiais CPF. Algoritmas aprašytas Lei nº 4.862/1965, kuri nustatė CPF sistemą.

Kodėl tai svarbu programuotojams

Kuriant CPF tikrinimą, dažnai programuotojai praleisdavo kraštutinį atvejį, kai liekana yra 0 arba 1 - šie turėtų būti susieti su kontroliniu skaitmeniu 0, o ne 10 ar 11. Tai dažna tikrinimo klaidų priežastis. Formulė (sum * 10 % 11) % 10 sklandžiai tvarko šį kraštutinį atvejį, užtikrinant, kad rezultatas niekada neviršytų 9.

Kaip naudotis šiuo CPF generatoriaus įrankiu

Generuoti galiojančius testinių CPF numerius užtrunka kelias sekundes:

  1. Spustelėkite "Generuoti CPF" mygtuką
  2. Peržiūrėkite rodomą galiojantį atsitiktinį CPF numerį standartiniame XXX.XXX.XXX-XX formate
  3. Nukopijuokite sugeneruotą numerį vienu paspaudimu
  4. Įklijuokite tiesiogiai į savo testavimo formas, API užklausas arba duomenų bazės pradines reikšmes

Kiekvienas sugeneruotas CPF praeina Brazilijos oficialų patvirtinimo algoritmą, todėl galite patikimai patikrinti savo patvirtinimo logiką. Numeriai generuojami atsitiktinai kiekvieną kartą, sumažinant konfliktų tikimybę jūsų testavimo duomenų rinkiniuose.

Formulė

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ą patikros 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ą patikros 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

Skaičiavimas

Generatorius atlieka šiuos veiksmus:

  1. Sugeneruoti 9 atsitiktinius skaitmenis
  2. Apskaičiuoti pirmą patikros skaitmenį naudojant aprašytą algoritmą
  3. Apskaičiuoti antrą patikros skaitmenį
  4. Sujungti visus skaitmenis į galutinį CPF

Pavyzdžiai

Štai keli sugeneruotų CPF pavyzdžiai:

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

Įprasti CPF numerių tikrinimo naudojimo atvejai

Remiantis realiais kūrimo scenarijais, štai kada jums prireiks sugeneruotų CPF numerių:

Kūrimo ir testavimo scenarijai

Duomenų bazės pildymas ir migracijos: Kai kuriate lokalią ar bandomąją aplinką, jums reikia realistinių testinių duomenų. Sugeneruoti CPF numeriai leidžia sukurti šimtus ar tūkstančius testinių vartotojų įrašų nepaliečiant tikrų asmens duomenų. Tai ypač naudinga tikrinant duomenų bazės apribojimus ir unikalius CPF stulpelio indeksus.

Formos patvirtinimo testavimas: Brazilijos registracijos formos paprastai reikalauja CPF patvirtinimo tiek kliento, tiek serverio pusėje. Kraštutinių atvejų tikrinimas - pavyzdžiui, tinkamai suformatuoti, bet netinkami CPF, arba visi vienodi skaitmenys (111.111.111-11) - padeda aptikti patvirtinimo klaidas dar prieš patenkant į produkciją. Sugeneruoti CPF numeriai suteikia tinkamus testavimo atvejus, kad patikrintumėte, ar jūsų patvirtinimo logika veikia teisingai.

API integracijos testavimas: Kuriant integracijas su Brazilijos mokėjimo tarpininkais, finansinėmis paslaugomis ar vyriausybės API, dažnai prireikia galiojančių CPF numerių jūsų testavimo užklausose. Naudojant sugeneruotus CPF, jūsų testavimo rinkinys išlieka nepriklausomas nuo tikrų vartotojų duomenų.

Apkrovos ir našumo testavimas: Atliekant sistemos, apdorojančios Brazilijos vartotojų duomenis, apkrovos testavimą, jums reikia didelių unikalių galiojančių CPF numerių kiekių. Tūkstančių testinių CPF generavimas leidžia imituoti realistinę apkrovą be privatumo problemų.

Vartotojo sąsajos/vartotojo patirties patvirtinimas: Tikrinant, kaip jūsų sąsaja tvarko CPF rodymą, maskavimą ir formatavimą įvairiuose ekranuose ir kontekstuose. Sugeneruoti CPF numeriai padeda patikrinti, ar jūsų formatavimo logika (pridedant taškus ir brūkšnius) veikia nuosekliai.

Dažniausios klaidos, kurių reikia vengti

Viena klaida, kurią programuotojai dažnai daro, yra pamiršimas, kad visi vienodi skaitmenys (pvz., 000.000.000-00 arba 111.111.111-11) yra techniškai galiojantys pagal algoritmą, tačiau atmetami tikrų Brazilijos sistemų. Atliekant testavimą, įtraukite patikrinimus šiems žinomiems netinkamiems šablonams, net jei jie praeina matematinį patvirtinimą.

Kita problema: sugeneruoti CPF numeriai puikiai tinka testavimo logikos patikrinimui, tačiau nepadės jums patikrinti faktinių CPF paieškų vyriausybės duomenų bazėse. Atliekant integracijos testus, kurie užklaus tikrų Brazilijos vyriausybės API, jums reikės naudoti specialius testavimo CPF, kuriuos pateikia šios paslaugos (pvz., Serpro testavimo aplinka).

Susiję Brazilijos identifikavimo sistemų

Nors CPF yra pagrindinis individualus identifikatorius Brazilijoje, susipažinimas su susijusiomis sistemomis padeda kuriant išsamias Brazilijos programėles:

RG (Registro Geral): Valstijos išduotų tapatybės dokumentų numeriai. Kitaip nei CPF, kuris yra federalinis ir laikosi nuoseklaus formato, RG numeriai skiriasi priklausomai nuo valstijos ir neturi standartizuoto patvirtinimo algoritmo. Kuriant programėles Brazilijai, paprastai reikalaujama CPF galinės dalies patvirtinimo ir gali būti priimamas RG kaip antrinis identifikatorius.

CNPJ (Cadastro Nacional da Pessoa Jurídica): CPF verslo atitikmuo, naudojamas įmonėms ir juridiniams asmenims. CNPJ naudoja panašų modulo-11 patvirtinimo algoritmą, tačiau turi 14 skaitmenų vietoj 11. Jei kuriate B2B programėles Brazilijai, jums reikės tvarkyti tiek CPF (individualiems verslo savininkams), tiek CNPJ (registruotoms įmonėms).

PIS/PASEP/NIT: Su darbu susiję identifikavimo numeriai, naudojami Brazilijos socialinio draudimo sistemoje. Šie yra mažiau dažnai reikalaujami bendrose programėlėse, tačiau būtini žmogiškųjų išteklių ir algalapių sistemose.

CPF evoliucija Brazilijoje

CPF sistema buvo įsteigta Lei nº 4.862/1965 kaip dalis Brazilijos mokesčių modernizavimo pastangų. Tai, kas pradžioje buvo paprastas mokesčių identifikatorius, tapo de facto nacionaliniu Brazilijos ID numeriu.

Pagrindinės gairės:

  • 1965: CPF įvestas pajamų mokesčių deklaravimui
  • 1972: Padarytas privalomu visiems mokesčių mokėtojams
  • 1990-ieji: Komercinė adaptacija spartėja - bankai ir mažmeninės prekybos įmonės pradeda reikalauti CPF sandoriams
  • 2000-ieji: Skaitmeninė transformacija daro CPF esminiu internetinių paslaugų elementu
  • 2020-ieji: CPF reikalaujama beveik visose vyriausybės paslaugose, finansinėse operacijose ir net vartotojų pirkimuose

Šis plėtimasis paaiškina, kodėl CPF patvirtinimas yra kritiškai svarbus bet kokiai programėlei, aptarnaujančiai Brazilijos vartotojus - tai jau nebėra tik mokesčių ID, tai būdas, kaip brazilai save identifikuoja daugybėje kontekstų. Testuojant šias sistemas, turint galiojančius CPF numerius yra esminis realistiškų testavimo scenarijų aspektas.

Kodo pavyzdžiai CPF generavimui ir patvirtinimui

Jei jums reikia integruoti CPF generavimą ir patvirtinimą tiesiai į jūsų programėlę, štai gamybiniai įgyvendinimai populiariomis kalbomis. Kiekvienas pavyzdys apima ir generavimo, ir patvirtinimo funkcijas, kad galėtumėte įgyvendinti visą darbo eigą.

Šie įgyvendinimai laikosi oficialaus Receita Federal algoritmo ir apima anksčiau minėtus kraštutinių atvejų tvarkymus (liekanos 0 ir 1 susiejamos su kontroliniu skaitmeniu 0).

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

Naudojimo pavyzdys

cpf = generate_cpf() print(f"Sugeneruotas CPF: {cpf}") print(f"Ar galiojantis: {validate_cpf(cpf)}")

1
2

javascript function generateCPF() { const cpf = Array.from({length: 9}, () => Math.floor(Math.random() * 10)); for (let i = 0; i < 2; i++) { let sum = cpf.reduce((acc, cur, idx) => acc + cur * (cpf.length + 1 - idx), 0); let digit = 11 - (sum % 11); cpf.push(digit > 9 ? 0 : digit); } return cpf.join(''); }

function validateCPF(cpf) { const numbers = cpf.match(/\d/g).map(Number); if (numbers.length !== 11 || new Set(numbers).size === 1) return false; for (let i = 9; i < 11; i++) { let sum = numbers.slice(0, i).reduce((acc, cur, idx) => acc + cur * (i + 1 - idx), 0); let digit = 11 - (sum % 11); if (numbers[i] !== (digit > 9 ? 0 : digit)) return false; } return true; }

// Naudojimo pavyzdys const cpf = generateCPF(); console.log(Sugeneruotas CPF: ${cpf}); console.log(Ar galiojantis: ${validateCPF(cpf)});

1
2

java import java.util.Random;

public class CPFGenerator { private static final Random random = new Random();

public static String generateCPF() {
    int[] cpf = new int[11];
    for (int i = 0; i < 9; i++) {
        cpf[i] = random.nextInt(10);
    }
    cpf[9] = calculateCheckDigit(cpf, 10);
    cpf[10] = calculateCheckDigit(cpf, 11);
    return formatCPF(cpf);
}

private static int calculateCheckDigit(int[] cpf, int factor) {
    int sum = 0;
    for (int i = 0; i < factor - 1; i++) {
        sum += cpf[i] * (factor - i);
    }
    int result = 11 - (sum % 11);
    return result > 9 ? 0 : result;
}

private static String formatCPF(int[] cpf) {
    return String.format("%d%d%d.%d%d%d.%d%d%d-%d%d",
            cpf[0], cpf[1], cpf[2], cpf[3], cpf[4], cpf[5], cpf[6], cpf[7], cpf[8], cpf[9], cpf[10]);
}

public static boolean validateCPF(String cpf) {
    cpf = cpf.replaceAll("[^0-9]", "");
    if (cpf.length() != 11) return false;
    int[] numbers = cpf.chars().map(Character::getNumericValue).toArray();
    if (allEqual(numbers)) return false;
    int digit10 = calculateCheckDigit(numbers, 10);
    int digit11 = calculateCheckDigit(numbers, 11);
    return numbers[9] == digit10 && numbers[10] == digit11;
}

private static boolean allEqual(int[] array) {
    for (int i = 1; i < array.length; i++) {
        if (array[i] != array[0]) return false;
    }
    return true;
}

public static void main(String[] args) {
    String cpf = generateCPF();
    System.out.println("Sugeneruotas CPF: " + cpf);
    System.out.println("Ar galiojantis: " + validateCPF(cpf));
}

}


**Naudojant šiuos įgyvendinimus:**

- Patvirtinimo funkcijos tvarko tiek suformatuotą (XXX.XXX.XXX-XX), tiek nesuformatuotą (XXXXXXXXXXX) įvestį
- Pridėkite patikrinimus dėl žinomų neteisingų šablonų (visi vienodi skaitmenys) gamybinėje programoje
- Apsvarstykite naudoti patikrintus bibliotekas, tokias kaip `validate-docbr` (Python) ar `cpf-cnpj-validator` (JavaScript) gamybinėse sistemose — jos tvarko kraštines sąlygas ir yra gerai ištestuotos
- Šie pavyzdžiai puikiai tinka algoritmo supratimui arba lengvų įgyvendinimų kūrimui be išorinių priklausomybių

## Dažniausiai užduodami klausimai apie CPF generavimą

### Ar CPF generatorius yra nemokamas?
Taip, šis įrankis yra visiškai nemokamas ir nereikalauja registracijos. Generuokite tiek CPF numerių, kiek jums reikia testavimo tikslais. Nėra jokių naudojimo apribojimų ar paslėptų mokesčių.

### Ar sugeneruoti CPF numeriai yra susieti su tikrais žmonėmis?
Ne. Nors numeriai yra matematiškai teisingi ir praeina patvirtinimo algoritmus, jie yra atsitiktinai sugeneruoti ir neregistruoti Brazilijos Receita Federal. Jie egzistuoja tik kaip testavimo duomenys ir turėtų būti naudojami tik kūrimo ir testavimo aplinkose.

### Ar galiu naudoti sugeneruotus CPF gamybinėse sistemose?
Niekada. Gamybinės sistemos privalo naudoti tikrus, patikrintus CPF, pateiktus faktinių vartotojų per teisėtus registracijos procesus. Sugeneruotų CPF naudojimas gyvose sistemose pažeidžia duomenų vientisumo principus ir gali sukelti rimtų teisinių problemų pagal [Brazilijos duomenų apsaugos įstatymą (LGPD)](https://www.gov.br/cidadania/pt-br/acesso-a-informacao/lgpd).

### Kaip generatorius užtikrina CPF galiojimą?
Įrankis įdiegia oficialų Brazilijos CPF patvirtinimo algoritmą, nurodytą Receita Federal. Jis apskaičiuoja abu kontrolinius skaitmenis naudodamas svertinę modulo-11 formulę, užtikrindamas, kad kiekvienas sugeneruotas numeris praeina standartinį patvirtinimo testą. Algoritmas yra toks pats, kurį naudoja Brazilijos vyriausybės sistemos ir finansinės institucijos.

### Koks skirtumas tarp CPF ir CNPJ?
CPF (Cadastro de Pessoas Físicas) identifikuoja atskirus asmenis - piliečius ir gyventojus. CNPJ (Cadastro Nacional da Pessoa Jurídica) identifikuoja verslo įmones ir juridines asmenybes. Galvokite apie CPF kaip panašų į socialinio draudimo numerį JAV, o CNPJ - kaip įmonės identifikacijos numerį (EIN). Jums prireiks skirtingų generatorių kiekvienam tipui.

### Ar teisėta generuoti CPF numerius?
Generuoti CPF numerius teisėtiems programinės įrangos testavimo ir kūrimo tikslams yra legalu. Kas yra neteisėta, tai naudoti juos sukčiaujant - apsimetant tikrais žmonėmis, vykdant tapatybės vagystę ar apeiti saugumo priemones. Laikykite sugeneruotus CPF aiškiai pažymėtus kaip testavimo duomenis ir ribokite juos ne gamybinėse aplinkose.

### O kaip dėl pasikartojančių CPF?
Nors teoriškai įmanoma, pasikartojantys numeriai yra itin reti. Yra maždaug 100 milijardų galimų galiojančių CPF kombinacijų (atsižvelgiant į kontrolinių skaitmenų apribojimus), todėl tikimybė sugeneruoti tą patį numerį du kartus yra apie 1 iš 100 milijardų per bandymą. Praktiniuose testavimo scenarijuose pasikartojantys numeriai nebus problema, nebent generuosite šimtus milijonų CPF.

### Ar sugeneruoti CPF veikia su patvirtinimo bibliotekomis?
Taip. Sugeneruoti CPF praeina patvirtinimą populiariose bibliotekose įvairiomis kalbomis - Python'o `validate-docbr`, JavaScript'o `cpf-cnpj-validator`, PHP'o `geekcom/validator-docs` ir kt. Jie atitinka matematinius reikalavimus, kuriuos šios bibliotekos tikrina. Tačiau jie nepraeins "tikro CPF paieškos" patikrinimų vyriausybės duomenų bazėse, kas kaip tik ir yra pageidautina izoliuoto testavimo atveju.

### Kodėl kai kurie galiojantys CPF yra atmetami mano patvirtinimo?
Jūsų patvirtinimas gali tikrinti žinomus negaliojančius modelius už matematinio algoritmo ribų. Pavyzdžiui, CPF su visais vienodais skaitmenimis (000.000.000-00, 111.111.111-11 ir pan.) yra matematiškai galiojantys, bet dauguma Brazilijos sistemų juos užblokuoja, nes tai žinomi testavimo reikšmės. Geras patvirtinimo logika apima tiek kontrolinių skaitmenų algoritmą, tiek šiuos modeliu pagrįstus atmetimus.

## Teisiniai ir etiniai aspektai

Naudojant **CPF generatorių**, laikykitės šių svarbių gairių:

1. **Tik testavimui:** Sugeneruoti CPF skirti tik kūrimo ir testavimo aplinkoms
2. **Aiškus žymėjimas:** Pažymėkite visus testavimo duomenis, kuriuose yra sugeneruotų CPF, kad išvengtumėte painiavos su tikrais duomenimis
3. **Privatumo laikymasis:** Supraskite duomenų apsaugos įstatymus (pvz., LGPD Brazilijoje), net tvarkant netikrus identifikatorius
4. **Gamybinės sistemos:** Visada naudokite tikrus, patvirtintus CPF iš įgaliotų šaltinių veikiančiose sistemose
5. **Saugumo priemonės:** Įdiekite tinkamą apsaugą tiek tikriems, tiek sugeneruotiems CPF sistemose
6. **Jokio apsimetinėjimo:** Niekada nenaudokite sugeneruotų numerių apsimetant tikrais asmenimis ar vykdant sukčiavimą

## Sugeneruotų CPF naudojimas jūsų testavimo rinkinyje

Programuotojams, dirbantiems su braziliškais taikomaisiais programiniais įrenginiais, turėti patikimus testavimo duomenis yra būtina. Šis CPF generatorius pateikia matematiškai galiojančius numerius, kurie praeina patikrinimo kontrolę, kartu išlaikant jūsų testavimą visiškai atskirą nuo tikrų vartotojų duomenų.

Prisiminkite šiuos pagrindinius punktus integruojant sugeneruotus CPF į savo darbo eigą:

- **Aiškiai pažymėkite testavimo duomenis** savo duomenų bazių schemose ir dokumentacijoje
- **Įdiekite šablono patikrinimus** žinomiems negalimiems CPF (visi vienodi skaitmenys) savo patvirtinime
- **Naudokite sugeneruotus CPF tik ne gamybinėse aplinkose**—bandomojoje, kūrimo ir CI/CD konvejeruose
- **Nuorodą į oficialias patvirtinimo specifikacijas** iš [Receita Federal](https://www.gov.br/receitafederal/pt-br/assuntos/orientacao-tributaria/cadastros/cpf) kuriant savo patvirtinimo logiką

Spustelėkite generavimo mygtuką aukščiau, kad sukurtumėte galiojančius CPF numerius savo testavimo poreikiams.

## Nuorodos ir oficiali dokumentacija

Siekiant gauti autoritetingą informaciją apie CPF standartus ir Brazilijos duomenų taisykles:

1. **Receita Federal do Brasil.** „CPF - Cadastro de Pessoas Físicas." Oficiali CPF reikalavimų ir tikrinimo dokumentacija. [https://www.gov.br/receitafederal/pt-br/assuntos/orientacao-tributaria/cadastros/cpf](https://www.gov.br/receitafederal/pt-br/assuntos/orientacao-tributaria/cadastros/cpf)

2. **Serpro (Federalinė duomenų apdorojimo tarnyba).** „Validador de CPF." Vyriausybinė CPF tikrinimo paslauga su bandomąja aplinka. [https://www.serpro.gov.br/links-fixos-superiores/validador-cpf](https://www.serpro.gov.br/links-fixos-superiores/validador-cpf)

3. **Lei Geral de Proteção de Dados (LGPD).** „Brazilijos bendrasis asmens duomenų apsaugos įstatymas." Teisinis dokumentas, reglamentuojantis asmens duomenų tvarkymą Brazilijoje. [https://www.gov.br/cidadania/pt-br/acesso-a-informacao/lgpd](https://www.gov.br/cidadania/pt-br/acesso-a-informacao/lgpd)

4. **Lei nº 4.862/1965.** „Keičiamas pajamų mokesčio įstatymas." Pradinis teisės aktas, nustatantis CPF sistemą. [https://www.planalto.gov.br/ccivil_03/leis/l4862.htm](https://www.planalto.gov.br/ccivil_03/leis/l4862.htm)

5. **Ministério da Fazenda.** „História do CPF." Istorinis kontekstas ir CPF sistemos raida. [https://www.gov.br/fazenda/pt-br/assuntos/receita-federal](https://www.gov.br/fazenda/pt-br/assuntos/receita-federal)

---

**Meta pavadinimas:** CPF generatorius - kurkite galiojančius Brazilijos mokestinius ID testams
**Meta aprašymas:** Nemokamas CPF generatorius sukuria galiojančius Brazilijos mokestinius ID numerius, kurie praeina tikrinimo algoritmus. Idealiai tinka formų, API ir duomenų bazių testavimui nenaudojant tikrų asmens duomenų.