In Information Security Technology for Applications (Selected papers from the 15th Nordic Conference on Secure IT Systems, 2010), volume 7127, of LNCS, pages 193--209. Springer International Publishing, 2012. Paper abstract bibtex
Security or privacy-critical applications often require access to sensitive information in order to function. But in accordance with the principle of least privilege -– or perhaps simply for legal compliance -– such applications should not retain said information once it has served its purpose. In such scenarios, the timely disposal of data is known as an information erasure policy. This paper studies software-level information erasure policies for the data manipulated by programs. The paper presents a new approach to the enforcement of such policies. We adapt ideas from dynamic taint analysis to track how sensitive data sources propagate through a program and erase them on demand. The method is implemented for Python as a library, with no modifications to the runtime system. The library is easy to use, and allows programmers to indicate information-erasure policies with only minor modifications to their code.