📄 testbase64.java
字号:
/* * Created on 2005-jun-11 * * To change the template for this generated file go to * Window - Preferences - Java - Code Generation - Code and Comments */package se.anatom.ejbca.util;import java.security.cert.X509Certificate;import org.apache.commons.lang.StringUtils;import org.apache.log4j.Logger;import junit.framework.TestCase;/** Tests base64 encoding and decoding * * @author tomasg * @version $Id: TestBase64.java,v 1.1 2005/06/11 13:59:37 anatom Exp $ */public class TestBase64 extends TestCase { private static final Logger log = Logger.getLogger(TestBase64.class); /** * Creates a new TestBase64 object. * */ public TestBase64(String name) { super(name); } protected void setUp() throws Exception { log.debug(">setUp()"); CertTools.installBCProvider(); log.debug("<setUp()"); } protected void tearDown() throws Exception { } public void test01Base64Small() throws Exception { // Testcert is on long line of base 64 encoded stuff byte[] certBytes = Base64.decode(testcert_oneline.getBytes()); assertNotNull(certBytes); // This should be a cert X509Certificate cert = CertTools.getCertfromByteArray(certBytes); assertNotNull(cert); // Base64 encode it again byte[] encBytes = Base64.encode(cert.getEncoded(), false); assertEquals(new String(encBytes), testcert_oneline); // Testcert_crlf has \n after each line certBytes = Base64.decode(testcert_crlf.getBytes()); assertNotNull(certBytes); // This should be a cert cert = CertTools.getCertfromByteArray(certBytes); assertNotNull(cert); // Base64 encode it again encBytes = Base64.encode(cert.getEncoded(), true); assertEquals(new String(encBytes), testcert_crlf); // This is the same method as above encBytes = Base64.encode(cert.getEncoded()); assertEquals(new String(encBytes), testcert_crlf); } public void test02Base64Long() throws Exception { // This one has spaces in it byte[] bytes = Base64.decode(longMsg); assertNotNull(bytes); byte[] encBytes = Base64.encode(bytes, false); String str1 = new String(encBytes); String str2 = new String(longMsg); // Should not be same, str2 has blanks in it assertFalse(str1 == str2); str2 = StringUtils.deleteWhitespace(str2); // now it should be same assertEquals(str1, str2); } static String testcert_oneline = ("MIIDATCCAmqgAwIBAgIIczEoghAwc3EwDQYJKoZIhvcNAQEFBQAwLzEPMA0GA1UE" + "AxMGVGVzdENBMQ8wDQYDVQQKEwZBbmFUb20xCzAJBgNVBAYTAlNFMB4XDTAzMDky" + "NDA2NDgwNFoXDTA1MDkyMzA2NTgwNFowMzEQMA4GA1UEAxMHcDEydGVzdDESMBAG" + "A1UEChMJUHJpbWVUZXN0MQswCQYDVQQGEwJTRTCBnTANBgkqhkiG9w0BAQEFAAOB" + "iwAwgYcCgYEAnPAtfpU63/0h6InBmesN8FYS47hMvq/sliSBOMU0VqzlNNXuhD8a" + "3FypGfnPXvjJP5YX9ORu1xAfTNao2sSHLtrkNJQBv6jCRIMYbjjo84UFab2qhhaJ" + "wqJgkQNKu2LHy5gFUztxD8JIuFPoayp1n9JL/gqFDv6k81UnDGmHeFcCARGjggEi" + "MIIBHjAPBgNVHRMBAf8EBTADAQEAMA8GA1UdDwEB/wQFAwMHoAAwOwYDVR0lBDQw" + "MgYIKwYBBQUHAwEGCCsGAQUFBwMCBggrBgEFBQcDBAYIKwYBBQUHAwUGCCsGAQUF" + "BwMHMB0GA1UdDgQWBBTnT1aQ9I0Ud4OEfNJkSOgJSrsIoDAfBgNVHSMEGDAWgBRj" + "e/R2qFQkjqV0pXdEpvReD1eSUTAiBgNVHREEGzAZoBcGCisGAQQBgjcUAgOgCQwH" + "Zm9vQGZvbzASBgNVHSAECzAJMAcGBSkBAQEBMEUGA1UdHwQ+MDwwOqA4oDaGNGh0" + "dHA6Ly8xMjcuMC4wLjE6ODA4MC9lamJjYS93ZWJkaXN0L2NlcnRkaXN0P2NtZD1j" + "cmwwDQYJKoZIhvcNAQEFBQADgYEAU4CCcLoSUDGXJAOO9hGhvxQiwjGD2rVKCLR4" + "emox1mlQ5rgO9sSel6jHkwceaq4A55+qXAjQVsuy76UJnc8ncYX8f98uSYKcjxo/" + "ifn1eHMbL8dGLd5bc2GNBZkmhFIEoDvbfn9jo7phlS8iyvF2YhC4eso8Xb+T7+BZ" + "QUOBOvc="); static String testcert_crlf = ("MIIDATCCAmqgAwIBAgIIczEoghAwc3EwDQYJKoZIhvcNAQEFBQAwLzEPMA0GA1UE\n" + "AxMGVGVzdENBMQ8wDQYDVQQKEwZBbmFUb20xCzAJBgNVBAYTAlNFMB4XDTAzMDky\n" + "NDA2NDgwNFoXDTA1MDkyMzA2NTgwNFowMzEQMA4GA1UEAxMHcDEydGVzdDESMBAG\n" + "A1UEChMJUHJpbWVUZXN0MQswCQYDVQQGEwJTRTCBnTANBgkqhkiG9w0BAQEFAAOB\n" + "iwAwgYcCgYEAnPAtfpU63/0h6InBmesN8FYS47hMvq/sliSBOMU0VqzlNNXuhD8a\n" + "3FypGfnPXvjJP5YX9ORu1xAfTNao2sSHLtrkNJQBv6jCRIMYbjjo84UFab2qhhaJ\n" + "wqJgkQNKu2LHy5gFUztxD8JIuFPoayp1n9JL/gqFDv6k81UnDGmHeFcCARGjggEi\n" + "MIIBHjAPBgNVHRMBAf8EBTADAQEAMA8GA1UdDwEB/wQFAwMHoAAwOwYDVR0lBDQw\n" + "MgYIKwYBBQUHAwEGCCsGAQUFBwMCBggrBgEFBQcDBAYIKwYBBQUHAwUGCCsGAQUF\n" + "BwMHMB0GA1UdDgQWBBTnT1aQ9I0Ud4OEfNJkSOgJSrsIoDAfBgNVHSMEGDAWgBRj\n" + "e/R2qFQkjqV0pXdEpvReD1eSUTAiBgNVHREEGzAZoBcGCisGAQQBgjcUAgOgCQwH\n" + "Zm9vQGZvbzASBgNVHSAECzAJMAcGBSkBAQEBMEUGA1UdHwQ+MDwwOqA4oDaGNGh0\n" + "dHA6Ly8xMjcuMC4wLjE6ODA4MC9lamJjYS93ZWJkaXN0L2NlcnRkaXN0P2NtZD1j\n" + "cmwwDQYJKoZIhvcNAQEFBQADgYEAU4CCcLoSUDGXJAOO9hGhvxQiwjGD2rVKCLR4\n" + "emox1mlQ5rgO9sSel6jHkwceaq4A55+qXAjQVsuy76UJnc8ncYX8f98uSYKcjxo/\n" + "ifn1eHMbL8dGLd5bc2GNBZkmhFIEoDvbfn9jo7phlS8iyvF2YhC4eso8Xb+T7+BZ\n" + "QUOBOvc="); public static byte[] longMsg = {77, 73, 65, 67, 65, 81, 77, 119, 103, 65, 89, 74, 75, 111, 90, 73, 104, 118, 99, 78, 65, 81, 99, 66, 111, 73, 65, 107, 103, 65, 83, 67, 67, 118, 73, 119, 103, 68, 67, 65, 66, 103, 107, 113, 104, 107, 105, 71, 57, 119, 48, 66, 66, 119, 71, 103, 103, 67, 83, 65, 66, 73, 73, 75, 32, 50, 106, 67, 67, 67, 116, 89, 119, 103, 103, 86, 109, 66, 103, 115, 113, 104, 107, 105, 71, 57, 119, 48, 66, 68, 65, 111, 66, 65, 113, 67, 67, 66, 80, 107, 119, 103, 103, 84, 49, 77, 67, 99, 71, 67, 105, 113, 71, 83, 73, 98, 51, 68, 81, 69, 77, 65, 81, 77, 119, 71, 81, 81, 85, 32, 112, 119, 114, 74, 76, 56, 72, 47, 115, 121, 53, 115, 43, 67, 122, 56, 47, 118, 112, 107, 81, 109, 56, 111, 57, 82, 69, 67, 65, 87, 81, 69, 103, 103, 84, 73, 115, 88, 73, 68, 106, 107, 49, 78, 81, 55, 69, 113, 100, 79, 49, 99, 67, 89, 116, 104, 47, 121, 55, 69, 76, 50, 86, 52, 32, 117, 82, 113, 119, 71, 105, 80, 51, 67, 102, 80, 66, 109, 73, 76, 82, 86, 84, 110, 70, 84, 120, 53, 66, 80, 121, 121, 87, 65, 54, 102, 100, 55, 100, 105, 78, 98, 99, 102, 106, 109, 115, 57, 71, 108, 114, 50, 75, 75, 84, 104, 75, 121, 78, 82, 86, 50, 81, 82, 102, 56, 106, 84, 117, 32, 55, 117, 78, 47, 113, 79, 49, 112, 88, 57, 50, 111, 68, 82, 119, 51, 56, 104, 107, 50, 65, 100, 118, 66, 76, 81, 105, 119, 113, 122, 104, 80, 48, 99, 55, 120, 121, 53, 48, 122, 104, 50, 118, 89, 112, 49, 106, 110, 100, 109, 90, 117, 68, 85, 112, 48, 87, 104, 114, 47, 43, 68, 54, 120, 32, 109, 77, 78, 108, 121, 117, 111, 78, 73, 68, 122, 57, 117, 102, 102, 68, 106, 73, 98, 111, 117, 116, 97, 81, 82, 52, 54, 55, 88, 86, 88, 55, 105, 106, 53, 98, 74, 103, 56, 88, 75, 98, 118, 56, 81, 67, 106, 47, 52, 119, 48, 121, 102, 56, 89, 116, 88, 82, 99, 70, 122, 85, 118, 83, 32, 119, 49, 78, 79, 77, 48, 90, 109, 55, 70, 83, 85, 49, 86, 75, 49, 71, 106, 86, 52, 65, 98, 107, 90, 115, 49, 83, 90, 51, 84, 49, 68, 89, 109, 88, 83, 112, 109, 101, 84, 100, 82, 103, 122, 101, 69, 115, 53, 73, 78, 80, 74, 77, 110, 99, 116, 83, 84, 114, 66, 66, 113, 119, 81, 32, 83, 84, 109, 102, 43, 47, 87, 73, 78, 104, 114, 72, 54, 118, 79, 84, 88, 77, 66, 98, 85, 53, 122, 101, 73, 57, 115, 81, 78, 56, 86, 87, 89, 82, 114, 82, 80, 89, 48, 111, 86, 78, 53, 107, 56, 71, 84, 65, 89, 83, 43, 119, 102, 55, 80, 84, 121, 69, 115, 53, 74, 107, 111, 66, 32, 108, 122, 75, 105, 52, 120, 88, 104, 120, 56, 72, 97, 105, 119, 113, 116, 115, 50, 73, 69, 86, 84, 99, 77, 69, 78, 98, 77, 111, 89, 99, 83, 108, 89, 122, 103, 103, 109, 114, 47, 78, 120, 114, 51, 77, 116, 100, 52, 54, 55, 65, 49, 56, 85, 113, 53, 107, 98, 72, 81, 81, 103, 106, 72, 32, 122, 79, 100, 50, 83, 107, 85, 71, 104, 122, 43, 115, 51, 82, 98, 55, 86, 116, 53, 99, 98, 67, 89, 67, 53, 86, 114, 57, 50, 121, 116, 67, 88, 100, 88, 122, 43, 105, 49, 109, 69, 73, 104, 90, 74, 71, 119, 109, 84, 47, 47, 98, 47, 122, 53, 114, 52, 105, 109, 78, 53, 98, 120, 86, 32, 79, 80, 97, 77, 87, 120, 78, 65, 51, 113, 100, 85, 70, 116, 84, 121, 77, 70, 116, 52, 73, 79, 82, 107, 100, 72, 120, 43, 73, 118, 84, 89, 83, 48, 78, 54, 82, 79, 69, 87, 113, 108, 100, 111, 98, 100, 116, 87, 86, 70, 109, 57, 80, 110, 89, 72, 116, 111, 54, 51, 105, 87, 55, 73, 32, 98, 70, 70, 114, 99, 115, 118, 50, 119, 97, 120, 108, 85, 110, 119, 108, 121, 83, 121, 121, 87, 56, 50, 107, 75, 101, 69, 55, 74, 70, 66, 121, 114, 68, 76, 102, 50, 66, 102, 65, 49, 77, 111, 110, 102, 69, 85, 87, 81, 84, 79, 78, 113, 80, 54, 99, 109, 116, 114, 56, 53, 120, 68, 98, 32, 56, 82, 53, 67, 65, 121, 51, 116, 81, 52, 88, 83, 54, 98, 112, 74, 84, 84, 102, 55, 82, 110, 88, 80, 105, 120, 77, 71, 111, 110, 81, 74, 57, 69, 79, 80, 75, 78, 85, 57, 100, 118, 77, 107, 69, 65, 75, 51, 65, 110, 114, 48, 105, 106, 65, 57, 50, 105, 69, 106, 101, 79, 48, 87, 32, 115, 71, 67, 117, 56, 53, 55, 90, 81, 88, 73, 85, 79, 65, 109, 76, 107, 83, 53, 111, 90, 76, 119, 84, 50, 73, 68, 113, 110, 66, 81, 78, 67, 57, 102, 84, 100, 86, 86, 75, 87, 75, 100, 102, 118, 111, 54, 67, 53, 75, 68, 105, 111, 116, 109, 119, 75, 56, 68, 97, 53, 79, 110, 97, 32, 109, 81, 113, 112, 119, 88, 56, 80, 66, 80, 120, 120, 65, 106, 79, 99, 51, 57, 48, 87, 120, 50, 57, 48, 106, 110, 87, 54, 43, 55, 72, 112, 49, 99, 66, 55, 120, 73, 90, 112, 53, 53, 114, 109, 111, 57, 82, 74, 121, 99, 102, 71, 121, 83, 105, 51, 122, 108, 117, 68, 47, 83, 109, 100, 32, 114, 90, 73, 79, 86, 83, 100, 69, 72, 88, 81, 104, 103, 119, 104, 119, 83, 106, 122, 101, 119, 97, 70, 112, 104, 107, 71, 80, 117, 104, 105, 110, 85, 72, 55, 57, 77, 105, 67, 70, 105, 114, 106, 86, 97, 83, 118, 79, 78, 106, 71, 88, 65,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -