Статус: Новичок
  Группы: Участники
 Зарегистрирован: 02.08.2019(UTC) Сообщений: 3   
	 
	
     | 
    
        
            
		      
                При попытке подписать файл с помощью тестового примера выдается ошибка в КриптоПро CSP ANDROID 
 Код:
2019-08-06 15:14:09.386 8977-9982/ru.cprocsp.ACSP E/ACSP: Error building certification path for OID.1.2.643.100.3=#120B3135373030303030303030, OID.1.2.643.100.1=#120D31303236333030303030303030, OID.1.2.643.3.131.1.1=#120C303036333030303030303030, GIVENNAME=Test Test, SURNAME=Test, EMAILADDRESS=test@test.com, L=Test, ST=?? ?????????, C=RU, O=Test, CN=Test: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    Error building certification path for OID.1.2.643.100.3=#120B3135373030303030303030, OID.1.2.643.100.1=#120D31303236333030303030303030, OID.1.2.643.3.131.1.1=#120C303036333030303030303030, GIVENNAME=Test Test, SURNAME=Test, EMAILADDRESS=test@test.com, L=Test, ST=?? ?????????, C=RU, O=Test, CN=Test: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target; error codes: [33] 'PKIX failure: invalid parameters of certificate', 
        at ru.CryptoPro.CAdES.b.addSigner(Unknown Source:196)
        at ru.cprocsp.ACSP.management.signature.SignatureActivity$SignatureTask.doInBackground(Unknown Source:201)
        at ru.cprocsp.ACSP.management.signature.SignatureActivity$SignatureTask.doInBackground(Unknown Source:2)
        at android.os.AsyncTask$2.call(AsyncTask.java:333)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:245)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
        at java.lang.Thread.run(Thread.java:764)
     Caused by: Error building certification path for OID.1.2.643.100.3=#120B3135373030303030303030, OID.1.2.643.100.1=#120D31303236333030303030303030, OID.1.2.643.3.131.1.1=#120C303036333030303030303030, GIVENNAME=Test Test, SURNAME=Test, EMAILADDRESS=test@test.com, L=Test, ST=?? ???????????, C=RU, O=Test, CN=Test: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target; error codes: [33] 'PKIX failure: invalid parameters of certificate', 
        at ru.CryptoPro.a.a.e.a(Unknown Source:343)
        at ru.CryptoPro.a.a.e.a(Unknown Source:84)
        at ru.CryptoPro.CAdES.b.addSigner(Unknown Source:251)
 
 
 
Пример:
 
 Код:
                Logger.clear();
                logCalling(INTENT_NAME_SIGN_DATA);
                final Intent intent = new Intent(INTENT_NAME_SIGN_DATA);
                // 1. Алиас контейнера.
                final String containerAlias = String.valueOf(etBuildContainerAlias.getText());
                // Если не передать, то будет предложено указать в самой activity.
                if (containerAlias != null && !containerAlias.isEmpty()) {
                    intent.putExtra("containerAlias", containerAlias); // проверка на поиск
                } // if
                // 2. Совмещенная ли подпись.
                final boolean attached = !cbDetached.isChecked();
                // Если не передать, то будет предложено указать в самой activity.
                intent.putExtra("attached", attached); // проверка на attached
                // 3. Данные для подписи.
                final String dataToSign = String.valueOf(etDataToSign.getText());
                // Если не передать, то будет предложено указать файл
                // с данными в самой activity.
                if (dataToSign != null && !dataToSign.isEmpty()) {
                    intent.putExtra("data", dataToSign.getBytes()); // проверка на передачу данных
                } // if
                // 4. Тип подписи (CAdES-BES, CAdES-T и
                // CAdES-X Long Type 1).
                int cAdESType = CAdESType.CAdES_BES;
                switch (spCAdESType.getSelectedItemPosition()) {
                    case 1: cAdESType = CAdESType.CAdES_T; break;
                    case 2: cAdESType = CAdESType.CAdES_X_Long_Type_1; break;
                } // switch
                // Если не передать, то будет предложено указать в самой activity.
                intent.putExtra("type", cAdESType);
                /* Проверка CRL
                InputStream crl = ACSPIntentActivity.this.getResources().openRawResource(R.raw.certcrl);
                ByteArrayOutputStream crlStream = new ByteArrayOutputStream();
                try {
                    final int size = 1024 * 1024; // Kb
                    byte[] buffer  = new byte[size];
                    int read;
                    while ((read = crl.read(buffer, 0, size)) > 0) {
                        crlStream.write(buffer, 0, read);
                    } // while
                } catch (IOException e) {
                    throw new RuntimeException(e);
                } finally {
                    try {
                        crl.close();
                    } catch (IOException e) {
                        // ignore
                    }
                    try {
                        crlStream.close();
                    } catch (IOException e) {
                        // ignore
                    }
                }
                byte[] crlContent = crlStream.toByteArray();
                intent.putExtra("crl_1", crlContent);
                */
                startActivityForResult(intent, INTENT_ID_SIGN_DATA);
 
 
 
Отредактировано пользователем 6 августа 2019 г. 14:53:21(UTC)
 | Причина: Не указана  
            
	  
         
     |