Mac Os X, swap cifrato

Ho notato solo questa sera che e` possibile avere lo swap cifrato (almeno con 10.4).
Una riga di /etc/hostconfig recita

ENCRYPTSWAP=-YES-

e viene letta al boot, nel momento in cui viene fatto il setup dello swap (da /etc/rc):

if [ ${ENCRYPTSWAP:=-NO-} = “-YES-” ]; then
encryptswap=”-E”
else
encryptswap=””
fi
/sbin/dynamic_pager ${encryptswap} -F ${swapdir}/swapfile

man dynamic_pager

-E Encrypt the data in the swap files.

mi rimane la curiosita` di capire 1) con che chiave cifra lo swap 2) con che algoritmo. Ho un paio di idee, ma devo verificare.

Ah, dimenticavo: “System Preferences” -> Security -> “Use Secure Virtual Memory” :-)

Author: zen

Geek of all trades, having fun with *NIX, the Internet and computer security since 1995.

4 thoughts on “Mac Os X, swap cifrato”

  1. La chiave dovrebbe essere la password dell’utente è la cifratura immagino (ma non ho nessun dato certo per affermarlo) sia AES-128 che poi è quella raccomandata per i volumi crittografici secondo la apple, un pò come funziona il file_vault apple (cifratura delle home directory)

  2. Per quello mi chiedevo… nel momento in cui cambio utente, come viene gestita la cifratura dello swap? Se e` personale, bisognerebbe che ogni utente avesse uno swap separato e cifrato con la propria chiave, ma non mi sono ancora dato la pena di approfondire :)

  3. immagino che lo swap sia in chiaro come filesystem..
    ma le pagine swappate siano codificate una ad una, e immagino sempre che il kernel codifichi in maniera differente pagine provenienti da uid diversi.

    cmq.. ora il dubbio è venuto anche a me..

    e mi sorge anche una domanda..
    se fosse come dico (improbabile) le pagine swappate da processi di root come vengono cifrate ?

  4. Potrebbe essere come su OpenBSD:
    La memoria virtuale viene divisa in sezioni di 512 kb ed ad ognuna viene assegnata una chiave. La chiave crittografica consiste in una stringa di 128 bit, un contatore di richieste, e un tempo di scadenza. Per una partizione di swap di 256 MB sono richiesti 14 kB di memoria per le chiavi. Le chiavi a 128 bit delle sezioni sono create casualmente e il contatore associato sara’ incrementato di 1. Quando una pagina viene rimossa il contatore viene decrementato, la chiave viene rimossa quando il contattore ritorna a 0. In tutti i modi la durata totale della chiave non supera’ mai il tempo fissato “tr”. ecc…

    http://www.opengeeks.it/docs/crypto_openbsd.ps

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close