個人用ストアからパスワードで証明書を取得するには、Javaプログラミングを使用します。 証明書を取得するコードが見つかりましたが、すべての証明書が表示されます。これらの証明書データは、これらの関連するパスワードで開く必要はありませんでした。 私はこのようなスタイルの証明書を表示したくありません。私はコード・タイプ・タイプを書くと思います。私が望む証明書を選択し、この証明書のパスワードをブラウザに追加して、この証明書情報を表示します。私の個人ストアから証明書を取得する方法
KeyStore ks = KeyStore.getInstance("Windows-MY");
ks.load(null, null) ;
Enumeration en = ks.aliases() ;
while (en.hasMoreElements()) {
String aliasKey = (String)en.nextElement() ;
Certificate c = ks.getCertificate(aliasKey) ;
System.out.println("---> alias : " + aliasKey) ;
if (ks.isKeyEntry(aliasKey)) {
Certificate[] chain = ks.getCertificateChain(aliasKey);
System.out.println("---> chain length: " + chain.length);
X509Certificate Cert = null;
for (Certificate cert: chain) {
System.out.println(cert);
}
}
}
このコードを修復するにはどうすればよいですか?そして、証明書にアクセスするためのC#コードが見つかりました。私はまた、このようにjavaプログラムで使用したいと思います。次のC#コードをJavaコードに変換するには? C#
X509Store store = new X509Store(StoreName.Root, StoreLocation.LocalMachine);
store.Open(OpenFlags.ReadOnly);
X509Certificate2Collection col = store.Certificates.Find(X509FindType.FindBySerialNumber, "{serial number no space}", true);
//service is the webservice that need to //be authenticated using X509 certificate
TestWebService service = new TestWebService();
//Note, we should find the certificate from the the
//root certificate store on local machine if the
//certificate is imported correctly and the serial
//number is correct
if (col.Count == 1)
{
//all we need to do is to add the certificate
//after that we can use the webservice as usual
service.ClientCertificates.Add(col[0]);
service.Test();
}
あまりにも曖昧です。誰もあなたのコードを書き直すつもりはありません。何を試しましたか? – EJP
私の個人的なストアからパスワードを使って特定の証明書を取得する方法を知りたい。このコードは私の店からすべての証明書を取得することですが、私が必要とする特定の証明書を取得したいのです。どのようにプログラムを書くのですか?私のコードと同じではありません。 –
Javadocをチェックすることをお勧めします。 'KeyStore'から物事を取り出す他の方法は、内容全体を反復するだけです。 – EJP