thumb

Є безліч способів зашифрувати файл в Linux. Багато з них вимагають введення безлічі параметрів. Я ж опишу один з найпростіших і швидких способів зробити це. У цьому нам допоможе пакет ccrypt.

На офіційній сторінці http://ccrypt.sourceforge.net/ є прекомпілірованние і зібрані пакети на різні системи:

Precompiled distributions:

  • Linux (32 bit)
  • Linux (64 bit)
  • Windows 95/98/2000/NT
  • Sun Solaris (Sparc)
  • Mac OS X (universal)
  • AIX
  • Linux for Alpha
  • Linux for AMD64
  • Sun Solaris (i386)
  • FreeBSD
  • NetBSD
  • HP-UX
  • Linux for Sparc
  • Linux for ARM
  • Linux for Power PC

Packages:

  • Debian Package (i386)
  • Redhat Source RPM
  • Redhat Binary RPM (i386)
  • Solaris Package (Sparc)
  • Solaris Package (i386)
  • OS/2 Package
  • SuSE Source RPM
  • SuSE Binary RPM (i586)
  • OpenBSD Package (i386)
  • FreeBSD Package (i386)

Також він є в стандартних репозиторіях Debian. Установка здійснюється стандартним чином:

sudo apt-get install ccrypt

Для того, що б зашифрувати будь-якої файл використовується ccrypt або ccrypt -e або ccencrypt. По суті це все одна команда. Різниці в них немає, так що вибираємо той варіант який більше подобається (простіше запам’ятати). Параметр -e вказує програмі на те, що файл потрібно саме зашифрувати але ccrypt без вказівки параметрів і так зашифровує, з цього вказувати не обов’язково. Наприклад, зашіфруем файл file:

ccrypt -e file

Програма запитає пароль і підтвердження пароля:

Enter encryption key:
Enter encryption key: (repeat)

Після чого видасть файл контейнер file.cpt замість вихідного файлу, який і буде містити зашифровану копію файлу file.

Для прочитання зашифрованого текстового файлу можна використовувати команду ccrypt -c або ccat, тим самим зменшуючи ймовірність залишити сліди від файлу.

ccrypt -c file
Enter decryption key:
Hello world!

Виходячи з вищесказаного зрозуміло, що для дешифрування потрібно використовувати ccrypt -d або ccdecrypt, кому як подобається.

ccrypt -d file.cpt
Enter decryption key:

І тоді замість зашифрованого контейнера з’явиться наш файл.

В якості алгоритму шифрування використовується шифр Rijndael, обраний в США в якості національного стандарту “AES” (см. http://www.nist.gov/aes). Так що наші дані будуть у безпеці.

Из Wiki:

Advanced Encryption Standard (AES), також відомий як Rijndael (вимовляється [rɛindaːl] (Рейндол) ) — симетричний алгоритм блочного шифрування (розмір блоку 128 біт, ключ 128/192/256 біт), прийнятий в якості стандарту шифрування урядом США за результатами конкурсу AES. Цей алгоритм добре проаналізований і зараз широко використовується, як це було з його попередником DES. Національний інститут стандартів і технологій США (англ. National Institute of Standards and Technology, NIST) опублікував специфікацію AES 26 листопада 2001 після п'ятирічного періоду, в ході якого були створені і оцінені 15 кандидатур. 26 травня 2002 року AES був оголошений стандартом шифрування. Станом на 2009 рік AES є одним з найпоширеніших алгоритмів симетричного шифрування. Підтримка AES (і тільки його) введена фірмою Intel в сімейство процесорів x86 починаючи з Intel Core i7-980X Extreme Edition, а потім на процесорах Sandy Bridge.