O que você está pedindo não é uma simples suspensão-para-RAM, que deixa a RAM ligada e desliga todo o resto. Como você estaria limpando dados de processo de texto não criptografado da RAM, você precisa organizar tudo na imagem da suspensão. Então você tem que invocar o código de hibernação (ou seja, suspender para o disco). A maneira realista de fazer isso seria criar um ramdisk criptografado, declará-lo como espaço de troca e preencher a memória com outros processos. Mesmo assim, os dados do kernel não seriam criptografados; para fazer isso, acho que você precisaria de um patch de kernel considerável.
Por outro lado, se você estiver disposto a suspender para o disco, esse é um problema resolvido. A imagem de hibernação é armazenada no espaço de troca. Seu espaço de troca já deve estar criptografado, dado seu requisito de segurança. Certifique-se de que ele esteja criptografado com uma chave conhecida e não com uma chave aleatória (algumas configurações com uso de permuta criptografada /dev/random
como o arquivo de chave para o espaço de troca, o que resulta em uma chave diferente em cada inicialização, portanto é impossível retomar uma imagem hibernada). As distribuições principais devem suportar a hibernação de fábrica, incluindo a retomada de um espaço de troca criptografado.