public KeyPair getKeyPair(String alias, char[] password) { try { synchronized (lock) { if (store == null) { synchronized (lock) { store = KeyStore.getInstance("jks"); store.load(resource.getInputStream(), this.password); } } } RSAPrivateCrtKey key = (RSAPrivateCrtKey) store.getKey(alias, password); RSAPublicKeySpec spec = new RSAPublicKeySpec(key.getModulus(), key.getPublicExponent()); PublicKey publicKey = KeyFactory.getInstance("RSA").generatePublic(spec); return new KeyPair(publicKey, key); } catch (Exception e) { throw new IllegalStateException("Cannot load keys from store: " + resource, e); } }
new RSAPublicKeySpec(pks.getModulus(), pks.getPublicExponent()));
boolean isEqual(final RSAPrivateCrtKey key) { return super.isEqual(key) && Objects.equals(publicExponent, key.getPublicExponent()) && Objects.equals(primeP, key.getPrimeP()) && Objects.equals(primeQ, key.getPrimeQ()) && Objects.equals(primeExponentP, key.getPrimeExponentP()) && Objects.equals(primeExponentQ, key.getPrimeExponentQ()) && Objects.equals(crtCoefficient, key.getCrtCoefficient()); } }
RawRSAPrivateCrtKey(final RSAPrivateCrtKey original) { super(original); publicExponent = original.getPublicExponent(); primeP = original.getPrimeP(); primeQ = original.getPrimeQ(); primeExponentP = original.getPrimeExponentP(); primeExponentQ = original.getPrimeExponentQ(); crtCoefficient = original.getCrtCoefficient(); }
PrivateKey myPrivateKey = readPemRsaPrivateKey(myPrivateKeyPemFileName); RSAPrivateCrtKey privk = (RSAPrivateCrtKey)myPrivateKey; RSAPublicKeySpec publicKeySpec = new java.security.spec.RSAPublicKeySpec(privk.getModulus(), privk.getPublicExponent()); KeyFactory keyFactory = KeyFactory.getInstance("RSA"); PublicKey myPublicKey = keyFactory.generatePublic(publicKeySpec);
@Override public PublicKey publicKeyFromPrivateKey(PrivateKey privateKey, KeyFactory keyFactory) throws InvalidKeySpecException { RSAPrivateCrtKey rsaPrivateKey = (RSAPrivateCrtKey) privateKey; RSAPublicKeySpec publicKeySpec = new RSAPublicKeySpec( rsaPrivateKey.getModulus(), rsaPrivateKey.getPublicExponent()); return keyFactory.generatePublic(publicKeySpec); } }
@VisibleForTesting static PublicKey extractPublicKey(PrivateKey privateKey) throws NoSuchAlgorithmException, InvalidKeySpecException { RSAPrivateCrtKey privk = (RSAPrivateCrtKey)privateKey; RSAPublicKeySpec publicKeySpec = new java.security.spec.RSAPublicKeySpec(privk.getModulus(), privk.getPublicExponent()); KeyFactory keyFactory = KeyFactory.getInstance("RSA"); PublicKey publicKey = keyFactory.generatePublic(publicKeySpec); return publicKey; }
public static PublicKey extractPublicKey(PrivateKey key) { if (key == null) { return null; } try { RSAPrivateCrtKey rsaPrivateCrtKey = (RSAPrivateCrtKey) key; RSAPublicKeySpec publicKeySpec = new RSAPublicKeySpec(rsaPrivateCrtKey.getModulus(), rsaPrivateCrtKey.getPublicExponent()); KeyFactory keyFactory = KeyFactory.getInstance("RSA"); return keyFactory.generatePublic(publicKeySpec); } catch (Exception e) { throw new RuntimeException(e); } }
public static RSAPublicKeySpec getPublicKeySpec(PrivateKey priv) { RSAPrivateCrtKey rsaCrtKey = (RSAPrivateCrtKey) priv; // May throw a ClassCastException return new RSAPublicKeySpec(rsaCrtKey.getModulus(), rsaCrtKey.getPublicExponent()); }
public RsaSsaPkcs1SignJce(final RSAPrivateCrtKey priv, HashType hash) throws GeneralSecurityException { this.privateKey = priv; this.signatureAlgorithm = SubtleUtil.toRsaSsaPkcs1Algo(hash); KeyFactory kf = EngineFactory.KEY_FACTORY.getInstance("RSA"); this.publicKey = (RSAPublicKey) kf.generatePublic(new RSAPublicKeySpec(priv.getModulus(), priv.getPublicExponent())); }
boolean isEqual(final RSAPrivateCrtKey key) { return super.isEqual(key) && Objects.equals(publicExponent, key.getPublicExponent()) && Objects.equals(primeP, key.getPrimeP()) && Objects.equals(primeQ, key.getPrimeQ()) && Objects.equals(primeExponentP, key.getPrimeExponentP()) && Objects.equals(primeExponentQ, key.getPrimeExponentQ()) && Objects.equals(crtCoefficient, key.getCrtCoefficient()); } }
boolean isEqual(final RSAPrivateCrtKey key) { return super.isEqual(key) && Objects.equals(publicExponent, key.getPublicExponent()) && Objects.equals(primeP, key.getPrimeP()) && Objects.equals(primeQ, key.getPrimeQ()) && Objects.equals(primeExponentP, key.getPrimeExponentP()) && Objects.equals(primeExponentQ, key.getPrimeExponentQ()) && Objects.equals(crtCoefficient, key.getCrtCoefficient()); } }
boolean isEqual(final RSAPrivateCrtKey key) { return super.isEqual(key) && Objects.equals(publicExponent, key.getPublicExponent()) && Objects.equals(primeP, key.getPrimeP()) && Objects.equals(primeQ, key.getPrimeQ()) && Objects.equals(primeExponentP, key.getPrimeExponentP()) && Objects.equals(primeExponentQ, key.getPrimeExponentQ()) && Objects.equals(crtCoefficient, key.getCrtCoefficient()); } }
RawRSAPrivateCrtKey(final RSAPrivateCrtKey original) { super(original); publicExponent = original.getPublicExponent(); primeP = original.getPrimeP(); primeQ = original.getPrimeQ(); primeExponentP = original.getPrimeExponentP(); primeExponentQ = original.getPrimeExponentQ(); crtCoefficient = original.getCrtCoefficient(); }
RawRSAPrivateCrtKey(final RSAPrivateCrtKey original) { super(original); publicExponent = original.getPublicExponent(); primeP = original.getPrimeP(); primeQ = original.getPrimeQ(); primeExponentP = original.getPrimeExponentP(); primeExponentQ = original.getPrimeExponentQ(); crtCoefficient = original.getCrtCoefficient(); }
RawRSAPrivateCrtKey(final RSAPrivateCrtKey original) { super(original); publicExponent = original.getPublicExponent(); primeP = original.getPrimeP(); primeQ = original.getPrimeQ(); primeExponentP = original.getPrimeExponentP(); primeExponentQ = original.getPrimeExponentQ(); crtCoefficient = original.getCrtCoefficient(); }
static public RSAKeyParameters generatePrivateKeyParameter(RSAPrivateKey key) { if (key instanceof RSAPrivateCrtKey) { RSAPrivateCrtKey k = (RSAPrivateCrtKey) key; return new RSAPrivateCrtKeyParameters(k.getModulus(), k.getPublicExponent(), k.getPrivateExponent(), k.getPrimeP(), k.getPrimeQ(), k.getPrimeExponentP(), k.getPrimeExponentQ(), k.getCrtCoefficient()); } else { RSAPrivateKey k = key; return new RSAKeyParameters(true, k.getModulus(), k.getPrivateExponent()); } }
static public RSAKeyParameters generatePrivateKeyParameter(RSAPrivateKey key) { if (key instanceof RSAPrivateCrtKey) { RSAPrivateCrtKey k = (RSAPrivateCrtKey) key; return new RSAPrivateCrtKeyParameters(k.getModulus(), k.getPublicExponent(), k.getPrivateExponent(), k.getPrimeP(), k.getPrimeQ(), k.getPrimeExponentP(), k.getPrimeExponentQ(), k.getCrtCoefficient()); } else { RSAPrivateKey k = key; return new RSAKeyParameters(true, k.getModulus(), k.getPrivateExponent()); } }
public static RSAKeyParameters generateRSAPrivateKeyParameter(final RSAPrivateKey key) { ParamUtil.requireNonNull("key", key); if (key instanceof RSAPrivateCrtKey) { RSAPrivateCrtKey rsaKey = (RSAPrivateCrtKey) key; return new RSAPrivateCrtKeyParameters(rsaKey.getModulus(), rsaKey.getPublicExponent(), rsaKey.getPrivateExponent(), rsaKey.getPrimeP(), rsaKey.getPrimeQ(), rsaKey.getPrimeExponentP(), rsaKey.getPrimeExponentQ(), rsaKey.getCrtCoefficient()); } else { return new RSAKeyParameters(true, key.getModulus(), key.getPrivateExponent()); } }
public static RSAKeyParameters generateRSAPrivateKeyParameter(RSAPrivateKey key) { Args.notNull(key, "key"); if (key instanceof RSAPrivateCrtKey) { RSAPrivateCrtKey rsaKey = (RSAPrivateCrtKey) key; return new RSAPrivateCrtKeyParameters(rsaKey.getModulus(), rsaKey.getPublicExponent(), rsaKey.getPrivateExponent(), rsaKey.getPrimeP(), rsaKey.getPrimeQ(), rsaKey.getPrimeExponentP(), rsaKey.getPrimeExponentQ(), rsaKey.getCrtCoefficient()); } else { return new RSAKeyParameters(true, key.getModulus(), key.getPrivateExponent()); } }