Adatvédő Gépi Tanulás (Privacy-Preserving ML): Technikák a biztonságos és privát MI-ért

2025.10.17.
AI Biztonság Blog

Az AI, ami nem kémkedik utánad: Bevezetés az adatvédő gépi tanulás világába

Képzeld el, hogy a legújabb, csillogó-villogó nyelvi modeledet betanítottad a céged belső dokumentumain, e-mailjein és chat-üzenetein. Az eredmény lenyűgöző. A modell ismeri a belső zsargont, érti a projektek közötti összefüggéseket, és olyan hatékonyan generál riportokat, hogy a pénzügyi osztály már szobrot akar emelni neked. Aztán egy nap egy lelkes, de kissé gyanútlan junior fejlesztő elkezd játszani a modellel, és kíváncsiságból beír egy ártatlannak tűnő promptot: „Generálj egy példa e-mailt a Q3-as átszervezésről, amiben szerepel Szabó úr neve.”

A modell készségesen köp egy tökéletesen megformázott e-mailt. A szövegben pedig ott virít egy mondat, ami egy az egyben idézet a HR vezető és a CEO közötti, szigorúan bizalmas levélváltásból, amiben Szabó úr közelgő elbocsátásáról volt szó. A levélváltás, ami a tanító adathalmazod része volt.

Kapcsolati űrlap

AI Biztonság kérdésed van? Itt elérsz minket:

A hideg futkos a hátadon? Kellene.

Ez nem egy disztópikus sci-fi. Ez a gépi tanulás piszkos kis titka. A modellek nem felejtenek. Pontosabban, nem tanítottuk meg őket felejteni. Olyanok, mint egy elefánt, ami sosem felejt, de közben egy pletykás papagáj is, ami bármikor, bárkinek kikotyoghatja a hallottakat. A tanítóadatok – a betegek kórtörténetei, az ügyfelek pénzügyi adatai, a belső céges kommunikáció – belesülnek a modell neurális hálózatának súlyaiba. És megfelelő technikákkal ez az információ kibányászható.

Ebben a cikkben nem arról lesz szó, hogyan építs még nagyobb vagy még okosabb modelleket. Arról lesz szó, hogyan építs diszkrét modelleket. Üdvözöllek az Adatvédő Gépi Tanulás (Privacy-Preserving Machine Learning, vagy PPML) világában. Ez nem egy opció. Ez a túlélés záloga egy olyan korban, ahol az adat egyszerre a legnagyobb érték és a legnagyobb felelősség.

Mi a fene az a „data leakage” és miért kellene, hogy álmatlan éjszakáid legyenek tőle?

Mielőtt belevetnénk magunkat a megoldásokba, nézzünk szembe a szörnnyel. A legtöbb fejlesztő úgy gondol a betanított modellre, mint egy lezárt fekete dobozra. Adatot öntesz bele az egyik oldalon, predikciók jönnek ki a másikon. A köztes állapot pedig valami misztikus, megfoghatatlan „tudás”. Ez egy veszélyes tévhit.

A modell nem egy fekete doboz. Hanem egy pletykás szomszéd.

A valóságban a modell egy rendkívül komplex, de determinisztikus matematikai függvény. A tanítás során a paraméterei (a híres „súlyok” és „biasok”) úgy módosulnak, hogy a lehető legjobban reprezentálják a tanítóadatok mintázatait. De néha túl jól sikerül a dolog. A modell nem csak a mintázatokat tanulja meg, hanem konkrét adatpontokat is bemagol. Ezt hívjuk overfitting-nek, de adatvédelmi szempontból ez egy nyitott kapu a támadásokhoz.

A támadások anatómiája: Hogyan szedik ki a titkaidat a modelledből?

Nem kell hozzá fekete kapucnis hacker, aki a sötétben gépel. A leggyakoribb támadások meglepően egyszerű elveken alapulnak, és csak egy API-hozzáférésre van szükségük a modelledhez.

  1. Tagsági Következtetési Támadás (Membership Inference Attack)

    Ez a „Láttalak már valahol?” típusú támadás. A támadó célja kideríteni, hogy egy adott adatpont (pl. egy konkrét személy kórtörténete) szerepelt-e a tanító adathalmazban. Miért veszélyes ez? Képzelj el egy modellt, amit egy HIV-pozitív páciensek adatait tartalmazó adathalmazon tanítottak be egy gyógyszerkutatáshoz. Ha a támadó be tudja bizonyítani, hogy a te adataid szerepeltek a tanítóhalmazban, akkor gyakorlatilag levezette, hogy te HIV-pozitív vagy, anélkül, hogy valaha is hozzáférése lett volna az eredeti adatbázishoz.

    Hogyan működik? A modellek általában magabiztosabb (magasabb konfidencia értékű) predikciókat adnak azokra az adatokra, amiket már „láttak” a tanítás során. A támadó létrehoz egy „árnyékmodellt”, ami utánozza a célpont modellt, és megtanítja neki, hogyan különböztessen meg a modell számára ismert és ismeretlen adatokra adott válaszok között. Aztán ezt az árnyékmodellt ráküldi a te modelledre.

  2. Modellinverziós és Attribútum-következtetési Támadás (Model Inversion & Attribute Inference)

    Itt már nem csak az a kérdés, hogy „bent voltál-e a bulin”, hanem az, hogy „mit viseltél és mit ittál”. A támadó a modell válaszaiból próbálja visszafejteni a tanítóadatok tulajdonságait, vagy akár magukat az adatokat.

    Egy klasszikus példa egy arcfelismerő modell. A támadónak van hozzáférése a modellhez, ami megmondja, hogy egy képen ki szerepel. A támadó elkezd egy zajból álló képpel, és addig finomítja a képpontokat, amíg a modell a lehető legmagabiztosabban nem mondja rá, hogy „Ez Kovács János”. Az eredmény? Egy „átlagos” kép Kovács Jánosról, amit a modell a tanítóadatokból rekonstruált. Lehet, hogy nem fotóminőségű, de bőven elég lehet a felismeréshez.

    Az attribútum-következtetés még alattomosabb. A támadó tudja, hogy egy adott személy adatai a tanítóhalmazban vannak, de egy attribútumát nem ismeri (pl. a politikai hovatartozását). Különböző lekérdezésekkel addig „kínozza” a modellt, amíg az el nem árulja a hiányzó információt.

  3. Adatrekonstrukció (Data Reconstruction)

    Ez a legdurvább. Főleg a generatív modelleknél (mint a GPT-k vagy a Stable Diffusion) fordul elő. A modell annyira jól megtanulja az adatokat, hogy egy megfelelő prompt hatására egy az egyben „felöklendezi” a tanítóadat egy darabját. Ez lehet egy teljes kódrészlet egy privát GitHub repóból, egy személyes adatokat tartalmazó szövegrészlet, vagy akár egy kép. A cikk elején említett példa pontosan ez volt.

Ha eddig azt hitted, hogy a modell API-ja egy biztonságos fal, akkor most már tudod, hogy az inkább egy szita. A kérdés nem az, hogy szivárognak-e az adatok, hanem az, hogy mennyire és hogyan tudod ezt megakadályozni.

Az arzenál: Technikák a diszkrét AI építéséhez

Most, hogy kellőképpen paranoiás vagy, nézzük a fegyvereket. Az Adatvédő Gépi Tanulás nem egyetlen technológia, hanem egy egész eszköztár. Olyan, mint egy svájci bicska, ahol minden eszköz más-más problémára jó. A legfontosabbak a következők: Differenciális Adatvédelem, Föderált Tanulás, Homomorf Titkosítás és Biztonságos Többrésztvevős Számítás.

1. Differenciális Adatvédelem (Differential Privacy – DP): A statisztikai ködfelhő

Kezdjük a legelterjedtebbel és talán a legfontosabbal. A Differenciális Adatvédelem egy matematikai garancia. Nem egy algoritmus, hanem egy tulajdonság, amivel egy algoritmus rendelkezhet.

A központi ötlet: A rendszer kimenete (pl. egy statisztikai lekérdezés eredménye vagy egy gépi tanulási modell) nem függhet szignifikánsan attól, hogy egyetlen konkrét egyén adatai szerepelnek-e az adathalmazban vagy sem. Másképpen: plausibilis letagadhatóságot biztosít minden résztvevő számára.

Analógia: Képzelj el egy népszámlálást, ahol egy kényes kérdést tesznek fel: „Csaltál-e már az adóbevallásoddal?”. Senki sem válaszolna erre őszintén. De mi van, ha a kérdezőbiztos a következő utasítást adja: „Vegyél elő egy érmét. Dobj fel. Ha fej, mondj igazat. Ha írás, dobj fel újra. Ha most fej, mondj igent, ha írás, mondj nemet.”

Mi történt itt? Bevezettünk egy adag kontrollált zajt. Egyetlen „igen” válaszról soha nem tudod megmondani, hogy az illető tényleg csalt-e, vagy csak az érme miatt mondott igent. Az egyéni adat védve van. Viszont ha elég sok embert megkérdezel, a statisztikai zaj kiátlagolódik, és egy elég pontos becslést kapsz a valódi adócsalók arányáról. Ez a DP lelke.

A gépi tanulásban ezt úgy érjük el, hogy a tanítási folyamat során zajt adunk a gradiens frissítésekhez. Ezt hívják DP-SGD-nek (Differentially Private Stochastic Gradient Descent). Minden egyes lépésnél, amikor a modell tanulna az adatokból, egy kicsit „megzavarjuk”. Ezzel megakadályozzuk, hogy egyetlen adatpontot is bemagoljon.

A DP „erősségét” egy görög betűvel, az epszilonnal (ε) mérjük. Ez a „privacy budget” vagy adatvédelmi költségvetés. Minél kisebb az epszilon, annál erősebb a védelem (több a zaj), de annál pontatlanabb lehet a modell. Minél nagyobb, annál gyengébb a védelem, de pontosabb a modell. Ez egy kőkemény kompromisszum.

Aranyköpés: A Differenciális Adatvédelem nem anonimizálja az adatot. Helyette anonimizálja az egyén hozzájárulását a végeredményhez.

Eredeti Adat (pl. Kórtörténetek) + Zaj DP Mechanizmus (pl. Laplace vagy Gauss zaj) Védett Kimenet (pl. Aggregált statisztika) Egyén nem azonosítható

2. Föderált Tanulás (Federated Learning – FL): A csapatjátékos

Mi van, ha az adat annyira érzékeny, hogy el sem hagyhatja az eszközt, ahol keletkezett? Gondolj a telefonodra, a kórházi szerverekre, az autód fedélzeti számítógépére. Az adatokat egy központi helyre küldeni adatvédelmi és sávszélességi rémálom.

A központi ötlet: Ne az adatot vidd a modellhez, hanem a modellt vidd az adathoz!

Analógia: Képzelj el egy nemzetközi szakácsversenyt. A világ legjobb séfjei (az eszközök, pl. telefonok) mind a saját konyhájukban dolgoznak a saját titkos, helyi alapanyagaikkal (a lokális adatok). A verseny szervezője (a központi szerver) nem kéri be az alapanyagokat. Ehelyett elküld egy alapreceptet (a globális modellt) minden séfnek. A séfek a saját alapanyagaikkal finomítanak a recepten, de nem a teljes új receptet küldik vissza, csak a változtatásokat, a tanulságokat (a modell frissítéseit, a gradienseket). A szervező összegyűjti ezeket a „tippeket”, átlagolja őket, és frissíti az alapreceptet. Ezt a ciklust ismétlik, amíg egy világbajnok recept nem születik, anélkül, hogy egyetlen titkos hozzávaló is elhagyta volna a helyi konyhákat.

Ez a Föderált Tanulás. A telefonodon lévő billentyűzet így tanulja meg a szavakat, amiket gyakran használsz, anélkül, hogy a gépelt szöveget elküldené a Google-nek vagy az Apple-nek. A nyers adat soha nem hagyja el az eszközödet. Csak a modell súlyainak frissítései, amik már egy absztrakt, aggregált formája a tanultaknak.

Persze ez sem csodaszer. A modellfrissítésekből is vissza lehet fejteni információkat, ezért a Föderált Tanulást gyakran kombinálják a Differenciális Adatvédelemmel (zajt adnak a frissítésekhez, mielőtt elküldenék őket) és a Biztonságos Többrésztvevős Számítással (erről később).

Központi Szerver (Globális Modell) Kliens 1 (pl. Telefon) Lokális Adat Kliens 2 (pl. Kórház) Lokális Adat Kliens 3 (pl. Autó) Lokális Adat 1. Modell letöltése 2. Frissítések feltöltése

3. Homomorf Titkosítás (Homomorphic Encryption – HE): A varázslatos kesztyű

Ez a technika egyenesen a kriptográfia Szent Grálja. Olyan, mintha varázslat lenne, de kőkemény matematikán alapul.

A központi ötlet: Műveleteket végezni titkosított adaton anélkül, hogy előtte visszafejtenénk. Az eredmény is titkosítva marad, és csak a kulcs birtokosa tudja visszafejteni.

Analógia: Képzelj el egy lezárt, átlátszó dobozt, amiben egy darab nyers arany van. Elküldöd ezt a dobozt egy ékszerésznek. Az ékszerésznek van egy speciális kesztyűje, amivel a doboz kinyitása nélkül tud dolgozni az aranyon: megolvasztja, formázza, gyűrűt készít belőle. Az ékszerész soha nem érinti a csupasz aranyat. Amikor kész, visszaküldi neked a lezárt dobozt, amiben már a kész gyűrű van. Csak te, a kulcs birtokosa tudod kinyitni a dobozt és kivenni a gyűrűt.

Az adat az arany. A titkosítás a doboz. A számítás (pl. egy modell predikciója) az ékszerész munkája. A Homomorf Titkosítás lehetővé teszi, hogy egy kliens elküldje a titkosított adatait egy felhőszolgáltatónak, a szolgáltató lefuttassa rajta a modellt (miközben ő maga csak titkosított „maszatot” lát), majd visszaküldje a titkosított eredményt. Sem a szolgáltató, sem egy esetleges lehallgató nem ismeri meg a bemeneti adatot vagy a kimeneti predikciót.

Mi a bökkenő? A teljesítmény. A homomorf titkosítással végzett műveletek nagyságrendekkel (több ezerszer) lassabbak és erőforrás-igényesebbek, mint a sima adatokon végzettek. Jelenleg a „Fully Homomorphic Encryption” (FHE), ami tetszőleges számításokat tesz lehetővé, még inkább kutatási terület, de egyszerűbb modelleknél és specifikus műveleteknél már ma is használható.

Data 1. Kliens Titkosítás x#@!z$ f(x#@!z$) 2. Szerver (nem látja az adatot) y&*#a% Visszafejtés a kliensnél a privát kulccsal

4. Biztonságos Többrésztvevős Számítás (Secure Multi-Party Computation – SMPC): A titokzatos bizottság

Az SMPC egy olyan kriptográfiai protokollkészlet, ami lehetővé teszi, hogy több fél közösen számítson ki egy függvényt a bemeneteikből, anélkül, hogy felfednék egymásnak ezeket a bemeneteket.

A központi ötlet: Oszd meg a titkodat, de úgy, hogy senki se tudja meg az egészet, csak a végeredményt.

Analógia: A klasszikus példa „Yao milliomosainak problémája”. Két milliomos, Alice és Bob, szeretné eldönteni, melyikük a gazdagabb, de egyikük sem akarja elárulni a másiknak a pontos vagyonát. Az SMPC egy olyan eljárást ad a kezükbe, aminek a végén mindketten megtudják a választ (pl. „Alice gazdagabb”), de semmi mást nem tudnak meg egymás vagyonáról.

A gépi tanulásban ezt úgy lehet elképzelni, hogy több kórház szeretne közösen betanítani egy modellt a pácienseik adatain, de jogi és etikai okokból nem oszthatják meg egymással a nyers adatokat. Az SMPC segítségével a modell tanítása úgy történik, hogy az adatok titkosított „szeletekre” vannak osztva a résztvevők között. A számítások ezeken a szeleteken, elosztottan történnek. Egyetlen résztvevő sem látja a teljes képet, de a protokoll végén összeáll a betanított modell, mintha egy közös adathalmazon tanították volna.

Az SMPC erősebb adatvédelmi garanciákat ad, mint a Föderált Tanulás (ahol egy központi szerver mégis látja a frissítéseket), de általában nagyobb kommunikációs terheléssel jár a felek között.

Gyakorlati útmutató: Melyik eszközt mikor használd?

Oké, tele a fejed a sok hárombetűs rövidítéssel. Most jön a lényeg: hogyan választasz közülük? A rossz hír az, hogy nincs „legjobb” megoldás. A jó hír az, hogy nem is kell egyet választanod. A legrobusztusabb rendszerek ezek kombinációját használják.

Itt egy táblázat, ami segít eligazodni:

Technika Analógia Mire jó elsősorban? Legnagyobb kihívás Kulcsszavak
Differenciális Adatvédelem (DP) Statisztikai ködfelhő Aggregált adatok publikálása, modellek tanítása, ahol a kimenet nem árulhat el semmit az egyénekről. A pontosság és az adatvédelem közötti kompromisszum (ε). zaj, epszilon, privacy budget
Föderált Tanulás (FL) Csapatjátékos séfek Tanulás elosztott, érzékeny adatokon, amik nem hagyhatják el a keletkezési helyüket (pl. mobiltelefonok, kórházak). Kommunikációs költség, nem-IID adatok, a frissítések sebezhetősége. decentralizált, lokális adat, modellfrissítés
Homomorf Titkosítás (HE) Varázslatos kesztyű Számítások végzése egy nem megbízható harmadik félnél (pl. felhőben) anélkül, hogy az adatot feloldanánk. „ML as a Service”. Extrém lassú teljesítmény, hatalmas számítási overhead. titkosított számítás, FHE, teljesítmény
Biztonságos Többrésztvevős Számítás (SMPC) Titokzatos bizottság Több, egymásban nem bízó fél közös számítása (pl. közös modelltanítás) anélkül, hogy felfednék a bemeneteiket. Magas kommunikációs komplexitás a résztvevők között. titokmegosztás, közös számítás, kollúzió

A hibrid megközelítés: Az igazi profik így csinálják

A valóságban ezek a technikák kéz a kézben járnak. Például:

  • FL + DP: Ez a leggyakoribb párosítás. Föderált tanulást használsz, hogy az adat lokális maradjon, de mielőtt a kliensek elküldenék a modellfrissítéseiket, hozzáadnak egy adag differenciálisan privát zajt. Így a központi szerver még a frissítésekből sem tud következtetni az egyéni adatokra. Ezt hívják Secure Aggregation-nek.
  • FL + SMPC/HE: A központi szerver a Föderált Tanulásban egy sebezhető pont. Mi van, ha feltörik? SMPC vagy HE használatával a szerver úgy tudja aggregálni a frissítéseket, hogy ő maga sem látja őket tisztán. Csak a titkosított vagy megosztott frissítéseket kapja meg, és a végeredmény, az új globális modell is csak a folyamat végén áll össze.

Aranyköpés: Az adatvédelem a modern AI-rendszerekben nem egyetlen fal, hanem egy mélységi védelem (defense-in-depth). Minden réteg egy másik típusú támadástól véd.

A Red Teamer szemszöge: Ahol minden elromolhat

Most, hogy felépítettük a csillogó várunkat, ideje elgondolkodni, hogyan döntenénk le. Red teamerként az a dolgom, hogy megtaláljam a repedéseket a falon. És mindig vannak repedések.

  • A Differenciális Adatvédelem elvérzik a rossz konfiguráción. Az epszilon, a „privacy budget”, nem végtelen. Minden egyes lekérdezés vagy tanítási lépés „fogyaszt” belőle. Ha a fejlesztők túl nagy epszilont állítanak be (hogy jobb legyen a pontosság), a védelem gyakorlatilag nullára csökken. Vagy ha nem követik nyomon a teljes budget felhasználását (composition theorem), egy támadó sok-sok apró lekérdezéssel lassan „kiszivárogtathatja” az információt.

  • A Föderált Tanulás sebezhető a mérgezésre (Poisoning Attacks). Mi van, ha a „séfek” egyike rosszindulatú? Egy támadó, aki kontrollál néhány klienst a hálózatban, küldhet szándékosan elrontott, „mérgezett” frissítéseket. Ezzel szabotálhatja a globális modell teljesítményét, vagy akár hátsó kapukat (backdoor) is elrejthet benne, amiket később kihasználhat.

  • A Homomorf Titkosítás nem véd az oldalsó csatornák ellen (Side-channel Attacks). Lehet, hogy a szerver nem látja az adatot, de látja a számítás mintázatát. A memória-hozzáférési minták, a futási idő, az energiafogyasztás mind-mind információt hordozhatnak a titkosított adatról. Ez olyan, mintha az ékszerész a lezárt doboz súlyából és a megmunkálás hangjából próbálná kitalálni, mekkora arany van benne.

  • Az SMPC feltételezi, hogy a résztvevők nem (mind) működnek együtt. Az SMPC protokollok általában egy bizonyos szintű kollúziót tudnak elviselni (pl. „addig biztonságos, amíg a felek kevesebb mint fele nem fog össze”). De mi van, ha mégis összefognak? Egy kartellbe tömörült kórházak közösen visszafejthetik egy negyedik, kívülálló kórház adatait a protokoll során.

Nincs tökéletes biztonság. Csak folyamatos kockázatkezelés létezik. Ezek a technológiák nem varázspálcák, hanem eszközök, amiket érteni, helyesen implementálni és folyamatosan tesztelni kell.

Konklúzió: Tanítsd meg az AI-dat hallgatni!

Eljutottunk az út végére. Remélem, most már nem csak egy homályos „adatvédelmi” címkét látsz, amikor ezekkel a fogalmakkal találkozol, hanem egy konkrét eszköztárat, tele kompromisszumokkal, kihívásokkal és lenyűgöző lehetőségekkel.

Az Adatvédő Gépi Tanulás nem egy nice-to-have extra. A GDPR, a CCPA és a többi szabályozás korában alapkövetelmény. De ennél is fontosabb: ez a felhasználókkal szembeni bizalom alapja. Senki sem fogja egy olyan AI-ra bízni az egészségügyi, pénzügyi vagy személyes adatait, amiről tudja, hogy egy napon egy rosszul megírt prompt hatására kikotyoghatja azokat.

Fejlesztőként, mérnökként, vezetőként a te felelősséged, hogy ne csak okos, hanem diszkrét rendszereket építs. Olyanokat, amik megoldják a problémákat anélkül, hogy újakat teremtenének.

A kérdés már nem az, hogy az AI-d tanul-e. Hanem az, hogy közben megtanul-e hallgatni.