Obfuscation ist ein Prozess, bei dem der Quellcode eines Programms so verändert wird, dass er für Menschen schwer zu verstehen ist, während er seine Funktionalität beibehält. Dies wird oft angewendet, um den Quellcode vor Reverse Engineering zu schützen oder um ihn kompakter zu machen, ohne die Funktionalität zu beeinträchtigen. Dabei werden Techniken wie das Umbenennen von Variablen und Funktionen, das Hinzufügen von unnötigem Code oder das Verändern der Programmstruktur verwendet. Obfuscation wird häufig in der Softwareentwicklung eingesetzt, insbesondere bei der Entwicklung von kommerziellen Softwareprodukten oder bei der Bereitstellung von Software als Service (SaaS), um das geistige Eigentum zu schützen und unerwünschte Manipulationen zu erschweren.