2013-11-22 3 views
-1

Я пытаюсь реализовать голосовый вызов безопасности на телефоне. Этапы обработки должны быть следующими.Как зашифровать данные PCM до того, как он закодирован AMRNB

восходящей линии: Пользователь -> Данные PCM (16 бит, 8 кГц) -> Шифрование -> AMRNB кодирование -> Сеть Downlink: Сеть -> AMRNB декодирование -> Дешифрование -> Данные ИКМ -> Пользователь

Единственный часть, на которой я могу сделать шифрование/дешифрование, - это данные PCM в этом случае. Это ограничение всего проекта телефона.

После чего я попробовал,

  1. Обратное положение данных PCM в частотной области до того восходящем следующим образом, PCM - данные> Reverse частоты на основе какого-то правила - -> FFT> IFFT. С помощью этого метода данные PCM скремблируются. Но мы не можем сказать, что это безопасно для вызова безопасности.

  2. Я изучил некоторые алгоритмы шифрования, такие как AES, DES, RSA и т. Д. Но во всех них необходимо использовать несколько байтов (не менее 8) в качестве ввода шифрования. (Пожалуйста, исправьте меня, если я неправильно здесь) Но я думаю, что с таким типом шифрования он не может быть расшифрован после AMRNB-кодирования и декодирования.

Так что мой вопрос, есть ли алгоритм шифрования, который может принимать данные 16bit (один кадр данных PCM в этом гипсе) в качестве открытого текста входа, чтобы удовлетворить этот случай.

ответ

0

Вы не должны зашифровывать каждый 16-разрядный кадр индивидуально, даже если бы вы могли; злоумышленник может легко скопировать возможности 2^16 (65536). Вместо этого объедините 4 кадра и зашифруйте их вместе. Если вы зашифруете данные и затем закодируете их в AMRNB, то он не будет сжимать зашифрованный голос; AMRNB предназначен для голосовой, а не зашифрованной речи.

+0

Да, шифрование 16-битного кадра небезопасно. Для вещей AMRNB, если шифровать 4 кадра вместе, после AMRNB-кодирования и декодирования данные не могут быть дешифрованы обратно. Но если один фрейм-шифрование, я все еще могу расшифровать их (или большинство из них) обратно после кодирования/декодирования. Я прав? – Bin

Смежные вопросы