У меня есть файл JKS в /src/main/res/raw/ecc.jks. Алгоритм EC создает файл JKS с длиной ключа 256. Моя проблема в том, что я хочу извлечь закрытый и открытый ключи файла JKS и вернуть новую пару ключей. Я использовал метод ниже, но получил java.io.IOException: неверная версия хранилища ключей.
public KeyPair easyLoadJKS (псевдоним строки, передача строки) { пытаться { Строка keyStoreType = KeyStore.getDefaultType(); Хранилище ключей KeyStore = KeyStore.getInstance(keyStoreType); InputStream in = _context.getResources().openRawResource(R.raw.ecc); keystore.load(in, pass.toCharArray()); Ключевой ключ = keystore.getKey(alias, pass.toCharArray()); if (!(экземпляр ключа PrivateKey)) вернуть ноль; Сертификат сертификата = keystore.getCertificate(псевдоним); PublicKey publicKey = cert.getPublicKey(); вернуть новую KeyPair(publicKey, (PrivateKey) ключ); } catch (Throwable e) { System.out.println(e.getMessage()); вернуть ноль; } } Приложение Keystore Explorer отображает следующую информацию:



