Статус: Участник
Группы: Участники
Зарегистрирован: 17.07.2013(UTC) Сообщений: 11
|
Как можно получить ключ из контейнера без окна запроса пароля (он известен заранее). Код:final KeyStore keyStore = KeyStore.getInstance(JCSP.HD_STORE_NAME, JCSP.PROVIDER_NAME);
keyStore.load(null, null);
final PrivateKey privateKey = (PrivateKey) keyStore.getKey("container", "password".toCharArray());
всё равно приводит к запросу ПИНа.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,962 Откуда: Крипто-Про Сказал(а) «Спасибо»: 20 раз Поблагодарили: 704 раз в 665 постах
|
Здравствуйте. Да, указание пароля в getKey() в данном случае (использование в android модуля JCSP вместо JCP) не имеет значения, пароль необходимо вводить в окне. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 17.07.2013(UTC) Сообщений: 11
|
А подскажите тогда, пожалуйста, область "жизни" введённого пароля. Однажды введённый в одной активити ПИН больше не будет запрашиваться на этот контейнер? А в других активити и потоках?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,962 Откуда: Крипто-Про Сказал(а) «Спасибо»: 20 раз Поблагодарили: 704 раз в 665 постах
|
Пин-код не будет запрашиваться при работе с объектом, пока существует этот объект, пока не вызовется finalize(), который приведет к закрытию контекста (CryptReleaseContext). Отредактировано пользователем 5 сентября 2013 г. 20:12:33(UTC)
| Причина: Не указана |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 09.10.2013(UTC) Сообщений: 4 Откуда: Пермь
|
Добрый день!
При вводе пароля на экране остаются жирные следы, из-за чего секретность пароля значительно снижается.
Подскажите, как решить эту проблему?
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 24.11.2009(UTC) Сообщений: 965 Откуда: Crypto-Pro
Сказал(а) «Спасибо»: 3 раз Поблагодарили: 174 раз в 152 постах
|
Есть два варианта. 1) Написать приложение клавиатуру, в ней положение клавишь рандомизировать каждый раз, и заменить ей штатную в настройках. Тогда по положению следов нельзя будет определить какие клавишы были нажаты. Или можно использовать голосовой ввод :) 2) Протирать экран. |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 09.10.2013(UTC) Сообщений: 4 Откуда: Пермь
|
> 1) Написать приложение клавиатуру Проще свою релизацию криптофункций написать, чем приложение-клавиатуру. Даже если сделать клавиатуру, это нормально не будет работать, т.к. на устройстве вводится много какой информации, кроме паролей. Может быть лучше сделать возможность передавать пароль (вводимый рандомизированным компонентом в приложении, а не целым приложением-клавиатурой) и функцию блокировки контейнера после N неудачных попыток? Есть ли у вас в планах разработки такая задача? > 2) Протирать экран Это несерьезно. Отредактировано пользователем 8 ноября 2013 г. 14:19:36(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 24.11.2009(UTC) Сообщений: 965 Откуда: Crypto-Pro
Сказал(а) «Спасибо»: 3 раз Поблагодарили: 174 раз в 152 постах
|
Такой задачи нет. Блокирование после N попыток реализовано в отделяемых носителях. Для ключей на hdimage это не имеет смысла... |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 03.09.2013(UTC) Сообщений: 10 Откуда: Татарстан
|
Здравствуйте! Столкнулись с такой проблемой: мы используем xamarin (mono for android) для разработки приложения. http://xamarin.com/ Так вот при вызове функции Окно с вводом пароля не всплывает, а приложение падает и пишет в лог: Код:
11-11 17:10:40.675 D/CPROCSP (12232): Call CPQueryPin.
11-11 17:10:40.675 D/CPROCSP (12232): Load library libcspjni.so
11-11 17:10:40.680 D/CPROCSP (12232): Load graphical functions from libcspjni.so
11-11 17:10:40.680 D/CPROCSP (12232): * JniQueryPin() : lGlobalJvm GetEnv.
11-11 17:10:40.680 D/CPROCSP (12232): * JniQueryPin() : set text: Type %s for container "my" (26)
11-11 17:10:40.680 D/CPROCSP (12232): * JniQueryPin() : find class ru/CryptoPro/JCSP/tools/common/window/CSPPin
11-11 17:10:40.680 D/CPROCSP (12232): * JniQueryPin() : find method showDialog
11-11 17:10:40.680 D/CPROCSP (12232): * JniQueryPin() : find method getPinCode
11-11 17:10:40.680 D/CPROCSP (12232): * JniQueryPin() : find constructor <init>
11-11 17:10:40.680 D/CPROCSP (12232): * JniQueryPin() : create object ru/CryptoPro/JCSP/tools/common/window/CSPPin
11-11 17:10:40.680 D/CPROCSP (12232): * JniQueryPin() : call method showDialog.
11-11 17:10:40.685 D/CPROCSP (12232): * JniQueryPin() : call method getPinCode.
11-11 17:10:40.685 E/mono-rt (12232): Stacktrace:
11-11 17:10:40.685 E/mono-rt (12232):
11-11 17:10:40.685 E/mono-rt (12232): at <unknown> <0xffffffff>
11-11 17:10:40.685 E/mono-rt (12232): at (wrapper managed-to-native) object.wrapper_native_0x4087994b (intptr,intptr,intptr) <IL 0x00027, 0xffffffff>
11-11 17:10:40.685 E/mono-rt (12232): at Android.Runtime.JNIEnv.CallObjectMethod (intptr,intptr) [0x00000] in /Users/builder/data/lanes/monodroid-mlion-monodroid-4.8.2-branch/a25a31d0/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:129
11-11 17:10:40.685 E/mono-rt (12232): at Java.Security.Signature.Sign () [0x0002d] in /Users/builder/data/lanes/monodroid-mlion-monodroid-4.8.2-branch/a25a31d0/source/monodroid/src/Mono.Android/platforms/android-14/src/generated/Java.Security.Signature.cs:228
11-11 17:10:40.685 E/mono-rt (12232): at jspapp.SignExample.sign (string,string) [0x00055] in c:\Users\user1211\Documents\Projects\clone\client-android\AndroidMO\CryptoPro\CryptoAPI\SignExample.cs:31
11-11 17:10:40.685 E/mono-rt (12232): at jspapp.SignExample.getResult (string,string) [0x00001] in c:\Users\user1211\Documents\Projects\clone\client-android\AndroidMO\CryptoPro\CryptoAPI\SignExample.cs:17
11-11 17:10:40.685 E/mono-rt (12232): at AndroidMO.new_CproCSP.sign_file (string,string) [0x00008] in c:\Users\user1211\Documents\Projects\clone\client-android\AndroidMO\CryptoPro\new_CproCSP.cs:26
11-11 17:10:40.685 E/mono-rt (12232): at AndroidMO.new_MySigner.signFile (string,string) [0x00001] in c:\Users\user1211\Documents\Projects\clone\client-android\AndroidMO\CryptoPro\new_MySigner.cs:74
11-11 17:10:40.685 E/mono-rt (12232): at AndroidMO.new_MySigner.doSign (object) [0x0001b] in c:\Users\user1211\Documents\Projects\clone\client-android\AndroidMO\CryptoPro\new_MySigner.cs:57
11-11 17:10:40.685 E/mono-rt (12232): at System.Threading.Thread.StartInternal () <IL 0x0003c, 0x00143>
11-11 17:10:40.685 E/mono-rt (12232): at (wrapper runtime-invoke) object.runtime_invoke_void__this__ (object,intptr,intptr,intptr) <IL 0x0004e, 0xffffffff>
11-11 17:10:40.685 E/mono-rt (12232):
11-11 17:10:40.685 E/mono-rt (12232): =================================================================
11-11 17:10:40.685 E/mono-rt (12232): Got a SIGSEGV while executing native code. This usually indicates
11-11 17:10:40.685 E/mono-rt (12232): a fatal error in the mono runtime or one of the native libraries
11-11 17:10:40.685 E/mono-rt (12232): used by your application.
11-11 17:10:40.685 E/mono-rt (12232): =================================================================
11-11 17:10:40.685 E/mono-rt (12232):
11-11 17:10:40.695 D/ (12232): img erasing: 2
Программа "Mono" завершилась с кодом 255 (0xff).
Заметил я такую вещь, что вызывается в java только после ввода пинкода, а тут сразу. Может можно как-то реализовать ввод пинкода программно ( в своём диалоге), а не через это окно?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,962 Откуда: Крипто-Про Сказал(а) «Спасибо»: 20 раз Поблагодарили: 704 раз в 665 постах
|
Здравствуйте. Попробуйте перед вызовом поставить Looper.getMainLooper().prepare(); |
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close