Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2012-03-07

Практикум eCryptfs

Накладные расходы на криптование, какие они? В некоторых случаях, говорят, бывают даже «доходы», но чаще, полагаю, будут таки расходы. Для одного конкретного практического случая я могу привести числа.

Процессор Intel Core i7-2600 (3.4 GHz), Два HDD SATA 3, переписывание громадных файлов (образы виртмашин) с одного диска на другой. Фрагментация файлов средняя. Криптовальное средство - eCryptfs с опциями монтирования
ecryptfs_sig=***,ecryptfs_cipher=aes,ecryptfs_key_bytes=16,ecryptfs_fnek_sig=***,ecryptfs_unlink_sigs,ecryptfs_enable_filename_crypto=y,ecryptfs_passthrough=n,key=passphrase:passwd=$password

При переписывании с НЕзакриптованного диска на ЗАкриптованный (шифрование) скорость колеблется в рамках 100 - 120 мегабайт/секунду, в среднем около 117. Для нефрагментированных файлов на внешних дорожках скорость временами доходит до 150 мегабайт/сек.
Загрузка процессора при этом достигает 15%, в среднем держится ровно на 14%.

Переписывание тех же файлов без криптования проходит с теми же скоростями. Но! Загрузка процессора не превышает 3%.

Чуть не забыл, при переписывании с криптованного на некриптованный (расшифровка) скорости практически такие же, а загрузка процессора падает до 12%.

Измерения были грубые, условия не жесткие. Но, полюбасу, погрешность не превышает 10%.

Вывод? Имеем процессорозависимый криптователь; мощности камня хватает с избытком на обеспечение того потока, что может выдать приличный HDD.

В более академичном исследовании (да еще с применением SSD)
mayrhofer.eu.org/ssd-linux-benchmark
результаты совсем не в пользу eCryptfs.
Based on these measurements, I now use dm-crypt in aes-xts-plain mode with 128 Bit keylength and btrfs with ssd alignment and compress=lzo compression for the root partition of the Ubuntu/Debian installation on my laptop SSD.

Но, несмотря на тормоза, у eCryptfs есть неоспоримые преимущества. Для его использования не надо выделять целый дисковый раздел или файл-контейнер фиксированного размера, можно закриптовать любую папку.

И еще, внимательно смотрите в syslog, user.log при использовании тулзы. Могут быть сюрпризы.

Комментариев нет:

Отправить комментарий

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) humor (23) Java (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Klaipeda (15) Manager (15) web-browser (15) Никонов (15) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) Baltic (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) seaside (1) serialization (1) shore (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)