Алгоритм Datafly - Datafly algorithm

Алгоритм Datafly является алгоритм для обеспечения анонимности медицинских данных. Алгоритм был разработан Латанья Арветт Суини в 1997−98 гг.[1][2] Анонимизация достигается за счет автоматического обобщения, замены, вставки и удаления информации по мере необходимости без потери многих деталей, обнаруженных в данных. Метод можно использовать на лету в ролевой безопасность в учреждении и в партия режим для экспорт данных от учреждения. Организации выпускают и получают медицинские данные со всеми явными идентификаторы - например, имя - удалено, ошибочно полагая, что конфиденциальность пациента поддерживается, потому что полученные данные выглядят анонимными. Однако оставшиеся данные можно использовать для повторной идентификации людей путем связывания или сопоставления данных с другими базами данных или путем изучения уникальных характеристик, обнаруженных в поля и записи из база данных сам.

Алгоритм Datafly подвергся критике за попытку добиться анонимности путем чрезмерного обобщения. Алгоритм выбирает атрибут с наибольшим количеством различных значения как тот, который нужно обобщать первым.[3]

Основной алгоритм

Схема алгоритма Datafly представлена ​​ниже.[4]

Вход:Частный Стол PT; квазиидентификатор QI = ( А1, ..., Ап ), k-ограничение анонимности k; иерархии обобщения предметной области DGHАя, куда я = 1,...,п с сопровождающим функции жАя, и убыток, который представляет собой ограничение на процент кортежи это можно подавить. PT [id] - это набор уникальных идентификаторов или ключей для каждого кортежа.

Выход: MGT - обобщение PT [QI], которое требует k-анонимность

Предполагает: | PT | ≤ k, и потеря * | PT | знак равно k

алгоритм Datafly:

// Построить частоту список содержащий уникальный последовательности значений по квазиидентификатору в PT,

// вместе с количеством вхождений каждой последовательности.

1. пусть freq будет расширяемым и разборным вектор изначально без элементов. Каждый элемент имеет форму (QI, частота, SID), где SID = { я быя : ∃ т[я бы] ∈ [я бы] ⇒ т[я бы] = я быя }; и частота = | SID |. Следовательно, freq также доступна в виде таблицы (QI, частота, SID).
2. пусть поз 0, всего 0
3. пока всего ≠ | PT | делать
3,1 частота [поз.] ( т[QI], встречается, SID), где т[QI] ∈ [QI], ( т[QI], __, ___) freq; происходит = | PT | - | PT [QI] - {т[QI]} |; и, SID = { я быя : ∃ т[я бы] PT [id] ⇒ т[я бы] = я быя }
3,2 поз. pos + 1, всего всего + происходит
// Принимаем решение, обобщая атрибут с наибольшим количеством различных значений
// и подавление не более разрешенного количества кортежей.
4. пусть ниже 0
5. для поз. 1 к | частота | делать
5.1 (__, количество) частота [позиция]
5.2 если count < k тогда делай
5.2.1 нижеk нижеk + count
6. если ниже k> k затем выполните: // Примечание. убыток * | PT | знак равно k.
6,1 частота обобщить (частота)
6.2 перейти к шагу 4
7. еще делать
// assert: количество подавляемых кортежей в freq ≤ loss * | PT |
7.1 частота подавить (частота, нижек)
7,2 мгт реконструировать (частота)
8. вернуть MGT.

Рекомендации

  1. ^ Латанья Суини. «Datafly: система для обеспечения анонимности медицинских данных». Получено 19 января 2014.
  2. ^ Л. Суини, Datafly: система для обеспечения анонимности медицинских данных. Безопасность баз данных, XI: Состояние и перспективы, Т. Лин и С. Цянь (редакторы), Elsevier Science, Амстердам, 1998.[1]
  3. ^ Ли Сюн. «Анонимизация данных - алгоритмы обобщения» (PDF). Получено 19 января 2014.
  4. ^ Латанья Суини. Computational Disclosure Control - Учебник по защите конфиденциальности данных. Массачусетский технологический институт. п. 113. HDL:1721.1/8589.

внешняя ссылка