| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > xmldsig |
| Автор: Хал 1.10.2008, 10:23 |
| Помогите разобраться, пожалуйста! Нужно подписывать xml-документ. ЭЦП должна выглядеть примерно так: <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"> - <SignedInfo> <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /> <SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411" /> - <Reference URI=""> - <Transforms> <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /> <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /> </Transforms> <DigestMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr3411" /> <DigestValue>yGX+A3mp/reigEPpvDsuyCgxFRo8soS+QeeGJic6tng=</DigestValue> </Reference> </SignedInfo> <SignatureValue>qQiqVgw8qA3JMKugL6qS79MrTHzlpTTL5ia/oPeJj8PPM1prAXz4D6d7dwqLkVc9jFIiG6zDI3fSlI8f/NQFjw==</SignatureValue> - <KeyInfo> - <X509Data> <X509Certificate>MIIDWzCCAwqgAwIBAgIKbT7/ogABAAAANTAIBgYqhQMCAgMwOjESMBAGCgmSJomT8ixkARkWAnJ1MRMwEQYKCZImiZPyLGQBGRYDZWlwMQ8wDQYDVQQDEwZyb290Y2EwHhcNMDgwNzA5MTIwMzAwWhcNMDkwNzA5MTIxMjAwWjAwMQswCQYDVQQGEwJSVTEPMA0GA1UEChMGSVBJUkFOMRAwDgYDVQQDEwdFaXBVc2VyMGMwHAYGKoUDAgITMBIGByqFAwICJAAGByqFAwICHgEDQwAEQJhlmTT/OgBe31an/SVFODO6tRwX6d4sLoibenykt0nbyZ1Ni4dTYbRZblt3651ECLslPL4VvPcyFdw+CHN/bSejggH4MIIB9DAOBgNVHQ8BAf8EBAMCBPAwHAYDVR0lBBUwEwYIKwYBBQUHAwIGByqFAwICIgcwHQYDVR0OBBYEFPpg8x793lR0pWk9pV3a/aZtfq1vMB8GA1UdIwQYMBaAFDNYjwh/7HNmUpsrk+mM++B5fFehMIG1BgNVHR8Ega0wgaowgaeggaSggaGGcWxkYXA6Ly8vQ049cm9vdGNhKDEpLENOPVVTU0EsQ049Q0RQLENOPVB1YmxpYyBLZXkgU2VydmljZXMsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz1laXAsREM9cnV1c3NhZC5laXAucnUwhixodHRwOi8vdXNzYWQuZWlwLnJ1L0NlcnRFbnJvbGwvcm9vdGNhKDEpLmNybDCBywYIKwYBBQUHAQEEgb4wgbswcgYIKwYBBQUHMAKGZmxkYXA6Ly8vQ049cm9vdGNhLENOPUFJQSxDTj1QdWJsaWMgS2V5IFNlcnZpY2VzLENOPVNlcnZpY2VzLENOPUNvbmZpZ3VyYXRpb24sREM9ZWlwLERDPXJ1dXNzYWQuZWlwLnJ1MTBFBggrBgEFBQcwAoY5aHR0cDovL3Vzc2FkLmVpcC5ydS9DZXJ0RW5yb2xsL3Vzc2FkLmVpcC5ydV9yb290Y2EoMSkuY3J0MAgGBiqFAwICAwNBAHFL7Hc9oC2xpiIonvx88naO/zoH4MyH5CPtJhBhkL5QaTARfXZo1Jf/pR0ehpyMYTY6w0Rwen0Q2ocNTSwgvvY=</X509Certificate> </X509Data> </KeyInfo> </Signature> Вопрос: как это можно реализовать в C++ Builder? Сделать это нужно быстро, а в криптографии этой я не очень-то(( Вот нашел в MSDN SignedXml::ComputeSignature Method и т.п. Это то или нет? Если да, то как его подключить правильно к Билдеру? это из примера msdn на VC++. Как это же в Борланде подключить? А то я что-то туго соображаю уже #using <System.Security.dll> #using <System.Xml.dll> using namespace System; using namespace System::Security::Cryptography; using namespace System::Security::Cryptography::Xml; using namespace System::Text; using namespace System::Xml; Добавлено через 10 минут и 30 секунд Блин, случайно создал дубликат |