w ciągu ostatnich kilku lat sieć world wide web doświadczyła wykładniczego wzrostu liczby hakerów, złośliwych programów, oprogramowania ransomware i innego złośliwego oprogramowania lub stron, które nieustannie próbują znaleźć sposób na kradzież naszych danych osobowych: biorąc pod uwagę ten scenariusz, oczywiste jest, że zabezpieczenie danych stało się jednym z najważniejszych zadań, które powinniśmy traktować priorytetowo, niezależnie od roli, jaką zwykle odgrywamy. Ogólna (i pilna) potrzeba zapobiegania nieautoryzowanemu dostępowi do osobistych, wrażliwych i / lub w inny sposób krytycznych informacji jest czymś, co powinno być uznane przez wszystkich – użytkowników końcowych, właścicieli usług, administratorów serwerów i tak dalej: różnice są głównie związane z tym, co musimy chronić i jak powinniśmy to zrobić.

nie trzeba dodawać, że wybór właściwego sposobu ochrony naszych danych jest często następstwem dobrze przeprowadzonej oceny ryzyka, a następnie analizy kosztów i korzyści, co jest doskonałym podejściem, które pomaga nam znaleźć odpowiednie środki techniczne i organizacyjne do wdrożenia w naszym konkretnym scenariuszu. Jest to również właściwy sposób działania zgodnie z Ogólnym Rozporządzeniem o ochronie danych (RODO), Zgodnie z art. 32-bezpieczeństwo przetwarzania:

biorąc pod uwagę aktualny stan wiedzy, koszty wdrożenia oraz charakter, zakres, kontekst i cele przetwarzania, a także ryzyko naruszenia praw i wolności osób fizycznych o różnym prawdopodobieństwie i wadze zagrożenia, administrator i podmiot przetwarzający wdrażają odpowiednie środki techniczne i organizacyjne w celu zapewnienia poziomu bezpieczeństwa odpowiedniego do ryzyka

oto lista najczęstszych środków technicznych i organizacyjnych zapewniających ochronę i bezpieczeństwo danych w dzisiejszych czasach.:

  • Kontrola dostępu: Chroń cały fizyczny dostęp do serwera, klienta i / lub pomieszczeń danych za pomocą kluczy, kart chipowych, ścian, szafek, alarmów i tym podobnych.
  • minimalizacja: upewnij się, że wszystkie autoryzowane strony mogą uzyskać dostęp tylko do danych związanych z ich konkretnymi zadaniami i/lub autoryzacją, bez możliwości zobaczenia czegokolwiek innego.
  • integralność: Chroń swoje dane przed przypadkową utratą, zniszczeniem lub uszkodzeniem za pomocą odpowiednich środków zaradczych (czujniki pożarowe/przeciwpowodziowe, odzyskiwanie po awarii i tym podobne).
  • Pseudonimizacja: Zastąp dane związane z użytkownikiem losowymi, anonimowymi blokami tekstu, aby właściciel nadal mógł zachować wpisy (do celów statystycznych), a jednocześnie usunąć je z wszelkich danych osobowych.
  • szyfrowanie w tranzycie: upewnij się, że dane są zawsze przesyłane przy użyciu silnych standardów szyfrowania w tranzycie (certyfikaty SSL/TLS) i za pośrednictwem bezpiecznych połączeń: dotyczy to również każdego rodzaju witryny i usługi internetowej zawierającej formularze, ekrany logowania, możliwości przesyłania/pobierania i tak dalej.
  • szyfrowanie w spoczynku: Chroń swoje lokalne jednostki pamięci danych (w tym te używane przez serwery i komputery stacjonarne & klientów mobilnych) za pomocą silnego standardu szyfrowania w spoczynku; upewnij się, że dane przechowywane w SaaS i usługach opartych na chmurze są również szyfrowane w spoczynku.
  • poufność: Zapobiegaj nieautoryzowanemu lub niezgodnemu z prawem przetwarzaniu, wdrażając takie koncepcje, jak oddzielenie problemów & oddzielenie obowiązków, egzekwowanie zasad dotyczących haseł i tak dalej.
  • : Upewnij się, że wszystkie istotne dane podlegają regularnym kopiom zapasowym, a także Regularnie sprawdzaj je, aby upewnić się, że dane można skutecznie odzyskać.
  • ocena: poddaj cały system regularnym przeglądom technicznym, audytom stron trzecich, przyjmij skuteczny zestaw wskaźników bezpieczeństwa i tak dalej.

w tym poście omówimy dwa z tych środków technicznych: szyfrowanie w Tranzycie i szyfrowanie w spoczynku, pozostawiając inne tematy do dalszych artykułów.

wprowadzenie: trzy etapy danych cyfrowych

pierwszą rzeczą, którą powinniśmy zrobić, to wyliczyć, ile „Stanów” dane cyfrowe mogą rzeczywiście mieć,i pamiętaj, aby zrozumieć każdy z nich:

  • w spoczynku: jest to stan początkowy wszelkich danych cyfrowych: w bardzo krótkim czasie oznacza to dane, które są przechowywane gdzieś bez użycia i / lub przesłane do kogokolwiek (w tym oprogramowania, osób trzecich, ludzi i tak dalej). Od lokalnych dysków twardych po sieciowe magazyny, od pendrive ’ ów USB po urządzenia mobilne, od folderów systemowych po serwery baz danych-każdy fizyczny i logiczny system pamięci masowej, Jednostka lub urządzenie ma być używane do przechowywania danych w spoczynku… przynajmniej przez jakiś czas.
  • w tranzycie: znany również jako „w ruchu”. Jest to związane z danymi, które są przesyłane gdzieś indziej. Warto zauważyć, że pojęcie „transferu danych” może odbywać się między dowolną liczbą stron, nie ograniczając się do tylko dwóch (nadawca i odbiorca): na przykład, gdy przesyłamy plik z naszego komputera stacjonarnego do laptopa za pomocą sieci LAN, zasadniczo przeprowadzamy transfer danych z udziałem jednej strony (USA); i odwrotnie, przesyłając transakcję do dystrybuowanej bazy danych, takiej jak łańcuch bloków, wymuszamy transfer danych między nieokreśloną liczbą stron (całe węzły łańcucha bloków).
  • w użyciu: ilekroć dane są nie tylko przechowywane biernie na dysku twardym lub zewnętrznym nośniku pamięci masowej, ale są przetwarzane przez jedną lub więcej aplikacji – a zatem są generowane, przeglądane, aktualizowane, dołączane, usuwane itp. – mają być „w użyciu”. Jest rzeczą oczywistą, że używane dane są podatne na różnego rodzaju zagrożenia, w zależności od tego, gdzie są w systemie i kto jest w stanie uzyskać do nich dostęp i/lub z nich korzystać. Jednak szyfrowanie używanych danych jest raczej trudne do wykonania, ponieważ najprawdopodobniej sparaliżuje, utrudnia lub zawiesza aplikację, która faktycznie uzyskuje do niej dostęp: z tego właśnie powodu najlepszym sposobem ochrony używanych danych jest zapewnienie, że aplikacja zajmie się takim zadaniem, przyjmując najbezpieczniejsze wzorce rozwoju i implementacji w swoim kodzie źródłowym.

suma trzech wyjaśnionych powyżej stwierdzeń nazywa się” trzema etapami danych cyfrowych”: teraz, gdy mamy ich istotę, jesteśmy gotowi zagłębić się w tematy szyfrowania.

szyfrowanie danych w spoczynku

z definicji „w spoczynku” podanej powyżej możemy łatwo zrozumieć, w jaki sposób tego rodzaju dane są zazwyczaj w stabilnym stanie: nie przemieszczają się w systemie lub sieci i nie są obsługiwane przez żadną aplikację lub stronę trzecią. To coś, co dotarło do celu, przynajmniej tymczasowo.

powody, dla których warto go używać

dlaczego mamy w ogóle szyfrować te dane? Cóż, istnieje wiele dobrych powodów, aby to zrobić: przyjrzyjmy się najważniejszym z nich.

kradzież fizyczna

jeśli nasze urządzenie zostanie skradzione, szyfrowanie w spoczynku uniemożliwi złodziejowi natychmiastowy dostęp do naszych danych. Oczywiście, nadal może próbować odszyfrować go za pomocą brutalnej siły lub innych metod szyfrowania, ale jest to coś, co zajmie rozsądną ilość czasu: zdecydowanie powinniśmy być w stanie wykonać środki zaradcze adeguate, zanim to nastąpi, takie jak: zmiana informacji o koncie, które może być w stanie zobaczyć lub nieco użyć za pomocą istniejących menedżerów haseł przeglądarek, plików cookie logowania, kont klientów poczty e-mail i tak dalej; śledzenie naszego urządzenia i / lub wydawanie „Wymaż wszystkie dane” za pomocą naszych usług zdalnego zarządzania urządzeniami Google lub Apple; i tak dalej.

logiczna kradzież

jeśli nasz komputer, strona internetowa lub konto e-mail zostanie zhakowany przez złośliwego użytkownika lub oprogramowanie, szyfrowanie w spoczynku sprawi, że sprawca nie będzie mógł uzyskać dostępu do naszych danych-nawet po kradzieży lub pobraniu: jest to zasadniczo ten sam scenariusz kradzieży fizycznej, z wyjątkiem tego, że jest o wiele bardziej subtelny, ponieważ większość użytkowników (lub administratorów) nawet nie będzie o tym świadoma.

oto kolejna dobra okazja, aby przypomnieć sobie wspaniałe słowa wypowiedziane przez Johna T. Chambers, były prezes Cisco, Inc.:

istnieją dwa rodzaje firm: te, które zostały zhakowane i te, które nie wiedzą, że zostały zhakowane.

biorąc pod uwagę obecny stan Internetu w dzisiejszych czasach i nadmiar złośliwych programów i wymiernych prób hakerskich, to samo stwierdzenie można powiedzieć o każdym użytkowniku końcowym posiadającym urządzenie z obsługą sieci: 100% gwarancji.

błędy ludzkie

nie mówiąc już o fizycznych i / lub logicznych kradzieżach, istnieje wiele innych scenariuszy, w których szyfrowanie danych w spoczynku może uratować życie: na przykład, jeśli zgubiliśmy nasz smartfon( a ktoś go znajdzie); lub jeśli popełnimy błąd podczas przypisywania uprawnień, przyznając nieautoryzowanym użytkownikom (lub Klientom) dostęp do plików/folderów/danych, których nie powinni być w stanie zobaczyć; lub jeśli zapomnimy lokalnego komputera lub hasła do poczty e-mail w zasięgu wzroku, umożliwiając tym samym każdemu, kto nie ma ochoty szanować naszej prywatności, spojrzenie na nasze rzeczy; a lista może trwać przez jakiś czas.

jak może nam pomóc

podsumowując, możemy odpowiedzieć na nasze poprzednie pytania jednym wierszem, mówiąc, że szyfrowanie naszych danych w spoczynku może pomóc nam lepiej radzić sobie z możliwym naruszeniem danych.

nie pomoże nam to zapobiec – co jest głównie zadaniem dla zapór ogniowych, programów antywirusowych, dobrych praktyk i protokołów bezpieczeństwa – ale na pewno da nam szansę (i czas) na skonfigurowanie odpowiednich środków zaradczych, miejmy nadzieję minimalizując ogólne szkody spowodowane ewentualnym wyciekiem.

jak go zaimplementować

wdrożenie protokołu bezpieczeństwa szyfrowania danych w spoczynku może być łatwe lub trudne, w zależności od następujących czynników:

  • które fizyczne i logiczne źródła danych / magazyny chcemy (lub mamy) chronić: źródła fizyczne obejmują dyski twarde, elementy NAS, smartfony, pendrive USB i tak dalej, podczas gdy źródła logiczne obejmują lokalne lub zdalne bazy danych, zasoby w chmurze, urządzenia zwirtualizowane i tak dalej;
  • kto musi mieć dostęp do tych danych: ludzie (lokalni lub zdalni użytkownicy lub inne osoby trzecie łączące się z nami), oprogramowanie kierowane przez ludzi (takie jak MS Word) lub automatyczne procesy lub usługi (takie jak Nocne zadanie tworzenia kopii zapasowych);
  • ile jesteśmy w stanie poświęcić pod względem ogólnej wydajności i/lub łatwości dostępu w celu zwiększenia bezpieczeństwa: czy możemy poprosić wszystkich naszych lokalnych (i zdalnych) użytkowników o odszyfrowanie tych danych przed uzyskaniem do nich dostępu? Czy powinniśmy używać hasła, tokena fizycznego lub kodu OTP? Czy możemy uczynić szyfrowanie wystarczająco przejrzystym, aby nie utrudniać naszym zewnętrznym użytkownikom, a także umożliwić naszym aplikacjom i narzędziom radzenie sobie z zaszyfrowanymi danymi, kiedy tylko będą musieli sobie z nimi poradzić?

na szczęście czynniki te są dobrze znane przez większość narzędzi szyfrujących w spoczynku, które zostały zaprojektowane w celu ochrony naszych danych bez uszczerbku dla ogólnej funkcjonalności naszego środowiska:

  • jeśli chcemy zaszyfrować fizyczne (lub logiczne) dyski twarde, możemy użyć świetnych narzędzi programowych, takich jak VeraCrypt (100% za darmo) lub AxCrypt (dostępna darmowa wersja);
  • jeśli chcemy chronić nasze Pendrive ’ y USB, możemy użyć wyżej wymienionych narzędzi lub kupić zaszyfrowany sprzętowo Dysk Flash implementujący mechanizmy odblokowania oparte na odciskach palców lub hasło (od 20~30 dolców);
  • jeśli chcemy zaszyfrować dane przechowywane w systemie zarządzania bazami danych, większość dostępnych obecnie DBMS zapewnia natywne techniki szyfrowania (InnoDB tablespace encryption dla MySQL i MariaDB, Transparent Data Encryption dla MSSQL i tak on);
  • jeśli szukamy sposobu na bezpieczne przechowywanie naszych wiadomości E-Mail, możemy łatwo przyjąć Bezpieczny standard szyfrowania poczty e-mail, taki jak S/MIME lub PGP (oba są bezpłatne): chociaż protokoły te są głównie związane z szyfrowaniem w tranzycie, ponieważ chronią dane głównie przeznaczone do przesyłania do zdalnych stron, w rzeczywistości są one powszechnie używane do szyfrowania po stronie klienta, co oznacza, że chronią wiadomości e-mail, gdy są jeszcze w spoczynku. Nie trzeba dodawać, że ponieważ te wiadomości najprawdopodobniej zostaną wysłane, nasze miejsca docelowe będą również musiały przyjąć ten sam standard, aby móc je odczytać.

szyfrowanie przesyłanych danych

jak sama nazwa wskazuje, przesyłane dane powinny być postrzegane podobnie jak strumień transmisji: doskonałym przykładem przesyłu danych jest typowa strona internetowa, którą otrzymujemy z Internetu, gdy surfujemy po Internecie. Oto, co dzieje się pod maską w skrócie:

  1. wysyłamy żądanie HTTP (lub HTTPS) na serwer hostujący odwiedzaną witrynę.
  2. serwer WWW akceptuje nasze żądanie, przetwarza je poprzez znalezienie (statycznej lub dynamicznej) treści, o którą prosiliśmy, a następnie wysyła je do nas jako odpowiedź HTTP (lub HTTPS) przez dany port TCP (zwykle 80 dla HTTP i 443 dla HTTPS).
  3. nasz klient, zwykle przeglądarka internetowa, taka jak Google Chrome, Firefox lub Edge, otrzymuje odpowiedź HTTP(S), przechowuje ją w wewnętrznej pamięci podręcznej i pokazuje nam ją.

jak widać, między serwerem a klientem odbywa się transmisja danych: podczas tej transmisji żądane dane (kod HTML strony internetowej) stają się przepływem, który przechodzi przez co najmniej pięć różnych stanów:

  1. rozpoczyna się od-rest (pamięć serwera),
  2. następnie zmienia się na in-use (pamięć serwera www),
  3. następnie Na in-transit (przy użyciu protokołu transferu hipertekstowego na danym porcie TCP),
  4. następnie ponownie NA in-use (przeglądarka internetowa),
  5. i na końcu NA at-rest (pamięć podręczna klienta).

powody, dla których warto go używać

przyjmijmy za pewnik, że zarówno serwer, jak i klient zaimplementowali silny poziom szyfrowania danych w spoczynku: oznacza to, że pierwszy i piąty Stan są wewnętrznie bezpieczne, ponieważ każda próba włamania byłaby podejmowana przeciwko zaszyfrowanym danym. Jednak trzeci stan – w którym dane są przesyłane-może być zaszyfrowany lub nie, w zależności od protokołu, którego serwer i klient faktycznie używają do przesyłania danych.

oto, co zwykle dzieje się pod maską, gdy używany jest protokół HTTP:

szyfrowanie w Tranzycie i szyfrowanie w spoczynku-definicje i najlepsze praktyki

jak widać, problem bezpieczeństwa jest dość oczywisty: gdy serwer WWW przetwarza przychodzące żądanie i przejrzyście odszyfrowuje żądane dane, kanał używany do przesłania go do klienta sieciowego (HTTP) nie jest szyfrowany: dlatego każda strona, która uda się pomyślnie wykonać odpowiedni atak (patrz poniżej), może mieć natychmiastowy dostęp do naszych niezaszyfrowanych danych.data.

jak może nam to pomóc

jeśli jesteś ciekaw, jakiego rodzaju ataków można użyć przeciwko niezaszyfrowanemu protokołowi transmisji opartemu na TCP, takim jak HTTP, oto kilka zagrożeń, o których powinieneś wiedzieć:

  • podsłuchiwanie: atak warstwy sieciowej, który koncentruje się na przechwytywaniu małych pakietów z sieci przesyłanych przez inne komputery i odczytywaniu zawartości danych w poszukiwaniu dowolnego rodzaju informacji (Więcej informacji tutaj).
  • Man-In-The-Middle: atak oparty na manipulacji, w którym atakujący potajemnie przekazuje i / lub zmienia komunikację między dwiema stronami, aby uwierzyli, że bezpośrednio komunikują się ze sobą (więcej informacji tutaj).

wdrożenie odpowiednich protokołów szyfrowania w tranzycie w celu zabezpieczenia naszych krytycznych punktów końcowych transferu danych z pewnością pomoże nam zapobiegać tego rodzaju zagrożeniom.

jak go zaimplementować

wdrożenie skutecznego wzorca szyfrowania podczas przesyłania jest głównie kwestią trzymania się szeroko znanej serii zaleceń i najlepszych praktyk podczas projektowania rzeczywistego transferu danych: których protokołów (nie) używać, którego oprogramowania (nie) przyjąć i tak dalej. Na przykład:

  • gdy urządzenie nadawcze jest dostępne za pośrednictwem interfejsu WWW, ruch sieciowy powinien być przesyłany tylko przez Secure Sockets Layer (SSL) przy użyciu silnych protokołów bezpieczeństwa, takich jak Transport Layer Security (TLS): dotyczy to każdej witryny sieci web i / lub usług WAN, w tym serwerów poczty e-mail i tym podobnych. Na dzień dzisiejszy najlepszym (i najłatwiejszym) sposobem wdrożenia zabezpieczeń TLS i wdrożenia szyfrowania w tranzycie dla dowolnej witryny jest uzyskanie certyfikatu SSL/TLS HTTPS: można je kupić od zarejestrowanych władz CA (Comodo, GlobalSign, GoDaddy, DigiCert i ich ogromna lista sprzedawców/sprzedawców) lub automatycznie wygenerować w procesie podpisywania, jak krótko wyjaśniliśmy w tym poście. Chociaż certyfikaty podpisane samodzielnie zapewniają ten sam poziom szyfrowania, co certyfikaty podpisane przez CA, zazwyczaj nie będą one zaufane przez użytkowników, ponieważ ich klienci przeglądarek nie będą w stanie zweryfikować dobrej wiary tożsamości wystawcy (Ciebie), oznaczając Twoją witrynę jako „niezaufaną”: z tego właśnie powodu powinny być używane tylko na serwerach/usługach nieprodukcyjnych (lub niepublicznie dostępnych).
  • wszelkie dane przesyłane za pośrednictwem poczty e-mail powinny być zabezpieczone za pomocą silnych kryptograficznie narzędzi szyfrowania poczty e-mail, takich jak S/MIME lub PGP, o których już rozmawialiśmy, gdy mówiliśmy o szyfrowaniu danych w spoczynku: chociaż protokoły te szyfrują swoje dane na poziomie klienta (a zatem w spoczynku), są również Świetne do ochrony asynchronicznego przepływu w trakcie przesyłania wiadomości e-mail.
  • wszelkie dane binarne powinny być zaszyfrowane przy użyciu odpowiednich narzędzi szyfrujących pliki przed dołączeniem do wiadomości e-mail i/lub przesłaniem w inny sposób. Większość protokołów kompresji, w tym ZIP, RAR i 7Z, obsługuje obecnie przyzwoity poziom szyfrowania chronionego hasłem: korzystanie z nich jest często świetnym sposobem na dodanie dodatkowego poziomu bezpieczeństwa i zmniejszenie rozmiaru załączników w tym samym czasie
  • transmisja tekstu i/lub danych binarnych poza internetem powinna być również szyfrowana za pomocą szyfrowania na poziomie aplikacji, biorąc pod uwagę następujące scenariusze:
    • jeśli baza danych aplikacji znajduje się poza serwerem aplikacji, połączenie między bazą danych a aplikacją powinno być szyfrowane przy użyciu algorytmów kryptograficznych zgodnych z FIPS.
    • gdy szyfrowanie na poziomie aplikacji nie jest dostępne, zaimplementuj szyfrowanie na poziomie sieci, takie jak IPsec lub tunelowanie SSH i/lub upewnij się, że sama transmisja jest wykonywana przy użyciu autoryzowanych urządzeń działających w ramach chronionych podsieci z silnymi kontrolami zapory (VPN i tym podobne).

w poniższej tabeli przedstawiono kilka przykładów niebezpiecznych protokołów sieciowych, których należy unikać, oraz ich bezpiecznych odpowiedników, których należy używać zamiast nich:

Transfer Type What to avoid (insecure) What to use (secure)
Web Access HTTP HTTPS
E-Mail Servers POP3, SMTP, IMAP POP3S, IMAPS, SMTPS
File Transfer FTP, RCP FTPS, SFTP, SCP, WebDAV over HTTPS
Remote Shell telnet SSH2
Remote Desktop VNC radmin, RDP

szyfrowanie End-to-End

szyfrowanie podczas przesyłania jest naprawdę pomocne, ale ma poważne ograniczenie: nie gwarantuje, że dane zostaną zaszyfrowane w punkcie początkowym i nie zostaną odszyfrowane, dopóki nie będą używane. Innymi słowy, nasze dane mogą być nadal poprzedzone sporadycznymi i / lub złośliwymi podsłuchiwaczami, w tym dostawcami Internetu, dostawcami usług komunikacyjnych i osobami, które mogą uzyskać dostęp do kluczy kryptograficznych potrzebnych do odszyfrowania danych podczas ich przesyłania.

pokonanie tego ograniczenia jest możliwe dzięki szyfrowaniu End-to-End (E2EE), paradygmatowi komunikacji, w którym tylko komunikujące się strony końcowe – na przykład użytkownicy – mogą odszyfrować i odczytać wiadomości. Zaszyfrowane dane typu End-to-end są szyfrowane przed ich przesłaniem i pozostają szyfrowane do momentu ich otrzymania przez stronę końcową.

powody, dla których warto go używać

aby lepiej zrozumieć, w jaki sposób szyfrowanie end-to-end superseeds in-transit encryption pod względem odporności na podsłuchiwanie, wyobraźmy sobie następujące scenariusze.

  1. Załóżmy, że stronie trzeciej udaje się zainstalować własny certyfikat główny w zaufanym urzędzie certyfikacyjnym: takie działanie może teoretycznie być wykonane przez aktora Państwowego, służbę policji lub nawet złośliwego/uszkodzonego operatora Urzędu certyfikacyjnego. Każdy, kto jest w stanie to zrobić, może z powodzeniem przeprowadzić atak typu man-in-the-middle na samo połączenie TLS, podsłuchując rozmowę, a nawet manipulując nią. End-to-end szyfrowane dane są natywnie odporne na tego rodzaju ataki, ponieważ szyfrowanie nie jest wykonywane na poziomie serwera.
  2. szyfrowanie End-to-end może również zwiększyć poziom ochrony wśród procesów użytkownika wywołanych przez system operacyjny. Czy pamiętasz Ostatnie wady procesora o nazwie SPECTRE I MELTDOWN? Oba umożliwiły złośliwym stronom trzecim (takim jak nieuczciwy proces) odczytywanie danych z pamięci bez uzyskania do tego upoważnienia. Szyfrowanie End-to-end może uniknąć takiego scenariusza, o ile szyfrowanie jest wykonywane między procesami użytkownika (w przeciwieństwie do jądra), co zapobiega umieszczaniu niezaszyfrowanych danych w pamięci.

jak może nam pomóc

szyfrowanie End-to-end jest najbezpieczniejszą formą komunikacji, z której można korzystać w dzisiejszych czasach, ponieważ zapewnia, że tylko Ty i osoba, z którą się komunikujesz, mogą odczytać, co jest wysyłane, a nikt pomiędzy nimi, nawet usługa, która faktycznie wykonuje transmisję między rówieśnikami. Różne kompleksowe implementacje szyfrowania są już skuteczne w większości aplikacji i usług do przesyłania wiadomości (w tym Whatsapp, LINE, Telegram i tym podobne). W typowych scenariuszach „aplikacji komunikacyjnej” wiadomości są zabezpieczone zamkiem, a tylko nadawca i odbiorca mają specjalny klucz potrzebny do ich odblokowania i odczytania: dla dodatkowej ochrony każda wiadomość jest automatycznie wysyłana z własnym unikalnym zamkiem i kluczem.

jak go wdrożyć

szyfrowanie End-to-end może być używane do ochrony wszystkiego: od wiadomości czatu, plików, zdjęć, danych sensorycznych na urządzeniach IoT, stałych lub tymczasowych danych. Możemy wybrać, jakie dane chcemy zaszyfrować end-to-end. Na przykład możemy chcieć zachować łagodne informacje związane z aplikacją czatu (takie jak znaczniki czasu) w postaci zwykłego tekstu, ale zaszyfrować zawartość wiadomości od końca do końca.

  • każdy użytkownik ma prywatny klucz publiczny &, który oprogramowanie musi wygenerować na urządzeniu użytkownika podczas rejestracji lub przy następnym logowaniu.
  • klucz publiczny użytkownika jest publikowany w miejscu publicznym (takim jak usługa zarządzania kluczami oparta na REST): jest to wymagane, aby użytkownicy mogli znaleźć nawzajem klucze publiczne i móc szyfrować dane do siebie.
  • klucz prywatny użytkownika pozostaje na urządzeniu Użytkownika, chroniony przez macierzysty magazyn kluczy systemu operacyjnego (lub inne bezpieczne magazyny).
  • przed wysłaniem wiadomości czatu lub udostępnieniem dokumentu aplikacja szyfruje zawartość za pomocą klucza publicznego odbiorcy (po stronie klienta).

podsumowanie

nasza podróż przez różne paradygmaty szyfrowania jest zakończona: mamy szczerą nadzieję, że ten przegląd pomoże użytkownikom i administratorom systemów zwiększyć ich świadomość różnych rodzajów szyfrowania dostępnych obecnie.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.

lg