Data Masking Tool
Mask sensitive data like emails, phone numbers, and card numbers by replacing parts of the text with asterisks (*).
What is the Data Masking Tool?
Need to share documents, screenshots, or log data without exposing sensitive information? This Data Masking Tool safely hides personal data like email addresses, phone numbers, and credit card details. Choose from presets for common formats, or use the 'Custom' mode to define exactly how many characters to keep at the beginning and end of any text. Paste multiple lines of data to process them all at once. Most importantly, all masking happens entirely within your browser. Your data is never sent to our servers, ensuring complete privacy.
How to use
- Paste your text into the 'Original String' input box. You can paste multiple lines to mask each one separately.
- Select a data type like 'Email' or 'Phone Number' from the 'Masking Method' menu. For other text, choose 'Custom'.
- In 'Custom' mode, specify the number of characters to preserve using the 'Keep First Chars' and 'Keep Last Chars' fields.
- Optionally, pick a different 'Masking Character' like ●, #, or x instead of the default asterisk (*).
- The 'Masked Result' updates in real-time. Click the 'Copy' button to use it elsewhere.
Data Masking Tool guide
How this tool is used in real work, and what to watch out for.
Masking, Encryption, and Anonymization Are Not the Same
It's easy to lump these concepts together as just 'hiding data,' but they have different purposes and levels of reversibility. This tool only performs one of them: masking.
| Process | Reversibility | Primary Use | This Tool |
|---|---|---|---|
| Masking | Impossible — the masked characters are discarded | Displaying in screenshots, documents, or on screen | Supported |
| Encryption | Possible with the key | Protecting data during storage or transit | Not applicable |
| Hashing | Impossible, but the same input always yields the same output | Checking for duplicates, storing passwords | Not applicable |
| Pseudonymization | Possible with a separate mapping table | Providing data for statistics or research | Not applicable |
Understand What Each Preset Keeps Visible
Each preset has fixed rules about which parts of the string to keep. If you use them without understanding what's left visible, you might end up revealing more information than you intended.
The Phone Number, Card Number, and SSN presets preserve the original hyphens and spaces, replacing only the digits. Whether you input `010-1234-5678` or `01012345678`, the output format will match the input.
| Method | Example Result | Information Left Visible |
|---|---|---|
| ho**@example.com | First 2 characters of the local-part + the full domain | |
| Phone Number | 010-****-5678 | Area/carrier prefix and the last 4 digits |
| Card Number | 1234-****-****-3456 | First 4 digits (issuer ID) + last 4 digits |
| SSN | 900101-1****** | Full date of birth + gender/century digit (for Korean RRN) |
| Name | J**n | First and last characters of the string |
| Custom | Only the first and last N characters | As many as you configure |
Masked Data Can Still Identify People
The real danger of masking lies in the combination of the remaining pieces. Each piece might seem harmless on its own, but when displayed together, they can be enough to identify an individual.
- SSN (RRN) `900101-1******` — Even with the latter half masked, the full date of birth and gender digit remain. Cross-referencing this with an internal employee list could easily reveal the person's name.
- The last 4 digits of a phone number — These are often memorized by the person, their family, and close contacts. Among acquaintances, this type of masking offers little protection.
- Email domain — If `company.co.kr` remains visible, it reveals the person's affiliation. For smaller companies, the first two letters of the username might be enough to narrow it down to one person.
- Name `홍*동` (H*ng) — The first and last characters remain. This follows a common Korean practice of masking only the middle character of a three-character name, so acquaintances can often guess the full name.
- Displaying multiple masked fields together — Combining a masked name, a masked phone number, and a location dramatically increases the risk of re-identification.
Real-World Use Cases
- Before sharing customer support logs in Slack or a messenger — Copy the email and phone number columns, paste them into the tool using their respective presets, and then paste the results back. If you paste multiple lines, each will be processed individually.
- When including real order data in an incident report or meeting materials — Masking is ideal here because it preserves the data's format, which is often crucial for context. If you delete it completely, it's impossible to tell if an issue is related to formatting or length.
- When creating screenshots for documentation or blog posts — Changing the 'Masking Character' to a black circle (●) can look cleaner and more professional than the default asterisk (*).
- When deciding on a logging format during development — Use the Custom mode to experiment with different numbers of characters to keep at the start and end, allowing you to visually determine the right balance of privacy and utility.
What This Tool Can't Do
- Text within images — This tool can't process personal information in screenshots because it's pixel data, not text. When redacting images, avoid semi-transparent highlights or mosaic filters, as they can sometimes be reversed. Use an opaque, solid-color box instead.
- Text inside PDF or Word documents — You need to edit the text within the file itself. Simply placing a black box over text in a PDF often leaves the underlying text intact and copyable.
- Bulk data in a production database — This is a manual, browser-based tool for visual tasks. For large-scale operations, it's better to handle masking directly in your database using SQL or a dedicated script.
- International or extension numbers — The 'Phone Number' preset is optimized for standard 9- to 11-digit numbers. Other formats are handled by the Custom masking logic, which may not produce the desired result.
Frequently asked questions
Can I reverse the masking to get the original data back?
No, the process is irreversible. Masking permanently replaces characters, and the original information is discarded. Since your data is never sent to our servers, we have no way to recover it for you.
How can I be sure my data is not sent to a server?
This tool is built with JavaScript that runs entirely in your browser (client-side). No information is transmitted over the internet. You can verify this by opening your browser's developer tools (F12) and watching the 'Network' tab; no server requests are made during masking.
What kinds of information can this tool mask?
It has presets for Email, Phone Number, Card Number, SSN, and Name. For anything else, like addresses or account numbers, use the 'Custom' mode to mask the middle portion while keeping the start and end visible.
Can it process a large list of data at once?
Yes. You can paste a multi-line list copied from a spreadsheet or database. The tool will apply the selected masking rule to each line individually and output the entire masked list for you to copy.