$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Einrichtung
Wir haben eine überwachte Klassifizierungsaufgabe mit einem Datensatz
betrachtet, wobei
die Eingabemerkmale dargestellt und
die entsprechenden Klassenbeschriftungen für ein K-Klassenproblem angegeben werden. Der Datensatz D wird in einen sauberen Trainingsdatensatz und einen Testdatensatz aufgeteilt.
Ziel ist es, den sauberen Trainingsdatensatz zu modifizieren, indem kleine, nicht wahrnehmbare Störungen eingeführt δ ein nicht lernbarer Datensatz
erstellt wird, bei dem
+ δ. Die Störung δ wird durch
begrenzt, um sicherzustellen, dass sie den normalen Nutzen der Daten nicht wesentlich verändert. Das Hauptziel besteht darin, das Lernen zu stören, indem das auf Du trainierte Modell fθ gezwungen wird, sich auf irrelevante Muster zu konzentrieren, die durch das Rauschen induziert werden, anstatt auf die aussagekräftigen Merkmale, was zu einer schlechten Generalisierung auf einem sauberen Testdatensatz führt:

Simulieren einer Blockchain-Umgebung
Um Blockchain-Tools zu installieren, wird das Hardhat-Framework verwendet, um ein Ethereum-Netzwerk in einer lokalen Umgebung zu simulieren, um Smart Contracts bereitzustellen und die Generierung von nicht lernbaren Beispielen zu testen. Um ein lokales Netzwerk zu starten, wird ein simuliertes Blockchain-Netzwerk mit mehreren Knoten und Konten initialisiert. Jedem Knoten werden Ressourcen wie Ether zugewiesen, um Transaktionssimulationen zu erleichtern. Um Smart Contracts zu entwickeln, werden sie implementiert, um Benutzerberechtigungen dynamisch zu verwalten. Autorisierte Benutzer können auf saubere Daten zugreifen, während nicht autorisierte Benutzer auf nicht erlernbare Beispiele zugreifen können. Konfigurieren Sie zunächst eine Entwicklungsumgebung, die auf Node.js v16.x und Hardhat 2.8.4 basiert, und verwenden Sie den Solidity 0.8.17-Compiler, um die Kompilierung und Optimierung des Smart Contracts abzuschließen. Der Kompilierungsprozess wird von der Befehlszeile mit npx hardhat compile ausgeführt, um Build-Artefakte zu generieren, die die ABI und den Bytecode enthalten. Stellen Sie anschließend den Vertrag im Sepolia-Testnetzwerk bereit, indem Sie das Bereitstellungsskript npx hardhat run scripts/deploy.js --network sepolia ausführen und die Adresse des Ausgabevertrags und den Hash der Bereitstellungstransaktion aufzeichnen. Während der Leistungstestphase werden drei Kerntests nacheinander ausgeführt: Der Transaktionskostentest zeichnet den Gasverbrauch auf, indem zyklisch die grantAccess-Methode des Vertrags aufgerufen wird. Beim Durchsatztest wird das Artillery-Tool verwendet, um Benutzeranforderungen mit inkrementell steigender Last zu simulieren. Test- und Validierungstransaktionen, einschließlich Datenspeicherung und -abruf, werden durchgeführt, um die Funktionalität des Smart Contracts zu validieren.
Aufbau von On-Chain-Benutzern und Berechtigungsmechanismen
Einzigartige Benutzerkonten werden mithilfe von Blockchain-Wallets (z. B. MetaMask) generiert, die jeweils aus einem privaten Schlüssel und einem öffentlichen Schlüssel bestehen. Die Prototyp-Implementierung verwendet eine simulierte Blockchain-Umgebung, in der synthetische Benutzerentitäten öffentlich zugängliche Datensätze in das dezentrale System hochladen und nur kryptografische Hash-Werte im verteilten Ledger speichern. Dies gewährleistet die Datenintegrität, ohne die eigentlichen Daten in der Kette zu speichern, was ineffizient und kostspielig wäre. Die eigentlichen Daten werden off-chain gespeichert, in der Regel unter Verwendung dezentraler Speichersysteme wie IPFS, um ein effizientes Datenmanagement bei gleichzeitiger Wahrung von Sicherheit und Datenschutz zu gewährleisten. Für nicht-fungible Token (NFTs) und Zugangskontrolle wird in dieser Studie ein feinkörniger Zugangskontrollmechanismus unter Verwendung von NFTs implementiert, die dem ERC-721-Standard entsprechen. Jedes Dataset mit nicht erlernbaren Beispielen ist mit einer eindeutigen tokenId verknüpft, die als Schlüssel für den Zugriff auf die Daten fungiert. Benutzer beantragen den Zugang, indem sie Merkle-Proofs einreichen. Diese Nachweise verifizieren die Identität des Nutzers auf sichere, dezentrale Weise. Nach erfolgreicher Validierung des Nachweises prägt der Vertrag ein einzigartiges NFT und überträgt es auf die Wallet des Benutzers. Dieses NFT stellt das Recht des Nutzers dar, auf die Daten zuzugreifen, die mit diesem bestimmten nicht erlernbaren Beispiel verbunden sind. Die Verwendung von NFTs stellt sicher, dass nur autorisierte Benutzer auf die Daten zugreifen können, basierend auf einem dezentralen, unveränderlichen Datensatz. Dies steht im Gegensatz zur herkömmlichen rollenbasierten Zugriffskontrolle (Role-Based Access Control, RBAC), die in der Regel auf Gruppenebene arbeitet und möglicherweise nicht die für Hochsicherheitsanwendungen erforderliche Granularität bietet30.
Der Smart Contract überprüft kontinuierlich die Zugriffsberechtigungen über die ownerOf-Funktion und überprüft die Eigentümerschaft des NFT, um sicherzustellen, dass nur autorisierte Benutzer auf die sauberen Daten zugreifen können. Administratoren können den Zugriff widerrufen, indem sie das NFT über die revokeAccess-Funktion zerstören, um eine flexible Verwaltung des Benutzerzugriffs im Laufe der Zeit zu gewährleisten. Der betriebliche Workflow besteht aus vier kritischen Schritten: (1) Benutzer reichen Zugriffsanfragen mit Merkle-Proofs ein; (2) der Vertrag die Gültigkeit dieser Nachweise überprüft; (3) Nach erfolgreicher Validierung prägt der Vertrag das entsprechende NFT; (4) Nutzer rufen verschlüsselte Daten unter Verwendung des IPFS Content Identifier (CID) ab, der in die Metadaten des NFT eingebettet ist. Durch die Nutzung von NFTs erzielen wir mehrere Vorteile gegenüber herkömmlichen Zugangskontrollmechanismen, wie z. B. eine fein abgestufte Berechtigungskontrolle (Datenebene vs. Gruppenebene), eine bessere Audit-Fähigkeit (unveränderliche On-Chain-Datensätze) und die Übertragbarkeit von Berechtigungen (NFT-Marktplatztransaktionen).
Multi-Signatur-Verträge werden implementiert, um den Merkle-Root-Hash zu aktualisieren und so eine unbefugte Manipulation von Daten zu verhindern. Das System integriert Anti-Sybil-Mechanismen, indem es jeden Datensatz an eine eindeutige tokenId bindet und so sicherstellt, dass böswillige Akteure keine betrügerischen Token generieren können, um auf nicht autorisierte Daten zuzugreifen. Die UEs werden mit AES-256 verschlüsselt, bevor sie in das IPFS-Netzwerk (InterPlanetary File System) hochgeladen werden. Die verschlüsselten Daten-Hashes werden in der Kette gespeichert, während die vollständigen Datensätze auf IPFS verbleiben, was den Aufwand für die Blockchain-Speicherung reduziert. Der hybride Ansatz der Kombination von On-Chain- und Off-Chain-Speicher schafft ein Gleichgewicht zwischen der Sicherstellung der Datenverfügbarkeit und der Reduzierung der Speicherkosten, ein häufiges Anliegen bei Blockchain-basierten Anwendungen.
Smart Contracts werden eingesetzt, um Benutzerberechtigungen dynamisch zu verwalten. Jeder Benutzer erhält nur dann Zugriff auf saubere Daten, wenn er über das entsprechende NFT verfügt, das als Autorisierungstoken dient. Smart Contracts protokollieren alle Datenzugriffe in Ereignisprotokollen und bieten so eine vollständige Rückverfolgbarkeit. Diese Protokolle sind unveränderlich und können überprüft werden, was Transparenz und Verantwortlichkeit bietet. Der Smart Contract verwendet die grantAccess-Funktion, um Zugriffsanfragen zu validieren. Der Vertrag prüft, ob der Nutzer über das entsprechende NFT verfügt und gewährt gegebenenfalls Zugriff auf die angeforderten Daten. Jedes Zugriffsereignis wird in der Blockchain aufgezeichnet, wodurch sichergestellt wird, dass alle Datenabrufaktivitäten überprüfbar sind. Jedes Datenzugriffsereignis wird in Echtzeit vom Smart Contract protokolliert, wodurch ein AccessGranted-Ereignis ausgelöst wird. Dieses Ereignis enthält wichtige Informationen wie die Wallet-Adresse des Nutzers, den Zeitstempel des Zugriffs und die entsprechende NFT-TokenId. Die dynamische Natur von Smart Contracts ermöglicht die Verwaltung von Berechtigungen in Echtzeit. Dies ist besonders nützlich in dezentralen Anwendungen, bei denen die Zutrittskontrolle hochflexibel und anpassungsfähig an sich ändernde Bedingungen sein muss.
Um Datenschutzbedenken in öffentlichen Blockchain-Umgebungen auszuräumen, speichert das System niedrig aufgelöste Miniaturansichten (z. B. 64 x 64 Pixel) in der Blockchain, während die ursprünglichen hochauflösenden Bilder verschlüsselt und off-chain auf IPFS gespeichert werden. Nur autorisierte Benutzer, die über das entsprechende NFT verfügen, können die Entschlüsselungsschlüssel für den Zugriff auf die hochauflösenden Daten abrufen. Nicht autorisierte Benutzer erhalten Versionen der Daten mit Echtzeit-DEM-Störungen, die sicherstellen, dass sie nicht auf die Originaldaten zugreifen können.
Erzeugen von Bildstörungen
Laden Sie CIFAR10-, CIFAR100- und ImageNet-Datensätze. Die Größe der Bilder in den Datensätzen wird einheitlich geändert und in den PyTorch-Tensor konvertiert, und der Bildtensor wird anhand des Mittelwerts und der Standardabweichung normalisiert. Initialisieren Sie ein zufälliges Rauschen δ1, indem Sie eine Gaußsche Verteilung verwenden, um die anfängliche Störung zu erzeugen. Zufälliges Rauschen wird auf jedes Bild x angewendet, und der Verlust zwischen der Zielbeschriftung und der Modellvorhersage wird basierend auf dem Kreuzentropieverlust berechnet. In einem Datensatz der Klasse C ist yi für eine Stichprobe i der Zielwert der Beschriftung, pi ist die Vorhersagewahrscheinlichkeit des Modells, die die Differenz zwischen der vom Modell vorhergesagten Wahrscheinlichkeitsverteilung und der tatsächlichen Beschriftung quantifiziert und den Verlust maximiert, sodass das Modell falsche Vorhersagen erzeugt. Der Kreuzentropieverlust beträgt:

Der Einfluss der Bildstörung auf die Vorhersage wird gemäß der Verlustfunktion berechnet, die umgekehrte Ausbreitung aktualisiert die Störung, und der Störungsbereich und der Störungswert werden durch mehrere Iterationen ständig aktualisiert. Für die Lernrate η lautet die Aktualisierungsformel für die Störung:

Erzeugen von Textstörungen
Laden Sie vortrainierte BERT-Modelle zum Generieren von Texteinbettungen. Ein benutzerdefiniertes TextFeatureExtractor-Netzwerk, das aus zwei Transformer-Blöcken und einem vollständig verbundenen Layer besteht, wird verwendet, um Features aus Texteinbettungen zu extrahieren, die von BERT-Modellen generiert wurden. Geben Sie die Benutzerinformationen und den Zeitstempel des Zugriffsbenutzers in das vortrainierte BERT-Modell ein und generieren Sie dynamisch Textrauschen über das angepasste TextFeatureExtractor-Netzwerk.
Das Eingabebild I wird in das multimodale Modell Qwen2.5-VL-7B-Instruct eingespeist. Geleitet von einer strukturierten Eingabeaufforderung generiert das Modell eine prägnante textuelle Beschreibung Tq. Dieser generierte Text Tq wird in das vortrainierte BERT-base-uncased-Sprachmodell eingegeben. Durch aufgabenspezifische Eingabeaufforderungen zum Umschreiben generiert das System gestörten Text
, der die Semantik beibehält, während der Ausdruck geändert wird. Ein TextFeatureExtractor-Netzwerk bildet den gestörten Text
in einen hochdimensionalen semantischen Einbettungsvektor (z.B.) ab.
Erzeugen von Multi-Target-Störungen
Um die Kompatibilität zwischen Texteinbettungen und Bildstörungen zu gewährleisten, passen wir die Form der Texteinbettung an die Abmessungen der Bildstörung an. ET und Eq stellen die Texteinbettungen dar und PL die Bildstörung. Der Umformungsprozess stellt sicher, dass ET und Eq in die gleiche Dimensionalität wie PL transformiert werden,
wobei C, H, W die Dimensionen von PL sind. Definieren Sie ein Aufmerksamkeitsmechanismus-Fusionsmodul, das Störungen der Texteinbettung und Bildstörungen fusioniert und die Störungen dynamisch entsprechend der Aufmerksamkeitsgewichtung des Textes anpasst. Die Verschmelzung ist:

wobei α die dynamische Anpassung der Parameter des Aufmerksamkeitsmechanismus ist. δT ist die Textstörung, die durch Eq und ET erzeugt wird. Fügen Sie dem Trainingsprozess einen Regularisierungsbegriff hinzu, um eine Überanpassung zu verhindern. Der Regularisierungsterm ist die L2-Norm der Texteinbettung, die Störungen bestraft. Die Mehrziel-Verlustfunktion kombiniert Kreuzentropieverlust und Fusionsstörung, und die Mehrziel-Verlustfunktion lautet wie folgt:

Die Ziele der Verlustfunktion sind:

wobei λ ein Regularisierungskoeffizient ist, der verwendet wird, um die Strafkraft der Störung zu kontrollieren, mit dem Ziel, übermäßige Störung oder Überanpassung zu verhindern. Bei der Untersuchung von gegnerischen Angriffen wurde festgestellt, dass
die Störungsgrenze für das menschliche Auge wahrnehmbar ist. Der Trainings- und Bewertungsprozess wird definiert, einschließlich der Erzeugung von Störungen, der Verlustberechnung, des Modelltrainings usw.
Vergleichende Experimente
Wir führten eine umfassende Evaluierung des vorgeschlagenen dynamischen fehlerminimierenden Rauschens (DEM) anhand von drei bestehenden Methoden durch: Fehlerminimierendes Rauschen (EM), Transferable Adversarial Perturbations (TAP) und Stable Error-Minimizing Noise (SEM). Diese Methoden wurden an drei Benchmark-Datensätzen getestet: CIFAR-10, CIFAR-100 und einer Teilmenge von ImageNet, wobei vier weit verbreitete neuronale Netzwerkarchitekturen verwendet wurden: VGG-16, ResNet-18, ResNet-50 und DenseNet-121, um unterschiedliche experimentelle Bedingungen zu gewährleisten.
Darüber hinaus untersuchten wir die Robustheit dieser Methoden, indem wir diffusionsbasierte Entrauschungsmodelle anwendeten, um defensives Rauschen zu entfernen, und die Genauigkeit der entrauschten Beispiele auf den Testdatensätzen maßen. Dieser Schritt zielte darauf ab, die Fähigkeit jeder Methode zu bewerten, Wiederherstellungsangriffen zu widerstehen und die Integrität des Datenschutzes unter widrigen Bedingungen zu wahren. Die Ergebnisse zeigen, dass unser DEM andere Methoden sowohl in Bezug auf Robustheit als auch Genauigkeit über alle Datensätze und Architekturen hinweg übertrifft, was seine Wirksamkeit als Framework zum Schutz der Privatsphäre unter Beweis stellt.