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” :-)


4 Responses to “Mac Os X, swap cifrato”  

  1. 1 ize

    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. 2 zen

    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. 3 ize

    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. 4 trieb

    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



Related Entries

www.flickr.com
This is a Flickr badge showing public photos from zen0. Make your own badge here.