Сейчас на форуме: Rio (+10 невидимых) |
eXeL@B —› Основной форум —› Реализация RSA на Delphi |
Посл.ответ | Сообщение |
|
Создано: 20 декабря 2005 04:14 · Личное сообщение · #1 |
|
Создано: 20 декабря 2005 04:33 · Личное сообщение · #2 в принЦипе, зная сам алгоритм цифровой подписи, либо аутентификации, на нем основывающийся несложно накодить все ру4ками...но если времени вобрез и нифига 4итать не хо4ется ;) то могу посоветовать ска4ать либу компонентов LockBox (кому надо найдет) и не замора4иваться на том "как там и 4то делается", благо там генерация клю4ей и подписб документа сводится к написанию 5 стро4ек нового проэкта... ----- HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE |
|
Создано: 20 декабря 2005 04:55 · Личное сообщение · #3 www.isyst.ru/download/rsa_demo.rar Исходные тексты на Delphi по реализации алгоритма шифрования RSA как пособие для начинающих программистов. RSA алгоритм относится к ассиметричным алгоритмам шифрования, его главное достоинство - имея открытый ключ и зная алгоритм шифрования невозможно повторить закодированое сообщение, на базе алгоритма RSA работает шифрование PGP, реализуются хэш-функции (элетронно-цифровая подпись). Программа является лениво исполненным интерфейсом для модуля работы с большими числами от Walied Othman (также в этом архиве). ----- M&#225 enginn renna undan &#254v&#237 sem honum er skapa&#240 |
|
Создано: 20 декабря 2005 05:07 · Поправил: cbs · Личное сообщение · #4 Ты не написал, для чего тебе это все нужно. Тут есть два принципиально разных подхода: 1. Надо сделать курсач или что-то подобное (или просто реализовать в программе и т.п.) Самая известная библеотека для Дельфей - это, пожалуй, FGInt. FGInt is a package in Delphi & Free Pascal to handle Fast Gigantic Integers http://triade.studentenweb.org/ Библиотека поставляется в сорцах. В библитеке реализованы операции над большими числами. Там же есть реализации алгоритмов ЭЦП ЭльГамаля, ГОСТ 3410, DSA, + реализованы операции с эллиптическими кривыми и алгоритмы ЭЦП с использование этих кривых: EC-ElGamal и ECDSA. 2. Хочешь сделать программу/реализацию с надежным шифрованием/ЭЦП. Тогда FGInt - это просто детский лепет. Во-первых, она никем не сертифицирована. Во-вторых, там нет никих функций тестирования (вупинг и пр.) В-третьих, было когда-то такое, что там нашли баг. Баг проявлялся редко, но его-таки вычислили. И пофиксили. Но я бы не стал доверять такой библиотеке что-либо серьезное. в FGInt еще есть генерация простых чисел, что попребуется для генерации кличевой пары. Ни о какой надежности функций генерации говорить не приходится. Так что приговор - FGInt только для игрового программирования. Думаю, что для серьезных задач явно стоит познакомиться с библиотеками на C/C++. Подозреваю, что твоя задача попадает под пункт 1, так что ни о чем не думай и бери FGInt P.S. Принципиально не согласен с ProTeuS. ProTeuS пишет: в принЦипе, зная сам алгоритм цифровой подписи, либо аутентификации, на нем основывающийся несложно накодить все ру4ками... ГРАМОТНО реализовать это крайне не просто. Почитай хотя бы Брюса Шнайера ("Практическая криптография"), там описано достаточно поверхностно, но хотя бы начальное представление иметь будешь. Как раз для RSA существует множество аспектов, с которыми надо быть чрезвычайно осторожным при реализации. [EDiTED] di-2 Молодец! Однако: 1. В твоем посте нет ни слова про FGInt. 2. Можно было догадаться, что некоторые люди сразу открывают все новые посты на форуме, а потом отвечают - посмотри на время постов. Не надо разводить лишний флуд. ----- crypto.freak |
|
Создано: 20 декабря 2005 05:32 · Личное сообщение · #5 |
|
Создано: 20 декабря 2005 06:01 · Личное сообщение · #6 |
|
Создано: 20 декабря 2005 16:18 · Личное сообщение · #7 cbs пишет: ГРАМОТНО реализовать это крайне не просто. Почитай хотя бы Брюса Шнайера ("Практическая криптография"), там описано достаточно поверхностно, но хотя бы начальное представление иметь будешь. Как раз для RSA существует множество аспектов, с которыми надо быть чрезвычайно осторожным при реализации. просто- не просто, но в моем вузе решить подобную проблему без использования сторонних библиотек может каждый второй второкурсник, не то 4то про4итать уже до дыр заюзаную "практи4ескую криптографию" шнаера... а 4то касается протоколов аутентификации, обменов клю4ами и цифровых подписей, то их реально осилить если не на лабораторной работе, то курсовой ВПОЛНЕ! ----- HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE |
|
Создано: 20 декабря 2005 16:26 · Личное сообщение · #8 |
|
Создано: 20 декабря 2005 17:08 · Личное сообщение · #9 ProTeuS Не хочу демонстративно высказывать сомнения касательно квалификации ваших студентов, но эта задача СЛИШКОМ ВЕЛИКА. Давай разобьем ее на четыре части. 1. Эффективная и надежная реализация больших чисел. 2. Реализация генератора случайных чисел. 3. Реализация алгоритма генерации ключей, не подверженных известным атакам. 4. Реализация тестов. Каждая из этих подзадач, прямо скажем, весьма объемна. Не думаю, что за время, отведенное на курсач, это реально поднять одному человеку. Готов поверить, что студенты смогут реализовать что-то вроде сильно упроещенного FGInt с умножением больших чисел столбиком и с примитивной генерацией ключей. Ни о какой качественной реализации, по-моему, здесь речи и быть не может. Это все так, на уровне "поиграться", не более того. P.S. У тебя клавиша 'ч' не нажимается, или это 1337 c001 h@x0rz 57y13? P.P.S. Да, кстати, если ты обучаешься на ИБ, то не совсем понятно, зачем вы так Брюша Шнаера до дыр заюзали По-моему, больше времени стоит уделить алгебре и дискре. Ну да это так... Мысли вслух. ----- crypto.freak |
|
Создано: 21 декабря 2005 01:07 · Личное сообщение · #10 2cbs 4то касается описаных тобой 4 пунктов, то я согласен ЦЕЛИКОМ только со 2, поскольку его реализовать действительно анрил, реализовывался генератор псевдослу4айных последовательностей, 4то касается остальных, то тут возникает уже не вопрос "релизовали? или нереализовали?" а вопрос компетенции преподователя при приеме задания и отношения 4еловека к поставленной зада4е - ведь "замылить" глаза и здать "крякер интерента" под видом новой системы аутентификации при достато4ном желании может по4ти любой... нас4ет "Ни о какой качественной реализации, по-моему, здесь речи и быть не может. Это все так, на уровне "поиграться", не более того. " Никто и не говорит о каких-то супернаворо4еных реализация...Пусть результат у кого-то выйдет деревянным, но зато опыта-то побольше будет 4ем кинуть компонент на форму! Да и стоит ли сравнивать студен4ескую реализацию (хоть и "ру4ную") с современными разработками? Ведь тогда бы рынок коммер4еского криптоПО просто рухнул бы... Имхо главное тут пусть студент живет, у4ится и кодит наиболее низкоуровнево, а тесты, методы атаки(которым, кстати, подвержены не только доморощеные проги) придут с опытом... >>У тебя клавиша 'ч' не нажимается, или это 1337 c001 h@x0rz 57y13? неа, ни 1337 и даже не 31337, и падонкоффским сленгом с большой степени просто не увлекаюсь - просто такой стиль письма моя привЫ4ка и отли4ительная 4ерта, не более... >>P.P.S. Да, кстати, если ты обучаешься на ИБ, то не совсем понятно, зачем вы так Брюша Шнаера до дыр заюзали По-моему, больше времени стоит уделить алгебре и дискре. Ну да это так... Мысли вслух. Я не у4усь на ИБ. А за4итали до дыр, поскольку преподается такой предмет как "Криптография и криптоанализ"...Да и вышка с дискретной математикой и теорией 4исел присутствует собстно... ----- HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE |
|
Создано: 21 декабря 2005 01:13 · Личное сообщение · #11 Ara пишет: просто- не просто, но в моем вузе решить подобную проблему без использования сторонних библиотек может каждый второй второкурсник Чё-та сомнения берут... Ara, видать нас4ет "каждый второй" я действительно погоря4ился, ибо лень-матуШка и забивательство не 4ужда и нашим студентам ;) По крайней мере, все описаное мною присутствует в программе и большинство дейтсвительно реализовывают (или не реализовывают, у кого как выходит =) поставленные зада4и ЗЫ: приятно подискутировать со знающими людьми, ато пол инета облазил и толком нигде нельзя с толком поговорить о криптографии ----- HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE |
|
Создано: 22 марта 2006 20:13 · Личное сообщение · #12 |
|
Создано: 22 марта 2006 21:06 · Личное сообщение · #13 |
|
Создано: 22 марта 2006 21:11 · Поправил: MrZIyukers · Личное сообщение · #14 Reich Тебе на WASM - спроси там Володия, "генеального программиста перла, конченых полей и эллептически кривых в многомерном вакууме". Только будь осторожен, а то попадешь под раздачу, там только сегодня S.T.A.S.'а забанили - одного из старичков форума. По теме: реализация ECDSA есть на основе того же FGInt'а, так что тебе на сайт Triade Systems, или как они там Reich пишет: только желательно с описанием. Если интересует именно литература, то могу подкинуть пару книжек на тему. Нормальных исходников реализации ECDSA с камментами я не видел. Да и зачем они? Либо ты понимаешь, как это работает (тогда камменты не нужны), либо не понимаешь (тогда они и не помогут). |
|
Создано: 23 марта 2006 17:14 · Личное сообщение · #15 |
|
Создано: 23 марта 2006 17:50 · Личное сообщение · #16 |
eXeL@B —› Основной форум —› Реализация RSA на Delphi |
Эта тема закрыта. Ответы больше не принимаются. |