3.2. Выбор основного поля Fq и эллиптической кривой E
При выборе поля эллиптической кривой для шифрования, имеются три основных пункта, которые должны быть сделаны:
1. Выбор основного конечного поля Fq.
Обычно выбираются два наиболее общих варианта основного конечного поля для реализации алгоритмов - F2m и Fq. Где поле F2m – бинарное конечное поле, а Fq поле конечное поле, где q – простое число. [12]
В моем диссертационной работе я решила сравнить то, как будут работать алгоритмы на эллиптических кривых, если выбрать в качестве поля сначала бинарное, а потом простое.
2. Выбор представления для элементов Fq.
Если поле F2m выбрано как основное конечное поле, то имеются много путей, в которых элементы F2m могут быть представлены. Два наиболее эффективных пути: нормальное представление основания и полиномиальное представление основания. [13]
3. Выбор эллиптической кривой E по полю Fq
В большенстве случаев выбираются несуперсингулярные эллиптические кривые. При выборе несуперсингулярной эллиптической кривой, можно выбирать кривую наугад, или можно выбирать кривую специальными свойствами, которые могут привести к увеличению скорости эллиптической арифметике на кривой.
3.3. Реализация математического аппарата эллиптической кривой
Наряду с фундаментальными алгебраическими аспектами эллиптических кривых особое внимание уделяется вопросам эффективной реализации базовых операций основанных на них криптографических протоколов с учетом особенностей и возможностей компьютера. [10] По существу, речь идет о расширении его функциональных возможностей позволяющем эффективную реализацию операций в конечных полях и в группах точек эллиптических кривых. Это расширение допускает как чисто программные, так и технические, па основе синтеза логических схем. решения.
Я использовал все возможности достижения высокой скорости выполнения операции, как чисто программные, так и принципиально алгоритмические. Приемы первого рода - программными «трюками», они позволяют повышать скорость выполнения операций «в разы», то есть уменьшают константу в оценке сложности операции. К таким «трюкам» относится, например, табулирование некоторых операции над байтами (умножение, возведение в квадрат, подсчет числа единиц, вычисление частного от деления на многочлен 1+х, метод ускорения приведения по модулю неприводимого «малочлена» и другие). Разработка велась на VB, для того чтобы сохранить универсальность и сравнимость реализации алгебраических преобразовании.
Do'stlaringiz bilan baham: |