Java X509 Key Manager Example
Java Code Examples for javax.net.ssl.X509KeyManager
The following code examples are extracted from open source projects. You can click to vote up the examples that are useful to you.
Example 1
From project OWASP-WebScarab, under directory /src/org/owasp/webscarab/plugin/.
Source file: SSLKeyManager.java
26
public synchronized String chooseServerAlias(String keyType,Principal[] issuers,Socket socket){ if (_preferredKeyManager != null) return _preferredKeyManager.chooseServerAlias(keyType,issuers,socket); Iterator<String> it=_managers.keySet().iterator(); while (it.hasNext()) { String source=it.next(); X509KeyManager km=_managers.get(source); String alias=km.chooseServerAlias(keyType,issuers,socket); if (alias != null) return source + SEP + alias; } return null; } Example 2
From project OWASP-WebScarab, under directory /src/org/owasp/webscarab/plugin/.
Source file: SSLKeyManager.java
26
public synchronized X509Certificate[] getCertificateChain(String alias){ String[] parts=alias.split(SEP,2); String description=parts[0]; alias=parts[1]; X509KeyManager km=(X509KeyManager)_managers.get(description); return km.getCertificateChain(alias); } Example 3
From project OWASP-WebScarab, under directory /src/org/owasp/webscarab/plugin/.
Source file: SSLKeyManager.java
26
public synchronized PrivateKey getPrivateKey(String alias){ String[] parts=alias.split(SEP,2); String description=parts[0]; alias=parts[1]; X509KeyManager km=_managers.get(description); return km.getPrivateKey(alias); } Example 4
From project Vega, under directory /platform/com.subgraph.vega.http.proxy/src/com/subgraph/vega/internal/http/proxy/ssl/.
Source file: SSLContextRepository.java
26
private SSLContext createContextForName(String name) throws GeneralSecurityException { final HostCertificateData hostCertificateData=certificateCreator.createCertificateDataFor(name); final X509KeyManager km=new VegaX509KeyManager(hostCertificateData); final SSLContext ctx=SSLContext.getInstance("SSLv3"); ctx.init(new KeyManager[]{km},null,null); return ctx; } Example 5
public synchronized SSLSocketFactory getSocketFactory(String host) throws IOException, GeneralSecurityException { SSLContext sslcontext=contextCache.get(host); if (sslcontext == null) { X509KeyManager km; if (!keystore.containsAlias(host)) { km=createKeyMaterial(host); } else { km=loadKeyMaterial(host); } sslcontext=SSLContext.getInstance("SSLv3"); sslcontext.init(new KeyManager[]{km},null,null); contextCache.put(host,sslcontext); } return sslcontext.getSocketFactory(); } Example 6
From project OWASP-WebScarab, under directory /src/org/owasp/webscarab/plugin/.
Source file: SSLKeyManager.java
25
public synchronized String[] getClientAliases(String keyType,Principal[] issuers){ if (_preferredKeyManager != null) return _preferredKeyManager.getClientAliases(keyType,issuers); List<String> allAliases=new ArrayList<String>(); Iterator<String> it=_managers.keySet().iterator(); while (it.hasNext()) { String source=it.next(); X509KeyManager km=_managers.get(source); String[] aliases=km.getClientAliases(keyType,issuers); if (aliases != null) { for (int i=0; i < aliases.length; i++) { allAliases.add(source + SEP + aliases[i]); } } } return allAliases.toArray(new String[0]); } Example 7
From project OWASP-WebScarab, under directory /src/org/owasp/webscarab/plugin/.
Source file: SSLKeyManager.java
25
public synchronized String[] getServerAliases(String keyType,Principal[] issuers){ if (_preferredKeyManager != null) return _preferredKeyManager.getServerAliases(keyType,issuers); List<String> allAliases=new ArrayList<String>(); Iterator<String> it=_managers.keySet().iterator(); while (it.hasNext()) { String source=it.next(); X509KeyManager km=_managers.get(source); String[] aliases=km.getServerAliases(keyType,issuers); if (aliases != null) { for (int i=0; i < aliases.length; i++) { allAliases.add(source + SEP + aliases[i]); } } } return allAliases.toArray(new String[0]); } Example 8
From project components-ness-httpclient, under directory /client/src/main/java/com/nesscomputing/httpclient/internal/.
Source file: HttpClientTrustManagerFactory.java
23
@Nonnull public static X509KeyManager getKeyManager(String keystorePath,String keystoreType,String keystorePassword) throws IOException, GeneralSecurityException { Preconditions.checkArgument(keystorePath != null,"keystore path must not be null!"); Preconditions.checkArgument(keystoreType != null,"keystore type must not be null!"); Preconditions.checkArgument(keystorePassword != null,"keystore password must not be null!"); KeyStore keyStore=loadKeystore(keystorePath,keystoreType,keystorePassword); return getKeyManagerForKeystore(keyStore,keystorePassword); } Example 9
From project components-ness-httpclient, under directory /client/src/main/java/com/nesscomputing/httpclient/internal/.
Source file: HttpClientTrustManagerFactory.java
23
@Nonnull private static X509KeyManager getKeyManagerForKeystore(@Nonnull KeyStore keyStore,@Nonnull String password) throws GeneralSecurityException { KeyManagerFactory keyManagerFactory=KeyManagerFactory.getInstance("SunX509","SunJSSE"); keyManagerFactory.init(keyStore,password.toCharArray()); for ( KeyManager keyManager : keyManagerFactory.getKeyManagers()) { if (keyManager instanceof X509KeyManager) { return (X509KeyManager)keyManager; } } throw new IllegalStateException("Couldn't find an X509KeyManager"); } Example 10
From project http-testing-harness, under directory /server-provider/src/test/java/org/sonatype/tests/http/server/jetty/impl/.
Source file: ClientSideCertTest.java
23
private static SSLSocketFactory getFactory(File pKeyFile,String pKeyPassword,String certAlias) throws Exception { KeyManagerFactory keyManagerFactory=KeyManagerFactory.getInstance("SunX509"); KeyStore keyStore=KeyStore.getInstance("JKS"); InputStream keyInput=new FileInputStream(pKeyFile); keyStore.load(keyInput,pKeyPassword.toCharArray()); keyInput.close(); keyManagerFactory.init(keyStore,pKeyPassword.toCharArray()); KeyManager[] kms=keyManagerFactory.getKeyManagers(); for (int i=0; i < kms.length; i++) { if (kms[i] instanceof X509KeyManager) { kms[i]=new AliasForcingKeyManager((X509KeyManager)kms[i],certAlias); } } TrustManager[] _trustManagers=new TrustManager[]{new CustomTrustManager()}; SSLContext context; try { context=SSLContext.getInstance("TLS"); context.init(kms,_trustManagers,new SecureRandom()); } catch ( GeneralSecurityException gse) { throw new IllegalStateException(gse.getMessage()); } HttpsURLConnection.setDefaultSSLSocketFactory(context.getSocketFactory()); return context.getSocketFactory(); } Example 11
From project jftp, under directory /src/main/java/com/myjavaworld/jftp/ssl/.
Source file: JFTPKeyManager.java
23
public JFTPKeyManager() throws KeyStoreException, NoSuchAlgorithmException, UnrecoverableKeyException { super(); KeyManagerFactory kmf=KeyManagerFactory.getInstance("SunX509"); kmf.init(KeyStoreManager.getClientCertificateStore(),JFTP.prefs.getClientCertificateStorePassword()); km=(X509KeyManager)kmf.getKeyManagers()[0]; } Example 12
private X509KeyManager loadKeyMaterial(String host) throws GeneralSecurityException, IOException { X509Certificate[] certs=null; Certificate[] chain=keystore.getCertificateChain(host); if (chain != null) { certs=cast(chain); } else { throw new GeneralSecurityException("Internal error: certificate chain for " + host + " not found!"); } PrivateKey pk=(PrivateKey)keystore.getKey(host,password); if (pk == null) { throw new GeneralSecurityException("Internal error: private key for " + host + " not found!"); } return new HostKeyManager(host,pk,certs); } Example 13
private X509KeyManager createKeyMaterial(String host) throws GeneralSecurityException { KeyPair keyPair; if (reuseKeys) { keyPair=new KeyPair(caCerts[0].getPublicKey(),caKey); } else { KeyPairGenerator keygen=KeyPairGenerator.getInstance("RSA"); keygen.initialize(1024); keyPair=keygen.generateKeyPair(); } X500Principal subject=getSubjectPrincipal(host); Date begin=new Date(); Date ends=new Date(begin.getTime() + DEFAULT_VALIDITY); X509Certificate cert=SunCertificateUtils.sign(subject,keyPair.getPublic(),caCerts[0].getSubjectX500Principal(),caCerts[0].getPublicKey(),caKey,begin,ends,getNextSerialNo()); X509Certificate[] chain=new X509Certificate[caCerts.length + 1]; System.arraycopy(caCerts,0,chain,1,caCerts.length); chain[0]=cert; PrivateKey pk=keyPair.getPrivate(); keystore.setKeyEntry(host,pk,password,chain); saveKeystore(); return new HostKeyManager(host,pk,chain); } Example 14
From project OWASP-WebScarab, under directory /src/org/owasp/webscarab/plugin/.
Source file: SSLKeyManager.java
23
public synchronized void addKeyStore(String description,KeyStore ks,char[] password) throws KeyStoreException, UnrecoverableKeyException { try { KeyManagerFactory kmf=KeyManagerFactory.getInstance("SunX509"); kmf.init(ks,password); KeyManager km=kmf.getKeyManagers()[0]; if (!(km instanceof X509KeyManager)) throw new KeyStoreException("KeyManager for " + description + "is not X509!"); _stores.put(description,ks); _managers.put(description,(X509KeyManager)km); } catch ( NoSuchAlgorithmException nsae) { _logger.severe("This should never happen! SunX509 algorithm not found: " + nsae.getMessage()); } _changeSupport.firePropertyChange(KEY_PROPERTY,null,null); } Example 15
From project smsc-server, under directory /core/src/main/java/org/apache/smscserver/ssl/impl/.
Source file: DefaultSslConfiguration.java
23
private SSLContext initContext() throws GeneralSecurityException { KeyManager[] keyManagers=this.keyManagerFactory.getKeyManagers(); for (int i=0; i < keyManagers.length; i++) { if (ClassUtils.extendsClass(keyManagers[i].getClass(),"javax.net.ssl.X509ExtendedKeyManager")) { keyManagers[i]=new ExtendedAliasKeyManager(keyManagers[i],this.keyAlias); } else if (keyManagers[i] instanceof X509KeyManager) { keyManagers[i]=new AliasKeyManager(keyManagers[i],this.keyAlias); } } SSLContext ctx=SSLContext.getInstance(this.sslProtocol); ctx.init(keyManagers,this.trustManagerFactory.getTrustManagers(),null); return ctx; } Example 16
From project voms-api-java, under directory /src/main/java/org/glite/voms/.
Source file: VOMSKeyManager.java
23
public VOMSKeyManager(UserCredentials creds) throws NoSuchAlgorithmException, KeyStoreException, UnrecoverableKeyException, IOException, CertificateException { if (creds.getUserKey() == null) { throw new UnrecoverableKeyException("Passed Credential does not hold a private key!"); } KeyManagerFactory keyManagerFactory=KeyManagerFactory.getInstance("SunX509"); KeyStore keyStore=KeyStore.getInstance("JKS"); keyStore.load(null,"".toCharArray()); logger.debug("ABOUT to set key entry"); keyStore.setKeyEntry("alias",creds.getUserKey(),"".toCharArray(),creds.getUserChain()); logger.debug("STORETYPE: " + keyStore.getType()); keyManagerFactory.init(keyStore,"".toCharArray()); manager=(X509KeyManager)keyManagerFactory.getKeyManagers()[0]; } Example 17
From project voms-api-java, under directory /src/main/java/org/glite/voms/.
Source file: VOMSKeyManager.java
23
public VOMSKeyManager(String certfile,String keyfile,String password,int type){ FileInputStream stream=null; try { KeyManagerFactory keyManagerFactory=KeyManagerFactory.getInstance("SunX509"); char[] passwd=password.toCharArray(); KeyStore keyStore=null; if (type == TYPE_PEM) { keyStore=KeyStore.getInstance("JKS"); keyStore=load(certfile,keyfile,passwd); } else if (type == TYPE_PKCS12) { keyStore=KeyStore.getInstance("PKCS12","SunJSSE"); stream=new FileInputStream(certfile); keyStore.load(stream,passwd); } if (keyStore != null) { keyManagerFactory.init(keyStore,passwd); manager=(X509KeyManager)keyManagerFactory.getKeyManagers()[0]; } else { throw new VOMSException("Cannot initialize VOMSKeyManager: "); } } catch ( Exception e) { throw new VOMSException("Cannot initialize VOMSKeyManager: ",e); } finally { try { if (stream != null) stream.close(); } catch ( IOException e) { } } } Source: http://www.javased.com/?api=javax.net.ssl.X509KeyManager
0 Response to "Java X509 Key Manager Example"
Post a Comment