Skip to main content
Develop Tools
← Return to guide list

How to Choose a Code and Data Masking Tool

Choose a dedicated tool that understands the structure of your input format.

Java/Spring Boot code

Java Code Masking Tool replaces packages, classes, methods, fields, variables, strings, comments, etc. You can also check the SQL fragments contained within the Java source.

SQL

SQL Masking Tool selects Oracle, PostgreSQL, MySQL, SQL Server, and SQLite dialects and replaces table names, column names, strings, numbers, and comments. Suitable for sharing standalone SQL rather than SQL embedded as a Java string.

JSON

JSON Masking Tool replaces keys, strings, and numbers while preserving object and array hierarchy. Suitable for checking API requests/responses and configuration files.

Logs

Log Masking Tool detects IP addresses, URLs, email addresses, paths, and identifiers in Log4j, Syslog, JSON Lines, access logs, and more. Always review free-form text and stack traces manually.

Vue, React, and jQuery

For front-end code, choose the tool that matches your syntax: Vue, React, jQuery. Each tool accounts for differences in components, JSX/TSX, templates, and selectors.

C, C++, Python, C#, PHP, VB.NET, VBA, and Rust

For backend, desktop, macro, embedded, and systems code, use the dedicated tools for C, C++, Python, C#, PHP, VB.NET, VBA, Rust. Each tool accounts for the language's reserved words, comments, strings, and type and function declarations.

TypeScript

For web and Node.js code with type information, use the TypeScript Code Masking Tool. It replaces types, functions, variables, and values while accounting for interfaces, type aliases, enums, generics, and decorators.

COBOL and Bash

Use the COBOL Code Masking Tool for COBOL code and the Bash Script Masking Tool. The tools account for COBOL fixed-format code and PIC clauses, and for Bash shebangs, variable expansion, and heredocs.

Ruby, Swift, and Objective-C

For web and business applications, use Ruby. For Apple-platform code, use Swift or Objective-C as appropriate. Each tool accounts for the language's strings, comments, and type and method declarations.

If You Are Unsure Which Tool to Use

Specific example: How to select troubleshooting materials that are mixed in multiple formats

If you want to share Spring Boot Java code, SQL, API response JSON, and access logs all at once, separate the documents by format instead of pasting the entire document into one tool. Java is Java, SQL is a selected DB dialect, JSON is a hierarchical structure, and logs are masked to maintain chronological order.

  1. Classifies documents into code, SQL, JSON, and Log based on file extension and main syntax.
  2. Remove credentials before entering the data, then process it with a dedicated tool for that format.
  3. Search across all documents to make sure the same business terms have not been left in multiple files.
  4. Verify the consistency of required dummy IDs so investigators can track their correspondence.

Frequently asked questions

What should you choose if the extension and content language are different?
Choose a tool that corresponds to the main syntax you want to share, not the extension. For SQL in Java strings, check the actual value inside after processing the outside.
Is general-purpose character replacement insufficient?
It is easy to break the correspondence between parentheses, quotation marks, and the same identifier, and it can also lead to missing substitutions. It is safer to use tools appropriate for the structure and perform a visual check at the end.