Журнал "Системы Безопасности" № 6‘2018
A L L - O V E R - I P 54 но так, чтобы можно было иметь доступ ко всем внутренним данным продукта. Как его получить, описано в учебном пособии [22]. Для нас важно то, что в среду моделирования "БиоНейроАвтограф" встроен двухмерный пре- образователь Фурье, который преобразует динамику рукописного почерка в 416 коэффи- циентов Фурье. Эти коэффициенты далее используются как контролируемые биометриче- ские параметры. В среду моделирования встроена однослойная нейронная сеть, преобразующая 416 входных параметров в 256 бит кода аутентификации. Каждый нейрон однослойной сети имеет 25 входов, обучение выполняется по алгоритму ГОСТ Р 52633.5 [17]. После каждой инициации режима "проверить" коэффициенты Фурье записываются в файл Data/…./params.txt. Поль- зуясь этими данными, легко убедиться в том, что примитивное квантование их по среднему значению дает коды длинной в 416 бит, содер- жащие от 20 до 30% ошибок. Если на этих данных попытаться построить "нечеткий экстрактор", применяя код Боуза – Чоудхурды – Хоквинчхема (коды БЧХ), то необходимо заранее выбрать их избыточность. На заднем плане рис. 3 дана кривая связи про- цента корректируемых ошибок кодом БЧХ как функции избыточности этого кода. По характе- ру этой кривой видно, что при 100% избыточ- ности кода БЧХ он корректирует 5% ошибок. При 500% избыточности кода БЧХ он коррек- тирует 10% ошибок. При любой избыточности кодов БЧХ они не могут корректировать более 11%. Нам же нужно корректировать от 20 до 30% ошибок. Для того чтобы коды БЧХ стали работать в "нечетких экстракторах", необходимо маскиро- вать примерно половину самых нестабильных разрядов биокода. Тогда длина кода ключа для 30-кратной избыточности составит 416/2/30 = 6,7 бита, при 20-кратной избыточности кода – 416/2/20 = 10,4 бита. При столь малой длине ключа шифрования ни о какой серьезной защите биометрических дан- ных говорить не приходится. Исключением является только биометрия рисунка радужной оболочки глаза. Из нее Даугман [20] получает 2048 биометрических параметров, это дает ключ длиной 2048/2/20 = 51,2 бита. Голос [19], рукописный почерк [21], рисунки отпечат- ков пальца [19], подкожные кровеносные сосу- ды ладони, лицо человека [16] дают длину ключа от 6 до 14 бит. Однослойные нейронные сети, обученные по ГОСТ Р 52633.5 Создавшееся положение с очень короткой дли- ной ключа шифрования меняется, если мы переходим к использованию отечественных нейросетевых преобразователей "биометрия – код". Все они строятся из расчета максимально возможной длины ключа при доступе к опера- ционным системам Windows и Linux (256 бит или 32 8-битных случайных символа). Однако выходные данные таких длинных ключей не являются независимыми. Криптографический анализ защиты нейросе- тевых преобразователей "биометрия – код" [23, 24] показал, что первая версия техниче- ской спецификации [25] нуждается в доработ- ке. Смысл доработки иллюстрируется рис. 4. В верхней части рисунка показаны результаты криптографического анализа, по которым все нейроны, имеющие между собой хотя бы одну общую связь по входам, следует объединить в одну группу. Число независимых выходных разрядов в первом приближении можно рас- сматривать как оценку снизу длины кода экви- валентного ключа. Более точная минимальная оценка для вектора из 416 биометрических параметров дана в работе [24]. В рамках гипо- тезы о наличии у нейронов 32 входов мини- мальная длина ключа составляет 14,6 бит. Мы наблюдаем рост длины ключа нейросетевого преобразователя "биометрия – код" более чем на 40% по отношению к "нечетким экстракто- рам". Принимая во внимание озабоченность крипто- графической общественности возможностью объединения нейронов в группы, разработчики технической спецификации [25] во второй редакции потребовали, чтобы все нейроны, расположенные в начале преобразователя "биометрия – код", не имели общих связей. Эта ситуация отображена в нижней части рис. 4. Одна из методических ошибок работы [24] состоит в том, что ее авторы почему-то приняли гипотезу о 32 входах у каждого нейрона. На самом деле нейроны среды "БиоНейроАвто- граф" имеют всего 25 входов. Более того, обучение нейронов стандартным алгоритмом приводит к тому, что весовые коэффициенты нейронов оказываются значимыми в среднем только для 14 входов нейронов (остальные входы будут иметь нулевые весовые коэффици- енты в 8-битной кодировке). То есть при вычис- лении длины цепочки первых нейронов без общих входных связей необходимо 416 входов делить на 14, что дает оценку в 30 нейронов. Таким образом, атакующий нейросетевой пре- образователь, защищенный по второй редак- ции технической спецификации [25], должен будет подбирать состояния первых 30 несвя- занных нейронов, а потом столкнется с необхо- димостью вскрытия данных хвоста из 256 - 30 = 226 связанных по входным нейронов. Слож- ность такой задачи выше, чем подбор ключа длиной 14 бит, итого имеем общую длину ключа 30 + 14 = 44 бита. Наблюдаем рост более чем на 400% длины эквивалентного криптографического ключа нейросетевого пре- образователя "биометрия – код" по сравнению с зарубежными "нечеткими экстракторами". Именно по этой причине необходимо дораба- тывать вторую редакцию отечественной техни- ческой спецификации [25] по результатам пуб- личного обсуждения и вводить ее в действие на территории РФ. Перспективы совершенствования методов криптографической защиты Одним из перспективных направлений разви- тия средств защиты искусственного интеллекта является гомоморфное шифрование [26]. Про- блема состоит в том, что обычную исполняемую программу (например, файл с расширением .exe) для ее защиты от исследования приходит- ся шифровать. Перед запуском программы ее приходится расшифровать. Запускать зашифро- ванный исполняемый файл нельзя, если он зашифрован обычным шифрованием. Совершенно иная ситуация возникает, если исполняемый файл зашифровать гомоморфно. В этом случае он будет исполняться без его рас- шифрования. Как только появится полностью гомоморфное шифрование, способное быть гомоморфным для достаточно большого числа операций программирования, проблема защи- ты искусственного интеллекта будет полностью решена. Это наше светлое будущее, которое придет неизвестно когда. Отечественным и зарубежным криптографам удалось построить только частично гомоморф- ные средства шифрования, способные поддер- живать гомоморфность относительно операций сложения и операций умножения. При этом практическая реализация даже частично гомо- морфного шифрования оказывается весьма и весьма тяжеловесной по сравнению с обычным декабрь 2018 – январь 2019 www.secuteck.ru Рис. 4. Доработка технической спецификации по защите нейросетевых контейнеров криптографическими механизмами
Made with FlippingBook
RkJQdWJsaXNoZXIy Mzk4NzYw