logo
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Ден777  
#1 Оставлено : 21 июля 2019 г. 18:22:40(UTC)
Ден777

Статус: Новичок

Группы: Участники
Зарегистрирован: 19.07.2019(UTC)
Сообщений: 5
Российская Федерация

У нас управляющая компания, сейчас из-за отсутствие простой возможности настроить вывод штампа эп, мы не можем продать 200 пользователям ваш продукт.
Прочитал весь форум и Руководство по автоматизации создания и проверки электронных подписей... второй день бьюсь.
Давайте поможем друг-другу, вы мне файл,а я двигаю продукт КриптоПро.
Подписать несколько pdf файлов электронной подписью с визуализацией - получается.
Использование предустановленного оформления подписи - не получается. Подпись в акробате настроена.

Выложите работающий в рамках "Использование предустановленного оформления подписи" код файла CPPDFDSig.js
где надо будет менять только эти переменные:
pageNumber: 0,
coords: [122, 539, 422, 439],
appearanceFilter: "Fancy" // заголовок

Речь вот про этот код:
Код:
console.println('CPPDFDSig script version 2.0 was loaded.');


if (typeof CPPDF == "undefined") {
    var CPPDF = {};
}
CPPDF.sigHandlerName = "CryptoPro PDF";
CPPDF.maxSignaturesNumber = 100;

if (typeof ErrorInfo == "undefined") {
    var ErrorInfo = {
        Message: ""
    };
}

/**
* @fn CPSign
* @param[in] certificateHEX Certificate in HEX format.
* @param[in] pin PIN code of certificate container. May be null.
* @param[in] mpdfLockMode:
*                 0 - Simple Signature - allowAll;
*                 1 - Simple Signature - lock document;
*                 2 - Certification Signature - allowNone;
*                 3 - Certification Signature - default;
*                 4 - Certification Signature - defaultAndComments.
* @param[in] signReason Value is reason string. May be null.
* @param[in] signLocation Value is location string. May be null.
* @param[in] signContactInfo Value is contact info string. May be null.
* @param[in] timeStamp Value is TSP address. May be null.
* @param[in] cadesType Value is number with signature:
*                 1 - CADES BES;
*                 5 - CADES-T;
*                93 - CADES-X Long Type 1;
* @param[in] bShowCertificatesDialog true - show dialog with certificates list and pin.
* @param[in] bShowSignDialogs true - show the Save As.. dialog and the Acrobat sign dialog.
* @param[in] appearance Value is Object with parameters of SignatureAppearance. May be null. If not set invisible signature will be created.
* @return true            - Success;
*/

CPSign = app.trustedFunction(function(certificateHEX, pin, pdfLockMode, signReason, signLocation, signContactInfo, timeStamp, bShowCertificatesDialog, bShowSignDialogs, appearance, cadesType) {

    if (typeof (bShowCertificatesDialog) === 'undefined') bShowCertificatesDialog = false;
    if (typeof (bShowSignDialogs) === 'undefined') bShowSignDialogs = false;
    if (typeof (appearance) === 'undefined') appearance = null;

    var signResult = false;

    var theDoc = this;
    if (theDoc == null) {
        return "Íå óäàëîñü îòêðûòü äîêóìåíò PDF.";
    }

    var theCert = { binary: certificateHEX };

    var signatureField = null;
    var fieldIndex = 0;
    var signatureFieldName;

    app.beginPriv();

    try {
        for (fieldIndex = 0; fieldIndex < CPPDF.maxSignaturesNumber; fieldIndex++) {

            if (fieldIndex == 0) {
                signatureFieldName = 'CPPDFDSig signature';
            }
            else {
                signatureFieldName = 'CPPDFDSig signature ' + fieldIndex;
            }

            signatureField = theDoc.getField(signatureFieldName);
            if (signatureField == null) {

                var pageNumber = 0;
                var appearanceCoords = [0, 0, 0, 0];
                if (appearance != null) {
                    if (typeof (appearance.pageNumber) !== 'undefined') pageNumber = appearance.pageNumber;
                    if (typeof (appearance.coords) !== 'undefined') appearanceCoords = appearance.coords;
                }
                signatureField = theDoc.addField(signatureFieldName, 'signature', pageNumber, appearanceCoords);
                if (signatureField == null) {

                    app.endPriv();
                    return "Íå óäàëîñü ñîçäàòü ïîëå äëÿ ïîäïèñè â äîêóìåíòå.";
                }
                break;
            }
        }
    }
    catch (ex) {
        return "Îøèáêà ïðè ñîçäàíèè ïîëÿ äëÿ ïîäïèñè: " + ex.message + "Âîçìîæíî èçìåíåíèÿ â äîêóìåíòå çàïðåùåíû.";

    }

    var customAppearance = null;
    if (appearance != null) {
        if (typeof (appearance.appearanceFilter) !== 'undefined') {
            signatureField.signatureSetSeedValue({ appearanceFilter: appearance.appearanceFilter });
        }
        else if (typeof (appearance.customAppearance) !== 'undefined') {
            customAppearance = appearance.customAppearance;

            signatureField.delay = true;
            if (typeof (appearance.customAppearance.borderStyle) !== 'undefined') {
                signatureField.borderStyle = appearance.customAppearance.borderStyle;
            }
            if (typeof (appearance.customAppearance.borderColor) !== 'undefined') {
                signatureField.borderColor = appearance.customAppearance.borderColor;
            }
            if (typeof (appearance.customAppearance.borderWidth) !== 'undefined') {
                signatureField.lineWidth = appearance.customAppearance.borderWidth;
            }
            signatureField.delay = false;
        }
    }

    if (fieldIndex >= CPPDF.maxSignaturesNumber) {
        return "Ïðåâûøåíî äîïóñòèìîå êîëè÷åñòâî ïîäïèñåé â äîêóìåíòå.";
    }

    var theEngine = security.getHandler(CPPDF.sigHandlerName);
    if (theEngine == null) {
        app.endPriv();
        return "Íå óäàëîñü ïðîèíèöèàëèçèðîâàòü îáðàáîò÷èê " + CPPDF.sigHandlerName + ".";
    }

    if (!theEngine.login({ oParams: { oEndUserSignCert: theCert }, bUI: bShowCertificatesDialog })) {
        app.endPriv();
        return "Îøèáêà ïðè äîñòóïå ê ñåðòèôèêàòó. " + ErrorInfo.Message;
    }

    var signatureParameters = { reason: signReason, location: signLocation, contactInfo: signContactInfo, oCustomAppearance: customAppearance };

    if (timeStamp != null && timeStamp != "") {
        signatureParameters.timeStamp = timeStamp;
    }

    if (cadesType != null) {
        signatureParameters.cadesType = cadesType;
    }

    if (pin != null && pin.length != 0) {
        signatureParameters.password = pin;
    }

    try {
        switch (pdfLockMode) {
            case 0:
                break;
            case 1:
                signatureField.signatureSetSeedValue({ lockDocument: "true" });
                break;
            case 2:
                signatureField.signatureSetSeedValue({ mdp: "allowNone" });
                break;
            case 3:
                signatureField.signatureSetSeedValue({ mdp: "default" });
                break;
            case 4:
                signatureField.signatureSetSeedValue({ mdp: "defaultAndComments" });
                break;
        }
        var res = signatureField.signatureSign({ oSig: theEngine, oInfo: signatureParameters, bUI: bShowSignDialogs });
        if (res != true) {
            throw false;
        }
        signResult = true;
    }
    catch (ex) {
        app.endPriv();

        var exceptionMessage = "Äîêóìåíò íå ïîäïèñàí: ";
        if (typeof (ex.message) !== 'undefined') {
            exceptionMessage += ex.message + " ";
        }
        if (typeof (ErrorInfo.Message) !== 'undefined') {
            exceptionMessage += ErrorInfo.Message;
        }
        return exceptionMessage;
    }

    app.endPriv();

    return signResult;
});

/**
* @fn CPVerify
* @param[in] reqCades true - the CAdES-X Long Type 1 format is required
* @param[in] reqCertified true - The Certification signature is required.
* @param[in] certificateHEX If this parameter is passed, all signatures will be verified at this certificate. If the value is null, a signature will be verified at an own certificate.
* @param[in] bShowVerifyDialogs true - show dialog about the signautre status.
* @param[in] reqTimestamp true - the CAdES-T format is required.
* @return 0 - All signatures are valid. And if req_cades is true, everyone of the signatures have got a valid time-stamps;
*/
CPVerify = app.trustedFunction(function(reqCades, reqCertified, certificateHEX, bShowVerifyDialogs, reqTimestamp) {

    if (typeof (bShowVerifyDialogs) === 'undefined') bShowVerifyDialogs = false;

    var validSignatureExists = false;

    var theDoc = this;
    if (theDoc == null) {
        return "Íå óäàëîñü îòêðûòü äîêóìåíò PDF.";
    }

    var loginParameters = null;
    if (certificateHEX != null) {
        var theCert = { binary: certificateHEX };
        loginParameters = { oParams: { oEndUserSignCert: theCert }, bUI: bShowVerifyDialogs };
    }
    else {
        loginParameters = null;
    }

    var signatureExists = false;
    var signatureField = null;

    for (var fieldIndex = 0; fieldIndex < theDoc.numFields; fieldIndex++) {

        signatureField = theDoc.getField(theDoc.getNthFieldName(fieldIndex));
        if (signatureField == null) {
            return "Äîêóìåíò íå ñîäåðæèò ïîäïèñåé.";
        }

        if (signatureField.type == "signature") {

            app.beginPriv();
            
            var theEngine = security.getHandler(CPPDF.sigHandlerName);
            if (theEngine == null) {
                app.endPriv();
                return "Íå óäàëîñü ïðîèíèöèàëèçèðîâàòü îáðàáîò÷èê " + CPPDF.sigHandlerName + ".";
            }

            if (certificateHEX != null && certificateHEX != "") {
                if (!theEngine.login(loginParameters)) {
                    app.endPriv();
                    return "Îøèáêà ïðè äîñòóïå ê ñåðòèôèêàòó. " + ErrorInfo.Message;
                }
            }
            
            var signatureStatus = null;
            
            try {
                signatureStatus = signatureField.signatureValidate({ oSig: theEngine });
            }
            catch (ex) {
                app.endPriv();

                var exceptionMessage = "Îøèáêà ïðè ïðîâåðêå ïîäïèñè: " + ex.message;
                if (typeof (ErrorInfo.Message) !== 'undefined') {
                    exceptionMessage += ErrorInfo.Message;
                }
                return exceptionMessage;
            }

            // Not a signature field or Signature is blank
            if (0 >= signatureStatus) {
                continue;
            }

            signatureExists = true;

            var signatureInfo = signatureField.signatureInfo();
            if (signatureInfo == null) {
                return "Íå óäàëîñü ïîëó÷èòü èíôîðìàöèþ î ñòàòóñå ïîäïèñè";
            }

            // Ïðîâåðÿåì, ñîîòâåòñòâóåò ëè ïîäïèñü êðèòåðèÿì:
            // Certification signature
            if (reqCertified) {
                if (signatureInfo.mdp == null) {
                    continue;
                }
            } else {
                if (signatureInfo.mdp != null) {
                    continue;
                }
            }
            // Signer identity
            if (certificateHEX) {
                if (certificateHEX != signatureInfo.certificates[0].binary) {
                    continue;
                }
            }

            // Signature CAdES format
            // VerifiedCadesType èíèöèàëèçèðóåòñÿ â ïëàãèíå
            // Âîçìîæíûå çíà÷åíèÿ:
            //  CADES_BES		0x00000001
            //  CADES_T                 0x00000005
            //  CADES_X_LONG_TYPE_1	0x0000005D
            if (reqCades)
            {
                if (VerifiedCadesType != 93 ||
                        !signatureInfo.dateTrusted)
                {
                    continue;
                }
            }
            else if (reqTimestamp)
            {
                if (VerifiedCadesType != 5 ||
                    !signatureInfo.dateTrusted) {
                    continue;
                }
            }

            // Signature of document is valid,
            // identity of signer is valid
            if (4 == signatureStatus) {
                validSignatureExists = true;
                return validSignatureExists;
            }
            // Signature of document is valid,
            // identity of signer could not be verified
            if (3 == signatureStatus) {
                return "Ñåðòèôèêàò ïîäïèñàâøåãî íå ïðîøåë ïðîâåðêó.";
            }

            // Ïîäïèñü ñîîòâåòñòâóåò êðèòåðèÿì, íî íåâåðíà.
            // Unknown status
            if (1 == signatureStatus) {
                return "Ïîäïèñü íåîïðåäåëåíà."
            }
            // Signature is invalid
            if (2 == signatureStatus) {
                return "Ïîäïèñü íåäåéñòâèòåëüíà.";
            }

            app.endPriv();
        }
    }
    
    if (!signatureExists) {
        return "Äîêóìåíò íå ñîäåðæèò ïîäïèñåé.";
    }
    return "Äîêóìåíò íå ñîäåðæèò ïîäïèñåé, ñîîòâåòñòâóþùèõ çàäàííûì êðèòåðèÿì.";
});

// SIG // Begin signature block
// SIG // MIIY4wYJKoZIhvcNAQcCoIIY1DCCGNACAQExCzAJBgUr
// SIG // DgMCGgUAMGcGCisGAQQBgjcCAQSgWTBXMDIGCisGAQQB
// SIG // gjcCAR4wJAIBAQQQEODJBs441BGiowAQS9NQkAIBAAIB
// SIG // AAIBAAIBAAIBADAhMAkGBSsOAwIaBQAEFHdjypNA26s0
// SIG // uGfYraulM9T5Cm1QoIITojCCA+4wggNXoAMCAQICEH6T
// SIG // 6/t8xk5Z6kuad9QG/DswDQYJKoZIhvcNAQEFBQAwgYsx
// SIG // CzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENh
// SIG // cGUxFDASBgNVBAcTC0R1cmJhbnZpbGxlMQ8wDQYDVQQK
// SIG // EwZUaGF3dGUxHTAbBgNVBAsTFFRoYXd0ZSBDZXJ0aWZp
// SIG // Y2F0aW9uMR8wHQYDVQQDExZUaGF3dGUgVGltZXN0YW1w
// SIG // aW5nIENBMB4XDTEyMTIyMTAwMDAwMFoXDTIwMTIzMDIz
// SIG // NTk1OVowXjELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5
// SIG // bWFudGVjIENvcnBvcmF0aW9uMTAwLgYDVQQDEydTeW1h
// SIG // bnRlYyBUaW1lIFN0YW1waW5nIFNlcnZpY2VzIENBIC0g
// SIG // RzIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
// SIG // AQCxrLNJVEuXHBIK2CV5kSJXKm/cuCbEQ3Nrwr8uUFr7
// SIG // FMJ2jkMBJUO0oeJF9Oi3e8N0zCLXtJQAAvdN7b+0t0Qk
// SIG // a81fRTvRRM5DEnMXgotptCvLmR6schsmTXEfsTHd+1Fh
// SIG // AlOmqvVJLAV4RaUvic7nmef+jOJXPz3GktxK+Hsz5HkK
// SIG // +/B1iEGc/8UDUZmq12yfk2mHZSmDhcJgFMTIyTsU2sCB
// SIG // 8B8NdN6SIqvK9/t0fCfm90obf6fDni2uiuqm5qonFn1h
// SIG // 95hxEbziUKFL5V365Q6nLJ+qZSDT2JboyHylTkhE/xni
// SIG // RAeSC9dohIBdanhkRc1gRn5UwRN8xXnxycFxAgMBAAGj
// SIG // gfowgfcwHQYDVR0OBBYEFF+a9W5czMx0mtTdfe8/2+xM
// SIG // gC7dMDIGCCsGAQUFBwEBBCYwJDAiBggrBgEFBQcwAYYW
// SIG // aHR0cDovL29jc3AudGhhd3RlLmNvbTASBgNVHRMBAf8E
// SIG // CDAGAQH/AgEAMD8GA1UdHwQ4MDYwNKAyoDCGLmh0dHA6
// SIG // Ly9jcmwudGhhd3RlLmNvbS9UaGF3dGVUaW1lc3RhbXBp
// SIG // bmdDQS5jcmwwEwYDVR0lBAwwCgYIKwYBBQUHAwgwDgYD
// SIG // VR0PAQH/BAQDAgEGMCgGA1UdEQQhMB+kHTAbMRkwFwYD
// SIG // VQQDExBUaW1lU3RhbXAtMjA0OC0xMA0GCSqGSIb3DQEB
// SIG // BQUAA4GBAAMJm495739ZMKrvaLX64wkdu0+CBl03X6ZS
// SIG // nxaN6hySCURu9W3rWHww6PlpjSNzCxJvR6muORH4KrGb
// SIG // sBrDjutZlgCtzgxNstAxpghcKnr84nodV0yoZRjpeUBi
// SIG // JZZux8c3aoMhCI5B6t3ZVz8dd0mHKhYGXqY4aiISo1EZ
// SIG // g362MIIEozCCA4ugAwIBAgIQDs/0OMj+vzVuBNhqmBsa
// SIG // UDANBgkqhkiG9w0BAQUFADBeMQswCQYDVQQGEwJVUzEd
// SIG // MBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xMDAu
// SIG // BgNVBAMTJ1N5bWFudGVjIFRpbWUgU3RhbXBpbmcgU2Vy
// SIG // dmljZXMgQ0EgLSBHMjAeFw0xMjEwMTgwMDAwMDBaFw0y
// SIG // MDEyMjkyMzU5NTlaMGIxCzAJBgNVBAYTAlVTMR0wGwYD
// SIG // VQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjE0MDIGA1UE
// SIG // AxMrU3ltYW50ZWMgVGltZSBTdGFtcGluZyBTZXJ2aWNl
// SIG // cyBTaWduZXIgLSBHNDCCASIwDQYJKoZIhvcNAQEBBQAD
// SIG // ggEPADCCAQoCggEBAKJjCzlEuLsjp0RJuw7/ofBhClOT
// SIG // sJjbrSwPSsVu/4Y8U1UPFc4EPyv9qZaW2b5heQtbyUyG
// SIG // duXgQ0sile7CK0PBn9hotI5AT+6FOLkRxSPyZFjwFTJv
// SIG // TlehroikAtcqHs1L4d1j1ReJMluwXplaqJ0oUA4X7pbb
// SIG // YTtFUR3PElYLkkf8q672Zj1HrHBy55LnX80QucSDZJQZ
// SIG // vSWA4ejSIqXQugJ6oXeTW2XD7hd0vEGGKtwITIySjJEt
// SIG // nndEH2jWqHR32w5bMotWizO92WPISZ06xcXqMwvS8aMb
// SIG // 9Iu+2bNXizveBKd6IrIkri7HcMW+ToMmCPsLvalPmQjh
// SIG // EChyqs0CAwEAAaOCAVcwggFTMAwGA1UdEwEB/wQCMAAw
// SIG // FgYDVR0lAQH/BAwwCgYIKwYBBQUHAwgwDgYDVR0PAQH/
// SIG // BAQDAgeAMHMGCCsGAQUFBwEBBGcwZTAqBggrBgEFBQcw
// SIG // AYYeaHR0cDovL3RzLW9jc3Aud3Muc3ltYW50ZWMuY29t
// SIG // MDcGCCsGAQUFBzAChitodHRwOi8vdHMtYWlhLndzLnN5
// SIG // bWFudGVjLmNvbS90c3MtY2EtZzIuY2VyMDwGA1UdHwQ1
// SIG // MDMwMaAvoC2GK2h0dHA6Ly90cy1jcmwud3Muc3ltYW50
// SIG // ZWMuY29tL3Rzcy1jYS1nMi5jcmwwKAYDVR0RBCEwH6Qd
// SIG // MBsxGTAXBgNVBAMTEFRpbWVTdGFtcC0yMDQ4LTIwHQYD
// SIG // VR0OBBYEFEbGaaMOShQe1UzaUmMXP142vA3mMB8GA1Ud
// SIG // IwQYMBaAFF+a9W5czMx0mtTdfe8/2+xMgC7dMA0GCSqG
// SIG // SIb3DQEBBQUAA4IBAQB4O7SRKgBM8I9iMDd4o4QnB28Y
// SIG // st4l3KDUlAOqhk4ln5pAAxzdzuN5yyFoBtq2MrRtv/Qs
// SIG // JmMz5ElkbQ3mw2cO9wWkNWx8iRbG6bLfsundIMZxD82V
// SIG // dNy2XN69Nx9DeOZ4tc0oBCCjqvFLxIgpkQ6A0RH83Vx2
// SIG // bk9eDkVGQW4NsOo4mrE62glxEPwcebSAe6xp9P2ctgwW
// SIG // K/F/Wwk9m1viFsoTgW0ALjgNqCmPLOGy9FqpAa8VnCwv
// SIG // SRvbIrvD/niUUcOGsYKIXfA9tFGheTMrLnu53CAJE3Hr
// SIG // ahlbz+ilMFcsiUk/uc9/yb8+ImhjU5q9aXSsxR08f5Lg
// SIG // w7wc2AR1MIIE9zCCA9+gAwIBAgIQQn2sKx+vD/pywTCn
// SIG // h3aL7TANBgkqhkiG9w0BAQUFADCBtDELMAkGA1UEBhMC
// SIG // VVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYD
// SIG // VQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYD
// SIG // VQQLEzJUZXJtcyBvZiB1c2UgYXQgaHR0cHM6Ly93d3cu
// SIG // dmVyaXNpZ24uY29tL3JwYSAoYykxMDEuMCwGA1UEAxMl
// SIG // VmVyaVNpZ24gQ2xhc3MgMyBDb2RlIFNpZ25pbmcgMjAx
// SIG // MCBDQTAeFw0xNjAyMTAwMDAwMDBaFw0xOTAzMTEyMzU5
// SIG // NTlaMFkxCzAJBgNVBAYTAlJVMQ8wDQYDVQQIEwZNb3Nj
// SIG // b3cxDzANBgNVBAcTBk1vc2NvdzETMBEGA1UEChQKQ1JZ
// SIG // UFRPLVBSTzETMBEGA1UEAxQKQ1JZUFRPLVBSTzCCASIw
// SIG // DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALjs2u7U
// SIG // Pi1UYMvLyPU4r6/phkUR+sN30RyN86OrFnvKkN7yd/YR
// SIG // AgSYhQ+Of6uC5/fmi2bc5KKGTDKngYxSJCRubUE9HO8Z
// SIG // cvHeyKG+Oje/qxPokw/SbF5JVKcIX7wsOOTAZUMjCfPg
// SIG // Pj1we8CJ8xAsIGQLkREO4TNPUpiZ6Jgdpf2pdUdTP13e
// SIG // K20UsInx2XDK7PD87dLBITz+OL/5W0Er6z+QtIcqh3X+
// SIG // PQ8+Hmy1yMMq1dCVZSAKB+/mpoYXqgeZi2RAgMpS/FUZ
// SIG // ZEX9VJ+Jjn7mu8xCiyqWN+xQlYU90Il+Y4ofNryOtERo
// SIG // ZroCZD6di9R5dF+43O1sA2LYaccCAwEAAaOCAV0wggFZ
// SIG // MAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgeAMCsGA1Ud
// SIG // HwQkMCIwIKAeoByGGmh0dHA6Ly9zZi5zeW1jYi5jb20v
// SIG // c2YuY3JsMGEGA1UdIARaMFgwVgYGZ4EMAQQBMEwwIwYI
// SIG // KwYBBQUHAgEWF2h0dHBzOi8vZC5zeW1jYi5jb20vY3Bz
// SIG // MCUGCCsGAQUFBwICMBkMF2h0dHBzOi8vZC5zeW1jYi5j
// SIG // b20vcnBhMBMGA1UdJQQMMAoGCCsGAQUFBwMDMFcGCCsG
// SIG // AQUFBwEBBEswSTAfBggrBgEFBQcwAYYTaHR0cDovL3Nm
// SIG // LnN5bWNkLmNvbTAmBggrBgEFBQcwAoYaaHR0cDovL3Nm
// SIG // LnN5bWNiLmNvbS9zZi5jcnQwHwYDVR0jBBgwFoAUz5mp
// SIG // 6nsm9EvJjo/X8AUm7+PSp50wHQYDVR0OBBYEFPEPS1iz
// SIG // 7ycXjB9eybUifdOi9qppMA0GCSqGSIb3DQEBBQUAA4IB
// SIG // AQBP+6ddXehEkh3dqGA6JqykSezR4/+Xo7TWdUkhYfyD
// SIG // 4Fa6YuM00UTj2QpCSfyxIycQRuelHAelu7SXRVcyJJQO
// SIG // r6nEi93uQ/TWIS5wry+qtf07uEvBKFw0YJyW6JU7DqDT
// SIG // RY7p9VcNKdpf0d652vEKEXAweigOIjgE+NpdBqE5/u4y
// SIG // C+nSNlmzOjATkou106UuqzDj1qSJiUMlwkFJKSscllpc
// SIG // Sgb7/3b5DaWY7hCs4gyShhNNR6Nni4OfcECRh7gMqHbh
// SIG // y8ujkI6qyn5VOhThgr9D/uPBxtRK+5LSaGQMgFEChYzj
// SIG // kHF8Qwh1n4GnlviC5NkHnGe78vdnoW8nyQmDMIIGCjCC
// SIG // BPKgAwIBAgIQUgDlqiVW/BqG7ZbJ1EszxzANBgkqhkiG
// SIG // 9w0BAQUFADCByjELMAkGA1UEBhMCVVMxFzAVBgNVBAoT
// SIG // DlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2ln
// SIG // biBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAw
// SIG // NiBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVk
// SIG // IHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFz
// SIG // cyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24g
// SIG // QXV0aG9yaXR5IC0gRzUwHhcNMTAwMjA4MDAwMDAwWhcN
// SIG // MjAwMjA3MjM1OTU5WjCBtDELMAkGA1UEBhMCVVMxFzAV
// SIG // BgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZW
// SIG // ZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJU
// SIG // ZXJtcyBvZiB1c2UgYXQgaHR0cHM6Ly93d3cudmVyaXNp
// SIG // Z24uY29tL3JwYSAoYykxMDEuMCwGA1UEAxMlVmVyaVNp
// SIG // Z24gQ2xhc3MgMyBDb2RlIFNpZ25pbmcgMjAxMCBDQTCC
// SIG // ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPUj
// SIG // S16l14q7MunUV/fv5Mcmfq0ZmP6onX2U9jZrENd1gTB/
// SIG // BGh/yyt1Hs0dCIzfaZSnN6Oce4DgmeHuN01fzjsU7obU
// SIG // 0PUnNbwlCzinjGOdF6MIpauw+81qYoJM1SHaG9nx44Q7
// SIG // iipPhVuQAU/Jp3YQfycDfL6ufn3B3fkFvBtInGnnwKQ8
// SIG // PEEAPt+W5cXklHHWVQHHACZKQDy1oSapDKdtgI6QJXvP
// SIG // vz8c6y+W+uWHd8a1VrJ6O1QwUxvfYjT/HtH0WpMoheVM
// SIG // F05+W/2kk5l/383vpHXv7xX2R+f4GXLYLjQaprSnTH69
// SIG // u08MPVfxMNamNo7WgHbXGS6lzX40LYkCAwEAAaOCAf4w
// SIG // ggH6MBIGA1UdEwEB/wQIMAYBAf8CAQAwcAYDVR0gBGkw
// SIG // ZzBlBgtghkgBhvhFAQcXAzBWMCgGCCsGAQUFBwIBFhxo
// SIG // dHRwczovL3d3dy52ZXJpc2lnbi5jb20vY3BzMCoGCCsG
// SIG // AQUFBwICMB4aHGh0dHBzOi8vd3d3LnZlcmlzaWduLmNv
// SIG // bS9ycGEwDgYDVR0PAQH/BAQDAgEGMG0GCCsGAQUFBwEM
// SIG // BGEwX6FdoFswWTBXMFUWCWltYWdlL2dpZjAhMB8wBwYF
// SIG // Kw4DAhoEFI/l0xqGrI2Oa8PPgGrUSBgsexkuMCUWI2h0
// SIG // dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lm
// SIG // MDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6Ly9jcmwudmVy
// SIG // aXNpZ24uY29tL3BjYTMtZzUuY3JsMDQGCCsGAQUFBwEB
// SIG // BCgwJjAkBggrBgEFBQcwAYYYaHR0cDovL29jc3AudmVy
// SIG // aXNpZ24uY29tMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggr
// SIG // BgEFBQcDAzAoBgNVHREEITAfpB0wGzEZMBcGA1UEAxMQ
// SIG // VmVyaVNpZ25NUEtJLTItODAdBgNVHQ4EFgQUz5mp6nsm
// SIG // 9EvJjo/X8AUm7+PSp50wHwYDVR0jBBgwFoAUf9Nlp8Ld
// SIG // 7LvwMAnzQzn6Aq8zMTMwDQYJKoZIhvcNAQEFBQADggEB
// SIG // AFYi5jSkxGHLSLkBrVaoZA/ZjJHEu8wM5a16oCJ/30c4
// SIG // Si1s0X9xGnzscKmx8E/kDwxT+hVe/nSYSSSFgSYckRRH
// SIG // sExjjLuhNNTGRegNhSZzA9CpjGRt3HGS5kUFYBVZUTn8
// SIG // WBRr/tSk7XlrCAxBcuc3IgYJviPpP0SaHulhncyxkFz8
// SIG // PdKNrEI9ZTbUtD1AKI+bEM8jJsxLIMuQH12MTDTKPNjl
// SIG // N9ZvpSC9NOsm2a4N58Wa96G0IZEzb4boWLslfHQOWP51
// SIG // G2M/zjF8m48blp7FU3aEW5ytkfqs7ZO6XcghU8KCU2Ov
// SIG // Eg1QhxEbPVRSloosnD2SGgiaBS7Hk6VIkdMxggStMIIE
// SIG // qQIBATCByTCBtDELMAkGA1UEBhMCVVMxFzAVBgNVBAoT
// SIG // DlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2ln
// SIG // biBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBv
// SIG // ZiB1c2UgYXQgaHR0cHM6Ly93d3cudmVyaXNpZ24uY29t
// SIG // L3JwYSAoYykxMDEuMCwGA1UEAxMlVmVyaVNpZ24gQ2xh
// SIG // c3MgMyBDb2RlIFNpZ25pbmcgMjAxMCBDQQIQQn2sKx+v
// SIG // D/pywTCnh3aL7TAJBgUrDgMCGgUAoIGqMBkGCSqGSIb3
// SIG // DQEJAzEMBgorBgEEAYI3AgEEMBwGCisGAQQBgjcCAQsx
// SIG // DjAMBgorBgEEAYI3AgEVMCMGCSqGSIb3DQEJBDEWBBQp
// SIG // XI5G9r5oEE2AUpW8WP2BRCIxGzBKBgorBgEEAYI3AgEM
// SIG // MTwwOqAcgBoEGgRABDgEPwRCBD4EHwRABD4AIABQAEQA
// SIG // RqEagBhodHRwOi8vd3d3LmNyeXB0b3Byby5ydSAwDQYJ
// SIG // KoZIhvcNAQEBBQAEggEAnMi96d6uOIv6WMQAb7hQfCJa
// SIG // 5x6HVrr1tYa3K87rGa/KfGR166AAE+s0N+5Dx3vtYVlE
// SIG // EB4KlniIEs7Ra4t2Kq31JI414o2wUA/E0r9d9UL2ZGKQ
// SIG // 6cdzScIS0M1FTgDWjCEh2Ssffl69aw7KACJjF8JPOxuS
// SIG // KNBWsocLoPjUqYV+87HkpLcKKuwgrYRePygzpdV6Y9aw
// SIG // vu9hWQ79cSIv6lTpOAlp1m9Z4E8B02xpYbKcmsxhd+Vu
// SIG // wUsizF/LUbjYd2+XaA5cKzHwXAFwVx7HdtYe1+aZtFdl
// SIG // jttOtXgfC50f0X74vtsw+SzoiwQkibwTHl1zEeqVdB6Z
// SIG // KxnKIMJzOaGCAgswggIHBgkqhkiG9w0BCQYxggH4MIIB
// SIG // 9AIBATByMF4xCzAJBgNVBAYTAlVTMR0wGwYDVQQKExRT
// SIG // eW1hbnRlYyBDb3Jwb3JhdGlvbjEwMC4GA1UEAxMnU3lt
// SIG // YW50ZWMgVGltZSBTdGFtcGluZyBTZXJ2aWNlcyBDQSAt
// SIG // IEcyAhAOz/Q4yP6/NW4E2GqYGxpQMAkGBSsOAwIaBQCg
// SIG // XTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqG
// SIG // SIb3DQEJBTEPFw0xODExMTkwNzQ3NDlaMCMGCSqGSIb3
// SIG // DQEJBDEWBBRNm0DApR370/I700w4+In3XzBMuzANBgkq
// SIG // hkiG9w0BAQEFAASCAQBajs04cNFN6OUeb2C8zsP4Ku5o
// SIG // CTWqbt8MKQZ0sVlCKyYGX4RJl00gFVR+dEiI/Vtsi+5v
// SIG // f6Mrzi0hMqolIJVwpLInXn5a+Dw7QnQzCpvKBgHDYz8x
// SIG // e1w80EyEdf9iEVlbcBe6YhoFg6pyz8RF6A9MfaWwBnrG
// SIG // ErYfpvr4YJ7eUHg7Xz6nDijvVFuQHeG/bQdryYyVRhTQ
// SIG // N0wvj0lQ9Yw4dMv29mwSrlCEQw18XzEiDa7vQi0NQxVz
// SIG // xyGpzRhAqFDVpmVtODwO4obQXsxjW4ZuOZmrPnI40hMl
// SIG // Kyxw81K/i50QVcC2BYHVRcnBzgIksxnjLVu+Pn1i6XzV
// SIG // yCP/hYrG
// SIG // End signature block


Offline Ден777  
#2 Оставлено : 22 июля 2019 г. 9:39:27(UTC)
Ден777

Статус: Новичок

Группы: Участники
Зарегистрирован: 19.07.2019(UTC)
Сообщений: 5
Российская Федерация

Заранее спасибо!
Offline Ден777  
#3 Оставлено : 22 июля 2019 г. 15:37:32(UTC)
Ден777

Статус: Новичок

Группы: Участники
Зарегистрирован: 19.07.2019(UTC)
Сообщений: 5
Российская Федерация

Подробную информацию и примеры программного кода можно найти на форуме КРИПТОПРО по адресу:
http://www.cryptopro.ru/...sts&t=4205#post23002

В инструкции не работает ссылка:
kripto.PNG (5kb) загружен 3 раз(а).
Offline Андрей Писарев  
#4 Оставлено : 22 июля 2019 г. 15:52:39(UTC)
Андрей Писарев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 8,243
Мужчина
Российская Федерация

Сказал «Спасибо»: 279 раз
Поблагодарили: 1151 раз в 912 постах
Автор: Ден777 Перейти к цитате
Подробную информацию и примеры программного кода можно найти на форуме КРИПТОПРО по адресу:
http://www.cryptopro.ru/...sts&t=4205#post23002

В инструкции не работает ссылка:
kripto.PNG (5kb) загружен 3 раз(а).




Здравствуйте.

Какая именно ссылка не работает?

Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#5 Оставлено : 22 июля 2019 г. 15:57:24(UTC)
Андрей Писарев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 8,243
Мужчина
Российская Федерация

Сказал «Спасибо»: 279 раз
Поблагодарили: 1151 раз в 912 постах
Автор: Ден777 Перейти к цитате
Заранее спасибо!


Вы пробовали связываться через контакты указанные на странице?
Или создать обращение на портале.

Здесь форум.
Техническую поддержку оказываем тут
Наша база знаний
Offline Ден777  
#6 Оставлено : 22 июля 2019 г. 16:02:25(UTC)
Ден777

Статус: Новичок

Группы: Участники
Зарегистрирован: 19.07.2019(UTC)
Сообщений: 5
Российская Федерация

Автор: Андрей Писарев Перейти к цитате
Автор: Ден777 Перейти к цитате
Заранее спасибо!

Вы пробовали связываться через контакты указанные на странице?
Или создать обращение на портале.
Здесь форум.

По телефону звонил, специалист по этому направлению в отпуске Brick wall
Отправили на портале попробую там задать вопрос.
Offline Ден777  
#7 Оставлено : 22 июля 2019 г. 16:18:46(UTC)
Ден777

Статус: Новичок

Группы: Участники
Зарегистрирован: 19.07.2019(UTC)
Сообщений: 5
Российская Федерация

Создал обращение на портале техподдержки.
Offline Михаил Селезнёв  
#8 Оставлено : 14 августа 2019 г. 13:59:29(UTC)
Михаил Селезнёв

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 05.04.2017(UTC)
Сообщений: 114
Мужчина
Российская Федерация

Сказал «Спасибо»: 1 раз
Поблагодарили: 14 раз в 14 постах
Добрый день!
Прошу уточнить, Вы хотите интегрироваться с нашим плагином из своей системы или использовать наш cppdfutil (или мастер пакетной подписи)?
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.