![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ЭЦП [D7, Win95/98, Win2k]
VitaWED © (2004-11-04 08:31:00)Ув. мастера. Вопрос на засыпку:
у нас есть подписанный файл и сама подпись.
Как средствами Delphi или еще через что нибудь установить
соответстует ли ЭЦП файлу или нет?
Может быть кто ресурсик на эту тему подкинет????
DN (2004-11-04 12:44:00) [1]:))
Sha (2004-11-04 11:57:00) [2]>DN © (04.11.04 11:36) [8]
Знаю, что читал :)
Совет не тебе, а автору вопроса.
DN (2004-11-04 11:36:00) [3]> Sha © (04.11.04 10:45) [7]
Я это читал, Саша, спасибо :)))
Sha (2004-11-04 10:45:00) [4]>DN © (04.11.04 10:27) [6]
Есть способ проще: http://www.delphi-jedi.org/APILIBRARY:
5-ая строка - CryptoAPI2.zip
DN (2004-11-04 10:27:00) [5]Слышали, объект есть такой, но гораздо менее функциональный, чем
Microsoft Crypto Api, есть еще ENROLL, тоже не супер, так что на Ваш выбор.
VitaWED (2004-11-04 10:01:00) [6]Здорово. А никто не слышал про CAPICOM, что это за зверь и с чем его едят?
DN (2004-11-04 09:18:00) [7]Нас таким теперь не засыпешь :))))))))
Sha (2004-11-04 09:12:00) [8]
function VerifySign(const Data, Signature, PublicKey: string): boolean;
var
Key: HCRYPTKey;
Hash: HCRYPTHash;
begin;
Result:=false;
if CryptCreateHash(hProv, alg, 0, 0, @Hash) then begin;
if CryptHashData(Hash, pointer(Data), Length(Data), 0) then begin;
if CryptImportKey(hProv, pointer(PublicKey), Length(PublicKey), 0, 0, @Key) then begin; //èìïîðò îòêðûòîãî êëþ÷à ïîäïèñè îòïðàâèòåëÿ
if CryptVerifySignature(Hash, pointer(Signature), Length(Signature), Key, nil, 0) then begin; // ïðîâåðêà ïîäïèñè
Result:=true;
end;
CryptDestroyKey(Key);
end;
end;
CryptDestroyHash(Hash);
end;
end;
Reindeer Moss Eater (2004-11-04 08:44:00) [9]Microsoft Crypto Api.
Если конечно библиотека, с помощью которой подписывали соответствует её спецификации.
lehich (2004-11-04 08:41:00) [10]компания FACTOR Applications выпускает специальные проги для проверки валидности, если ничего не найдешь кинь мне на мыл вопрос, покапаюсь может найду