Pokazywanie postów oznaczonych etykietą AES. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą AES. Pokaż wszystkie posty

Informatyczna bajka

Pewną telefoniczną historię mogę opowiedzieć tylko jako bajkę, a brzmi ona tak: w czasach przed Internetem (tuż po dinozaurach) dane na duże dystanse przenosiło się za pomocą BBS'ów (Bulletin Board System) i za pomocą tasiemek do streamerów, przewożonych w bagażu.

Również za pomocą tanich taśm o pojemności 120 MB (megabajtów!). To były rozmiary większych twardych dysków...  Windows 3.1 zajmował 8 dyskietek 3,5" 1,44 MB.
Tak to dane ze zgniłego zachodu, może również ze Szwecji, trafiały do raczkującego kapitalizmu.

Natomiast problemem z BBS'ami był koszt rachunku telefonicznego.
Więc w pewnym mieście wojewódzkim, za lasami, za górami, była duża centrala, a do niej instrukcje obsługi po francusku... W centrali był modem, z ustawionym jakimś pancernym protokołem i prędkością 300 bodów. Wolno to działało nawet jak na tamte czasy, ale praktycznie nie dało się zerwać transmisji.
Dzięki temu modemowi, skrzaty i elfy, potrafiły ustawić sobie numery z bilingowaniem: darmowym, z jednokrotnym naliczeniem, lub naliczane jako numer lokalny. Ustawiało się też ponoć przekierowanie - po zadzwonieniu na numer "lokalny" automatycznie uzyskiwało się połączenie z wcześniej zaprogramowanym numerem. Od tej pory - jak wieść gminna niesie - BBS'y w USA stały się bardziej dostępne (dla rycerzy okrągłego stołu, oczywiście).

Ciągłe połączenia (czas liczony w miesiącach) zrywane tylko co kilka godzin i zaraz nawiązywane ponownie. Do tego modemy US Robotics Courier i Sportster. Łącza takie, że 56 kb ciężko było zestawić do centrali... To były czasy. Nie zna życia, kto modemu nie słyszał...

Z takich numerów to nawet pirackie radio korzystało... podobno. Gnomy mogły ustawić antenę na wysokim bloku - wysokim, że hej!, jak na Manhattanie - a nadajnik wcisnąć do kanału wentylacyjnego (jakże pomocne okazywały się lewarki samochodowe).
Może do tego była radiolinia, porządna, a jakże, aż do odległej krainy! Zrobiona na "totolotku" łączyła ze studiem, czyli z małym pokojem.
Prywatny numer telefonu na noc przekierowany na budkę z automatem, a tam kumple z piwem i ręcznymi radyjkami zapewniającymi łączność ze studiem... Że też wtedy chciało się tym krasnoludkom tak ciężko pracować... Ja rozumiem TV, nieco parna i duszna, już bez D2MAC, o zasięgu kilku ulic, ale radio z łącznością ze słuchaczami?!

Niestety stare, dobre, czasy minęły szybko. Do centrali złe wiedźmy podłączyły jakiś większy (centralny) system bilingowy i numery z numerami się skończyły.

Wtedy jednak pojawiła się sieć sieci, jakieś wół-wół-wół, a znajomi króliczka potrafili np. w nocy 3/4 pasma przeznaczonego do obsługi dużego miasta zarezerwować na potrzeby własne... tak to bywa, gdy w prawiekach miasto obsługiwało (prawie) jedno łącze... I to koniec tej bajki.

Dobranoc!


Hacking --- Hacker, kto to taki? 

Enigma - zasada działania, historia, oraz słabości Enigmy. 



********

Więcej informacji:
Informatyka, FreeBSD, Debian

Bezprzewodowy licznik energii elektrycznej OWL -rozpakowanie (unboxing)



Update: 2016.04.22
Create: 2016.04.22

Szyfrowana kopia bezpieczeństwa na Blu-ray lub DVD (freebsd, mdconfig, GELI)

Kopie bezpieczeństwa nagrywam na dyski Blu-ray lub DVD. Dane należy nagrać na co najmniej dwie płyty różnych producentów i nie będzie przesadą nagranie trzech egzemplarzy.
Płyty należy przechowywać w różnych (fizycznie) miejscach. Zabezpieczmy się w ten sposób przed utratą danych w wyniku np.: kradzieży lub pożaru. Dane należy zabezpieczyć też przed odczytaniem przez niepowołane osoby (np.: złodzieja). Ponieważ na serwerach używam głównie FreeBSD to sposób wykonywania kopii zapasowych dostosowałem do tego systemu. Zresztą nie ma problemu, by napęd BR fizycznie podłączony do stacji roboczej pracującej pod Debianem był dostępny dla FreeBSD, gdzie przeprowadzimy proces deszyfracji - po czym ponownie możemy już odszyfrowane dane udostępnić do stacji roboczej pracującej pod Debianem :-D

Napęd możemy udostępnić jako plik lub urządzenie:
iSCSI form Debian (target) to FreeBSD (initiator)


Wybrałem następujący sposób szyfrowania danych:
1) Przygotowuję plik o rozmiarze pozwalającym na pełne wykorzystanie posiadanego napędu i płyt.
2) Montuję ww. plik jako urządzenie (dysk) i szyfruję go całego.
3) Na zamontowany, szyfrowany w "locie", wirtualny dyski (plik) nagrywam dane.
4) Tak przygotowany, duży plik nagrywam na nośniki.

Brzmi to bardziej skomplikowanie, niż jest w rzeczywistości, szczególnie, że tego samego mechanizmu używam do szyfrowania fizycznych dysków. Dzięki temu mam opanowany i przetestowany jeden mechanizm szyfrowania.


Przygotowanie pliku na dane:

Przygotowujemy plik, który będzie emulować dysk. Do inicjującego zapełnienia dysku, dla bezpieczeństwa powinniśmy użyć urządzenia: /dev/random, a dla przyspieszenia tego procesu możemy użyć: /dev/zero
dd if=/dev/random of=/data_file/br00.disk bs=1m count=23800
dd if=/dev/zero of=/data_file/br00.disk bs=1m count=23800
Parametry "bs" i "count" dobrałem tak by były łatwe w użyciu. Dla optymalizacji procesu można użyć dd na przykład tak (użyte wartości powinny zależeć od użytego dysku):
dd if=/dev/random of=/data_file/br00.disk bs=64k count=380800
dd if=/dev/random of=/data_file/br00.disk bs=128k count=190400
Rozmiar (bs * count) dobrałem do jednowarstwowych płyt Blu-ray, których używam.

Montujemy plik jako urządzenie /dev/md1 (ja używam /dev/md0 do obsługi swap - tak, 32MB swap)
mdconfig -a -t vnode -f /data_file/br00.disk -u 1
Zdemontować możemy poleceniem:
mdconfig -d -u 1
Sprawdzić zamontowane urządzenia możemy poleceniem:
mdconfig -lv

Zaszyfrowanie danych w pliku

Do szyfrowania używam mojego ulubionego i sprawdzonego GELI. 

Polecenia, które mogą uszkodzić dane wgrane na plikowy "dysk" poprzedziłem potrójmy znakiem #. Takie polecenia używa sie tylko do inicjalizacji pliku.

Poniższym poleceniem tworzymy klucz, który później zabezpieczymy frazą. Klucz powinniśmy przechowywać w bezpiecznym miejscu, np.: szyfrowanym dysku lub szyfrowanym USB. Należy pamiętać o kopii tego klucza!!! (też bezpiecznie przechowywanej)
###  dd if=/dev/random of=/etc/keys/br2014.key bs=64 count=1

Inicjalizujemy szyfrowanie wskazując klucz. Zostaniemy poproszeni o podanie frazy zabezpieczającej. Fraza powinna być długa - ja zalecam stosowanie od 20 do 40 znaków. Otrzymamy nowe urządzenie /dev/md1.eli  (inicjalizacja oznacza również wykonanie polecenia "attach"). Wybrałem szyfrowanie AES z kluczem 256bitowym, a rozmiar "komórki danych" ustawiłem na 4096 bajtów. W ten sposób przyspieszam deszyfrowanie, choć odczyt takiej porcji danych będzie wymagać odczytu dwóch sektorów dysku BR. Ja przechowuję duże pliki (zdjęcia, zmontowane filmy, archiwa), dlatego dążę do rozsądnej maksymalizacji porcji danych.
###  geli init -s 4096 -e AES -l 256 -K /etc/keys/br2014.key /dev/md1

Otrzymamy komunikat o wykonaniu kopii metadanych. Ten plik warto też zarchiwizować.
Metadata backup can be found in /var/backups/md1.eli and
can be restored with the following command:
        # geli restore /var/backups/md1.eli /dev/md1

Do późniejszego montowania szyfrowanego urządzenia użyjemy polecenia:
geli attach -k /etc/keys/br2014.key /dev/md1
Do demontowania szyfrowanego urządzenia użyjemy:
geli detach /dev/md1

Poniższym poleceniem sformatujemy dysk::
###  newfs -O 2 -m 0 -S  4096 /dev/md1.eli 
Ustanawiamy ponownie spójną z poprzednimi poleceniami jednostkę danych i nie rezerwujemy przestrzeni dyskowej. Możemy założyć system plików FreeBSD: (bsdlabel -w md1 auto), lecz nie musimy - samo formatowanie UFS wystarczy:

Tak dysk montujemy
mount /dev/md1.eli /data_crypto


Podsumowanie:

Polecenie przygotowujące:
###  dd if=/dev/random of=/data_file/br00.disk bs=1m count=23800
mdconfig -a -t vnode -f /data_file/br00.disk -u 1
###  dd if=/dev/random of=/etc/keys/br2014.key bs=64 count=1
###  geli init -s 4096 -e AES -l 256 -K /etc/keys/br2014.key /dev/md1
###  newfs -O 2 -m 0 -S  4096 /dev/md1.eli 
mount /dev/md1.eli /data_crypto

Polecenia służące do użytkowania szyfrowanego pliku:
mdconfig -a -t vnode -f /data_file/br00.disk -u 1
geli attach -k /etc/keys/br2014.key /dev/md1
mount /dev/md1.eli /data_crypto

Polecenia służące do odmontowania zasobów:
umount /dev/md1.eli
geli detach /dev/md1
mdconfig -d -u 1



Update: 2014.09.10
Create: 2014.09.10