Felhasználói eszközök

Eszközök a webhelyen


oktatas:linux:titkositas:kriptografia

Különbségek

A kiválasztott változat és az aktuális verzió közötti különbségek a következők.

Összehasonlító nézet linkje

oktatas:linux:titkositas:kriptografia [2019/06/11 22:02]
oktatas:linux:titkositas:kriptografia [2019/08/16 19:45] (aktuális)
admin létrehozva
Sor 1: Sor 1:
 +[[oktatas:​linux:​titkosítás|<​ Titkosítás]]
 +====== Kriptográfia ======
 +
 +  * **Szerző:​** Sallai András
 +  * Copyright (c) Sallai András, 2018
 +  * [[https://​creativecommons.org/​licenses/​by-sa/​4.0/​|CC Attribution-Share Alike 4.0 International]]
 +  * Web: http://​szit.hu
 +
 +===== Kriptográfiai szoftverek =====
 +
 +  * mcrypt
 +  * bcrypt
 +  * gnupg
 +  * ccrypt
 +
 +===== GnuPG =====
 +
 +==== Telepítés ====
 +
 +  apt install gnupg
 +
 +Webhely:
 +  https://​gnupg.org/​
 +
 +  apt install gnupg2
 +==== Szimmetrikus kulcs ====
 +
 +Használat szimmetrikus kulccsal:
 +  gpg -c egy.txt
 +
 +Az eredmény egy egy.txt.gpg fájl.
 +
 +Visszafejtés:​
 +  gpg -d egy.txt.gpg
 +
 +Ez csak a képernyőre ír. Ha szeretnénk fájlba írni:
 +  gpg -d -o egy.txt egy.txt.pgp
 +
 +==== Aszimmetrikus kulcs ====
 +
 +Először generálnunk kell egy kulcspárt (nyilvános kulcs és titkos kulcs). Nézzük meg jelenleg milyen ​
 +titkos kulcsok vannak:
 +
 +  gpg --list-secret-keys
 +vagy:
 +  gpg --list-secret-keys --keyid-format LONG
 +
 +
 +A kulcs-pár generálása:​
 +  gpg --gen-key
 +
 +
 +Ha véletlenek száma nem elég, használjuk az rng-tools csomagot:
 +  # apt install rng-tools
 +
 +A véletlenek növelése:
 +  # rngd -r /​dev/​urandom
 +
 +Az rngd program indítható a kulcsgenerálás hátterében is.
 +
 +A 2.1.17 verziótól használhatjuk a <​nowiki>​--full-generate-key</​nowiki>​ kapcsolót:
 +  gpg --full-generate-key
 +
 +
 +Titkosítás megadásával:​
 +  gpg --default-new-key-algo rsa4096 --gen-key
 +
 +ASCII formátum generálása:​
 +  gpg --armor --output pubkey.txt --export '​Teljes Név'
 +
 +Esetleg így:
 +<​code>​
 +gpg --list-secret-keys --keyid-format LONG
 +/​home/​tanulok/​13ei/​nagyj13eib/​.gnupg/​pubring.kbx
 +------------------------------------------------
 +sec   ​rsa2048/​EF584EBA9A877662 2018-10-25 [SC] [expires: 2020-10-24]
 +      EC9870854BADD01BF45F7B08EF584EBA9A877662
 +uid                 ​[ultimate] Nagy János <​nagyj13eib@hid>​
 +ssb   ​rsa2048/​4F57685D5972B452 2018-10-25 [E] [expires: 2020-10-24]
 +</​code>​
 +
 +A sec sorból felhasználjuk a EF kezdetű részt:
 +  gpg --armor --export EF584EBA9A877662
 +
 +Nyilvános kulcs, kulcsszerverre:​
 +  gpg --send-keys 'Nagy János'​ --keyserver hkp://​kulcsszerver.neve
 +
 +==== Aszimmetrikus kulcsok használata ====
 +Titkosítás:​
 +  gpg --encrypt --recipient 'Nagy János'​ adat.txt
 +
 +Visszafejtés:​
 +  gpg --output adat.txt --decrypt adat.txt.gpg
 +
 +Titkosítás a fogadó fél számára:
 +
 +<​code>​
 +gpg --search-keys '​baratneve@sarga.and'​ --keyserver hkp://​kulcsszerver
 +gpg --import key.asc
 +gpg --list-keys
 +gpg --encrypt --recipient '​baratnev@sarga.and'​ adat.txt
 +</​code>​
 +
 +==== Aláírás ====
 +
 +  gpg --verify csomag.tar.gz.asc csomag.tar.gz
 +
 +  gpg --armor --detach-sign csomag.zip
 +
 +===== mcrypt =====
 +
 +  apt install mcrypt
 +
 +
 +<​code>​
 +$ mcrypt egy.txt
 +Enter the passphrase (maximum of 512 characters)
 +Please use a combination of upper and lower case letters and numbers.
 +Enter passphrase: ​
 +Enter passphrase: ​
 +
 +File egy.txt was encrypted.
 +</​code>​
 +
 +Visszafejtés:​
 +  mdecrypt egy.txt.nc
 +Vagy:
 +  mcrypt -d egy.txt.nc
 +
 +A használat után az eredeti fájl törlése: ​
 +  mcrypt -u egy.txt
 +
 +===== bcrypt =====
 +
 +Telepítés:​
 +  apt install bcrypt
 +
 +A Debian9-ben sem működik: http://​bugs.debian.org/​700758
 +
 +===== ccrypt =====
 +
 +Telepítés:​
 +  apt install ccrypt
 +
 +Legyen a példa kedvéért egy adat.txt fájl.
 +
 +Titkosítjuk:​
 +  ccrypt -e adat.txt
 +
 +Meg kell adnunk kétszer a jelszót. A kimenet ehhez hasonló lesz:
 +<​code>​
 +Enter encryption key: 
 +Enter encryption key: (repeat) ​
 +</​code>​
 +
 +Az eredeti fájl átnevezésre kerül:
 +  adat.txt.cpt
 +
 +A visszafejtés:​
 +  ccrypt -d adat.txt.cpt
 +
 +Bekéri a titkosításkor megadott jelszót:
 +  Enter decryption key:
 +
 +A fájl elveszti .cpt kiterjesztését,​ és szimpla .txt fájlként újra olvasható.
 +
 +Kapunk egy ccat parancsot is, amely visszafejti a lekódolt tartalmat, de
 +megmarad a titkosított fájl, a tartalmat pedig a képernyőre írja.
 +Használata:​
 +  ccat adat.txt.cpt
 +
 +===== openssl =====
 +
 +Kódolás képernyőre:​
 +  openssl enc -base64 -in adat.txt
 +
 +Kódolás fájlba:
 +  openssl enc -base64 -in adat.txt -out adat.txt.enc
 +
 +
 +Dekódolás:​
 +  cat adat.txt.enc | openssl enc -base64 -d
 +
 +
 +
 +===== Hash algoritmusok =====
 +
 +==== md5sum ====
 +
 +<​code>​
 +md5sum pika.txt
 +f3eeeaf8e0a470adf6ac40d3d9c9a88e ​ pika.txt
 +</​code>​
 +==== crc32 ====
 +
 +  apt install libarchive-zip-perl
 +
 +  crc32 pika.txt
 +
 +==== cksum ====
 +
 +CRC ellenőrzőösszeg és a bájtok száma:
 +  cksum pika.txt
 +
 +==== cksfv ====
 +
 +  apt install cksfv
 +
 +  cksfv pika.txt
 +
 +==== SHA ====
 +
 +<​code>​
 +sha1sum pika.txt
 +sha224sum pika.txt
 +sha256sum pika.txt
 +sha384sum pika.txt
 +sha512sum pika.txt
 +</​code>​
 +