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