Data Masking: Replaces sensitive data with realistic but fictional data (e.g., changing a real name to a fake name, or a real credit card number to a dummy one that passes basic validation checks). The structure and format of the data remain intact, making it suitable for testing and development where realistic data is needed but actual sensitive information must be protected.
Data obfuscation: is more suitable for concealing code logic or structure, as in malware hiding its operations or software developers protecting proprietary code from reverse engineering.
A) Protecting source code from reverse engineering: Obfuscation is more appropriate here, as the goal is to make the code harder to understand.
B) Encrypting data during transmission over public networks: Encryption is the correct approach for protecting data in transit.
C) Hiding the logic of proprietary algorithms: Obfuscation or other techniques like white-box cryptography would be more appropriate.