Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.
Data publikacji: 02-02-2023 | Autor: | Michał Furmankiewicz |
Rozwój technologii to nie tylko nowe szanse, ale też potencjalny wzrost ryzyka kradzieży wrażliwych informacji. Confidential Computing, niezależnie w jakim środowisku jest realizowany, rozwiązuje podstawowy problem: jak chronić dane, kiedy prowadzimy na nich obliczenia. A jest on równie fundamentalny jak ochrona danych w trakcie składowania czy przesyłania poprzez symetryczne szyfrowanie.
Confidential computing (CC) jest trzecim, nieuchronnym podejściem do zabezpieczania danych w chmurze, które są chronione w czasie ich składowania, przesyłania i właśnie obliczeń. Najwięksi gracze na rynku procesorów budują rozwiązania zapewniające poufność i niezmienność obliczeń na poziomie sprzętu, a dostawcy chmury rozwijają platformę, ale też niezależne oprogramowanie, by otworzyć się na coraz bardziej ambitne projekty w obszarach danych o najwyższym poziomie tajności. Obietnica brzmi dobrze, ale jak to działa? Czy wystarczy „magiczny przycisk”, technologia w procesorze, oprogramowanie i już? Przed jakim typem ataku na obliczenia możemy się uchronić, stosując ten mechanizm? I czy faktycznie warto, i kiedy inwestować w rozwój oprogramowania, które może skorzystać z takich możliwości?
> Charakterystyka CC
Dziś potrafimy zidentyfikować trzy poziomy poufności. Najprościej je przedstawić, używając pojęcia zwykłej maszyny wirtualnej, która działa w środowisku chmury Microsoft Azure.
Intel SGX otwiera menu nowych możliwości, wymaga jednak zmiany architektury rozwiązania oraz innego podejścia do pisania oprogramowania. Microsoft rozpoczął implementację tego typu rozwiązań w chmurze, ale potrzeba całego ekosystemu partnerów działającego wspólnie, by faktycznie umożliwić realizację tego celu. Powstało więc konsorcjum firm (Confidential Computing Consortium – Open Source Community, confidentialcomputing.io), które wypracowuje standardy techniczne, standardy oprogramowania, wzorcowe architektury dla rozwiązań, ale też inwestuje w rozwój projektów opensource’owych, których celem jest adopcja technologii przez różne platformy dostarczania rozwiązań, nie tylko chmurowe. Upraszczając, zestaw technologii, praktyk i rozwiązań, który powstanie w ramach tej inicjatywy, na pewno pozwoli różnym klientom w różnych branżach łatwiej przystosować podejście CC do większej liczby technicznych przypadków. Niewątpliwie umożliwi to również szybsze dostarczanie CC do rozwiązań, które już dziś funkcjonują, ale jeszcze nie wykorzystują chmury obliczeniowej ze względu na ryzyka czy obawy o poufność i niezmienność obliczeń wymaganych przez wewnętrzne działy bezpieczeństwa.
> Technologie oparte na CC
Sama technologia otwiera spektrum nowych możliwości w kontekście rozwiązań dla jednego klienta, ale również w modelach współpracy pomiędzy wieloma podmiotami. Modele współpracy wydają się niezwykle ciekawe.
Po pierwsze, powstał otwarty model pracy przy adaptacji aplikacji – CCF Documentation (bit.ly/3wnAGtr). Pozwala on zidentyfikować obszary aplikacji, które przetwarzają dane o wysokiej wrażliwości i pomagają dopasować technologię do potrzeb. Zapewne w wielu rozwiązaniach można wykorzystać kilka metod jednocześnie, dbając z jednej strony o poufność, a z drugiej – o koszty adaptacji. Uzupełnieniem tego są otwarte biblioteki, takie jak choćby Open Enclave SDK, Mystikos Library OS czy ONNX Runtime. Dzięki nim nie tylko łatwiej pisać kod, który ma korzystać z enklaw, ale również wykorzystywać CC w nowych scenariuszach. ONNX (onnxruntime.ai) jest bardzo ciekawy – pozwala na stosowanie Confidential Computing w świecie uczenia maszynowego („An Open Enclave port of the ONNX inference server with data encryption and attestation capabilities to enable confidential inference on Azure Confidential Computing”, github.com/microsoft/onnx-server-openenclave). Mówimy zatem o możliwości trenowania modelu tak, by niemożliwy był atak na same obliczenia, które prowadzą do powstania już wytrenowanego modelu. ONNX jest modelem używanym przez wiele firm i technologii w całej gamie scenariuszy. Zadbanie o niezaprzeczalne wyniki obliczeń jest kluczowe dla zaufania do działania modeli, jeśli na tej podstawie są podejmowane najważniejsze decyzje dla firmy.
Kolejnym ciekawym rozwiązaniem wydaje się Azure Confidential Ledger, czyli zdecentralizowane rozwiązanie księgi głównej, gdzie spójność danych zapewnia blockchain, ale operacje w samym blockchainie wykorzystują właśnie technologię CC, by obliczenia były niezaprzeczalne.
Produktów, które już teraz wykorzystują możliwości CC, jest więcej (przykłady można znaleźć tutaj: Confidential Computing on Azure, bit.ly/3J5lhFB). Popatrzymy zatem na scenariusze, które są możliwe.
[...]
Autor jest Program Managerem w globalnym zespole odpowiedzialnym za rozwój regionów chmury Microsoft Azure. Obecnie zajmuje się nowo powstającym regionem PolandCentral.
Artykuł pochodzi z miesięcznika: IT Professional
Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.
Transmisje online zapewnia: StreamOnline