Главная страница
Навигация по странице:

  • 4.2.1. Зашифрование голоса

  • 4.2.2. Расшифрование голоса

  • 4.4.1. Оценка временных задержек

  • 4.4.3. Достоинства и недостатки

  • ОБЕСПЕЧЕНИЕ ЗАЩИЩЕННОСТИ ГОЛОСОВОГО ТРАФИКА В VOIP

  • АНАЛИЗ БЕЗОПАСНОСТИ ПЕРЕДАЧИ ГОЛОСОВОГО ТРАФИКА В VOIP И ОБЕСПЕЧЕНИЕ ЕГО ЗАЩИЩЕННОСТИ. Дипломная работа специалиста


    Скачать 1.45 Mb.
    НазваниеДипломная работа специалиста
    АнкорАНАЛИЗ БЕЗОПАСНОСТИ ПЕРЕДАЧИ ГОЛОСОВОГО ТРАФИКА В VOIP И ОБЕСПЕЧЕНИЕ ЕГО ЗАЩИЩЕННОСТИ
    Дата31.05.2022
    Размер1.45 Mb.
    Формат файлаdoc
    Имя файлаanaliz_bezopasnosti_peredachi_golosovogo_trafika_v_voip_i_ob.doc
    ТипДиплом
    #559017
    страница6 из 9
    1   2   3   4   5   6   7   8   9

    4.2. Шифрование голоса
    При совершении звонка со стороны абонента, инициировавшего вызов, отправляются сообщения с целью установки сеансового ключа по классическому протоколу Диффи-Хеллмана.

    34

    if (status == TCallStatus.clsRouting) //если совершается вызов {
    this.call = call;
    nick = call.PartnerHandle;
    DHkey(); //установка сеансового ключа
    }


    Если установка сеансового ключа прошла успешно, то на сгенерированном ключе осуществляется зашифрование данных, поступивших на микрофон, и расшифрования сигнала, поступившего по сети (рисунок 9).



    Рисунок 9 Схема шифрованной передачи голоса

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

    35
    Совершение зашифрованного группового вызова возможно после установления сеансового ключа (рисунок 7) путем повторного нажатия на кнопку «Create session key with user».
    Опишем процесс зашифрования и расшифрования голоса.

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


    if (outStream != null)
    {
    bufferStream.SetLatestInBuffer(args.Buffer); byte[] encr = new byte[args.Buffer.Length]; Gost28147.Gost28147Ecb(args.Buffer, encr, key); outStream.Write(encr, 0, encr.Length);
    }

    4.2.2. Расшифрование голоса
    Для расшифрования используется доступ к входящему аудиопотоку посредством класса NetworkStream пространства имен System.Net.Sockets [12].

    while (client.Connected)
    {
    int available = client.Available;
    if (available > 0)
    {
    byte[] buffer = new byte[available];
    int read = inStream.Read(buffer, 0, available);



    byte[] decr = new byte[buffer.Length];

    36
    Gost28147.Gost28147EcbDecrypt(decr, buffer, key); inStream.Write(decr, 0, decr.Length); OnDataReceived(decr);
    }
    }

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



    Рисунок 10 Отправка сообщения по зашифрованному чату

    byte[] plain = GetBytes(textBox2.Text); byte[] encr = new byte[plain.Length]; Gost28147.Gost28147Ecb(plain, encr, key);
    msg_log.Info(false, " to {0}\n{1}", textBox3.Text,textBox2.Text); skype.SendMessage(nick, "!#encr__msg#!" + GetString(encr));

    На рисунке 11 представлен зашифрованный обмен сообщениями.

    37



    Рисунок 11 Зашифрованный чат

    При этом Skype оперирует только зашифрованными сообщениями (рисунок
    12).



    Рисунок 12 Обмен зашифрованными сообщениями


    На рисунке 13 представлен зашифрованный обмен сообщениями в групповом
    чате.

    38



    Рисунок 13 Обмен зашифрованными сообщениями в групповом чате

    4.4. Результаты
    Опишем итоговую схему работы программного средства.
    При передаче (рисунок 14) сообщения вводятся в окне разработанной программы, зашифровываются и далее передаются в программный клиент Skype. Поток данных с микрофона перехватывается и зашифровывается перед отправкой.

    39



    Рисунок 14 Передача зашифрованных данных


    На принимающей стороне (рисунок 15) осуществляется расшифрование полученного по сети аудиопотока. Полученные зашифрованные сообщения передаются в программное средство, где отображаются в расшифрованном виде.



    Рисунок 15 Прием и расшифрование данных

    40
    Для работы программного средства необходимо разрешить ему использовать Skype. Это можно сделать после запуска программы в главном окне программного клиента Skype (рисунок 16)




    Рисунок 16 Запрос на получение доступа программного средства к Skype

    Описанное средство было представлено автором данной дипломной работы на студенческой научной конференции "Информатика и кибернетика" [1].


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


    1. Низкая мощность.


    ОС: Windows 7 Starter; CPU: Intel Atom 1.5 ГГЦ; ОЗУ: 2 ГБ


    1. Средняя мощность.


    ОС: Windows 7 Professional; CPU: Intel Core i5 3.0 ГГЦ; ОЗУ: 8 ГБ


    1. Высокая мощность.


    ОС: Windows 8.1; CPU: Intel Core i7 3.1 ГГЦ; ОЗУ: 16 ГБ


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

    41




    Таблица 3 Оценка временных задержек













    Временная




    Конфигурация

    задержка, с




    Низкая мощность

    0,4




    Средняя мощность

    10-1




    Высокая мощность

    10-2






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


    4.4.2. Оценка нагрузки
    Проведем оценку нагрузки с использованием шифрования и без него для конфигураций из предыдущего пункта.
    На рисунке 17 показана нагрузка на компьютер низкой мощности, которую оказывает программный клиент Skype с использованием шифрования и без него, а также общая нагрузка на компьютер. При этом нагрузка на процессор, производимая программным средством, составляет 5%.



    Низкая мощность


    60




    50




    40




    30

    CPU




    20

    Общая нагрузка на CPU

    10




    0




    Skype без

    Skype с

    шифрования

    шифрованием

    42

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



    Средняя мощность
    9
    8
    7
    6
    5

    4

    CPU

    3

    Общая нагрузка на CPU

    2




    1




    0




    Skype без

    Skype с

    шифрования

    шифрованием


    Рисунок 18 Оценка нагрузки на компьютер средней мощности

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

    43


    Высокая мощность
    4.5
    4
    3.5
    3
    2.5

    2













    CPU



















    1.5













    Общая нагрузка на CPU













    1































    0.5































    0
















    Skype без

    Skype с







    шифрования

    шифрованием


    Рисунок 19 Оценка нагрузки на компьютер высокой мощности

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


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


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

    44
    Поэтому дальнейшим направлением работы будет обеспечение безопасной передачи голоса без опоры на программный интерфейс, предоставляемый VoIP-клиентом.

    45


    1. ОБЕСПЕЧЕНИЕ ЗАЩИЩЕННОСТИ ГОЛОСОВОГО ТРАФИКА В VOIP


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


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


    5.2. Виртуальное аудиоустройство
    Поставленную задачу возможно решить при использовании такой архитектуры (рисунок 20) при которой программный клиент VoIP отправляет аудиопоток сначала на виртуальное аудиоустройство, на котором происходит расшифрование, а потом расшифрованный аудиосигнал поступает на динамики. Соответственно для зашифрования аудиосигнала он должен поступать из микрофона на виртуальное устройство, производящее зашифрование, а потом в VoIP-клиент.
    Такое решение возможно использовать в любом VoIP-клиенте в связи с тем, что в них существует возможность выбора устройства записи и устройства воспроизведения.

    46
    На рисунке 20 схематично показано использование такого подхода в различных VoIP-клиентах, а именно Skype и Cisco Jabber Video for TelePresence (рисунок 21). Последнее широко используется в Правительстве Санкт-Петербурга для организации видеоконференцсвязи.



    Рисунок 20 Обеспечение защищенной передачи голоса при помощи виртуального аудиоустройства



    Рисунок 21 Интерфейс программы Cisco Jabber Video for TelePresence


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

    47



    Рисунок 22 Обмен потоками между входным и выходным интерфейсами аудиоустройства


    Такой подход позволяет произвести зашифрование или расшифрование сигнала во время обмена потоками между входным и выходным интерфейсами аудиоустройства (рисунок 23).




    Рисунок 23 Зашифрование и расшифрование голоса виртуальным аудиоустройством

    1   2   3   4   5   6   7   8   9


    написать администратору сайта