Elektroda.pl
Elektroda.pl
X
Servizza
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Nadchodzi nowa era połączeń szyfrowanych

Natsuki Kuga 14 Lip 2015 10:47 1887 1
  • Nadchodzi nowa era połączeń szyfrowanych


    Jak powszechnie wiadomo, większość obecnych witryn wykorzystuje połączenia szyfrowane, by podnieść bezpieczeństwo przesyłu danych pomiędzy użytkownikiem a serwerem. W większości wypadków używa się szyfrowania asymetrycznego. W skrócie mówiąc, nadawca szyfruje wiadomość i przesyła ją do odbiorcy, dodatkowo bezpiecznym kanałem przesyła klucz, którym będzie można odszyfrować przekaz. Taki sposób przekazywania informacji już niedługo może ulec zmianie. Od 2011 roku Raluca Ada Popa wraz ze swoim zespołem pracują nad projektem CryptDB, który pozwolił by na przesyłanie i późniejszy odczyt zaszyfrowanych informacji bez przymusu odszyfrowywania ich.

    CryptDB korzysta z kolekcji odpowiednio spreparowanych schematów współpracujących z językiem SQL i następnie operuje nad zaszyfowanymi danymi przy pomocy zapytań w tymże języku. Algorytm potrafi powiązać klucze deszyfrujące do haseł użytkowników, więc do danych można dostać się tylko wtedy, kiedy zna się któreś z haseł. Wobec tego, administrator bazy danych nie ma dostępu zaszyfrowanych plików. Nawet jeśli ktoś włamałby się na serwer, napastnik nie byłby w stanie odszyfrować bazy, dopóki jeden z użytkowników nie będzie zalogowany (wtedy część danych należąca do tej osoby może zostać przechwycona, jednak włamywacz nadal nie uzyska dostępu do całej bazy). Jest to dobre rozwiązanie dla tych, którzy np. używają hostingów trzymających dane w chmurze. CryptDB nawet po otworzeniu bazy nie pozostawia w pamięci RAM odszyfrowanych danych, więc jeśli serwer zostałby skompromitowany, atakujący będzie w stanie wyciągnąć z RAMu tylko ciąg zaszyfrowanych znaków.

    Celem, do którego dążą eksperci od bezpieczeństwa sieciowego, jest wprowadzenie szyfrowania homomorficznego. Oznacza to dokładnie tyle, że wszystkie operacje wykonywane przez sieć byłyby zaszyfrowane i również w takiej postaci przetwarzane przez maszyny. Jedynym przypadkiem, kiedy musiałyby być one odszyfrowane, to przekazanie wyników użytkownikowi maszyny. Nie wykonywałby jednak tego serwer przetrzymujący dane, a jakaś aplikacja zewnętrzna, by zwiększyć bezpieczeństwo.

    Pierwszy system takiego szyfrowania został stworzony w 2009 roku przez kryptografa Craiga Centry z IBM. W 2010, wraz Shaiem Halevi stworzył on działającą implementację algorytmu. Pojawiły się jednak problemy z wydajnością - algorytm okazał się zbyt wolny w stosunku do mocy obliczeniowej ówczesnych komputerów. Nie był on więc praktyczny, ponieważ jak twierdzi Popa, obliczenia dokonywały się znacznie wolniej w stosunku do istniejących rozwiązań, więc wynalazek nie był wykorzystywany przez swoją czasochłonność.





    By przyspieszyć obliczenia, spróbowano stworzyć kompromis pomiędzy funkcjonalnością a zapewnianym bezpieczeństwem. Obecnie CryptDB posiada sześć podstawowych funkcji (z języka SQL): dodawanie, mnożenie, wyznaczanie większej wartości, sprawdzanie, czy zachodzi równość, wyszukiwanie danych oraz zagnieżdżanie w sobie wyrażeń. Jak uważa Popa, już z takim zestawem funkcji można stworzyć ciekawe i funkcjonalne aplikacje. obsługujące bazę danych. Jej grupa zmierzyła również wydajność operacji na spreparowanej bazie w porównaniu do zwykłej bazy. Spadek wydajności wahał się od 14 do 26 procent, w zależności od użytej aplikacji. W przypadku, gdy wszystkie dane są zaszyfrowane, obliczenia przebiegają dość wolno. Jeśli zaszyfruje się tylko te wrażliwsze, można zwiększyć wydajność o 3-4 procent.

    Drugim kompromisem mającym zwiększyć szybkość działania, jest ujawnianie ułamka informacji o danych podczas wykonywania niektórych operacji. Informacje o danych, jakie posiada serwer przechowujące bazę, to np. numeracja wpisów, który element jest najmniejszy (jednak nie zna jego wartości) - otrzymuje tylko te informacje, które są potrzebne do uszeregowania wpisów.

    Niektóre zastosowania, w których już używa się CryptDB, to klient Encrypted Big Query stworzony przez Google lub system SEED (wyszukiwanie wpisów w zaszyfrowanych danych) zaimplementowany przez SAP. Niektóre firmy zaczynają wdrażać go w swoich bazach Oracle, Laboratorium Lincoln dodało go do swojego systemu D4M Accumulo NoSQL.

    W 2014 roku, Popa używając platformy Mylar, zaczęła wprowadzać implementację nowego algorytmu do aplikacji sieciowych (niekoniecznie obsługujących bazy danych). Platforma ta pozwoliła na wyszukiwanie fraz w zaszyfrowanych dokumentach, nawet, jeśli były szyfrowane przy użyciu różnych kluczy. Dodatkowo, świadczyła autentyczny kod po stronie użytkownika, nawet jeśli serwer przechowujący dane był zainfekowany. Mylar został wdrożony jako część aplikacji medycznej w szpitalu Newton-Wellesley w Bostonie. Osadzenie sześciu aplikacji w tym środowisku wymagało zaledwie około 35 linijek kodu, a spadek wydajności wyniósł około 17 procent. Wysłanie wiadomości poprzez system chat zajęło tylko o 50 milisekund więcej. Popa zwraca również uwagę, że tak zabezpieczone dane są bezpieczne przed inwigilacją służb. Jeśli służby, prowadząc dowodzenie, uzyskałyby nasze szyfrowane dane, nie byłyby ich w stanie odczytać, dopóki oskarżony nie podałby hasła dostępu (to zwiększyłoby możliwości dokonywania przestępstw komputerowych, więc algorytm nie ma tylko dobrych stron..). Kod platformy Mylar jest dostępny online, jednak nie jest obecnie zarządzany. Został doprowadzony jedynie do takiej postaci, by można go nazwać "przyzwoitym".

    W lipcu Popa powróci do Stanów Zjednoczonych w celu stworzenia startupu o nazwie Prevail na Uniwersytecie Kalifornijskim. W ramach projektu, platforma Mylar będzie przebudowywana , by pasować do różnych typów aplikacji - w przyszłości może być wykorzystana jako realny produkt.

    Drugim algorytmem obok CryptoDB jest ZeroDB. Został on stworzony przez grupę Silicon Valley w marcu tego roku. W porównaniu do tego pierwszego, ZeroDB nie ujawnia serwerowi żadnych informacji o strukturze plików przez niego przechowywanych. Wynika to z tego, że na serwer nie są przesyłane żadne klucze deszyfujące, a ciężar wszystkich obliczeń (szyfrowania, deszyfrowania, kompresji) zrzucany jest na barki komputerów klienckich. Twórcy tłumaczą swoje rozwiązanie zwiększonym bezpieczeństwem w porównaniu do CryptDB: jeśli osoba trzecia uzyska dostęp do pliku bazy, nie będzie miała żadnej możliwości uzyskania klucza do deszyfracji danych. Zasada działania ZeroDB również jest odrobinę inna: podczas dostępu do danych zostają one rozszyfrowane, jednak cały transfer sieciowy, jak i plik w chmurze nadal zostają zaszyfrowane. Według Mikhaila Egorova, współzałożyciela projektu, bezpieczeństwo pozostaje na wysokim poziomie, jednak komputer nawiązuje większą liczbę połączeń sieciowych. Wierzy on również, że przeniesienie obliczeń z serwera na komputer klienta pozwoli uzyskać jeszcze większą wydajność w porównaniu do CryptDB (co brzmi dość dziwnie, ponieważ dobre serwery mają np. więcej niż 1 procesor bądź więcej pamięci operacyjnej niż przeciętny domowy pecet). Niektóre firmy rozpoczęły już współpracę z algorytmem w postaci startupu. Głównie są to firmy w sektorze zdrowia, które pracują z kodem dostarczonym przez twórców (nie ma na razie darmowej, powszechnie dostępnej implementacji algorytmu). Oficjalny projekt ma ruszyć około sierpnia.

    Według przewidywań, model biznesowy ZeroDB może działać w następujący sposób: zaszyfrowane dane mogą być przekazywane dostawcom usług SaaS, korzystającym z technologii nazwanej ponownym szyfrowaniem proxy bezpośrednio poprzez chmurę. Wilkison tłumaczy następująco swoją wizję: jeśli mamy zaszyfrowaną bazę danych swoim kluczem prywatnym, trzymamy ją w chmurze i chcemy wymienić się danymi z Salesforce, możemy poprosić o ich klucz publiczny. Wtedy, używając naszego i ich klucza, tworzymy tzw. klucz przekształcenia. Następnie wysyłamy go do chmury. To będzie nasz klucz, którym będziemy mogli zastosować tę transformację na zaszyfrowanych danych. W ten sposób zarówno my, jak i Salesforce będziemy mogli odszyfrować dane własnymi kluczami, nie ujawniając ich sobie nawzajem. Jak przyznaje Egorov, pomysł nie jest do końca nowy. Nowością w tym projekcie jest jedynie implementacja od strony kodu, ponieważ podstawy algorytmiczne ZeroDB istniały już wcześniej. Obecnie rozwiązanie to konkuruje wraz z innymi podobnymi, by dostać się do szerszego grona odbiorców i znaleźć zastosowania komercyjne.

    Źródło:
    http://www.zdnet.com/article/encryptions-holy-grail-is-getting-closer-one-way-or-another/


    Fajne! Ranking DIY
  • Servizza
  • #2 14 Lip 2015 13:38
    freebsd
    Poziom 34  

    Temat jest dosyć istotny. Z jednej strony zabezpiecza się dane w razie dostępu osób z zewnątrz. Bardziej jednak istotne jest zabezpieczenie przed dostępem osób z wewnątrz - administratorów, obsługi IT, nieuczciwych pracowników. Większość problemów występuje "od środka" firmy.
    Ten sam problem dotyczy poczty elektronicznej: czy dobre jest, by administratorzy mogli czytać pocztę kadr, księgowości, zarządu, prezesa?