Home | History | Annotate | Download | only in jsse
      1 /*
      2  * Copyright (C) 2010 The Android Open Source Project
      3  *
      4  * Licensed under the Apache License, Version 2.0 (the "License");
      5  * you may not use this file except in compliance with the License.
      6  * You may obtain a copy of the License at
      7  *
      8  *      http://www.apache.org/licenses/LICENSE-2.0
      9  *
     10  * Unless required by applicable law or agreed to in writing, software
     11  * distributed under the License is distributed on an "AS IS" BASIS,
     12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13  * See the License for the specific language governing permissions and
     14  * limitations under the License.
     15  */
     16 
     17 package org.apache.harmony.xnet.provider.jsse;
     18 
     19 import java.security.Provider;
     20 
     21 public final class OpenSSLProvider extends Provider {
     22 
     23     public OpenSSLProvider() {
     24         super("AndroidOpenSSL", 1.0, "Android's OpenSSL-backed security provider");
     25 
     26         put("SSLContext.SSL", OpenSSLContextImpl.class.getName());
     27         put("SSLContext.SSLv3", OpenSSLContextImpl.class.getName());
     28         put("SSLContext.TLS", OpenSSLContextImpl.class.getName());
     29         put("SSLContext.TLSv1", OpenSSLContextImpl.class.getName());
     30         put("SSLContext.Default", DefaultSSLContextImpl.class.getName());
     31 
     32         put("MessageDigest.SHA-1",
     33             "org.apache.harmony.xnet.provider.jsse.OpenSSLMessageDigestJDK$SHA1");
     34         put("Alg.Alias.MessageDigest.SHA1", "SHA-1");
     35         put("Alg.Alias.MessageDigest.SHA", "SHA-1");
     36         put("Alg.Alias.MessageDigest.1.3.14.3.2.26", "SHA-1");
     37 
     38         put("MessageDigest.SHA-256",
     39             "org.apache.harmony.xnet.provider.jsse.OpenSSLMessageDigestJDK$SHA256");
     40         put("Alg.Alias.MessageDigest.SHA256", "SHA-256");
     41         put("Alg.Alias.MessageDigest.2.16.840.1.101.3.4.2.1", "SHA-256");
     42 
     43         put("MessageDigest.SHA-384",
     44             "org.apache.harmony.xnet.provider.jsse.OpenSSLMessageDigestJDK$SHA384");
     45         put("Alg.Alias.MessageDigest.SHA384", "SHA-384");
     46         put("Alg.Alias.MessageDigest.2.16.840.1.101.3.4.2.2", "SHA-384");
     47 
     48         put("MessageDigest.SHA-512",
     49             "org.apache.harmony.xnet.provider.jsse.OpenSSLMessageDigestJDK$SHA512");
     50         put("Alg.Alias.MessageDigest.SHA512", "SHA-512");
     51         put("Alg.Alias.MessageDigest.2.16.840.1.101.3.4.2.3", "SHA-512");
     52 
     53         put("MessageDigest.MD5",
     54             "org.apache.harmony.xnet.provider.jsse.OpenSSLMessageDigestJDK$MD5");
     55         put("Alg.Alias.MessageDigest.1.2.840.113549.2.5", "MD5");
     56 
     57         // TODO Flush out implementation of OpenSSLSignature so it can be registered here
     58     }
     59 }
     60