Nierozróżnialność (ang. indistinguishability obfuscation) była czymś, co do niedawna naukowcy uważali za niewykonalne. Wiemy o tej koncepcji od 1996 roku, ale dopiero w 2001 roku Boaz Barak z Uniwersytetu Harvarda zaproponował ją, udowadniając, że istnieje. Jednak dopiero w 2020 roku pojawiła się propozycja, która mogłaby zadziałać. Przyjrzyjmy się jej.
Co to jest obfuskacja?
Jest to zabezpieczenie, które pomaga ukryć dane i działania przed wzrokiem osób, które chciałyby wyrządzić szkodę w tym zakresie. Bardzo często obfuscatorów używają programiści, którzy chcą, aby ich kod został "okaleczony" tak, aby nie był czytelny dla ludzkiego oka. Na przykład zmiana nazwy klas na ciąg znaków chińskich - łatwa dla komputera, ale trudna do odczytania przez człowieka. Przez wiele lat uważano, że doskonała obfuskacja jest celem nieosiągalnym i prawdopodobnie nigdy nie zostanie osiągnięta.
Czym jest zatajanie nierozróżnialności?
W tym miejscu dochodzimy wreszcie do kryptografii. Cechą charakterystyczną tej metody maskowania oprogramowania jest to, że po zasłonięciu dwóch programów, które obliczają tę samą funkcję matematyczną, powstają programy, których nie da się odróżnić od siebie. Jest to koncepcja, która przez długi czas wymykała się implementacji, do tego stopnia, że wiele osób uważało ją za niewykonalną, głównie ze względu na jej właściwości teoretyczne, gdzie iO jest "najlepszą możliwą" obfuskacją, co oznacza, że wszystko, co można ukryć za pomocą jakiejkolwiek obfuskacji, można ukryć za pomocą iO, i gdzie iO można wykorzystać do skonstruowania niemal całej gamy prymitywów kryptograficznych.
Konstrukcje te nie były jednak bezpieczne, a przez to nie nadawały się do celu. Konstrukcja iO o dającym się udowodnić bezpieczeństwie została zaproponowana przez Garg et al. w 2013 roku, ale założenie to zostało później unieważnione. Konstrukcja ta opierała się na mapach wieloliniowych. Następnie w 2016 roku Jain, Lin i Sahai zaczęli budować iO w oparciu o tę samą zasadę. Początkowo były to mapy wieloliniowe do stopnia 30, a stopniowo stopnie zmniejszono do stopnia 3. Jednak nawet to było zbyt wiele dla bezpiecznego iO. W końcu osiągnięto kompromis i stworzono coś w rodzaju stopnia 2,5, w którym nie wszystko jest pokryte.
Wskazówka: Prawdopodobnie posiadasz już tożsamość cyfrową, ale jak będzie ona ewoluować?
Wniosek
Do praktycznego zastosowania tego rozwiązania jest jeszcze daleko, ale jest całkiem możliwe, że za kilka lat będzie to powszechny materiał do nauki kryptografii.
Źródło: quantamagazine.org