Компанијата Kudelski Security, специјализирана за спроводење на безбедносни аудити, објави систем на фајлови Oramfs со имплементација на технологијата ORAM (Oblivious Random Access Machine), која го маскира карактерот на пристапот до податоците (data access pattern). Проектот нуди FUSE-модул за Linux со имплементација на слој на ФС, кој не дозволува да се следи структурата на операциите за запишување и читање. Кодот на Oramfs е напишан на јазикот Rust и се дистрибуира под лицензата GPLv3.
Технологијата ORAM подразбира создавање на уште еден слој покрај шифрирањето, кој не дозволува да се определи карактерот на актуелната активност при работа со податоците. На пример, во случај на примена на шифрирање при складирањето податоци во трета страна, сопствениците на овој сервис не можат да ги знаат самите податоци, но можат да утврдат на кои блокови се врши пристап и какви операции се извршуваат. ORAM го сокрива информацијата за тоа на кои делови од ФС се прави пристап и која конкретна операција се извршува (читање или запишување).
Oramfs нуди универзален систем на фајлови, кој дозволува да се поедностави организацијата на складирањето на податоците на било кои надворешни хранилишта. Податоците се чуваат во зашифрена форма со опционалност за проверка на автентичноста. За шифрирање можат да се користат алгоритмите ChaCha8, AES-CTR и AES-GCM. Закономерностите при пристапот за запишување и читање се сокриваат со користење на шема Path ORAM. Во иднина е планирана имплементација на и други шеми, но во сегашната форма развојот сè уште е во фаза на прототип, кој не се препорачува да се користи во работни системи.
Oramfs може да се користи со било кои ФС и не зависи од типот на целно надворешно хранилиште — синхронизацијата на фајлови е можно со било кој сервис кој може да се монтира во форма на локален каталог (SSH, FTP, Google Drive, Amazon S3, Dropbox, Google Cloud Storage, Mail.ru Cloud, Яндекс.Диск и други сервиси поддржани во rclone или за кои постојат FUSE-модули за монтирање). Големината на хранилиштето не е фиксна и при потреба за дополнителен простор големината на ORAM може динамички да се зголеми.
Поставувањето на Oramfs се сведува на определување на два каталога — јавен и приватен, кои служат како сървър и клиента. Публичният каталог може да бъде всяка директория в локалната файлова система, свързана с външни хранилища чрез монтиране през SSHFS, FTPFS, Rclone и всички други FUSE модули. Приватният каталог се предоставя от FUSE модула Oramfs и е предназначен за непосредствена работа с файлове, съ хранявани в ORAM. В публичния каталог се намира файл с образа на ORAM. Всяка операция с приватния каталог отразява състоянието на този файл-образ, но този файл изглежда за външния наблюдател като черна кутия, промени в която не могат да бъдат асоциирани с активността в приватния каталог, включително не може да се определи дали е извършена операция по запис или четене.
Oramfs може да се прилага в области, в които е необходимо да се постигне най-високо ниво на конфиденциалност и могат да се жертват производителността. Производителността намалява, тъй като всяка операция с хранилището, включително операциите по четене на данни, водят до преорганизиране на блоковете в образа на файловата система. Например, четенето на файл с размер 10 MB отнема около 1 секунда, а 25 MB — 3 секунди. Записването на 10 MB отнема 15 секунди, а 25 MB — 50 секунди. При това Oramfs е приблизително 9 пъти по-бърз при четене и 2 пъти по-бърз при запис в сравнение с файловата система UtahFS, разработвана от Cloudflare и опционално поддържаща режим ORAM.
Източник: opennet.ru
