protected override TlsSignerCredentials GetRsaSignerCredentials()
        {
            /*
             * TODO Note that this code fails to provide default value for the client supported
             * algorithms if it wasn't sent.
             */
            SignatureAndHashAlgorithm signatureAndHashAlgorithm = null;
            IList sigAlgs = mSupportedSignatureAlgorithms;

            if (sigAlgs != null)
            {
                foreach (SignatureAndHashAlgorithm sigAlg in sigAlgs)
                {
                    if (sigAlg.Signature == SignatureAlgorithm.rsa)
                    {
                        signatureAndHashAlgorithm = sigAlg;
                        break;
                    }
                }

                if (signatureAndHashAlgorithm == null)
                {
                    return(null);
                }
            }

            return(TlsTestUtilities.LoadSignerCredentials(mContext, new string[] { "x509-server.pem", "x509-ca.pem" },
                                                          "x509-server-key.pem", signatureAndHashAlgorithm));
        }
            public virtual TlsCredentials GetClientCredentials(CertificateRequest certificateRequest)
            {
                byte[] certificateTypes = certificateRequest.CertificateTypes;
                if (certificateTypes == null || !Arrays.Contains(certificateTypes, ClientCertificateType.rsa_sign))
                {
                    return(null);
                }

                SignatureAndHashAlgorithm signatureAndHashAlgorithm = null;
                IList sigAlgs = certificateRequest.SupportedSignatureAlgorithms;

                if (sigAlgs != null)
                {
                    foreach (SignatureAndHashAlgorithm sigAlg in sigAlgs)
                    {
                        if (sigAlg.Signature == SignatureAlgorithm.rsa)
                        {
                            signatureAndHashAlgorithm = sigAlg;
                            break;
                        }
                    }

                    if (signatureAndHashAlgorithm == null)
                    {
                        return(null);
                    }
                }

                return(TlsTestUtilities.LoadSignerCredentials(mContext, new string[] { "x509-client.pem", "x509-ca.pem" },
                                                              "x509-client-key.pem", signatureAndHashAlgorithm));
            }
Beispiel #3
0
            public virtual TlsCredentials GetClientCredentials(CertificateRequest certificateRequest)
            {
                if (mOuter.mConfig.serverCertReq == TlsTestConfig.SERVER_CERT_REQ_NONE)
                {
                    throw new InvalidOperationException();
                }
                if (mOuter.mConfig.clientAuth == TlsTestConfig.CLIENT_AUTH_NONE)
                {
                    return(null);
                }

                byte[] certificateTypes = certificateRequest.CertificateTypes;
                if (certificateTypes == null || !Arrays.Contains(certificateTypes, ClientCertificateType.rsa_sign))
                {
                    return(null);
                }

                IList supportedSigAlgs = certificateRequest.SupportedSignatureAlgorithms;

                if (supportedSigAlgs != null && mOuter.mConfig.clientAuthSigAlg != null)
                {
                    supportedSigAlgs = new ArrayList(1);
                    supportedSigAlgs.Add(mOuter.mConfig.clientAuthSigAlg);
                }

                TlsSignerCredentials signerCredentials = TlsTestUtilities.LoadSignerCredentials(mContext,
                                                                                                supportedSigAlgs, SignatureAlgorithm.rsa, "x509-client.pem", "x509-client-key.pem");

                if (mOuter.mConfig.clientAuth == TlsTestConfig.CLIENT_AUTH_VALID)
                {
                    return(signerCredentials);
                }

                return(new MyTlsSignerCredentials(mOuter, signerCredentials));
            }
Beispiel #4
0
            public virtual TlsCredentials GetClientCredentials(CertificateRequest certificateRequest)
            {
                byte[] certificateTypes = certificateRequest.CertificateTypes;
                if (certificateTypes == null || !Arrays.Contains(certificateTypes, ClientCertificateType.rsa_sign))
                {
                    return(null);
                }

                return(TlsTestUtilities.LoadSignerCredentials(mContext, certificateRequest.SupportedSignatureAlgorithms,
                                                              SignatureAlgorithm.rsa, "x509-client.pem", "x509-client-key.pem"));
            }
 protected override TlsSignerCredentials GetRsaSignerCredentials()
 {
     return(TlsTestUtilities.LoadSignerCredentials(mContext, mSupportedSignatureAlgorithms,
                                                   SignatureAlgorithm.rsa, new string[] { "x509-server-rsa-sign.pem", "x509-ca-rsa.pem" },
                                                   "x509-server-key-rsa-sign.pem"));
 }
Beispiel #6
0
 protected override TlsSignerCredentials GetRsaSignerCredentials()
 {
     return(TlsTestUtilities.LoadSignerCredentials(mContext, mSupportedSignatureAlgorithms, SignatureAlgorithm.rsa,
                                                   "x509-server.pem", "x509-server-key.pem"));
 }
Beispiel #7
0
 protected override TlsSignerCredentials GetECDsaSignerCredentials()
 {
     return(TlsTestUtilities.LoadSignerCredentials(mContext, GetSupportedSignatureAlgorithms(), SignatureAlgorithm.ecdsa,
                                                   "x509-server-ecdsa.pem", "x509-server-key-ecdsa.pem"));
 }
Beispiel #8
0
 protected override TlsSignerCredentials GetDsaSignerCredentials()
 {
     return(TlsTestUtilities.LoadSignerCredentials(mContext, GetSupportedSignatureAlgorithms(),
                                                   SignatureAlgorithm.dsa, new string[] { "x509-server-dsa.pem", "x509-ca-dsa.pem" },
                                                   "x509-server-key-dsa.pem"));
 }