Skip to content

Latest commit

 

History

History
71 lines (47 loc) · 2.96 KB

README_HUN.md

File metadata and controls

71 lines (47 loc) · 2.96 KB

Python anonymizer

Tartalom

A projekt célja

A projekt célja egy olyan alkalmazás létrehozása, amely egy adathalmazban képes személyes adatok felismerésére, majd ezt követően azok anonimizálására és pszeudonimizálására.

Technológiák

A projekt Python 3.8 használatával készült. A függőségek a requirements.txt-ben találhatóak meg.

A felhasznált adatok

A program működése

Az adatokat felismerő függvények a detection.py modulban találhatók meg. Ha a program személyes adatot ismer fel, akkor a labels.csv fileba menti el annak az oszlopnak a nevét ahol a találat történt, és a megtalált adat jellegétől függően címkéket rendel hozzá. A fileba írás azért történik, hogy a korábbi elemzések eredménye később is felhasználható legyen. A pszeudonimizálást végző függvények a pseudonymisation.py modulban, az anonimizálást végzők pedig az anonymisation.py modulban szerepelnek. A datamanager.py modulban találhatók az adathalmazokkal való munka megkönnyítésére szolgáló függvények. Az analysis.py modul információt szolgáltat az adathalmaz értékeinek egyediségéről. A programhoz tartozik egy datacrawler package, amellyel weboldalakon szereplő adatok gyűjthetők (jelenleg ez csak magyar betegségnevekre terjed ki).

A main.py modulban található auto_anon_and_pseud függvény automatikusan elvégzi a feladatokat. Az anonimizált eredmény a data/output/outputtest.csv fileba íródik.

A jelenleg felismert személyes adatok

  • magyar rendszám
  • angol betegségnevek
  • magyar betegségnevek
  • magyar adószám
  • magyar TAJ szám
  • magyar személyi szám
  • magyar utónév
  • magyar telefonszám
  • MAC cím
  • IP cím
  • email cím
  • országkódok, valamint angol nyelvű országnevek
  • emberi életkor

Pszeudonimizációs technikák

  • szám intervallumba sorolása
  • országnévből régió készítése
  • email cím három részre bontása és külön-külön hashelése
  • szöveg számra történő cseréje

Anonimizációs technikák

K-anonimitás, L-diverzitás, T-közeliség. Az implementáció https://github.com/Nuclearstar/K-Anonymity megoldásán alapul.