Есть желание написать прогу, которая реализует функции электронной цифровой подписи(ЭЦП).
1)Писал ли кто-нибудь подобное?
2)С какими трудностями мне придётся столкнуться?
3)На чем лучше писать? Хотя я понимаю, что это вопрос субъективен, но всё же... Пока я выбираю между VC++ и Delphi.
4)И самое главное. Где можно почитать о разработке подобных программ? Т.е. про практическую реализацию.А то поисковики выдают в основном нормативные акты на эту тему.
Здравствуйте, Erick, Вы писали:
E>Есть желание написать прогу, которая реализует функции электронной цифровой подписи(ЭЦП).
а какие особенности будут у этой программы? Какие у нее предполагаются возможности и т.п. Потому что реализация просто алгоритма электронной подписи не так уж сложна и при этом мало кому нужна в чистом виде. А вот например интерграция с Outlook или с Windows через CSP это уже интереснее, и конечно сложнее.
E>1)Писал ли кто-нибудь подобное?
писали
На все остальные вопросы ответ зависит от того, что ты хочешь в своей программе реализовать
Реализовывать ф-ции ЭЦП не надо. Если надо добавить ИСПОЛЬЗОВАНЕ ЭЦП в программу то надо взять Openssl, pegwit или исп. ф-ции из .NET
Не надо ничено придумывать и не придется сталкиваться с трудностями
Здравствуйте, SiAVoL, Вы писали:
SAV>Здравствуйте, Erick, Вы писали:
E>>Есть желание написать прогу, которая реализует функции электронной цифровой подписи(ЭЦП). SAV>а какие особенности будут у этой программы? Какие у нее предполагаются возможности и т.п. Потому что реализация просто алгоритма электронной подписи не так уж сложна и при этом мало кому нужна в чистом виде. А вот например интерграция с Outlook или с Windows через CSP это уже интереснее, и конечно сложнее.
E>>1)Писал ли кто-нибудь подобное? SAV>писали
SAV>На все остальные вопросы ответ зависит от того, что ты хочешь в своей программе реализовать
Да, хочу интегрировать её с Outlook или другими почтовыми программами. Насчёт функциональности я пока думаю. Основной вопрос, где найти инфу по данному данной теме.
А что делала твоя прога?
Об ЭЦП написано в:
ГОСТ Р 34.10-2001 «Процессы формирования и проверки электронной цифровой подписи» (принят в 2001 году взамен устаревшего ГОСТ Р 34.10-94);
ГОСТ Р 34.11-94 «Функция хэширования»;
Вопрос, где их найти в свободном доступе? ГОСТ Р 34.10-94 нашёл, а остальные не могу.
Здравствуйте, Kubyshev Andrey, Вы писали:
KA>Реализовывать ф-ции ЭЦП не надо. Если надо добавить ИСПОЛЬЗОВАНЕ ЭЦП в программу то надо взять Openssl, pegwit или исп. ф-ции из .NET KA>Не надо ничено придумывать и не придется сталкиваться с трудностями
Спасибо, буду разбираться.
Здравствуйте, Erick, Вы писали:
E>А что делала твоя прога?
шифровала Короче это был CSP провайдер с реализацие алгоритмов, основанных на RSA (в девичестве Rijndael).
E>Об ЭЦП написано в: E>ГОСТ Р 34.10-2001 «Процессы формирования и проверки электронной цифровой подписи» (принят в 2001 году взамен устаревшего ГОСТ Р 34.10-94); E>ГОСТ Р 34.11-94 «Функция хэширования»; E>Вопрос, где их найти в свободном доступе? ГОСТ Р 34.10-94 нашёл, а остальные не могу.
Ты опиши что тебе надо? ГОСТы по криптоалгоритмам и криптографическим системам или алгоритмы? Если ГОСТы, то можно попытаться поискать на www.gost.ru. Если алгоритмы, то хорошего рускоязычного такого сайта я не видел (хотя давно уже не шерстил инет в этом направлении, может и появились). А из литературы можно обратиться к класикам — Брюс Шнайер — Прикладная криптография
Здравствуйте, Erick, Вы писали:
E>Есть желание написать прогу, которая реализует функции электронной цифровой подписи(ЭЦП). E>1)Писал ли кто-нибудь подобное?
В принципе все уже написано. Если ты желаешь только использовать криптографию, и затем программный продукт продавать, то лучще всего использовать сертифицированное ФСБ средство (если смотреть CSP — Cryptographic Service Provider, то КриптоПРО, СигналКОМ — ищи в инете). Под виндой есть специальное API — CryptoAPI. Разбирайся. Еще рекомендую поискать что-нибудь по PKI (Public Key Infrastructure).
Если разрабатывать собственное CSP, то учти, что его придется подписывать, иначе оно работать не будет
E>2)С какими трудностями мне придётся столкнуться?
Зависит от задачи и используемых инструментов.
E>3)На чем лучше писать? Хотя я понимаю, что это вопрос субъективен, но всё же... Пока я выбираю между VC++ и Delphi.
Если использовать CryptoAPI — без разницы.
E>4)И самое главное. Где можно почитать о разработке подобных программ? Т.е. про практическую реализацию.А то поисковики выдают в основном нормативные акты на эту тему.
Что тебя интересует? Непосредственно реализация, описания алгоритмов или теория?
Здравствуйте, mkopachev, Вы писали:
M> Если разрабатывать собственное CSP, то учти, что его придется подписывать, иначе оно работать не будет
есть такое дело... Понятно, что сертифицировать у МС сможет не каждый Поэтому можно или испольщовать Debug-вурсию винды или маленький кряк (Re: Создание CSP
какие собственные cisp! берете Openssl и все в 2 счета подписываете и шифруете. Все портабельно. Примеров полно.
Товарищу который сказал "RSA в девичестве Rijndael" вообще можно дальше не высказываться.
Здравствуйте, Kubyshev Andrey, Вы писали:
KA>какие собственные cisp! берете Openssl и все в 2 счета подписываете и шифруете. Все портабельно. Примеров полно. KA>Товарищу который сказал "RSA в девичестве Rijndael" вообще можно дальше не высказываться.
это товарищ был я и он опечатался, реализовывал он AES
Здравствуйте, SiAVoL, Вы писали:
SAV>Здравствуйте, Erick, Вы писали:
E>>А что делала твоя прога? SAV>шифровала Короче это был CSP провайдер с реализацие алгоритмов, основанных на RSA (в девичестве Rijndael).
опечатался, конечно же AES
Здравствуйте, SiAVoL, Вы писали:
SAV>Здравствуйте, mkopachev, Вы писали:
M>> Если разрабатывать собственное CSP, то учти, что его придется подписывать, иначе оно работать не будет SAV>есть такое дело... Понятно, что сертифицировать у МС сможет не каждый Поэтому можно или испольщовать Debug-вурсию винды или маленький кряк (Re: Создание CSP
Можно без кряка, но с маленьким фокусом:
— проверим что в реестре при регистрации любого подписанного CSP был использован полный путь библиотеки, если нет — дописываем этот полный путь ручками
— переименовываем свой CSP в копию найденного в реестре, но кладем в каталог с нашим приложением
— для приложения MyApp.exe создаем файл с именем MyApp.exe.local, и любым содержанием.
Фокус заключается в том, что винда проверяет подпись у нормального CSP с валидной подписью, а грузит — наш . Не знаю как под XP, а под 2000 работает железно.
Здравствуйте, Kubyshev Andrey, Вы писали:
KA>какие собственные cisp! берете Openssl и все в 2 счета подписываете и шифруете. Все портабельно. Примеров полно.
а можно попдробнее как Openssl поможет подписать свой CSP? и если можно с примером простейшего провайдера подписанного (пусть он ничего не делает, главное что бы регистрировался нормально).
SiAVoL wrote: > KA>какие собственные cisp! берете Openssl и все в 2 счета подписываете и > шифруете. Все портабельно. Примеров полно. > а можно попдробнее как Openssl поможет подписать свой CSP? и если можно > с примером простейшего провайдера подписанного (пусть он ничего не > делает, главное что бы регистрировался нормально).
Имеется в виду, что надо не пользоваться технологией CSP, а
кроссплатформенно пользоваться OpenSSL.
Здравствуйте, SiAVoL, Вы писали:
SAV>Здравствуйте, Erick, Вы писали:
E>>А что делала твоя прога? SAV>шифровала :) Короче это был CSP провайдер с реализацие алгоритмов, основанных на RSA (в девичестве Rijndael).
E>>Об ЭЦП написано в: E>>ГОСТ Р 34.10-2001 «Процессы формирования и проверки электронной цифровой подписи» (принят в 2001 году взамен устаревшего ГОСТ Р 34.10-94); E>>ГОСТ Р 34.11-94 «Функция хэширования»; E>>Вопрос, где их найти в свободном доступе? ГОСТ Р 34.10-94 нашёл, а остальные не могу. SAV>Ты опиши что тебе надо? ГОСТы по криптоалгоритмам и криптографическим системам или алгоритмы? Если ГОСТы, то можно попытаться поискать на www.gost.ru. Если алгоритмы, то хорошего рускоязычного такого сайта я не видел (хотя давно уже не шерстил инет в этом направлении, может и появились). А из литературы можно обратиться к класикам — Брюс Шнайер — Прикладная криптография
Именно стандарты. А алгоритмы найти не проблема.
Если кому интересно:Криптография в банковском деле