מחולל מספרי CPF - יצירת מספרי זיהוי מס ברזילאיים לבדיקות
מחולל CPF חינמי יוצר מספרי זיהוי מס ברזילאיים תקפים העוברים אלגוריתמי אימות. מושלם לבדיקת טפסים, ממשקי API ומסדי נתונים ללא שימוש בנתונים אישיים אמיתיים.
לחץ כדי ליצור מספר CPF ברזילאי תקף למטרות בדיקה
תיעוד
מחולל CPF - יצירת מספרי זיהוי מס ברזילאיים תקפים לבדיקות
למה אתה צריך גנרטור CPF לבדיקות
בעת פיתוח יישומים לשוק הברזילאי, תיתקל במהרה באתגר נפוץ: בדיקת טפסים והיגיון אימות מבלי לפגוע בנתוני משתמשים אמיתיים. וכאן גנרטור CPF הופך לחיוני.
CPF (Cadastro de Pessoas Físicas) הוא מספר זיהוי ייחודי בן 11 ספרות המונפק לאזרחים ותושבים בברזיל למטרות מס. כלי זה יוצר מספרי CPF אקראיים תקפים מבחינה מתמטית העוברים את אלגוריתם האימות הרשמי של ברזיל - מושלם למילוי מסדי נתונים לבדיקות, אימות טפסי קלט והרצת בדיקות אוטומטיות ללא חששות פרטיות.
מגבלה קריטית: מספרי CPF שנוצרו מיועדים לסביבות בדיקה בלבד. הם אינם מקושרים לאנשים אמיתיים ואסור להשתמש בהם במערכות ייצור או למטרות הונאה. מה שהופך אותם לשימושיים הוא שהם עוברים בדיקות אימות תוך שמירה על הפרדה מלאה של נתוני הבדיקה מפרטי אישות אמיתיים.
הבנת מבנה ותבנית CPF
CPF תקף מורכב מ-11 ספרות עם מבנה ספציפי:
- 9 הספרות הראשונות: מספרי זיהוי בסיסיים
- 2 הספרות האחרונות: ספרות בדיקה לאימות
- תבנית סטנדרטית: XXX.XXX.XXX-XX (עם נקודות וקו מפריד)
דוגמה: 123.456.789-09
ספרות הבדיקה מבטיחות כי מספר CPF תקף מבחינה מתמטית, ומונעות שגיאות הקלדה וכניסות לא תקינות במערכות ברזילאיות.
כיצד עובדת אימות CPF
אלגוריתם אימות CPF משתמש במערכת ספרת בדיקה משוקללת מודולו-11 כדי להבטיח את שלמות המספר. הבנת אלגוריתם זה חיונית בעת יישום אימות CPF ביישומים שלכם.
תהליך האימות מוסבר
האלגוריתם מחשב שתי ספרות בדיקה (שתי הספרות האחרונות של CPF) על בסיס תשע הספרות הראשונות:
חישוב ספרת הבדיקה הראשונה:
- הכפלת 9 הספרות הראשונות במשקלים יורדים (10, 9, 8, 7, 6, 5, 4, 3, 2)
- סכימת כל תוצאות ההכפלה
- חישוב השארית בחלוקה ב-11
- אם השארית < 2, ספרת הבדיקה היא 0; אחרת היא 11 פחות השארית
חישוב ספרת הבדיקה השנייה:
- חזרה על התהליך עבור 9 הספרות הראשונות ועם ספרת הבדיקה הראשונה (סך הכל 10 ספרות)
- שימוש במשקלים 11, 10, 9, 8, 7, 6, 5, 4, 3, 2
- החלת אותו היגיון השארית
אימות דו-שלבי זה מזהה את רוב שגיאות ההעתקה ומונע מספרים אקראיים לעבור כ-CPF תקפים. האלגוריתם מתועד ב-Lei nº 4.862/1965, אשר הקים את מערכת CPF.
מדוע זה חשוב למפתחים
בעת בניית אימות CPF, לעתים קרובות ניתן לראות מפתחים שמחמיצים את המקרה השולי שבו השארית היא 0 או 1 - אלה צריכים למפות לספרת בדיקה 0, ולא 10 או 11. זהו מקור נפוץ לבאגים בבדיקה. הנוסחה (sum * 10 % 11) % 10 מטפלת במקרה השולי הזה בצורה נקייה על ידי הבטחה שהתוצאה לעולם לא תעלה על 9.
כיצד להשתמש בכלי יצירת CPF
יצירת CPF תקפים לבדיקה לוקחת שניות:
- לחץ על כפתור "צור CPF"
- צפה במספר CPF אקראי תקף המוצג בפורמט XXX.XXX.XXX-XX
- העתק את המספר שנוצר בלחיצה אחת
- הדבק ישירות לטפסי בדיקה, בקשות API או זריעת מסד נתונים
כל CPF שנוצר עובר את אלגוריתם האימות הרשמי של ברזיל, כך שתוכל לבדוק את הגיון האימות שלך בביטחון. המספרים נוצרים באופן אקראי בכל פעם, מה שמפחית את הסיכוי לניגודים במערכי הבדיקה שלך.
נוסחה
הנוסחה ליצירת CPF תקף היא כדלקמן:
1def generate_cpf():
2 # צור 9 ספרות אקראיות
3 base_cpf = [random.randint(0, 9) for _ in range(9)]
4
5 # חשב ספרת בדיקה ראשונה
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 # חשב ספרת בדיקה שנייה
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חישוב
היוצר מבצע את השלבים הבאים:
- צור 9 ספרות אקראיות
- חשב את ספרת הבדיקה הראשונה באמצעות האלגוריתם המתואר לעיל
- חשב את ספרת הבדיקה השנייה
- שלב את כל הספרות ליצירת CPF מלא
דוגמאות
להלן מספר דוגמאות של CPF שנוצרו:
- 123.456.789-09
- 987.654.321-00
- 111.222.333-96
מקרי שימוש נפוצים לבדיקת מספרי CPF
על בסיס תרחישי פיתוח אמיתיים, הנה מתי תזדקק למספרי CPF מופקים:
תרחישי פיתוח ובדיקה
זריעת מסד נתונים ומיגרציות: בעת הגדרת סביבות מקומיות או זמניות, אתה צריך נתוני בדיקה ריאליסטיים. CPF מופקים מאפשרים לך ליצור מאות או אלפי רשומות משתמש לבדיקה מבלי לגעת במידע אישי אמיתי. זה שימושי במיוחד בעת בדיקת אילוצי מסד נתונים ואינדקסים ייחודיים בעמודות CPF.
בדיקת אימות טופס: טפסי רישום ברזילאיים דורשים בדרך כלל אימות CPF הן בצד הלקוח והן בצד השרת. בדיקת מקרי קצה - כמו CPF מעוצב כראוי אך לא תקף, או ספרות זהות (111.111.111-11) - עוזרת לתפוס באגי אימות לפני שהם מגיעים לייצור. CPF מופקים נותנים לך מקרי בדיקה תקפים לאימות הגיון האימות שלך.
בדיקת שילוב API: בעת בניית שילובים עם שערי תשלום ברזילאיים, שירותים פיננסיים או API ממשלתיים, תזדקק לעתים קרובות למספרי CPF תקפים בבקשות הבדיקה שלך. שימוש ב-CPF מופקים שומר על סביבת הבדיקה שלך בלתי תלויה בנתוני משתמש אמיתיים.
בדיקת עומס וביצועים: לבדיקת עומס של מערכות המעבדות נתוני משתמש ברזילאיים, אתה צריך נפחים גדולים של CPF ייחודיים ותקפים. הפקת אלפי CPF לבדיקה מאפשרת לך לדמות עומס ריאליסטי ללא חששות פרטיות.
אימות UI/UX: בדיקת כיצד הממשק שלך מטפל בהצגת CPF, מיסוך ועיצוב בגדלי מסך והקשרים שונים. CPF מופקים עוזרים לאמת שהגיון העיצוב שלך (הוספת נקודות וקווים) פועל באופן עקבי.
מכשולים נפוצים להימנע
טעות שמפתחים לעתים קרובות עושים היא שכחת שספרות זהות (כמו 000.000.000-00 או 111.111.111-11) תקפות טכנית לפי האלגוריתם אך נדחות על ידי מערכות ברזילאיות אמיתיות. בעת בדיקה, כלול בדיקות לדפוסים אלה הידועים כלא תקפים גם אם הם עוברים אימות מתמטי.
בעיה נוספת: CPF מופקים טובים לבדיקת הגיון אימות, אך הם לא יעזרו לך לבדוק חיפושי CPF אמיתיים מול מאגרי נתונים ממשלתיים. לבדיקות שילוב הבודקות API ממשלתיים ברזילאיים, תזדקק ל-CPF בדיקה מיועדים המסופקים על ידי השירותים (כמו סביבת הבדיקה של Serpro).
מערכות זיהוי ברזילאיות קשורות
בעוד ש-CPF הוא המזהה הפרטני העיקרי בברזיל, הבנת מערכות קשורות עוזרת בבניית יישומים ברזילאיים מקיפים:
RG (Registro Geral): מספרי מסמכי זהות מונפקים על ידי המדינה. בניגוד ל-CPF, שהוא פדרלי ועוקב אחר פורמט עקבי, מספרי RG שונים לפי מדינה ואין להם אלגוריתם אימות מסודר. בעת בניית יישומים לברזיל, תדרוש בדרך כלל CPF לאימות בצד השרת ותוכל לקבל RG כזיהוי משני.
CNPJ (Cadastro Nacional da Pessoa Jurídica): המקבילה העסקית של CPF, המשמשת לחברות וישויות משפטיות. CNPJ משתמש באלגוריתם אימות מודולו-11 דומה אך עם 14 ספרות במקום 11. אם אתה בונה יישומים B2B לברזיל, תצטרך לטפל הן ב-CPF (לבעלי עסקים פרטיים) והן ב-CNPJ (לחברות רשומות).
PIS/PASEP/NIT: מספרי זיהוי הקשורים לתעסוקה המשמשים את מערכת הביטחון הסוציאלי של ברזיל. אלה נדרשים פחות ביישומים כלליים אך חיוניים למערכות משאבי אנוש ושכר.
האבולוציה של CPF בברזיל
מערכת CPF הוקמה על ידי חוק מס' 4.862/1965 כחלק ממאמצי המודרניזציה של מערכת המס הברזילאית. מה שהתחיל כמזהה מס פשוט הפך למספר הזהות הלאומי של ברזיל למעשה.
אבני דרך עיקריות:
- 1965: CPF הוצג להגשת מס הכנסה
- 1972: הפך למנדטורי לכל משלמי המס
- 1990s: אימוץ מסחרי מואץ - בנקים וקמעונאים מתחילים לדרוש CPF לעסקאות
- 2000s: טרנספורמציה דיגיטלית הופכת את CPF לחיוני לשירותים מקוונים
- 2020s: CPF נדרש כמעט לכל שירותי ממשלה, עסקאות פיננסיות ואפילו רכישות צרכניות
הרחבה זו מסבירה מדוע אימות CPF קריטי לכל יישום המשרת משתמשים ברזילאים - זה לא רק מזהה מס עוד, זה האופן שבו ברזילאים מזהים את עצמם בהקשרים רבים. בעת בדיקת מערכות אלה, יש חשיבות למספרי CPF תקפים לתרחישי בדיקה ריאליסטיים.
דוגמאות קוד להפקה ואימות CPF
אם אתה צריך לשלב הפקה ואימות CPF ישירות ביישום שלך, הנה יישומים מוכנים לייצור בשפות פופולריות. כל דוגמה כוללת פונקציות הפקה ואימות כך שתוכל לממש את זרימת העבודה המלאה.
יישומים אלה עוקבים אחר האלגוריתם הרשמי של Receita Federal וכוללים טיפול במקרי קצה שהוזכרו קודם (שארית 0 ו-1 ממופים לספרת בדיקה 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דוגמת שימוש
cpf = generate_cpf() print(f"CPF שנוצר: {cpf}") print(f"תקף: {validate_cpf(cpf)}")
1
2javascript 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; }
// דוגמת שימוש
const cpf = generateCPF();
console.log(CPF שנוצר: ${cpf});
console.log(תקף: ${validateCPF(cpf)});
1
2java 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("CPF שנוצר: " + cpf);
System.out.println("תקף: " + validateCPF(cpf));
}
}
**שימוש במימושים אלה:**
- פונקציות האימות מטפלות בקלט מעוצב (XXX.XXX.XXX-XX) ולא מעוצב (XXXXXXXXXXX)
- הוסף בדיקות לדפוסים לא תקפים ידועים (ספרות זהות) בקוד ייצור
- שקול להשתמש בספריות מבוססות כמו `validate-docbr` (Python) או `cpf-cnpj-validator` (JavaScript) במערכות ייצור - הן מטפלות במקרי קצה ונבדקו היטב
- דוגמאות אלה מצוינות להבנת האלגוריתם או בניית מימושים קלים ללא תלות חיצונית
## שאלות נפוצות על יצירת CPF
### האם יוצר ה-CPF חינמי לשימוש?
כן, כלי זה חינמי לחלוטין ללא צורך בהרשמה. ניתן ליצור כמה מספרי CPF שתצטרך לצורכי בדיקה. אין מגבלות שימוש או עלויות נסתרות.
### האם מספרי CPF שנוצרים מקושרים לאנשים אמיתיים?
לא. למרות שהמספרים תקפים מבחינה מתמטית ועוברים אלגוריתמי אימות, הם נוצרים באופן אקראי ואינם רשומים ברשות הפדרלית של ברזיל. הם קיימים אך ורק כנתוני בדיקה וצריכים לשמש אך ורק בסביבות פיתוח ובדיקה.
### האם ניתן להשתמש ב-CPFs שנוצרו במערכות ייצור?
לעולם לא. מערכות ייצור חייבות להשתמש ב-CPFs אמיתיים ומאומתים המסופקים על ידי משתמשים דרך תהליכי רישום לגיטימיים. שימוש ב-CPFs שנוצרו במערכות חיות מפר עקרונות של שלמות נתונים ועלול לגרום לבעיות משפטיות חמורות תחת [חוק הגנת המידע הברזילאי (LGPD)](https://www.gov.br/cidadania/pt-br/acesso-a-informacao/lgpd).
### כיצד מבטיח היוצר את תקפות ה-CPF?
הכלי מיישם את אלגוריתם האימות הרשמי של CPF כפי שנקבע על ידי הרשות הפדרלית. הוא מחשב שני ספרות בדיקה באמצעות נוסחת מודולו-11 משוקללת, תוך הבטחה שכל מספר שנוצר עובר בדיקות אימות סטנדרטיות. האלגוריתם זהה לזה המשמש במערכות ממשלתיות ברזילאיות ומוסדות פיננסיים.
### מה ההבדל בין CPF ל-CNPJ?
CPF (Cadastro de Pessoas Físicas) מזהה אנשים פרטיים - אזרחים ותושבים. CNPJ (Cadastro Nacional da Pessoa Jurídica) מזהה עסקים וישויות משפטיות. חשוב לחשוב על CPF כדומה למספר ביטוח לאומי בארה"ב, בעוד CNPJ דומה למספר זיהוי מעסיק (EIN). תזדקק ליוצרים שונים עבור כל סוג.
### האם חוקי ליצור מספרי CPF לבדיקה?
יצירת מספרי CPF למטרות בדיקת תוכנה לגיטימיות היא חוקית. מה שאינו חוקי הוא שימוש בהם באופן מרמתי - להתחזות לאנשים אמיתיים, לבצע גניבת זהות או לעקוף אמצעי אבטחה. שמור על מספרי CPF שנוצרו כנתוני בדיקה ברורים וגבולות סביבות לא-ייצוריות.
### מה לגבי CPFs כפולים?
למרות שתיאורטית אפשרי, כפילויות נדירות מאוד. ישנם כ-100 מיליארד צירופים אפשריים של CPF תקף (בהתחשב במגבלות ספרת הבדיקה), כך שההסתברות ליצירת אותו מספר פעמיים היא כ-1 מתוך 100 מיליארד בכל ניסיון. בתרחישי בדיקה מעשיים, כפילויות לא יהוו בעיה אלא אם תיצור מאות מיליוני CPFs.
### האם CPFs שנוצרו עובדים עם ספריות אימות?
כן. CPFs שנוצרו עוברים אימות בספריות פופולריות במספר שפות - `validate-docbr` של Python, `cpf-cnpj-validator` של JavaScript, `geekcom/validator-docs` של PHP ואחרים. הם עונים על הדרישות המתמטיות שספריות אלה בודקות. עם זאת, הם לא יעברו בדיקות "חיפוש CPF אמיתי" מול מאגרי נתונים ממשלתיים, מה שבדיוק רצוי לבדיקות מבודדות.
### מדוע חלק מה-CPFs התקפים נדחים על ידי האימות שלי?
המאמת שלך עשוי לבדוק דפוסים ידועים כלא-תקפים מעבר לאלגוריתם המתמטי. לדוגמה, CPFs עם ספרות זהות (000.000.000-00, 111.111.111-11 וכו') הם מתמטית תקפים אך מושחרים על ידי רוב המערכות הברזיליות כיוון שהם ערכי בדיקה ידועים. היגיון אימות טוב כולל הן את אלגוריתם ספרת הבדיקה והן דחיות מבוססות דפוס אלה.
## שיקולים משפטיים ואתיים
בעת שימוש ב**גנרטור CPF**, יש לפעול לפי הנחיות חשובות אלה:
1. **בדיקות בלבד:** מספרי CPF שנוצרו מיועדים אך ורק לסביבות פיתוח ובדיקה
2. **סימון ברור:** סמן את כל נתוני הבדיקה המכילים מספרי CPF שנוצרו כדי למנוע בלבול עם נתונים אמיתיים
3. **עמידה בפרטיות:** הבן את חוקי הגנת המידע (כמו LGPD בברזיל) גם בעת טיפול במזהים מזויפים
4. **מערכות ייצור:** השתמש תמיד במספרי CPF אמיתיים ומאומתים ממקורות מורשים בסביבות חיות
5. **אמצעי אבטחה:** יישם הגנה נאותה הן על מספרי CPF אמיתיים והן על מספרים שנוצרו במערכות שלך
6. **ללא התחזות:** לעולם אל תשתמש במספרים שנוצרו כדי להתחזות לאנשים אמיתיים או לבצע הונאה
## שימוש ב-CPFs מופקים בסוויטת הבדיקות שלך
עבור מפתחים העובדים על יישומים ברזילאיים, קיום נתוני בדיקה אמינים הוא בלתי מתפשר. גנרטור CPF זה מספק מספרים תקפים מבחינה מתמטית העוברים בדיקות אימות תוך שמירה על הפרדה מלאה של נתוני הבדיקה מנתוני משתמשים אמיתיים.
זכרו את נקודות המפתח הבאות בעת שילוב CPFs מופקים בתהליך העבודה שלכם:
- **סמנו נתוני בדיקה בבירור** בסכמות מסד הנתונים והתיעוד שלכם
- **יישמו בדיקות דפוס** עבור CPFs לא תקפים ידועים (ספרות זהות)
- **השתמשו ב-CPFs מופקים רק בסביבות לא-ייצור** - שלבי פיתוח, סביבות פיתוח וצינורות CI/CD
- **התייחסו למפרטי אימות רשמיים** מ-[Receita Federal](https://www.gov.br/receitafederal/pt-br/assuntos/orientacao-tributaria/cadastros/cpf) בעת בניית לוגיקת אימות משלכם
לחצו על כפתור ההפקה למעלה ליצירת מספרי CPF תקפים לצרכי הבדיקה שלכם.
## מקורות ותיעוד רשמי
למידע סמכותי על תקני CPF ותקנות נתונים ברזילאיות:
1. **רשות המס של ברזיל.** "CPF - רישום אנשים פיזיים." תיעוד רשמי של דרישות וולידציה של CPF. [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 (שירות עיבוד נתונים פדרלי).** "מאמת CPF." שירות אימות CPF ממשלתי עם סביבת בדיקה. [https://www.serpro.gov.br/links-fixos-superiores/validador-cpf](https://www.serpro.gov.br/links-fixos-superiores/validador-cpf)
3. **חוק הגנת נתונים הכללי (LGPD).** "חוק הגנת נתונים אישיים של ברזיל." מסגרת משפטית המסדירה טיפול בנתונים אישיים בברזיל. [https://www.gov.br/cidadania/pt-br/acesso-a-informacao/lgpd](https://www.gov.br/cidadania/pt-br/acesso-a-informacao/lgpd)
4. **חוק מס' 4.862/1965.** "שינוי בחקיקת מס ההכנסה." חקיקה מקורית המקימה את מערכת CPF. [https://www.planalto.gov.br/ccivil_03/leis/l4862.htm](https://www.planalto.gov.br/ccivil_03/leis/l4862.htm)
5. **משרד האוצר.** "היסטוריה של CPF." הקשר היסטורי והתפתחות מערכת CPF. [https://www.gov.br/fazenda/pt-br/assuntos/receita-federal](https://www.gov.br/fazenda/pt-br/assuntos/receita-federal)
---
**כותרת מטא:** יוצר CPF - צור מספרי זיהוי מס ברזילאיים תקפים לבדיקה
**תיאור מטא:** יוצר CPF חינמי יוצר מספרי זיהוי מס ברזילאיים תקפים העוברים אלגוריתמי אימות. מושלם לבדיקת טפסים, API ומסדי נתונים ללא שימוש בנתונים אישיים אמיתיים.