Сайт о программировании, математике и моделировании
Актуальность применения «длинной» арифметики
Для представления чисел в компьютере имеются стандартные типы данных. Однако возникает вопрос: что делать, если число очень большое и не помещается в рамки ни одного из существующих типов данных? Вот в этом случае как раз и используется «длинная» арифметика, суть которой заключается в представлении таких чисел в виде массива и проведении соответствующих арифметических операций над ними уже в преобразованном состоянии.
В настоящее время работа с длинными числами осуществляется во многих областях. Ярким примером может послужить криптография, где вся секретная часть спрятана не в знании кода алгоритма, а в наличии ключа, длинного случайного числа, подданного на «вход» алгоритма вместе с защищаемыми данными. И чем длиннее этот ключ, тем надежнее шифрование. Не вдаваясь в подробности отметим, что минимально разумной длиной ключа на данный момент считается 128 бит. Так, например, огромное количество зарубежных систем защиты предлагают шифрование очень надежными алгоритмами (например DES — американским государственным стандартом) на совершенно неприемлемой длине ключа — 40 или 56 бит, что позволит легко вскрывать информацию. Надо отдать должное российским стандартам, осуществляющим надежную защиту данных на очень длинных ключах — это государственный стандарт ГОСТ 28147-89 (ключ 256 бит) и отраслевой стандарт газовой промышленности ВЕСТА (ключ 512 бит). Поэтому можно смело доверять криптосистемам, работающим на этих алгоритмах.
Другим примером может послужить электронная цифровая подпись (ЭЦП), где для вычисления, проверки подписи и реализации алгоритмов хеширования необходимы алгоритмы работы с длинными числами.
В результате всего вышеперечисленного актуальным является изучение алгоритмов «длинной» арифметики, их программная реализация и разработка методического пособия на основе приобретенных сведений. Поэтому основными направлениями исследований в этой области являются:
- Внимательное изучение собранного материала по «длинной» арифметике, а именно: методов, алгоритмов и основных идей. Определение области применения «длинной» арифметики.
- Определение наиболее эффективных методов, их преимуществ над остальными и недостатков.
- Выбор оптимального языка программирования.
- Программная реализация изученных методов, их тестирование и доводка.
Print article | This entry was posted by root on 06.02.2013 at 7:41 пп, and is filed under Информатика и программирование. Follow any responses to this post through RSS 2.0. Вы можете оставить комментарий или трэкбэк с вашего сайта. |
8 месяцев назад
Спасибо, очень пригодилось
8 месяцев назад
Пригодилось