Diferenciální soukromí je soubor metod, které poskytují nejpřesnější dotazy do statistické databáze a zároveň minimalizují možnost identifikace jednotlivých záznamů v ní.
Diferenciální soukromí je matematická definice ztráty citlivých dat jednotlivců, když jsou jejich osobní informace použity k vytvoření produktu. Termín byl vytvořen Cynthia Dwork v roce 2006 [1] , ale je také použit v dřívější publikaci Dwork, Frank McSherry , Kobe Nissim a Adam D. Smith [2] . Práce se opírá zejména o výzkum Nissima a Irita Dinura [3] [4] , kteří prokázali, že není možné publikovat informace ze soukromé statické databáze bez odhalení některých soukromých informací a že je možné zpřístupnit celou databázi zveřejněním výsledků celkem malého počtu žádostí [4] .
Po provedení studie se ukázalo, že není možné zajistit důvěrnost ve statistických databázích pomocí stávajících metod, a v důsledku toho vznikla potřeba nových metod, které by omezily rizika spojená se ztrátou soukromých informací obsažených ve statistice. databáze. V důsledku toho byly vytvořeny nové metody, které ve většině případů umožňují poskytovat přesné statistiky z databáze a zároveň poskytují vysokou úroveň důvěrnosti [5] [6] .
Diferenciální soukromí je založeno na zavedení náhodnosti do dat.
Jednoduchý příklad rozvinutý ve společenských vědách [7] je požádat osobu, aby odpověděla na otázku "Máte atribut A?" podle následujícího postupu:
Důvěrnost vzniká proto, že z odpovědi nelze s jistotou poznat, zda má člověk daný atribut. Tyto údaje jsou však významné, protože kladné odpovědi pocházejí od čtvrtiny lidí, kteří tento atribut nemají, a tří čtvrtin těch, kteří jej skutečně mají. Pokud tedy p je skutečný podíl lidí s A, pak očekáváme, že dostaneme (1/4) (1- p) + (3/4) p = (1/4) + p / 2 kladné odpovědi. Proto lze odhadnout R.
Nechť ε je kladné reálné číslo a A je pravděpodobnostní algoritmus , který bere jako vstup sadu dat (představuje akce důvěryhodné strany, která má data). Označte obrázek A im A . Algoritmus A je ε - diferenciálně soukromý , pokud pro všechny soubory dat a lišící se jedním prvkem (tj. data jedné osoby), stejně jako všechny podmnožiny S množiny im A :
kde P je pravděpodobnost.
Podle této definice je rozdílné soukromí podmínkou mechanismu zveřejňování dat (to znamená, že je určeno důvěryhodnou stranou, která uvolňuje informace o datovém souboru), nikoli datovým souborem samotným. Intuitivně to znamená, že pro jakékoli dvě podobné datové sady se bude diferenciální privátní algoritmus chovat přibližně stejně na obou datových sadách. Definice také poskytuje silnou záruku, že přítomnost nebo nepřítomnost jednotlivce neovlivní konečný výstup algoritmu.
Předpokládejme například, že máme databázi lékařských záznamů , kde každý záznam je dvojice ( Jméno , X ), kde je nula nebo jedna označující, zda má osoba gastritidu nebo ne:
název | Přítomnost gastritidy (X) |
---|---|
Ivane | jeden |
Petr | 0 |
Vasilisa | jeden |
Michaele | jeden |
Maria | 0 |
Nyní předpokládejme, že uživatel se zlými úmysly (často označovaný jako útočník) chce zjistit, zda má Michail gastritidu nebo ne. Předpokládejme také, že ví, který řádek obsahuje informace o Michailovi v databázi. Nyní předpokládejme, že útočník může použít pouze určitou formu dotazu , která vrací částečný součet prvních řádků sloupce v databázi. Aby útočník zjistil, zda má Michail gastritidu, provede dotazy: a , poté vypočítá jejich rozdíl. V tomto příkladu jsou , a , takže jejich rozdíl je . To znamená, že pole "Přítomnost gastritidy" v Michailově řádku by se mělo rovnat . Tento příklad ukazuje, jak mohou být jednotlivé informace ohroženy i bez výslovné žádosti o údaje konkrétní osoby.
Pokračujeme-li v tomto příkladu, pokud sestavíme datovou sadu nahrazením (Mikhail, 1) za (Mikhail, 0), pak bude útočník schopen rozlišit od pomocí výpočtů pro každou datovou sadu. Pokud by útočník získal hodnoty pomocí ε-diferenciálního privátního algoritmu pro dostatečně malé ε, pak by nebyl schopen rozlišit mezi dvěma datovými soubory.
Výše popsaný příklad mince je -diferenciálně soukromý [8] .
Případ, kdy ε = 0 je ideální pro zachování důvěrnosti, protože přítomnost nebo nepřítomnost jakýchkoli informací o jakékoli osobě v databázi neovlivňuje výsledek algoritmu, ale takový algoritmus je z hlediska užitečných informací nesmyslný, protože i s nulovým počtem lidí to dá stejný nebo podobný výsledek.
Jestliže ε inklinuje k nekonečnu, pak jakýkoli pravděpodobnostní algoritmus bude vyhovovat definici, protože nerovnost je vždy splněna.
Nechť je kladné celé číslo, množina dat a funkce. Citlivost [9] funkce, označovaná , je určena vzorcem
přes všechny páry datových souborů a v , které se neliší o více než jeden prvek a kde označuje normu .
Ve výše uvedeném příkladu lékařské databáze, pokud vezmeme v úvahu citlivost funkce , pak se rovná , protože změna kteréhokoli ze záznamů v databázi vede k něčemu, co se buď změní, nebo se nezmění.
Vzhledem k tomu, že diferenciální soukromí je pravděpodobnostní koncept, má každá jeho metoda nutně náhodnou složku. Některé z nich, jako je Laplaceova metoda, používají přidání řízeného šumu k funkci, která se má vypočítat.
Laplaceova metoda přidává Laplaceův šum, tedy šum z Laplaceova rozdělení , který lze vyjádřit jako funkci hustoty pravděpodobnosti a který má nulovou střední hodnotu a směrodatnou odchylku . Definujme výstupní funkci jako funkci se skutečnou hodnotou ve tvaru kde , a je dotaz, který jsme plánovali provést v databázi. Lze ji tedy považovat za spojitou náhodnou veličinu , kde
což není více než (pdf - funkce hustoty pravděpodobnosti nebo funkce hustoty pravděpodobnosti). V tomto případě můžeme označit faktor soukromí ε. Tedy podle definice je ε-diferenciálně privátní. Pokud se pokusíme použít tento koncept ve výše uvedeném příkladu o přítomnosti gastritidy, pak aby to byla ε-diferenciální privátní funkce, musí platit , protože ).
Kromě Laplaceova šumu lze použít i jiné typy šumu (například gaussovský), které však mohou vyžadovat mírné zmírnění definice diferenciálního soukromí [10] .
Pokud provedeme dotaz ε-diferenčně zabezpečené časy a zavedený náhodný šum je nezávislý pro každý dotaz, pak bude celkové soukromí (εt)-diferenciální. Obecněji řečeno, pokud existují nezávislé mechanismy: , jejichž záruky soukromí jsou stejné , pak bude jakákoli funkce -diferenciálně soukromá [11] .
Také pokud jsou dotazy prováděny na nepřekrývajících se podmnožinách databáze, pak by funkce byla -diferenciálně soukromá [11] .
Diferenciální soukromí je obecně navrženo tak, aby chránilo soukromí mezi databázemi, které se liší pouze o jeden řádek. To znamená, že žádný protivník s libovolnými pomocnými informacemi nemůže vědět, zda nějaký jednotlivý účastník poskytl své informace. Tento koncept však lze rozšířit na skupinu, pokud chceme chránit databáze, které se liší řádky, aby útočník s libovolnými podpůrnými informacemi nemohl vědět, zda jednotliví členové poskytli své informace. Toho lze dosáhnout, pokud se vzorec z definice nahradí [ 12] , pak pro D 1 a D 2 lišící se řádky
Použití parametru (ε/c) místo ε tedy umožňuje dosáhnout požadovaného výsledku a chránit struny. Jinými slovy, místo toho, aby každý prvek byl ε-diferenciálně soukromý, je nyní každá skupina prvků ε-diferenciálně soukromý a každý prvek je (ε/c)-diferenciálně soukromý.
K dnešnímu dni existuje několik způsobů využití rozdílového soukromí: