Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Diper  
#1 Оставлено : 21 июля 2021 г. 4:45:41(UTC)
Diper

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

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

Доброго время суток!

Собирал проект на Flutter и наступил тот день и час, когда потребовалось подключение КриптоПро. Возник вопрос как это сделать. У меня есть gradle и инструкция.

Следую по инструкция я сделал следующие:

  • Затем в проектe в папку android -> app я положил папку libs
  • Далее в папке android -> app в файле build.gradle я добавил следующие


Код:
dependencies {
    implementation fileTree(dir: "libs", include: ["*.jar"])
}

Код:
android {
    packagingOptions {
        exclude 'META-INF/Sign.CP'
        exclude 'META-INF/Digest.CP'
    } 
}


Запускаю flutter, ошибок не выдает. Теперь время проверить, а вообще все ли правильно я сделал. Для это пытаюсь сделать import libs для проверки например Получение закрытого ключа и сертификата из ключевого контейнера. Однако ничего не импортится и подозреваю, что я упускаю какую-то тонкую тонкость. Подскажите пожалуйста, какую и как мне двигаться дальше.

Заранее благодарю за помощь.

Отредактировано пользователем 21 июля 2021 г. 7:05:05(UTC)  | Причина: Не указана

Offline Евгений Афанасьев  
#2 Оставлено : 21 июля 2021 г. 8:11:09(UTC)
Евгений Афанасьев

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

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,540
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 596 раз в 566 постах
Здравствуйте. Покажите пример, ктторыц вы написали для проверки. Не совсем понятно, что должно импортироваться - пример демонстрирует чтение существующего в папке приложения ключевого контейнера, не импорт.
Offline Diper  
#3 Оставлено : 21 июля 2021 г. 10:32:52(UTC)
Diper

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

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

Хотел проверить работу КриптоПро путем вызова методов getKey, getCertificate и getCertificateChain класса KeyStore.

Для это во flutter я делаю import например

Код:
import 'package:flutter/lib/JInitCSP.aar';

Код:
import 'package:flutter/lib/KeyStore';

Код:
import 'package:flutter/aap/lib/';


Однако на этапе import выдается ошибка об отсутсвие данного файла, класса. Так же нет в предоженных импортах

Main.dart
Код:

import 'package:flutter/material.dart';
import 'package:flutter/lib/JInitCSP.aar';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Welcome to Flutter',
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Welcome'),
        ),
        body: const Center(
          child: KeyStore(),
        ),
      ),
    );
  }
}



Это была моя последовательность действий. Возможно я в корне не правильно понял как можно было проверить, что я таки подключил вообще и как надо КприптоПро в проекте flutter.
Offline Евгений Афанасьев  
#4 Оставлено : 21 июля 2021 г. 11:14:39(UTC)
Евгений Афанасьев

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

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,540
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 596 раз в 566 постах
Автор: Diper Перейти к цитате
ошибка об отсутсвие данного файла, класса

Какого файла, класса?
KeyStore - это стандартный java-класс, его нет в в нашем SDK, этот класс всегда есть в стандартных библиотеках в ОС.

Отредактировано пользователем 21 июля 2021 г. 11:15:37(UTC)  | Причина: Не указана

Offline Diper  
#5 Оставлено : 21 июля 2021 г. 11:27:17(UTC)
Diper

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

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

Файл JInitCSP.arr из flutter/android/app/libs/JInitCSP.aar

Как я понял иницилизация идет через JInitCSP.aar
Offline Евгений Афанасьев  
#6 Оставлено : 21 июля 2021 г. 11:31:25(UTC)
Евгений Афанасьев

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

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,540
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 596 раз в 566 постах
Все необходимые файлы из SDK необходимо распаковать и добавить в проект. Возможно, flutter/material.dart так подключатся библиотеки из flutter, а сторонние вроде JInitCSP должны добавляться иначе. Помимо JInitCSP также нужны и другие библиотеки из CSP SDK.

Отредактировано пользователем 21 июля 2021 г. 11:32:08(UTC)  | Причина: Не указана

Offline Diper  
#7 Оставлено : 21 июля 2021 г. 11:42:25(UTC)
Diper

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

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

Благодарю за совет, попробую решить вопрос с добавлением модуля CSP SDK + инным способом импорта. Надеюсь поможет. О результате в любом случае напишу.
Offline GridView.builder  
#8 Оставлено : 26 июля 2021 г. 16:19:55(UTC)
GridView.builder

Статус: Участник

Группы: Участники
Зарегистрирован: 22.07.2021(UTC)
Сообщений: 10
Ю.Корея
Откуда: Seoul

Сказал(а) «Спасибо»: 1 раз
Автор: Diper Перейти к цитате
Доброго время суток!

Собирал проект на Flutter и наступил тот день и час, когда потребовалось подключение КриптоПро. Возник вопрос как это сделать. У меня есть gradle и инструкция.

Следую по инструкция я сделал следующие:

  • Затем в проектe в папку android -> app я положил папку libs
  • Далее в папке android -> app в файле build.gradle я добавил следующие


Код:
dependencies {
    implementation fileTree(dir: "libs", include: ["*.jar"])
}

Код:
android {
    packagingOptions {
        exclude 'META-INF/Sign.CP'
        exclude 'META-INF/Digest.CP'
    } 
}


Запускаю flutter, ошибок не выдает. Теперь время проверить, а вообще все ли правильно я сделал. Для это пытаюсь сделать import libs для проверки например Получение закрытого ключа и сертификата из ключевого контейнера. Однако ничего не импортится и подозреваю, что я упускаю какую-то тонкую тонкость. Подскажите пожалуйста, какую и как мне двигаться дальше.

Заранее благодарю за помощь.


Почему .jar если в мануале .aar ?
Offline Евгений Афанасьев  
#9 Оставлено : 26 июля 2021 г. 18:50:27(UTC)
Евгений Афанасьев

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

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,540
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 596 раз в 566 постах
Jar-библиотеки подключаются в случае, если используется отделенный провайдер acsp.
При встраивании провайдера в собственное приложение используется aar (при этом упомянутые jar-библиотеки включены в Sharedlibrary.aar).

Отредактировано пользователем 26 июля 2021 г. 18:51:00(UTC)  | Причина: Не указана

Offline Shindje  
#10 Оставлено : 2 сентября 2021 г. 18:18:17(UTC)
Shindje

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

Группы: Участники
Зарегистрирован: 02.09.2021(UTC)
Сообщений: 2

Тоже делаю на flutter. Насколько я понял, нельзя в flutter подключить либу для android.
Я подключал нужные либы в android-части приложения и обращалался к ним через создание platform channel
Offline GridView.builder  
#11 Оставлено : 13 сентября 2021 г. 17:32:14(UTC)
GridView.builder

Статус: Участник

Группы: Участники
Зарегистрирован: 22.07.2021(UTC)
Сообщений: 10
Ю.Корея
Откуда: Seoul

Сказал(а) «Спасибо»: 1 раз
Автор: Shindje Перейти к цитате
Тоже делаю на flutter. Насколько я понял, нельзя в flutter подключить либу для android.
Я подключал нужные либы в android-части приложения и обращалался к ним через создание platform channel


Привет! Получилось подписать что нибудь? А как решил проблему с выводом окна ввода пароля из нативной части ?
Offline Shindje  
#12 Оставлено : 15 сентября 2021 г. 16:11:42(UTC)
Shindje

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

Группы: Участники
Зарегистрирован: 02.09.2021(UTC)
Сообщений: 2

Автор: GridView.builder Перейти к цитате
Автор: Shindje Перейти к цитате
Тоже делаю на flutter. Насколько я понял, нельзя в flutter подключить либу для android.
Я подключал нужные либы в android-части приложения и обращалался к ним через создание platform channel


Привет! Получилось подписать что нибудь? А как решил проблему с выводом окна ввода пароля из нативной части ?


Привет! Да, подписание работает. Пароль ввожу, вызывая диалог из нативной части (AlertDialog с моим layout).

Сейчас пытаюсь сделать TLS соединение, но пока не работает (думаю, что-то сделал не так, потому что пример из Crypto Pro работает)
Offline foliw10419  
#13 Оставлено : 7 декабря 2021 г. 10:23:22(UTC)
foliw10419

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

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

Автор: Shindje Перейти к цитате
Сейчас пытаюсь сделать TLS соединение, но пока не работает (думаю, что-то сделал не так, потому что пример из Crypto Pro работает)

Привет. Получилось установить TLS соединение?
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.