$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Apparecchio
Abbiamo preso in considerazione un'attività di classificazione supervisionata con un set di dati
, dove
rappresenta le caratteristiche di input e
denota le etichette di classe corrispondenti per un problema di classe K. Il set di dati D viene suddiviso in un set di dati di training pulito e un set di dati di test.
L'obiettivo è modificare il set di dati di addestramento pulito introducendo piccole perturbazioni impercettibili δ creare un set di dati
non apprendibile, dove
+ δ. La perturbazione δ è limitata da
, garantendo che non alteri in modo significativo la normale utilità dei dati. L'obiettivo chiave è quello di interrompere l'apprendimento costringendo il modello fθ, addestrato su Du, a concentrarsi su modelli irrilevanti indotti dal rumore piuttosto che sulle caratteristiche significative, con conseguente scarsa generalizzazione su un set di dati di test pulito:

Simulazione di un ambiente blockchain
Per installare gli strumenti blockchain, il framework Hardhat viene utilizzato per simulare una rete Ethereum su un ambiente locale per l'implementazione di contratti intelligenti e il test della generazione di esempi non apprendibili. Per avviare una rete locale, viene inizializzata una rete blockchain simulata con più nodi e account. A ogni nodo vengono allocate risorse come Ether per facilitare le simulazioni delle transazioni. Per sviluppare contratti intelligenti, vengono implementati per gestire dinamicamente le autorizzazioni degli utenti. Gli utenti autorizzati possono accedere ai dati puliti, mentre gli utenti non autorizzati sono limitati all'accesso agli esempi non apprendibili. Innanzitutto, configura un ambiente di sviluppo basato su Node.js v16.x e Hardhat 2.8.4 e utilizza il compilatore Solidity 0.8.17 per completare la compilazione e l'ottimizzazione dello smart contract. Il processo di compilazione viene eseguito dalla riga di comando utilizzando npx hardhat compile per generare artefatti di compilazione contenenti l'ABI e il bytecode. Successivamente, distribuire il contratto nella rete di test Sepolia eseguendo lo script di distribuzione npx hardhat run scripts/deploy.js --network sepolia e registrare l'indirizzo del contratto di output e l'hash della transazione di distribuzione. Durante la fase di test delle prestazioni, vengono eseguiti in sequenza tre test principali: il test del costo di transazione registra il consumo di gas invocando ciclicamente il metodo grantAccess del contratto; il test di throughput utilizza lo strumento Artillery per simulare le richieste degli utenti con un carico incrementale; Le transazioni di test e convalida, inclusa l'archiviazione e il recupero dei dati, vengono condotte per convalidare la funzionalità dello smart contract.
Creazione di utenti on-chain e meccanismi di autorizzazione
Gli account utente univoci vengono generati utilizzando portafogli blockchain (ad esempio, MetaMask), ciascuno composto da una chiave privata e una chiave pubblica. L'implementazione del prototipo impiega un ambiente blockchain simulato in cui entità utente sintetiche caricano set di dati disponibili pubblicamente sul sistema decentralizzato, memorizzando solo i valori hash crittografici sul registro distribuito. Ciò garantisce l'integrità dei dati senza memorizzare i dati effettivi on-chain, il che sarebbe inefficiente e costoso. I dati effettivi vengono archiviati off-chain, in genere utilizzando sistemi di archiviazione decentralizzati come IPFS, garantendo una gestione efficiente dei dati mantenendo la sicurezza e la privacy. Per i token non fungibili (NFT) e il controllo degli accessi, questo studio implementa un meccanismo di controllo degli accessi a grana fine utilizzando NFT conformi allo standard ERC-721. Ogni set di dati di esempi non apprendibili è associato a un tokenId univoco, che funge da chiave per accedere ai dati. Gli utenti richiedono l'accesso inviando le bozze Merkle. Queste prove verificano l'identità dell'utente in modo sicuro e decentralizzato. Dopo la convalida della prova, il contratto conia un NFT unico e lo trasferisce al portafoglio dell'utente. Questo NFT rappresenta il diritto dell'utente di accedere ai dati associati a quello specifico esempio non apprendibile. L'uso degli NFT garantisce che solo gli utenti autorizzati possano accedere ai dati, sulla base di un record decentralizzato e immutabile. Ciò è in contrasto con il tradizionale controllo degli accessi in base al ruolo (RBAC), che in genere opera a livello di gruppo e potrebbe non fornire la granularità necessaria per le applicazioni ad alta sicurezza30.
Lo smart contract verifica continuamente i permessi di accesso attraverso la funzione ownerOf, controllando la proprietà dell'NFT per garantire che solo gli utenti autorizzati possano accedere ai dati puliti. Gli amministratori possono revocare l'accesso distruggendo l'NFT attraverso la funzione revokeAccess, garantendo flessibilità nella gestione dell'accesso degli utenti nel tempo. Il flusso di lavoro operativo consiste in quattro passaggi critici: (1) gli utenti inviano richieste di accesso contenenti prove di Merkle; (2) il contratto verifica la validità di tali prove; (3) una volta convalidato con successo, il contratto conia l'NFT corrispondente; (4) gli utenti recuperano i dati crittografati utilizzando l'IPFS Content Identifier (CID) incorporato nei metadati dell'NFT. Sfruttando gli NFT, otteniamo diversi vantaggi rispetto ai tradizionali meccanismi di controllo degli accessi, come il controllo granulare delle autorizzazioni (a livello di dati rispetto a livello di gruppo), una migliore capacità di audit (record on-chain immutabili) e la trasferibilità delle autorizzazioni (transazioni del marketplace NFT).
I contratti multi-firma vengono implementati per l'aggiornamento dell'hash root di Merkle, impedendo la manomissione non autorizzata dei dati. Il sistema incorpora meccanismi anti-Sybil legando ogni set di dati a un tokenId univoco, garantendo che gli attori malintenzionati non possano generare token fraudolenti per accedere a dati non autorizzati. Gli UE vengono crittografati utilizzando AES-256 prima di essere caricati nella rete InterPlanetary File System (IPFS). Gli hash dei dati crittografati vengono archiviati on-chain, mentre i set di dati completi rimangono su IPFS, riducendo il sovraccarico di archiviazione della blockchain. L'approccio ibrido che combina lo storage on-chain e off-chain trova un equilibrio tra la garanzia della disponibilità dei dati e la riduzione dei costi di storage, una preoccupazione comune nelle applicazioni basate su blockchain.
Gli smart contract vengono utilizzati per gestire dinamicamente le autorizzazioni degli utenti. A ogni utente viene concesso l'accesso ai dati puliti solo se è in possesso dell'NFT appropriato, che funge da token di autorizzazione. Gli smart contract registrano tutti gli accessi ai dati nei registri degli eventi, fornendo una tracciabilità completa. Questi registri sono immutabili e possono essere controllati, offrendo trasparenza e responsabilità. Lo smart contract utilizza la funzione grantAccess per convalidare le richieste di accesso. Il contratto verifica se l'utente è in possesso dell'apposito NFT e, se valido, concede l'accesso ai dati richiesti. Ogni evento di accesso viene registrato sulla blockchain, garantendo che tutte le attività di recupero dei dati siano verificabili. Ogni evento di accesso ai dati viene registrato in tempo reale dallo smart contract, che attiva un evento AccessGranted. Questo evento contiene informazioni importanti come l'indirizzo del portafoglio dell'utente, il timestamp dell'accesso e il tokenId NFT corrispondente. La natura dinamica degli smart contract consente la gestione in tempo reale delle autorizzazioni. Ciò è particolarmente utile nelle applicazioni decentralizzate, dove il controllo degli accessi deve essere altamente flessibile e adattabile alle mutevoli condizioni.
Per risolvere i problemi di privacy negli ambienti blockchain pubblici, il sistema memorizza miniature a bassa risoluzione (ad esempio, 64 x 64 pixel) sulla blockchain, mentre le immagini originali ad alta risoluzione vengono crittografate e archiviate off-chain su IPFS. Solo gli utenti autorizzati che possiedono l'NFT corrispondente possono recuperare le chiavi di decrittazione per accedere ai dati ad alta risoluzione. Gli utenti non autorizzati ricevono versioni dei dati con perturbazioni DEM in tempo reale, garantendo che non possano accedere ai dati originali.
Genera perturbazione dell'immagine
Carica set di dati CIFAR10, CIFAR100 e ImageNet. Le immagini nei set di dati vengono ridimensionate e convertite in modo uniforme in tensore PyTorch e il tensore dell'immagine viene normalizzato utilizzando la media e la deviazione standard. Inizializzare un disturbo casuale δ1, utilizzando una distribuzione gaussiana per generare la perturbazione iniziale. Il rumore casuale viene applicato a ciascuna immagine x e la perdita tra l'etichetta di destinazione e la previsione del modello viene calcolata in base alla perdita di entropia incrociata. In un set di dati di classe C, per un campione i, yi è il valore dell'etichetta target, pi è la probabilità di previsione del modello, che quantifica la differenza tra la distribuzione di probabilità prevista dal modello e l'etichetta effettiva, massimizzando la perdita in modo che il modello produca false previsioni. La perdita di entropia incrociata è:

L'influenza della perturbazione dell'immagine sulla previsione calcolata in base alla funzione di perdita, la propagazione inversa aggiorna la perturbazione e l'intervallo di perturbazione e il valore della perturbazione vengono costantemente aggiornati attraverso più iterazioni. Per il tasso di apprendimento η, la formula di aggiornamento per la perturbazione è:

Genera perturbazioni del testo
Caricare modelli BERT pre-addestrati per la generazione di incorporamenti di testo. Una rete TextFeatureExtractor personalizzata composta da due blocchi Transformer e un livello completamente connesso viene utilizzata per estrarre le caratteristiche dagli incorporamenti di testo generati dai modelli BERT. Immettere le informazioni sull'utente e il timestamp dell'utente di accesso nel modello BERT pre-addestrato e generare dinamicamente rumore di testo attraverso la rete TextFeatureExtractor personalizzata.
L'immagine di input I viene inserita nel modello multimodale Qwen2.5-VL-7B-Instruct. Guidato da un prompt strutturato, il modello genera una sintetica descrizione testuale Tq. Questo testo generato Tq viene inserito nel modello linguistico BERT-base-uncased pre-addestrato. Attraverso suggerimenti di riscrittura specifici per attività, il sistema genera testo
perturbato che preserva la semantica mentre altera l'espressione. Una rete TextFeatureExtractor esegue il mapping del testo
perturbato in un vettore di incorporamento semantico ad alta dimensionalità Eg.
Genera perturbazioni multi-target
Per garantire la compatibilità tra l'incorporamento del testo e le perturbazioni dell'immagine, regoliamo la forma dell'incorporamento del testo in modo che corrisponda alle dimensioni della perturbazione dell'immagine. Sia ET ed Eq l'incorporamento del testo e PL la perturbazione dell'immagine. Il processo di rimodellamento assicura che ET ed Eq siano trasformati nella stessa dimensionalità di PL:
, dove C, H, W sono le dimensioni di PL. Definisci un modulo di fusione del meccanismo di attenzione che fonde le perturbazioni di incorporamento del testo e le perturbazioni dell'immagine, regolando dinamicamente le perturbazioni in base ai pesi di attenzione del testo. La fusione è:

dove α è la regolazione dinamica dei parametri del meccanismo di attenzione. δT è il disturbo del testo generato da Eq ed ET. Aggiungere un termine di regolarizzazione al processo di formazione per evitare l'overfitting. Il termine di regolarizzazione è la norma L2 dell'incorporamento del testo, che penalizza le perturbazioni. La funzione di perdita multi-obiettivo combina la perdita di entropia incrociata e la perturbazione di fusione, e la funzione di perdita multi-obiettivo è la seguente:

Gli obiettivi della funzione di perdita sono:

dove λ è un coefficiente di regolarizzazione utilizzato per controllare la forza di penalità della perturbazione, allo scopo di inibire l'eccessiva perturbazione o l'overfitting. Nello studio degli attacchi avversari, è stato riscontrato che
è il limite di perturbazione percepibile dall'occhio umano. Viene definito il processo di addestramento e valutazione, compresa la generazione di perturbazioni, il calcolo delle perdite, l'addestramento del modello, ecc.
Esperimenti comparativi
Abbiamo condotto una valutazione completa del rumore dinamico di minimizzazione degli errori (DEM) proposto rispetto a tre metodi esistenti: rumore di minimizzazione degli errori (EM), perturbazioni avversarie trasferibili (TAP) e rumore stabile di minimizzazione degli errori (SEM). Questi metodi sono stati testati su tre set di dati di riferimento: CIFAR-10, CIFAR-100 e un sottoinsieme di ImageNet, utilizzando quattro architetture di reti neurali ampiamente adottate: VGG-16, ResNet-18, ResNet-50 e DenseNet-121, per garantire diverse condizioni sperimentali.
Inoltre, abbiamo esaminato la robustezza di questi metodi applicando modelli di denoising basati sulla diffusione per rimuovere il rumore difensivo e misurando l'accuratezza degli esempi di denoising sui set di dati di test. Questa fase mirava a valutare la capacità di ciascun metodo di resistere agli attacchi di ripristino e mantenere l'integrità della privacy dei dati in condizioni avverse. I risultati indicano che il nostro DEM supera gli altri metodi sia in termini di robustezza che di accuratezza in tutti i set di dati e le architetture, dimostrando la sua efficacia come framework di tutela della privacy.