Centrum badawcze firmy IBM udostÄpniĹo na licencji GPL bibliotekÄ HElib sĹuĹźÄ cÄ do szyfrowania homomorficznego ? rewolucyjnego sposobu zabezpieczania zbiorĂłw danych, ktĂłry pozwala przeprowadzaÄ operacje bezpoĹrednio na szyfrogramach.
Szyfrowanie homomorficzne to rodzaj zabezpieczania informacji, w ktĂłrym moĹźna operowaÄ na szyfrogramie (zaszyfrowanych danych) bez koniecznoĹci przeksztaĹcania go do tekstu jawnego. Dlaczego jest ono uznawane za rewolucyjne?
WyobraĹşmy sobie sytuacjÄ, w ktĂłrej musimy ukrywaÄ zawartoĹÄÂ poszczegĂłlnych rekordĂłw bazy danych, aby nie byĹ ich w stanie odczytaÄ potencjalny intruz ani nawet jej administrator. Z drugiej strony chcemy, aby przetwarzanie danych odbywaĹo siÄÂ moĹźliwie blisko miejsca ich skĹadowania, aby nie traciÄ czasu na przesyĹanie informacji miÄdzy bazÄ a Ĺrodowiskiem obliczeniowym.
Problem
Wspomniane wyĹźej zaĹoĹźenia moĹźna by zrealizowaÄ korzystajÄ c z szyfrowania symetrycznego lub asymetrycznego, jednak pod warunkiem, Ĺźe system przetwarzajÄ cy i baza danych dziaĹajÄ w obrÄbie tej samej infrastruktury, a poza tym obdarzone sÄ zaufaniem, ktĂłre wynika z wiary w dobre intencje operatorĂłw tych systemĂłw i producentĂłw sprzÄtu.
PrzyczynÄ problemu jest tu w istocie brak moĹźliwoĹci przetwarzania danych w niezaufanym miejscu, np. w chmurze obliczeniowej, bazie danych czy w innym komponencie, w stosunku do ktĂłrego nie ma pewnoĹci co do ochrony integralnoĹci i poufnoĹci informacji.
W ostatecznoĹci nawet elementy urzÄ dzeĹ elektronicznych (procesory gĹĂłwne komputerĂłw, procesory kontrolerĂłw napÄdĂłw dyskowych i procesory przetwarzajÄ ce grafikÄ) nie mogÄ byÄ uznane za urzÄ dzenia w peĹni bezpieczne, poniewaĹź juĹź na etapie produkcji moĹźna w nich umieĹciÄ backdoora. Co to w praktyce oznacza?
Nie ma dziĹÂ chmur obliczeniowych
gwarantujÄ cych poufnoĹÄ.
MoĹźna wybraÄ albo chmurÄ, ktĂłra wykona obliczenia, ale wymaga dostÄpu do danych w postaci jawnej, albo takÄ , ktĂłra pozwoli przechowywaÄ dane w formie zaszyfrowanej, lecz nie bÄdzie potrafiĹa przeprowadzaÄ na nich kalkulacji.
Przyznajmy, Ĺźe jest to spore ograniczenie, ktĂłre moĹźe byÄ hamulcem niektĂłrych przedsiÄwziÄÄ, a w konsekwencji mieÄ ujemny wpĹyw na rozwĂłj sektora nowych technologii jako caĹoĹci. NiektĂłrzy klienci nie mogÄ Â sobie pozwoliÄ na to, aby obdarzyÄ zaufaniem zewnÄtrznego operatora, przekazujÄ c mu wszystkie swoje dane, jednak potrzebujÄ dodatkowej infrastruktury, ktĂłrej sami nie posiadajÄ .
FHE
Przez lata badacze zajmujÄ cy siÄÂ kryptografiÄ prĂłbowali rozwiÄ zaÄ opisany problem i skonstruowaÄ kryptosystem bazujÄ cy na algorytmach pozwalajÄ cych operowaÄ na zaszyfrowanych danych bez znajomoĹci ich tekstu jawnego. W roku 2009 Craig Gentry na sympozjum ACM dotyczÄ cym teorii obliczeĹ przedstawiĹ pracÄ zatytuĹowanÄ „Fully Homomorphic Encryption Using Ideal Lattices”. W ramach prac wspieranych przez Centrum Badawcze im. Thomasa J. Watsona (IBM) i Uniwersytet Stanforda udaĹo mu siÄÂ stworzyÄ pierwszÄ dziaĹajÄ cÄ implementacjÄ w peĹni homomorficznego algorytmu szyfrujÄ cego (ang. Fully Homomorphic Encryption, FHE). Aby algorytm zasĹuĹźyĹ na miano w peĹni homomorficznego, musi obsĹugiwaÄ zarĂłwno operacje dodawania jak i mnoĹźenia bez koniecznoĹci „otwierania” szyfrogramu.
Zaproponowany przez badacza system kryptograficzny bazuje na kryptografii opartej na kratach (ang. lattices) ? matematycznych strukturach, ktĂłre da siÄ opisaÄ algebraicznie lub jako czÄĹciowe porzÄ dki, a dokĹadniej na kratach doskonaĹych (ang. ideal lattices).
HElib
GĹĂłwnym problemem omawianej implementacji FHE byĹa i wciÄ Ĺź jest wydajnoĹÄ. W pracach nad usprawnieniem dzieĹa Gentry’ego i poprawÄ tego stanu rzeczy pracujÄ teraz Victor Shoup i Shai Halevi ze wspomnianego oĹrodka badawczego firmy IBM. Postanowili oni podzieliÄ siÄÂ kodem ĹşrĂłdĹowym ze spoĹecznoĹciÄ i napisanÄ w jÄzyku C++ bibliotekÄ szyfrujÄ cÄ HElib wydali jako wolne oprogramowanie (na warunkach okreĹlonych licencjÄ GPL). KaĹźdy zainteresowany moĹźe jÄ pobraÄ, przeanalizowaÄ, uĹźyÄ jej, a co waĹźniejsze wprowadziÄ poprawki i usprawnienia.
Szyfrowanie homomorficzne zĹote czasy ma jeszcze przed sobÄ , a prawdziwa rewolucja zwiÄ zana z zabezpieczaniem danych tÄ metodÄ nadejdzie, gdy tylko pojawiÄ siÄÂ sprzÄtowe szyfratory i/lub odpowiednie instrukcje procesorĂłw, ktĂłre przeprowadzÄ Â najbardziej Ĺźmudne obliczenia. RĂłwnieĹź w samej implementacji jest jeszcze trochÄ miejsca na optymalizacje pod wzglÄdem czasu obliczeĹ.
Konsekwencje
Upowszechnienie homomorficznego szyfrowania danych pozwoli uniezaleĹźniÄ algorytmy szyfrujÄ ce od sprzÄtu, a tym samym tworzyÄ bezpieczne mechanizmy przetwarzania w chmurze. Oznacza to istotne zwiÄkszenie wolnoĹci w domenie zabezpieczania informacji, w tym ochrony prywatnoĹci. Warto wspomnieÄ, Ĺźe oĹrodki badawcze duĹźych koncernĂłw z branĹźy IT pracujÄ juĹź nad praktycznym wykorzystaniem szyfrowania homomorficznego do obliczeĹ chmurowych.
Poza chmurami obliczeniowymi FHE moĹźne znaleĹşÄ zastosowanie rĂłwnieĹź w gĹosowaniu elektronicznym (ang. e-voting), eliminujÄ c problem niezdefiniowanego poziomu bezpieczeĹstwa komputerĂłw wyborczych czy braku gwarancji anonimowoĹci (w przypadku gĹosowania przez Internet). W praktyce rozwiÄ zana zostanie (na poziomie technicznym) kwestia weryfikacji przebiegu wyborĂłw z gĹosowaniem elektronicznym bez pogwaĹcenia jego tajnoĹci.
ĹšrĂłdĹo: https://badsector.pl/w-praktyce/wiadomosci/2013/05/nadciaga-rewolucja-w-kryptografii.90.html
Biblioteka HElib: https://github.com/shaih/HElib