Konfiguracja
Rozważono zadanie klasyfikacji nadzorowanej z zestawem danych
, gdzie
reprezentuje cechy wejściowe, a
oznacza odpowiadające im etykiety klas dla problemu K-klasowego. Zestaw danych D został podzielony na czysty zestaw treningowy oraz zestaw testowy.
Celem jest zmodyfikowanie czystego zbioru treningowego poprzez wprowadzenie niewielkich, niezauważalnych perturbacji δ w celu stworzenia nienaukowalnego zbioru danych
, gdzie
+ δ. Perturbacja δ jest ograniczona przez
, co gwarantuje, że nie zmieni ona znacząco normalnej użyteczności danych. Głównym celem jest zakłócenie procesu uczenia poprzez zmuszenie modelu fθ, trenowanego na Du, do skupienia się na nieistotnych wzorcach wywołanych przez szum zamiast na istotnych cechach, co skutkuje słabą generalizacją na czystym zbiorze testowym:

Symulowanie środowiska blockchain
W celu instalacji narzędzi blockchain wykorzystuje się framework Hardhat do symulacji sieci Ethereum w środowisku lokalnym w celu wdrożenia inteligentnych kontraktów oraz testowania generowania przykładów nieuczalnych (Unlearnable Examples). Aby uruchomić lokalną sieć, inicjalizuje się symulowaną sieć blockchain z wieloma węzłami i kontami. Każdemu węzłowi przydzielane są zasoby, takie jak Ether, aby ułatwić symulacje transakcji. W celu opracowania inteligentnych kontraktów implementuje się je tak, aby dynamicznie zarządzały uprawnieniami użytkowników. Uprawnieni użytkownicy mogą uzyskiwać dostęp do czystych danych, podczas gdy użytkownicy nieuprawnieni są ograniczeni do dostępu do przykładów nieuczalnych. Najpierw należy skonfigurować środowisko programistyczne w oparciu o Node.js v16.x oraz Hardhat 2.8.4, a następnie użyć kompilatora Solidity 0.8.17, aby przeprowadzić kompilację i optymalizację inteligentnego kontraktu. Proces kompilacji jest wykonywany w wierszu poleceń za pomocą komendy npx hardhat compile, co pozwala na wygenerowanie artefaktów budowania zawierających ABI i kod bajtowy. Następnie wdraża się kontrakt w sieci testowej Sepolia poprzez uruchomienie skryptu wdrożeniowego npx hardhat run scripts/deploy.js --network sepolia, a następnie zapisuje się wynikowy adres kontraktu oraz skrót (hash) transakcji wdrożenia. W fazie testów wydajnościowych sekwencyjnie wykonuje się trzy główne testy: test kosztów transakcyjnych rejestruje zużycie gazu poprzez cykliczne wywoływanie metody grantAccess kontraktu; test przepustowości wykorzystuje narzędzie Artillery do symulowania żądań użytkowników przy stopniowo zwiększanym obciążeniu; przeprowadzane są również testowe i walidacyjne transakcje, w tym zapisywanie i odzyskiwanie danych, w celu zweryfikowania funkcjonalności inteligentnego kontraktu.
Konstrukcja użytkowników on-chain i mechanizmów uprawnień
Unikalne konta użytkowników są generowane przy użyciu portfeli blockchain (np. MetaMask), z których każdy składa się z klucza prywatnego i klucza publicznego. Implementacja prototypu wykorzystuje symulowane środowisko blockchain, w którym syntetyczne encje użytkowników przesyłają publicznie dostępne zestawy danych do zdecentralizowanego systemu, przechowując w rozproszonym rejestrze jedynie kryptograficzne wartości skrótu (hash). Zapewnia to integralność danych bez konieczności przechowywania samych danych on-chain, co byłoby nieefektywne i kosztowne. Właściwe dane są przechowywane off-chain, zazwyczaj z wykorzystaniem zdecentralizowanych systemów przechowywania, takich jak IPFS, co zapewnia efektywne zarządzanie danymi przy zachowaniu bezpieczeństwa i prywatności. W przypadku niezamiennych tokenów (NFT) i kontroli dostępu, w niniejszym badaniu zaimplementowano mechanizm precyzyjnej kontroli dostępu z wykorzystaniem NFT zgodnych ze standardem ERC-721. Każdy zestaw danych przykładów nieuczalnych (unlearnable examples) jest powiązany z unikalnym tokenId, który pełni rolę klucza dostępu do danych. Użytkownicy wnioskują o dostęp, przesyłając dowody Merkle'a (Merkle proofs). Dowody te weryfikują tożsamość użytkownika w bezpieczny, zdecentralizowany sposób. Po pomyślnej walidacji dowodu, kontrakt emituje unikalny NFT i przesyła go do portfela użytkownika. NFT ten reprezentuje prawo użytkownika do dostępu do danych powiązanych z konkretnym przykładem nieuczalnym. Wykorzystanie NFT gwarantuje, że tylko uprawnieni użytkownicy mogą uzyskać dostęp do danych w oparciu o zdecentralizowany, niezmienny zapis. Stanowi to kontrast do tradycyjnej kontroli dostępu opartej na rolach (RBAC), która zazwyczaj działa na poziomie grupy i może nie zapewniać ziarnistości niezbędnej w aplikacjach o wysokim poziomie bezpieczeństwa30.
Inteligentny kontrakt nieustannie weryfikuje uprawnienia dostępu za pomocą funkcji ownerOf, sprawdzając własność NFT, aby zapewnić, że tylko upoważnieni użytkownicy mają dostęp do oczyszczonych danych. Administratorzy mogą cofnąć dostęp poprzez zniszczenie NFT za pomocą funkcji revokeAccess, co zapewnia elastyczność w zarządzaniu dostępem użytkowników w czasie. Przepływ operacyjny składa się z czterech krytycznych kroków: (1) użytkownicy przesyłają żądania dostępu zawierające dowody Merkle'a; (2) kontrakt weryfikuje poprawność tych dowodów; (3) po pomyślnej walidacji kontrakt emituje odpowiedni NFT; (4) użytkownicy pobierają zaszyfrowane dane, korzystając z identyfikatora treści (CID) IPFS osadzonego w metadanych NFT. Wykorzystując NFT, osiągamy szereg korzyści w porównaniu do tradycyjnych mechanizmów kontroli dostępu, takich jak precyzyjne sterowanie uprawnieniami (na poziomie danych zamiast na poziomie grupy), lepsze możliwości audytu (niezmienialne zapisy on-chain) oraz przenaszalność uprawnień (transakcje na rynku NFT).
Kontrakty wielopodpisowe są implementowane w celu aktualizacji hasza korzenia drzewa Merkle'a, co zapobiega nieautoryzowanym manipulacjom danymi. System zawiera mechanizmy anty-Sybil poprzez powiązanie każdego zestawu danych z unikalnym tokenId, co gwarantuje, że złośliwi aktorzy nie mogą generować fałszywych tokenów w celu uzyskania dostępu do nieautoryzowanych danych. Jednostki UE są szyfrowane przy użyciu AES-256 przed przesłaniem do sieci InterPlanetary File System (IPFS). Hasze zaszyfrowanych danych są przechowywane on-chain, podczas gdy kompletne zestawy danych pozostają w IPFS, co redukuje narzut pamięciowy blockchaina. Hybrydowe podejście łączące przechowywanie on-chain i off-chain zapewnia równowagę między dostępnością danych a redukcją kosztów przechowywania, co jest powszechnym problemem w aplikacjach opartych na blockchainie.
Inteligentne kontrakty są wykorzystywane do dynamicznego zarządzania uprawnieniami użytkowników. Każdy użytkownik otrzymuje dostęp do oczyszczonych danych tylko wtedy, gdy posiada odpowiedni NFT, który służy jako token autoryzacyjny. Inteligentne kontrakty rejestrują każdy dostęp do danych w logach zdarzeń, zapewniając pełną identyfikowalność. Logi te są niezmienne i mogą zostać poddane audytowi, co zapewnia przejrzystość i odpowiedzialność. Inteligentny kontrakt wykorzystuje funkcję grantAccess do weryfikacji żądań dostępu. Kontrakt sprawdza, czy użytkownik posiada odpowiedni NFT i, w przypadku pozytywnej weryfikacji, przyznaje dostęp do żądanych danych. Każde zdarzenie dostępu jest zapisywane w blockchainie, co gwarantuje, że wszystkie czynności pobierania danych są weryfikowalne. Każde zdarzenie dostępu do danych jest rejestrowane w czasie rzeczywistym przez inteligentny kontrakt, który wyzwala zdarzenie AccessGranted. Zdarzenie to zawiera istotne informacje, takie jak adres portfela użytkownika, znacznik czasu dostępu oraz odpowiadający mu tokenId NFT. Dynamiczny charakter inteligentnych kontraktów umożliwia zarządzanie uprawnieniami w czasie rzeczywistym. Jest to szczególnie przydatne w aplikacjach zdecentralizowanych, w których kontrola dostępu musi być wysoce elastyczna i dostosowywalna do zmieniających się warunków.
Aby rozwiązać problemy z prywatnością w publicznych środowiskach blockchain, system przechowuje w blockchainie miniatury o niskiej rozdzielczości (np. 64 x 64 pikseli), natomiast oryginalne obrazy o wysokiej rozdzielczości są szyfrowane i przechowywane poza łańcuchem w IPFS. Tylko uprawnieni użytkownicy posiadający odpowiedni NFT mogą pobrać klucze deszyfrujące w celu uzyskania dostępu do danych o wysokiej rozdzielczości. Użytkownicy nieuprawnieni otrzymują wersje danych z perturbacjami DEM w czasie rzeczywistym, co gwarantuje brak dostępu do oryginalnych danych.
Generowanie perturbacji obrazu
Wczytaj zestawy danych CIFAR10, CIFAR100 oraz ImageNet. Obrazy w zestawach danych są jednolicie zmieniane pod kątem rozmiaru i konwertowane na tensory PyTorch, a tensor obrazu jest normalizowany z użyciem średniej i odchylenia standardowego. Zainicjuj losowy szum δ1, wykorzystując rozkład Gaussa do wygenerowania początkowej perturbacji. Losowy szum jest nakładany na każdy obraz x, a strata pomiędzy etykietą docelową a predykcją modelu jest obliczana na podstawie funkcji straty entropii krzyżowej. W zbiorze danych klasy C, dla próbki i, yi jest wartością etykiety docelowej, a pi jest prawdopodobieństwem predykcji modelu, co pozwala określić różnicę między rozkładem prawdopodobieństwa przewidzianym przez model a rzeczywistą etykietą, maksymalizując stratę w taki sposób, aby model generował błędne predykcje. Strata entropii krzyżowej wynosi:

Wpływ perturbacji obrazu na predykcję obliczaną zgodnie z funkcją straty; propagacja wsteczna aktualizuje perturbację, a zakres i wartość perturbacji są stale aktualizowane w wielu iteracjach. Dla współczynnika uczenia η wzór aktualizacji perturbacji jest następujący:

Generowanie perturbacji tekstu
Załaduj wstępnie wytrenowane modele BERT w celu generowania osadzeń tekstu (text embeddings). Do wyodrębniania cech z osadzeń tekstu wygenerowanych przez modele BERT wykorzystywana jest niestandardowa sieć TextFeatureExtractor, składająca się z dwóch bloków Transformera i warstwy w pełni połączonej. Wprowadź informacje o użytkowniku oraz znacznik czasu dostępu użytkownika do wstępnie wytrenowanego modelu BERT, a następnie dynamicznie wygeneruj szum tekstowy za pomocą spersonalizowanej sieci TextFeatureExtractor.
Obraz wejściowy I jest przekazywany do multimodalnego modelu Qwen2.5-VL-7B-Instruct. Kierowany przez ustrukturyzowany prompt, model generuje zwięzły opis tekstowy Tq. Wygenerowany tekst Tq zostaje wprowadzony do wstępnie wytrenowanego modelu językowego BERT-base-uncased. Poprzez prompty do przepisywania specyficzne dla danego zadania, system generuje tekst zmodyfikowany
, który zachowuje semantykę przy jednoczesnej zmianie sformułowania. Sieć TextFeatureExtractor mapuje zmodyfikowany tekst
na wysokowymiarowy wektor osadzenia semantycznego Eg.
Generowanie perturbacji wielocelowych
Aby zapewnić kompatybilność między osadzeniami tekstowymi a perturbacjami obrazu, dostosowujemy kształt osadzenia tekstu do wymiarów perturbacji obrazu. Niech ET i Eq reprezentują osadzenia tekstowe, a PL perturbację obrazu. Proces zmiany kształtu zapewnia, że ET i Eq zostaną przekształcone do tej samej wymiarowości co PL:
, gdzie C, H, W to wymiary PL. Definiujemy moduł fuzji oparty na mechanizmie uwagi, który łączy perturbacje osadzeń tekstowych i perturbacje obrazu, dynamicznie dostosowując perturbacje zgodnie z wagami uwagi tekstu. Fuzja jest następująca:

gdzie α jest dynamiczną korektą parametrów mechanizmu uwagi. δT to zakłócenie tekstu generowane przez Eq i ET. Aby zapobiec przeuczeniu, do procesu trenowania dodaje się człon regularyzacyjny. Członem regularyzacyjnym jest norma L2 osadzenia tekstu, która penalizuje perturbacje. Wielokryterialna funkcja straty łączy stratę entropii krzyżowej i perturbację fuzji, a wielokryterialna funkcja straty przedstawia się następująco:

Celami funkcji straty są:

gdzie λ jest współczynnikiem regularyzacji służącym do kontrolowania siły kary za perturbację w celu zapobiegania nadmiernym zaburzeniom lub przeuczeniu. W badaniach nad atakami adwersarialnymi ustalono, że
jest granicą perturbacji dostrzegalną dla ludzkiego oka. Zdefiniowano proces trenowania i oceny, obejmujący generowanie perturbacji, obliczanie funkcji straty, trenowanie modelu itp.
Eksperymenty porównawcze
Przeprowadzono kompleksową ocenę proponowanego Dynamicznego Szumu Minimalizującego Błąd (Dynamic Error-Minimizing Noise, DEM) w odniesieniu do trzech istniejących metod: Szumu Minimalizującego Błąd (Error-Minimizing Noise, EM), Transferowalnych Perturbacji Adversarialnych (Transferable Adversarial Perturbations, TAP) oraz Stabilnego Szumu Minimalizującego Błąd (Stable Error-Minimizing Noise, SEM). Metody te przetestowano na trzech zbiorach danych referencyjnych: CIFAR-10, CIFAR-100 oraz podzbiorze ImageNet, wykorzystując cztery powszechnie stosowane architektury sieci neuronowych: VGG-16, ResNet-18, ResNet-50 oraz DenseNet-121, aby zapewnić zróżnicowane warunki eksperymentalne.
Dodatkowo zbadaliśmy odporność tych metod, stosując modele odszumiania oparte na dyfuzji w celu usunięcia szumu obronnego i mierząc dokładność odszumionych przykładów na zbiorach testowych. Krok ten miał na celu ocenę zdolności każdej metody do przeciwstawiania się atakom odzyskiwania danych oraz utrzymania integralności prywatności danych w warunkach kontradyktoryjnych. Wyniki wskazują, że nasz model DEM przewyższa inne metody zarówno pod względem odporności, jak i dokładności we wszystkich zbiorach danych i architekturach, co demonstruje jego skuteczność jako struktury chroniącej prywatność.