La rétro-ingénierie, aussi appelée reverse engineering, consiste à analyser minutieusement le mode de fonctionnement d’un logiciel afin d’en comprendre la conception, d’identifier d’éventuelles vulnérabilités en termes de sécurité, ou encore dans un but éducatif.