Нейронная сеть Google изобрела собственный протокол шифрования
Сотрудники Google Brain, одно из подразделений корпорации Google, занимающееся вопросами глубинного обучения, создали нейросеть, которая разработала собственный протокол шифрования. Исследователи Мартин Абади и Давид Андерсен показали, что нейронные сети в состоянии разрабатывать простые способы шифрования сообщений.
В эксперименте, проведенном специалистами, нейронная сеть смогла создать собственную форму шифрования путем машинного обучения. Эту систему не обучали принципам шифрования или специальным алгоритмам. Шифрование, разработанное компьютером, оказалось довольно простым, особенно, если сравнить с теми методами, которые были разработаны человеком. Тем не менее, это очень интересный результат исследования, где по словам авторов «не предполагалось продемонстрировать сильное шифрование».
Команда Google Brain в ходе эксперимента работала не с одной нейронной сетью, а сразу с тремя. Их назвали Элис, Боб и Ева. Каждая система была обучена поддерживать общение с двумя другими. Работа Элис заключалась в отправке секретных сообщений Бобу. «Он», в свою очередь, должен был расшифровать сообщение, присланное Элис. А задачей этой нейронной сети, в свою очередь, было наблюдать за общением двух других сетей.
Для того, чтобы скрыть смысл изначального сообщения, Элис должна была конвертировать открытый текст таким образом, чтобы Ева его не понимала. Измененный текст, тем не менее, должен быть понятен Бобу, и и только ему. Изначально Элис и Боб договорились о том, каким образом нужно изменять текст, чтобы они могли понимать друг друга, а Ева бы ничего не понимала.
На этом графике показано количество ошибок в расшифровке сообщений Элис нейронными сетями Боб и Ева. В процессе обучения Боб делал все меньше ошибок. Ева тоже училась, но после каждой удачной попытки система шифрования менялась, и Ева ничего не могла с этим поделать
Первые попытки шифрования были не слишком удачными. Боб на первых порах ничего не мог поделать с шифрованными сообщениями Элис. Но с течением времени Элис разработала достаточно надежный метод, который был понятен Бобу. Ева при этом не могла расшифровать сообщение, чтобы понять, о чем здесь идет речь. Иногда ей удавалось раскрыть систему шифрования сообщений двух других нейронных сетей, но те после каждой удачной попытки Евы меняли систему шифрования.
Авторы проекта решили выбрать симметричные криптосистемы в качестве основы для работы своих нейронных сетей. Симметричные криптосистемы (англ. symmetric-key algorithm) — способ шифрования, при котором котором для шифрования и расшифровывания применяется один и тот же криптографический ключ. Симметричное шифрование было единственным способом шифрования до момента изобретения схемы асимметричного шифрования. Ключ алгоритма должен сохраняться в секрете обеими сторонами. Алгоритм шифрования выбирается сторонами до начала обмена сообщениями.
После того, как сценарий был отыгран более 15 тысяч раз, Боб научился без единой ошибки конвертировать зашифрованный текст Элис в обычный текст. В то же время, Ева могла угадать лишь 8 из 16 битов данных, содержащихся в сообщении. Поскольку каждый бит — это 1 или 0, то, фактически, угадать Ева могла лишь чисто случайно. Попытка расшифровать сообщение Элис Евой, по словам исследователей, больше похоже на угадывание при помощи подбрасывания монетки. Результаты исследования опубликованы здесь.
Мы точно не понимаем, как работает этот метод шифрования, поскольку машинное обучение позволило получить результат без демонстрации пути его разработки. На практике это означает то, что мы не сможем получить понятный человеку способ шифрования, если он будет достаточно сложным. Практическое применение этой технологии, таким образом, ограничено.
«Методы работы с нейронными сетями начали развиваться на текущем уровне в последние несколько лет, поэтому мы лишь в начале пути», — говорит Джо Стуронас, специалист из компании PKWARE, занимающейся вопросами шифрования. Пока что человек без труда может взломать систему защиты информации, разработанной нейронными системами. Возможно, через некоторое время машины научаться создавать более надежные системы шифрования данных, на взлом которых человеку придется потратить немало времени, если он будет вообще в состоянии понять результат работы машин.
Исследователи в дальнейшем планируют попробовать работать не только с симметричным шифрованием данных. Возможно, будет задействована и стеганография. Ученые считают, что нейронные сети, по всей видимости, не слишком сильны в криптоаналитике, но зато они могут быть очень эффективными при анализе метаданных и анализе трафика, передаваемого по сети. Кроме того, исследователи говорят о том, что нейронные сети могут быть эффективны не только для защиты данных, но и для нападения.
Google Brain — проект работы с нейросетями, который «отпочковался» от отдела долгосрочных исследований в Google X. Сотрудники Google Brain занимаются исключительно работой с технологиями машинного обучения и нейросетями. По мнению руководства Google, эти технологии могут дать компьютерным системам обширные возможности. Системы на основе машинного обучения, вероятно, смогут изменить многое — от скорости и корректности постановки медицинского диагноза до вождения автомобилей. В итоге, как считают представители Google Brain, все это может изменить само человечество.