Repositorio del curso CCOM4030 el semestre B91 del proyecto Artesanías con el Instituto de Cultura

KeyChainKeyManager.java 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package com.silkimen.http;
  2. import android.content.Context;
  3. import android.security.KeyChain;
  4. import java.net.Socket;
  5. import java.security.Principal;
  6. import java.security.PrivateKey;
  7. import java.security.cert.CertificateException;
  8. import java.security.cert.X509Certificate;
  9. import javax.net.ssl.X509ExtendedKeyManager;
  10. public class KeyChainKeyManager extends X509ExtendedKeyManager {
  11. private final String alias;
  12. private final X509Certificate[] chain;
  13. private final PrivateKey key;
  14. public KeyChainKeyManager(String alias, PrivateKey key, X509Certificate[] chain) {
  15. this.alias = alias;
  16. this.key = key;
  17. this.chain = chain;
  18. }
  19. @Override
  20. public String chooseClientAlias(String[] keyTypes, Principal[] issuers, Socket socket) {
  21. return this.alias;
  22. }
  23. @Override
  24. public X509Certificate[] getCertificateChain(String alias) {
  25. return chain;
  26. }
  27. @Override
  28. public PrivateKey getPrivateKey(String alias) {
  29. return key;
  30. }
  31. @Override
  32. public final String chooseServerAlias(String keyType, Principal[] issuers, Socket socket) {
  33. // not a client SSLSocket callback
  34. throw new UnsupportedOperationException();
  35. }
  36. @Override
  37. public final String[] getClientAliases(String keyType, Principal[] issuers) {
  38. // not a client SSLSocket callback
  39. throw new UnsupportedOperationException();
  40. }
  41. @Override
  42. public final String[] getServerAliases(String keyType, Principal[] issuers) {
  43. // not a client SSLSocket callback
  44. throw new UnsupportedOperationException();
  45. }
  46. }