# Kriptiranje
Tukaj so razna navodila za varovanje podatkov - shrambe ali prenosa.
## Kriptiranje datoteke (pisanje)
Datoteko lahko kriptiramo z `gnupg` (`apt install gnupg` / `guix install gnupg`):
gpg -c
Nato vnesemo geslo, s katerim bi radi datoteko zavarovali.
Ponujena je tudi možnost hrambe gesla v obesek za ključe.
### Dekriptiranje (branje)
gpg -d
## Kriptiranje diska (linux)
Najbolje je imeti cel disk (root / `/`) kriptiran.
V kolikor imamo več particij (ločen `home` / `var`) je praktično uporabit Linux volume manager (`LVM`) na eni kriptirani particiji. Tako ni treba vpisovati gesla za vsako particijo posebej.
[[https://wiki.archlinux.org/title/LVM|Dokumentacija za LVM nastavitev]].
### Ustvari kriptirano particijo
Namestimo `cryptsetup`, ki omogoča ustvarjanje ter urejanje kriptiranih particij, pa tudi nalaganje.
`cryptsetup luksFormat ` formatira particijo, `cryptsetup loksOpen` jo naloži.
**POZOR: ** če je `/boot` direktorij na kriptirani particiji in sistem zaganjamo z `grub2` (2.12+), mora imeti ključ vrste `pbkdf2` (in //ne// `Argon2(id)`. Ključ je mogoče tudi zamenjati z ukazom: ` cryptsetup luksConvertKey /dev/ --pbkdf pbkdf2`.
### Btrfs na LVM na LUKS kriptirani particiji (GNU Guix)
Preverjeno deluje poganjanje linux sistema iz btrfs particije, ki nima ločenega `/boot` in se nahaja na LVM volume-u LUKS kriptirane particije.
Izsek iz `config.scm` sistemske konfiguracije guix sistema (korenski direktorij se nahaja na `@root` subvolomue-u btrfs sistema):
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
(targets '("/boot/efi"))))
(mapped-devices
(list (mapped-device
(source (uuid "3020ad8b-ee01-49e2-8a46-3f66c902ef67"))
(target "sda3_crypt")
(type luks-device-mapping))
(mapped-device
(source "dbn-vg")
(targets (list "dbn--vg-guix" "dbn--vg-home"))
(type lvm-device-mapping))))
(file-systems
(cons* (file-system
(mount-point "/")
(device "/dev/mapper/dbn--vg-guix")
(type "btrfs")
(options "subvol=@root,compress-force=zstd,space_cache=v2")
(dependencies mapped-devices))
(file-system
(mount-point "/home")
(device "/dev/mapper/dbn--vg-home")
(type "ext4")
(dependencies mapped-devices))
(file-system
(mount-point "/boot/efi")
(device (uuid "3F44-75AB" 'fat))
(type "vfat"))
%base-file-systems))