 |
Технические вопросы
Что такое „CryptoPhone“?
Все разговоры шифруются путем использования код-ключа длиной в 256 битов и алгоритмов шифровки данных “AES256“ и „Twofish“ . Совместное использование “AES256“ и „Twofish“ позволяет достичь более надежной шифровки, чем использование только одного алгоритма. Если произойдет невероятное и в одном из алгоритмов обнаружится слабое место, то второй алгоритм обеспечит достаточно надежную защиту. Применение двух очень надежных алгоритмов – уникальная особенность сотового телефона „CryptoPhone“. Ключ кодирования создается в процессе обмена публичными ключами „Diffie-Hellman“ в 4096 битов и аутентифицируется функцией hash SHA256.
Что такое алгоритм Diffie-Hellman?
Предположим, что обоим абонентам известны некоторые два числа g и p (например, они могут быть «зашиты» в программное обеспечение), которые не являются секретными и могут быть известны также другим заинтересованным лицам. Для того, чтобы создать неизвестный более никому секретный ключ, оба абонента генерируют большие случайные числа: первый абонент — число a, второй абонент — число b. Затем первый абонент вычисляет значение A = gamod p и пересылает его второму, а второй вычисляет B = gbmod p и передаёт первому. Предполагается, что злоумышленник может получить оба этих значения, но не модифицировать их (т.е. у него нет возможности вмешаться в процесс передачи). На втором этапе первый абонент на основе имеющегося у него a и полученного по сети B вычисляет значение Bamod p = gabmod p, а второй абонент на основе имеющегося у него b и полученного по сети A вычисляет значение Abmod p = gabmod p. Как нетрудно видеть, у обоих абонентов получилось одно и то же число: K = gabmod p. Его они и могут использовать в качестве секретного ключа, поскольку здесь злоумышленник встретится с практически неразрешимой (за разумное время) проблемой вычисления gabmod p по перехваченным gamod p и gbmod p, если числа p,a,b выбраны достаточно большими.
При работе алгоритма, каждая сторона:
1. генерирует случайное натуральное число a — закрытый ключ
2. совместно с удалённой стороной устанавливает открытые параметры p и g (обычно значения p и g генерируются на одной стороне и передаются другой), где
p является случайным простым числом
g является первообразным корнем по модулю p
3. вычисляет открытый ключ A, используя преобразование над закрытым ключом
A = ga mod p
4. обменивается открытыми ключами с удалённой стороной
5. вычисляет общий секретный ключ K, используя открытый ключ удаленной стороны B и свой закрытый ключ a
K = B? mod p
К получается равным с обоих сторон, потому что:
B? mod p = (gb mod p)? mod p = gab mod p = (ga mod p)b mod p = Ab mod p
В практических реализациях, для a и b используются числа порядка 10??? и p порядка 10???. Число g не должно быть большим и обычно имеет значения 2 или 5.
Какое сжатие голоса используется в телефоне „CryptoPhone“? Каково качество звука? Бывает ли запаздывание голоса?
Элементарная конструкция безопасного телефона GSM следующая: голос из микрофона переводится в цифровую форму, пропускается через алгоритм сжатия, шифруется и передается с помощью услуги GSM „передаче данных“ на другой телефон. Алгоритм сжатия (CODEC) производит с голосом то же самое, что специальные алгоритмы (напр. MP3) делают с музыкой – обеспечивает ее компактность.
Сотовый телефон „CryptoPhone“ использует алгоритм сжатия CELP, действующий с частотой 8 кГЦ. Скорость выхода потока алгоритма сжатия – 4,8 кбит/с. Это позволяет пересылать его, используя услугу передачи сведений GSM в 9,6 кбит.
Качество разговора и звука приравнивается к качеству разговоров по спутниковому телефону. Обратите внимание, что общее качество разговора зависит от качества сигнала GSM, поэтому в зоне низкой мощности сигнала GSM качество ухудшится. В некодированном разговоре качество звука при движении телефона из зоны, охватывающей базовую станцию GSM, ухудшается и вы начинаете терять фрагменты разговора. При использовании телефона „CryptoPhone“ в этих условиях замедление разговора возрастает. Легко понимаемые символы на экране телефона „CryptoPhone“ указывают на силу сигнала и качество разговора/ запаздывание.
Все разговоры по телефону „CryptoPhone“ несколько замедляются, будто ваш разговор направлен через спутниковую связью. Это большей частью связано с тем, как сети GSM обрабатывают передачу данных. Телефон „CryptoPhone“ должен использовать передачу данных GSM вместо режима передачи голоса с целью обеспечения безопасности канала связи между двумя телефонами „CryptoPhone“. Запаздывание является побочным эффектом всех звонков передачи данных GSM, и с этим ничего не поделаешь. Все оборудование кодирования GSM одинаково страдает от такого эффекта. А телефон „CryptoPhone“ еще несколько увеличивает этот эффект, причина которого – перевод голоса в цыфровую форму и шифровка.
Какова архитектура программного оборудования телефона „CryptoPhone“? Я заметил, что ваш телефон „CryptoPhone“ основан на оперативной системе „Windows CE“/„Pocket PC“. Не угрожает ли его безопасности?
Современная модель телефона „CryptoPhone“ действует на основе модифицированной и уменьшенной операционной системы „Microsoft Pocket PC2003“, записанной в постоянной памяти. Эту операционнную систему мы выбрали потому, что она является недорогой и хорошо изученной платформой, которая позволяет достичь хорошей цифровой формы речи и скорости шифровки. Созданная на основе операционной системы „Pocket PC“ система была выбрана в качестве первой платформы „CryptoPhone“, которая позволила нам обеспечить защиту программного оборудования в постоянной памяти и устранить ненужные функции.
Единственной альтернативой при принятии этого решения была оперативная система „Symbian“. Это очень закрытая система (часть исходных текстов операционной системы „Windows™“ опубликована), которую можно внедрить только в дорогостоящем техническом оборудовании. В то время не было, да еще и теперь нет перспективного и в массовом порядке используемого, основанного на оперативной системе „Embedded Linux“ технического решения с удовлетворительными характеристиками скорости, стабильности, интегральности и доступности на рынке сбыта, поэтому мы не воспользовались этой альтернативой.
Мы понимаем, что с использованием любой платформы „ Windows “ связаны опасности для защищенности телефона, поэтому предприняли меры по уменьшению этих опасностей. Мы устранили прикладные программы, стеки коммуникации и часть операционной системы, которые не обязательны для работы телефона „CryptoPhone“ и из-за которых могут возникнуть проблемы для безопасности. Желая избежать программного взлома, вы не должны внедрять в телефон „CryptoPhone“ программное оборудование от третьей стороны. Механизм обновления микропрограмм этого телефона защищен криптографически.
С какими еще оперативными системами будут выпускаться телефоны „CryptoPhone“?
Мы планируем предложить изделия „CryptoPhone“, основанные на других операционных системах: „Embedded Linux“ и может быть, „PalmOS“ в 2005 году. Кроме того, планируем предложить изделия на основе технологии сетей (UMTS) мобильных телефонов 3G и протокола TCP/IP. Наша конечная цель – создать семейство соответствующих изделий „CryptoPhone“, которые позволили бы обеспечить безопасную связь во всех основных сетях связи GSM. Следите за нашим сайтом в Интернете, там вы найдете сообщения о появляющихся изделиях. |
 |