Алгоритм деперсонализации персональных данных

Заключение

Таким образом, для агрессивной среды более подходящим для использования является предложенный авторами метод, так как он показал более высокую степень достоверности. Для неагрессивной среды представляется возможным использовать энтропийный подход, так как он имеет более высокое быстродействие. Однако следует учитывать, что разность в быстродействии процессов идентификации при реализации рассматриваемых методов незначительна.

Литература

1. Цыпкин Я.З. Информационная теория идентификации. - М.: Наука. ФИЗМАТЛИТ,1995. - 336 с.

2. McKinkley K. Cleaning Up After Cookies. iSec Partners White Paper [Электронный ресурс]. - Режим доступа: http://www.isecpartners.com/storage/white-papers/iSEC_Cleaning_Up_After_Cookies.pdf, свободный. Яз. англ. (дата обращения 15.10.2011).

3. Бессонова Е.Е., Зикратов И.А., Колесников Ю.Л., Росков В.Ю. Способ идентификации пользователя в сети Интернет // Научно-технический вестник информационных технологий, механики и оптики. -2012. - № 3 (79). - С. 133-137.

4. Eckersley P. How Unique Is Your Web Browser? - Electronic Frontier Foundation, 2010. - 19 p.

5. Шеннон К. Работы по теории информации и кибернетики. - М.: Издательство иностранной литературы, 1963. - 830 с.

6. Eckersley P. A Primer on Information Theory and Privacy. - Electronic Frontier Foundation. - 2010. - 25 p.

Бессонова Екатерина Евгеньевна - Санкт-Петербургский национальный исследовательский университет

информационных технологий, механики и оптики, аспирант, bessonova@cit.ifmo.ru

Зикратов Игорь Алексеевич - Санкт-Петербургский национальный исследовательский университет

информационных технологий, механики и оптики, доктор технических наук, профессор, зав. кафедрой, zikratov@cit.ifmo.ru Росков Владислав Юрьевич - Санкт-Петербургский национальный исследовательский университет

информационных технологий, механики и оптики, студент, vos@vos.uz

УДК 004.056

АЛГОРИТМ ДЕПЕРСОНАЛИЗАЦИИ ПЕРСОНАЛЬНЫХ ДАННЫХ

А.С. Куракин

Рассматривается проблема обеспечения безопасности информационных систем персональных данных на стадиях разработки и оптимизации. Для решения данной проблемы предлагается использовать алгоритм деперсонализации для понижения класса информационных систем персональных данных, что, в свою очередь, снимает основную часть требований по применению организационных мер и технических средств защиты информации.

Ключевые слова: обезличивание, алгоритм деперсонализации, защита информации, персональные данные, информационные системы персональных данных

Введение

Требования Федерального закона «О персональных данных» [1] и постановления Правительства Российской Федерации «Об утверждении Положения об обеспечении безопасности персональных данных при их обработке в информационных системах персональных данных» [2] обязывает организации, обрабатывающие персональные данные (далее - операторы), обеспечивать соответствующую информационную безопасность персональных данных (ПДн). В свою очередь, выполнение данных требований влечет за собой значительные материальные затраты на внедрение дополнительных средств защиты информации, что зачастую не предусмотрено бюджетом операторов. Альтернативным законным способом решения данной проблемы является обезличивание персональных данных, так как оно позволяет снизить требования к уровню защищенности данных, что влечет за собой соответствующее сокращение расходов на обеспечение их информационной безопасности. Под обезличиванием персональных данных, как правило, понимают алгоритмы, в результате выполнения которых невозможно определить принадлежность персональных данных их владельцу.

Наиболее часто на практике применяются следующие способы обезличивания персональных данных [3]:

1. уменьшение перечня сведений, подлежащих автоматизированной обработке; в результате получают перечень данных, который соответствует оптимальному объему персональных данных о каждом субъекте, необходимому для хранения в информационных системах персональных данных (ИСПДн);

2. замена идентификаторами части сведений, что позволяет понизить класс ИСПДн, так как система оперирует не с персональными данными субъектов напрямую, а с идентификационной информацией, лишенной содержательного контекста;

3. уменьшение детализации некоторых сведений; способ направлен на то, чтобы сделать персональные данные субъектов менее точными. Это может достигаться, в том числе, путем группирования общих или непрерывных характеристик;

4. замена чисел минимальным, средним или максимальным значением; так как не всегда есть необходимость обрабатывать часть персональных данных каждого субъекта, то можно заменять данные минимальным, средним или максимальным значением по всей выборке или отдельным ее частям;

5. обработка групп сведений в разных информационных системах, для чего ИСПДн разделяются на взаимодействующие участки системы. Данный способ можно применять для оптимизации набора средств защиты информации (СЗИ), используемых в каждом сегменте. Это, с одной стороны, приводит к снижению стоимости защиты, а с другой - снижает избыточность СЗИ в тех случаях, когда защищаемые данные расположены неравномерно по системе.

Для всех перечисленных способов критерием качества деперсонализации является вероятность получения персональных данных на основании утечки обезличенных данных конкретного человека. При этом предполагается, что злоумышленнику известен контекст обработки, а также дополнительная информация из других источников.

Основным недостатком указанных способов является то, что они не гарантируют отсутствие возможности получения персональной информации посредством контекстного анализа открытой информации, в том числе получаемой из смежных систем.

Целью данной работы является разработка стойкого алгоритма обезличивания персональных данных (далее по тексту - алгоритма деперсонализации), основанного на применении перестановок и позволяющего проводить обезличивание больших массивов персональных данных при минимальных объемах служебной информации.

Алгоритм деперсонализации

Перспективным способом решения поставленной задачи является перестановка персональных данных, относящихся к различным субъектам. Данный способ обладает следующими преимуществами: персональные данные хранятся в одной ИСПДн, значительно снижается вероятность успеха контекстного анализа.

Предлагаемый алгоритм деперсонализации построен на следующих принципах:

1. разбиение исходного множества данных на подмножества [4], что позволяет сократить размерность и упростить его практическую реализацию;

2. использование циклических перестановок [4], что реализует собственно перемешивание данных.

В качестве исходных данных возьмем таблицу персональных данных Б(ё1, ё2, ..., , где N -число атрибутов, а М - число строк таблицы.

Далее рассмотрим множество данных, относящееся к одному атрибуту - ё(/=1, 2, ..., Щ. Это множество атрибута - А, содержит М элементов. Все элементы каждого множества А/ пронумерованы от 1 до М, и в таблице Б(ё1, ё2, ..., совокупность элементов множеств разных атрибутов с одинаковыми номерами будем называть записью с соответствующим номером. При этом в исходной таблице каждая запись имеет определенный смысл, связанный с конкретным субъектом (физическим лицом), т.е. содержит персональные данные конкретного лица, определенного в этой же записи.

Алгоритм обеспечивает перестановку данных каждого множества атрибутов исходной таблицы пошагово. На каждом шаге используется принцип циклических перестановок.

Проведем разбиение множества А, на А, (М>А,>1) непересекающихся подмножеств Ау, где число элементов подмножества Ау равно Му (М> Му,>1),у=1, 2, ..., К. Все элементы каждого подножества Ау считаем занумерованными от 1 до Му, эти номера будем называть внутренними номерами элементов подмножества. Внешний номер элемента в подмножестве Ау, имеющего внутренний номер к, обозначим - тук (1< тук < М), где тук - это порядковый номер элемента на множестве А, , соответствующий элементу с внутренним номером к. Разбиение каждого множества должно обладать следующими свойствами:

1. А,. = ^Ау - подмножества разбиения включают все элементы множества А,;

у=1

2. Ау Ф 0, Ау пАт = 0 для всех у, т =1, 2, ..., К - каждое подмножество не пусто, а пересечение любых двух подмножеств пусто;

3. т,у1= т,(/-1)М1(/-1)+1 для всех у = 2, ..., К - для любых двух подмножеств Ау и А¿у^ элемент с первым внутренним номером подмножества Ау имеет на единицу больший внешний номер, чем внешний номер элемента с наибольшим внутренним номером подмножества А

4. если к^>к2, то тук{>тук2 для всех , =1, 2, ..., N у =1, 2, ..., К,- упорядоченность внешней и внутренней нумераций для всех множеств и подмножеств их разбиения совпадают;

5. М = ^Мр - суммарное число элементов всех подмножеств Ар равно общему числу элементов мно-

р=1

жестваА.

Для каждого подмножества Ар определим циклическую перестановку (подстановку) рр (гр), задаваемую следующим образом:

( 1т,, Л т., \

P j (r. ) =

1

M....

Здесь элементы первой строки матрицы, стоящей в правой части равенства, соответствуют внутренним номерам элементов подмножества Ар до перестановки (в исходной таблице), а элементы, стоящие во второй строке, соответствуют внутренним номерами элементов подмножества Ар, стоящим на местах с номерами, определенными в верхней строке, после перестановки.

Таким образом, в перестановке (подстановке) рр (грр) производится циклический сдвиг всех элементов подмножества на число г р (1< г р < М р -1). Будем называть величину г р параметром перестановки Рр (гр). Данный параметр задается генератором случайных чисел (ГСЧ) в интервале [1; Мр -1]. Теперь все перестановки для всех подмножеств множества А, можно задать набором (вектором) параметров г =(гл, г¿2, ..., гК,). Вектор параметров перестановок гi задает первый уровень алгоритма деперсонализации, т.е. перестановки первого уровня.

Рассмотрим теперь множество а= соответствует подмножеству Ар, р =2, 3, новкурор(гор):

(ал, а¿2, ..., аК,), состоящее из К элементов. Здесь элемент ар ..., К. Для этого множества определим циклическую переста-

(

Po i (r0 i ) =

1

л

2 3 ... (Kt -1) K

V

где элементы верхней строки матрицы перестановки соответствуют исходным номерам элементов множества a (подмножеств Ар), а элементы нижней строки матрицы соответствуют номерам элементов множества а, стоящим на местах с номерами, определенными в верхней строке, после перестановки.

Таким образом, в перестановке p0р (r0p) производится циклический сдвиг элементов множества а,-(подмножеств множества А,) на число r0i (1< r0i < K -1) - параметр перестановки. Данный параметр r0 t задается ГСЧ в интервале [1; K -1]. Эту перестановку будем называть перестановкой второго уровня.

В результате последовательного проведения перестановок первого и второго уровней получается перемешивание элементов множества А, так, что меняется нумерация этих элементов по отношению к исходной нумерации.

Определим теперь нумерацию элементов множества А, после проведения всех перестановок. С учетом правил перемножения перестановок имеем следующую результирующую перестановку:

/

Pi (ron r ) =

[1-M<(K-ro.+»] [(M

(-r

+.)+ 1)-( M(-ro

'((-r

m

+ l)l'"" ',((-ro. +1)M (k._„

i(K. - r

+ 2)l-mi (K.-ro

+1) + M (K

+1) i(K. - ro

+ 2)).

... M

m.,

'(( - го, )1'"" ¿(К-го, )М,(К,-„,)_

Здесь верхняя строка матрицы содержит порядковые номера элементов множества атрибута в соответствии с их размещением в столбце после перестановок, а нижняя строка - внешние номера элементов множества этого атрибута, соответствующие их размещению в исходной таблице.

Примеры реализации алгоритма Пример 1. Пусть М=15, K,=4 и Мл= 4, Mi2= 4, М3= 4, Mi4= 3, при этом

d=(bl, ¿2, Ъз, ¿4, ¿5, ¿6, ¿7, ¿8, ¿9, ¿10, ¿11, ¿12, ¿13, ¿14, ¿15>,

A^=(¿1, ¿2, ¿3, ¿4), A,^=(¿5, ¿6, ¿7, ¿8), A^=(¿9, ¿10, ¿11, ¿12), A^=(¿13, ¿14, ¿15),

r ¿=(2, 1, 2, 1), r0j=2.

После применения перестановок первого уровня имеем

1 2 3 4 ) ( 12 3 4

й(2) = 4 «4 «1 А, ],""<1) = 1», «, «8

1 2 3 4 ^ 2 3

Р, 2 (2) =|, « « « I, Р14(1) = 1, « «

V А11 Ь12 Ь9 А10 ) V Ь14 «15 «13

Результирующая перестановка имеет вид

( 1 2 3 4 5 6 7 8 9 10 1112131415 р(2, (2,1,2,1)) =|

V «11 «12 «9 «10 «14 «15 «13 «8 «4 А1 Ь2 А6 Ь7 Ь9 Ь5

Теперь представим, что алгоритм перестановки, определенный для множества, соответствующего одному атрибуту, применяется ко всем множествам атрибутов исходной таблицы. В этом случае полный алгоритм перестановки задается следующим набором параметров:

1. (Кь К2, ..., К) - множество, определяющее количество подмножеств для множества каждого атрибута, которое определяет подмножества элементов (А1Ь А12, ..., А1К1), (А21, А22, ..., А2К2), ...,

(АМ, AN2, ANKN).

2. (Ми,М12, ..., М\К1), (М21,М22, ..., М2К2), ..., (Мм,Мт, ...,MNKN) - множество, определяющее число элементов в подмножествах для множества каждого атрибута;

3. ((г01, Г]), (г02, г2), ..., (г^, rN) - множество параметров перестановок для множества каждого атрибута.

Этот набор задает параметры алгоритма деперсонализации для исходной таблицы Б(й1, ё2, ., й^). В результате применения процедуры вместо исходной таблицы Б(й1, й2, ..., й^) получается таблица обезличенных данных Б(й1,й2,...,). Набор параметров

С (Б (, й2,..., )) = {((, К2,..., К„), ((Мп, М12,..., М1к1 ), (М21, М22,..., М2К2 ),..., (М!N1, М!N 2,..., М^ )),

полностью и однозначно задает алгоритм деперсонализации для исходной таблицы Б(й1, й2, ., й^). Пример 2. Пусть исходная таблица Б(й1, й2, ..., й^) имеет вид, представленный в табл. 1.

Атрибут й1 Атрибут й2 Атрибут й3> Атрибут й4 Атрибут й5 Атрибут й6

Я1 Г1 ¿1 ¿1 и1 Vl

42 Г2 ¿2 ¿2 и2 У2

Я3 Г3 Sъ и3 У3

44 Г4 54 ¿4 и4 У4

Я5 Г5 ¿5 ¿5 и5

Я, Г, ¿б ¿6 и6 V6

Я7 Г ¿7 и7 У7

Я8 Г8 58 ¿8 и8

Я9 Г9 ¿9 ¿9 и9 У9

Я10 Г10 ¿10 ¿10 и10 Vl0

Таблица 1. Исходная таблица данных

Для этой таблицы заданы следующие параметры алгоритма деперсонализации:

С(Б(й1,й2,й3,й4,й5,й6)) = {(3,2,4,3,3,2), ((3,3,4),(6,4),(2,3,2,3),(3,4,3),(5,2,3),(3,7)),

((2, (1,2,3)), (1, (3,1)), (3, (1,2,1,1)), (2, (2,1,2)), (2, (4,1,1)), (1, (1,4)))}.

После выполнения алгоритма деперсонализации получаем таблицу Б(й1, й2,..., ) (табл. 2).

Как видно из примера, в результате применения алгоритма деперсонализации получена преобразованная таблица, в которой записи не соответствуют записям в исходной таблице, что обеспечивает достаточно высокую сложность восстановления исходной таблицы при отсутствии сведений о параметрах алгоритма деперсонализации. Доступность персональных данных (получение достоверных персональных сведений при легитимном обращении к ним) обеспечивается посредством решения обратного алгоритма деперсонализации, результатом чего является формирование исходной таблицы.

Атрибут й1 Атрибут й2 Атрибут й3 Атрибут й4 Атрибут й5 Атрибут й6

Я10 Г8 ¿9 ¿10 и9

Я7 Г9 ¿10 ¿8 и10 У9

Я8 Г10 ¿8 ¿9 Щ VlC

Я9 Г ¿2 ¿3 и5 У4

Я2 Г4 S1 t1 u1 V5

Яъ Г5 S5 t2 u2 V6

Я1 Гб S3 t5 u3 V7

Яб Г1 S4 t6 u4 V2

Я4 Г2 S7 t7 u7 V3

Я5 Гъ S6 t4 u6 V1

Таблица 2. Результат второго шага Реализация обратного алгоритма деперсонализации

Пусть в столбце атрибута d таблицы D(d1,d2,...,dN) (табл. 2) выбран элемент номер n , тогда из матрицы результирующей перестановки p0j (r0j) можно получить номер этого элемента в исходной таблице - d(n,), который находится как элемент второй строки столбца номер n. Далее в каждом столбце атрибута dj в соответствии с матрицей результирующей перестановки p0j (r0j) находится элемент, номер которого равен номеру столбца, во второй строке которого стоит число m (n) (номер элемента в исходной таблице). Таким образом, после просмотра всех столбцов таблицы D(dl, d2,..., dN) будет построена запись, соответствующая элементу номер nt из множества атрибута d,- и записи номер m(n,) в таблице D(db d2, ..., dN). (табл. 1).

Практическая реализация алгоритма

При практической реализации алгоритма деперсонализации контроль целостности данных в файле обеспечивается путем проверки текущей контрольной суммы всего файла (сформированной при сохранении (модификации) файла) и контрольной суммы, рассчитываемой при последующем открытии файла. Как правило, данные алгоритмы контроля целостности хранимой в постоянном запоминающим устройстве (ПЗУ) информации (файлов) реализованы в механизмах защиты операционной системы, аппаратно-программном модуле доверенной загрузки (АПМДЗ) или специализированном программном обеспечении - СЗИ от несанкционированного доступа (НСД).

Перспективным развитием алгоритма деперсонализации в части обеспечения контроля целостности информации (персональных данных) является интеграция механизма формирования имитовставки, что обеспечит, помимо контроля целостности, более высокую степень защиты от НСД.

В качестве программной реализации алгоритма деперсонализации ПДн на языке C# предлагается экспериментальный образец программного обеспечения (ЭО ПО) «Depersonalization». Данное ПО работает в двух режимах:

- режим 1: программа производит деперсонализацию исходных данных;

- режим 2: программа осуществляет обратный алгоритм деперсонализации, приводя данные к исходному виду.

Оценка защищенности алгоритма деперсонализации

Для оценки защищенности предложенного алгоритма деперсонализации используем такую характеристику, как число вариантов деперсонализации, получаемых при применении данного алгоритма.

Число возможных различных вариантов разбиения множества из M элементов на К подмножеств,

удовлетворяющих условиям разбиения, приведенным выше, при заданном наборе

равно (К)! (при условии, что все подмножества имеют различное число элементов). Максимальное число возможных вариантов для заданного набора разбиений N множеств атрибутов равно

V((Ki,Кг,..,Kn),(Mil,M12,...,Мщ ),...,(Ml,M2,...,MiKN )) =

= П( К)!( К -i)(Mi - 1)(M„ -i)...(M к -1).

1=1

При большом количестве записей число вариантов получается очень большим, что обеспечивает очень малую вероятность подбора параметров и соответственно хорошую защиту обезличенных данных.

Для числовой оценки рассчитаем число возможных вариантов разбиения на примере ИСПДн, в которой одновременно обрабатываются паспортные данные 100 субъектов в пределах конкретной организации: • фамилия;

• имя;

• отчество;

• серия и номер паспорта;

• дата рождения;

• пол;

• адрес.

В данном примере для простоты вычислений зададим одинаковые параметры разбиений для всех множеств атрибутов: K i = 10, i = 1, N, N = 7. Мощности подмножеств распределим следующим образом: Mj=5, M2=6, M3=7, M4=8, M5=9, M6=11, M7=12, M8=13, M9=14, M10=15.

В результате вычислений по вышеуказанной формуле получаем максимальное число возможных вариантов для заданного набора разбиений, равное 1,13х10117. Таким образом, в случае, когда злоумышленник, имея деперсонализированные персональные сведения, применяет для получения достоверной информации метод «грубой силы» (полного перебора) [5], ему требуется более 1,19х10108 лет при вычислительных ресурсах, обеспечивающих скорость перебора 3000000 вариантов в секунду.

Заключение

Предложенный алгоритм деперсонализации является перспективным и оптимальным решением задач по обеспечению информационной безопасности персональных данных, обрабатываемых в информационных системах персональных данных.

Данный алгоритм обладает следующими преимуществами:

- обеспечивает защиту персональных сведений от несанкционированного доступа, в том числе от компрометации информации при ее утечке по техническим каналам;

- обеспечивает гарантированный доступ к персональным данным при легитимном обращении;

- персональные сведения хранятся в одной таблице;

- получение персональных сведений посредством контекстного анализа или путем перебора весьма трудоемко, а зачастую практически невозможно;

- параметры перестановки задаются при помощи генератора случайных чисел, что увеличивает стойкость алгоритма к взлому.

Наибольшая эффективность при применении данного алгоритма проявляется в случае, когда в информационных системах персональных данных содержатся большое количество персональных данных субъектов, что обеспечивает наибольшую защиту информационной системе.

Литература

1. Федеральный закон Российской Федерации от 27 июля 2006 г. № 152-ФЗ. О персональных данных. Принят Государственной Думой Федерального Собрания Российской Федерации 8 июля 2006 г.: одобрен Советом Федерации Федерального Собрания Российской Федерации 14 июля 2006 г. // Российская газета. - 2006. - 29 июля.

2. Об утверждении Положения об обеспечении безопасности персональных данных при их обработке в информационных системах персональных данных: Постановление Правительства Российской Федерации от 17 ноября 2007 г. № 781 г. Москва // Российская газета. - 2007. - 21 ноября.

3. Царев Е. Информационная безопасность по-русски // День 4. Обезличивание персональных данных. 2009 - [Электронный ресурс]. - URL: http://www.tsarev.biz/news/den-4-obezlichivanie-personalnyx-dannyx, свободный. Яз. рус. (дата обращения: 29.03.12).

4. Стенли Р. Перечислительная комбинаторика. - М.: Мир, 1990. - 440 с.

5. Полный перебор // Википедия - свободная энциклопедия - [Электронный ресурс]. - URL: http://ru.wikipedia.org/wiki, свободный. Яз. рус. (дата обращения: 15.04.2012).

Куракин Александр Сергеевич - Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, аспирант, nirtit@gmail.com