от
Мне нужно написать тестовый комплект для существующего сайта Classic Asp, который использует компоненты VB6 / CAPICOM. Цель состоит в том, чтобы воссоздать результат SignedData.Sign (), чтобы я мог отправить его на сайт Classic Asp, где он будет декодировать полезную нагрузку, используя CAPICOM. VB6 CAPICOM для справки
Function SignContent(ByVal strXmlToSign As String) As String
    Dim strSignedString As String
    Dim objSign As SignedData ‘ From CAPICOM library
    Set objSign = New SignedData
    objSign.Content = strXmlToSign
    strSignedString = objSign.Sign
    Set objSign = Nothing
    SignContent = strSignedString
End Function
Я использовал документы CAPICOM здесь в качестве руководства Эквивалент C #
public string Sign(string dataToSign)
{    
    ContentInfo contentInfo = new ContentInfo(Encoding.UTF8.GetBytes(dataToSign));

    // Create a new, nondetached SignedCms message.
    SignedCms signedCms = new SignedCms(contentInfo);

    // get cert from store by Serial Number
    X509Certificate2 cert = GetCertificateBy("my

До сих пор сгенерированная C # подпись не может быть декодирована компонентом CAPICOM.
    

        

Пожалуйста, войдите или зарегистрируйтесь для публикации ответа на этот вопрос.

...