Безопасно удалить ключ из памяти в Python

Предположим, что у меня есть какое-то криптографическое приложение на Python.

Приложение получает криптографический ключ, выполняет свою работу, после чего ключ ему больше не нужен.

Можно ли полностью стереть этот ключ и убедиться, что его больше нет в памяти устройства?

Я знаю, что del не удаляет объект, а просто уменьшает его счетчик ссылок. Даже когда счетчик ссылок падает до нуля, а объект удаляется сборщиком мусора, его содержимое все еще может где-то задерживаться.

Есть ли какое-либо решение (функция, библиотека, расширение c), позволяющее это сделать?


person haael    schedule 14.11.2014    source источник
comment
В общем, единственный способ быть уверенным*, что что-то удалено из памяти, — это написать что-то еще поверх этого. В Python у вас нет такого уровня контроля, но в C он будет ниже. * Ну, вполне уверен.   -  person jonrsharpe    schedule 14.11.2014
comment
@jonrsharpe Возможно, лучшие дубликаты: ctypes в сбоях python с memset и Безопасное стирание пароля в памяти (Python) Может быть, вы можете создать цепочку.   -  person Artjom B.    schedule 14.11.2014