test: boot test
parent
8dc9c93469
commit
75bc61e6b8
|
|
@ -45,7 +45,7 @@ public class MockResponse {
|
||||||
list.add(certificate);
|
list.add(certificate);
|
||||||
CertificateProvider certificateProvider = new LocalCertificateProvider(list);
|
CertificateProvider certificateProvider = new LocalCertificateProvider(list);
|
||||||
Privacy privacy = new TestPrivacy(privateKey, certificateProvider);
|
Privacy privacy = new TestPrivacy(privateKey, certificateProvider);
|
||||||
Signature signature = new DefaultSignature(certificateProvider, new TestSigner(privateKey), new TestVerifier(certificateProvider));
|
Signature signature = new DefaultSignature(certificateProvider, new TestSigner(privateKey, "6CDDAA92CAD75998325027647847330C1756291"), new TestVerifier(certificateProvider));
|
||||||
|
|
||||||
return new TestProfile(
|
return new TestProfile(
|
||||||
privacy, signature, new DefaultChannel.Builder()
|
privacy, signature, new DefaultChannel.Builder()
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ public class TestSigner extends AbstractSigner {
|
||||||
/**
|
/**
|
||||||
* @param privateKey API私钥
|
* @param privateKey API私钥
|
||||||
*/
|
*/
|
||||||
public TestSigner(PrivateKey privateKey) {
|
public TestSigner(PrivateKey privateKey, String certificateSerial) {
|
||||||
super("SHA256withRSA", "SHA256withRSA", privateKey, null, "");
|
super("SHA256withRSA", "SHA256withRSA", privateKey, null, certificateSerial);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,6 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.security.PrivateKey;
|
import java.security.PrivateKey;
|
||||||
import java.security.cert.X509Certificate;
|
import java.security.cert.X509Certificate;
|
||||||
|
|
@ -24,12 +23,14 @@ import java.util.stream.Collectors;
|
||||||
@ConditionalOnClass(RsaProfile.class)
|
@ConditionalOnClass(RsaProfile.class)
|
||||||
@ConditionalOnProperty(value = "scfs.api-gateway.cipher.type", havingValue = "rsa")
|
@ConditionalOnProperty(value = "scfs.api-gateway.cipher.type", havingValue = "rsa")
|
||||||
public class RsaConfiguration extends AbstractAutoConfiguration {
|
public class RsaConfiguration extends AbstractAutoConfiguration {
|
||||||
|
private final ScfsApiGatewayProperties properties;
|
||||||
|
|
||||||
@Resource
|
public RsaConfiguration(ScfsApiGatewayProperties properties) {
|
||||||
private ScfsApiGatewayProperties properties;
|
this.properties = properties;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected ScfsApiGatewayProperties getProperties() {
|
public ScfsApiGatewayProperties getProperties() {
|
||||||
return properties;
|
return properties;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,6 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.security.PrivateKey;
|
import java.security.PrivateKey;
|
||||||
import java.security.cert.X509Certificate;
|
import java.security.cert.X509Certificate;
|
||||||
|
|
@ -25,8 +24,11 @@ import java.util.stream.Collectors;
|
||||||
@ConditionalOnClass(SmProfile.class)
|
@ConditionalOnClass(SmProfile.class)
|
||||||
@ConditionalOnProperty(value = "scfs.api-gateway.cipher.type", havingValue = "sm", matchIfMissing = true)
|
@ConditionalOnProperty(value = "scfs.api-gateway.cipher.type", havingValue = "sm", matchIfMissing = true)
|
||||||
public class SmConfiguration extends AbstractAutoConfiguration {
|
public class SmConfiguration extends AbstractAutoConfiguration {
|
||||||
@Resource
|
private final ScfsApiGatewayProperties properties;
|
||||||
private ScfsApiGatewayProperties properties;
|
|
||||||
|
public SmConfiguration(ScfsApiGatewayProperties properties) {
|
||||||
|
this.properties = properties;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ScfsApiGatewayProperties getProperties() {
|
public ScfsApiGatewayProperties getProperties() {
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,79 @@
|
||||||
|
package com.czcb.scfs.spring.boot.starter;
|
||||||
|
|
||||||
|
import com.czcb.scfs.api.core.cipher.StoreType;
|
||||||
|
import com.czcb.scfs.api.core.http.LogLevel;
|
||||||
|
import com.czcb.scfs.api.rsa.RsaProfile;
|
||||||
|
import org.assertj.core.util.Lists;
|
||||||
|
import org.junit.jupiter.api.Assertions;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static net.javacrumbs.jsonunit.assertj.JsonAssertions.assertThatJson;
|
||||||
|
|
||||||
|
class RsaConfigurationTest {
|
||||||
|
|
||||||
|
private RsaConfiguration rsaConfiguration;
|
||||||
|
|
||||||
|
private ScfsApiGatewayProperties properties() {
|
||||||
|
ScfsApiGatewayProperties properties = new ScfsApiGatewayProperties();
|
||||||
|
|
||||||
|
ScfsApiGatewayProperties.Httpclient httpclient = new ScfsApiGatewayProperties.Httpclient();
|
||||||
|
Map<String, String> headers = new HashMap<>();
|
||||||
|
headers.put("aa", "123456");
|
||||||
|
httpclient.setHeaders(headers);
|
||||||
|
|
||||||
|
ScfsApiGatewayProperties.Httpclient.Proxy proxy = new ScfsApiGatewayProperties.Httpclient.Proxy();
|
||||||
|
proxy.setEnabled(true);
|
||||||
|
proxy.setHost("128.0.0.1");
|
||||||
|
proxy.setPort("1000");
|
||||||
|
proxy.setUsername("name");
|
||||||
|
proxy.setPassword("123456");
|
||||||
|
proxy.setScheme("https");
|
||||||
|
httpclient.setProxy(proxy);
|
||||||
|
|
||||||
|
ScfsApiGatewayProperties.Httpclient.ConnPool connPool = new ScfsApiGatewayProperties.Httpclient.ConnPool();
|
||||||
|
connPool.setMaxRequests(100);
|
||||||
|
connPool.setMaxRequestPerHost(100);
|
||||||
|
connPool.setConnectTimeout(100);
|
||||||
|
connPool.setSocketTimeout(100);
|
||||||
|
httpclient.setConnPool(connPool);
|
||||||
|
httpclient.setCompressionEnabled(false);
|
||||||
|
httpclient.setLogLevel(LogLevel.basic);
|
||||||
|
properties.setHttpclient(httpclient);
|
||||||
|
|
||||||
|
ScfsApiGatewayProperties.Channel channel = new ScfsApiGatewayProperties.Channel();
|
||||||
|
channel.setChannelNo("000000");
|
||||||
|
channel.setAppNo("111111");
|
||||||
|
properties.setChannel(channel);
|
||||||
|
|
||||||
|
ScfsApiGatewayProperties.Cipher cipher = new ScfsApiGatewayProperties.Cipher();
|
||||||
|
cipher.setStoreType(StoreType.RESOURCES);
|
||||||
|
cipher.setChannelPrivateKey("rsa_channel_private_key.pem");
|
||||||
|
cipher.setChannelCertificateSerial("xxxxxx");
|
||||||
|
cipher.setCertificate(Lists.list("rsa_channel_certificate.pem"));
|
||||||
|
properties.setCipher(cipher);
|
||||||
|
|
||||||
|
properties.setOnline(true);
|
||||||
|
properties.setHost("http://127.0.0.1");
|
||||||
|
return properties;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void getProperties() {
|
||||||
|
rsaConfiguration = new RsaConfiguration(properties());
|
||||||
|
ScfsApiGatewayProperties properties = rsaConfiguration.getProperties();
|
||||||
|
Assertions.assertNotNull(properties);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void smProfile() {
|
||||||
|
rsaConfiguration = new RsaConfiguration(properties());
|
||||||
|
RsaProfile profile = rsaConfiguration.rsaProfile();
|
||||||
|
Assertions.assertNotNull(profile);
|
||||||
|
assertThatJson("{\"channelNo\":\"000000\",\"appNo\":\"111111\"}").isEqualTo(profile.getChannel());
|
||||||
|
assertThatJson("{\"host\":\"http://127.0.0.1\",\"connPool\":{\"maxRequests\":100,\"maxRequestPerHost\":100,\"connectTimeout\":100,\"socketTimeout\":100},\"headers\":{\"aa\":\"123456\"},\"proxy\":{\"enabled\":true,\"host\":\"128.0.0.1\",\"port\":\"1000\",\"username\":\"name\",\"password\":\"123456\",\"scheme\":\"https\"}}\n")
|
||||||
|
.isEqualTo(profile.getHttpProfile());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,129 @@
|
||||||
|
package com.czcb.scfs.spring.boot.starter;
|
||||||
|
|
||||||
|
import com.czcb.scfs.api.core.ApiClient;
|
||||||
|
import com.czcb.scfs.api.core.cipher.StoreType;
|
||||||
|
import com.czcb.scfs.api.core.http.LogLevel;
|
||||||
|
import com.czcb.scfs.api.core.http.client.ApacheHttpclient;
|
||||||
|
import org.apache.hc.client5.http.impl.classic.HttpClients;
|
||||||
|
import org.assertj.core.util.Lists;
|
||||||
|
import org.junit.jupiter.api.Assertions;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.junit.jupiter.api.extension.ExtendWith;
|
||||||
|
import org.mockito.junit.jupiter.MockitoExtension;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@ExtendWith(MockitoExtension.class)
|
||||||
|
class ScfsAutoConfigurationTest {
|
||||||
|
private final ScfsAutoConfiguration configuration = new ScfsAutoConfiguration();
|
||||||
|
|
||||||
|
private ScfsApiGatewayProperties properties() {
|
||||||
|
ScfsApiGatewayProperties properties = new ScfsApiGatewayProperties();
|
||||||
|
|
||||||
|
ScfsApiGatewayProperties.Httpclient httpclient = new ScfsApiGatewayProperties.Httpclient();
|
||||||
|
Map<String, String> headers = new HashMap<>();
|
||||||
|
headers.put("aa", "123456");
|
||||||
|
httpclient.setHeaders(headers);
|
||||||
|
|
||||||
|
ScfsApiGatewayProperties.Httpclient.Proxy proxy = new ScfsApiGatewayProperties.Httpclient.Proxy();
|
||||||
|
proxy.setEnabled(true);
|
||||||
|
proxy.setHost("128.0.0.1");
|
||||||
|
proxy.setPort("1000");
|
||||||
|
proxy.setUsername("name");
|
||||||
|
proxy.setPassword("123456");
|
||||||
|
proxy.setScheme("https");
|
||||||
|
httpclient.setProxy(proxy);
|
||||||
|
|
||||||
|
ScfsApiGatewayProperties.Httpclient.ConnPool connPool = new ScfsApiGatewayProperties.Httpclient.ConnPool();
|
||||||
|
connPool.setMaxRequests(100);
|
||||||
|
connPool.setMaxRequestPerHost(100);
|
||||||
|
connPool.setConnectTimeout(100);
|
||||||
|
connPool.setSocketTimeout(100);
|
||||||
|
httpclient.setConnPool(connPool);
|
||||||
|
httpclient.setCompressionEnabled(false);
|
||||||
|
httpclient.setLogLevel(LogLevel.basic);
|
||||||
|
properties.setHttpclient(httpclient);
|
||||||
|
|
||||||
|
ScfsApiGatewayProperties.Channel channel = new ScfsApiGatewayProperties.Channel();
|
||||||
|
channel.setChannelNo("000000");
|
||||||
|
channel.setAppNo("111111");
|
||||||
|
properties.setChannel(channel);
|
||||||
|
|
||||||
|
ScfsApiGatewayProperties.Cipher cipher = new ScfsApiGatewayProperties.Cipher();
|
||||||
|
cipher.setStoreType(StoreType.RESOURCES);
|
||||||
|
cipher.setChannelPrivateKey("sm2_private_key.pem");
|
||||||
|
cipher.setChannelCertificateSerial("xxxxxx");
|
||||||
|
cipher.setCertificate(Lists.list("scfs_sm2_certificate.pem"));
|
||||||
|
properties.setCipher(cipher);
|
||||||
|
|
||||||
|
properties.setOnline(true);
|
||||||
|
properties.setHost("http://127.0.0.1");
|
||||||
|
return properties;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected ApiClient apiClient() {
|
||||||
|
SmConfiguration smConfiguration = new SmConfiguration(properties());
|
||||||
|
return new ApacheHttpclient(HttpClients.custom().build(), smConfiguration.smProfile());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void echoService() {
|
||||||
|
Assertions.assertNotNull(configuration.echoService(apiClient()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void accountService() {
|
||||||
|
Assertions.assertNotNull(configuration.accountService(apiClient()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void billService() {
|
||||||
|
Assertions.assertNotNull(configuration.billService(apiClient()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void bmdService() {
|
||||||
|
Assertions.assertNotNull(configuration.bmdService(apiClient()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void communalDataService() {
|
||||||
|
Assertions.assertNotNull(configuration.communalDataService(apiClient()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void faceService() {
|
||||||
|
Assertions.assertNotNull(configuration.faceService(apiClient()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void fileService() {
|
||||||
|
Assertions.assertNotNull(configuration.fileService(apiClient()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void loanService() {
|
||||||
|
Assertions.assertNotNull(configuration.loanService(apiClient()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void ocrService() {
|
||||||
|
Assertions.assertNotNull(configuration.ocrService(apiClient()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void payService() {
|
||||||
|
Assertions.assertNotNull(configuration.payService(apiClient()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void smsService() {
|
||||||
|
Assertions.assertNotNull(configuration.smsService(apiClient()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void transService() {
|
||||||
|
Assertions.assertNotNull(configuration.transService(apiClient()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -2,21 +2,21 @@ package com.czcb.scfs.spring.boot.starter;
|
||||||
|
|
||||||
import com.czcb.scfs.api.core.cipher.StoreType;
|
import com.czcb.scfs.api.core.cipher.StoreType;
|
||||||
import com.czcb.scfs.api.core.http.LogLevel;
|
import com.czcb.scfs.api.core.http.LogLevel;
|
||||||
|
import com.czcb.scfs.api.sm.SmProfile;
|
||||||
import org.assertj.core.util.Lists;
|
import org.assertj.core.util.Lists;
|
||||||
import org.junit.jupiter.api.Assertions;
|
import org.junit.jupiter.api.Assertions;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
import org.junit.jupiter.api.extension.ExtendWith;
|
import org.junit.jupiter.api.extension.ExtendWith;
|
||||||
import org.mockito.Mock;
|
|
||||||
import org.mockito.Mockito;
|
|
||||||
import org.mockito.junit.jupiter.MockitoExtension;
|
import org.mockito.junit.jupiter.MockitoExtension;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static net.javacrumbs.jsonunit.assertj.JsonAssertions.assertThatJson;
|
||||||
|
|
||||||
@ExtendWith(MockitoExtension.class)
|
@ExtendWith(MockitoExtension.class)
|
||||||
class SmConfigurationTest {
|
class SmConfigurationTest {
|
||||||
|
|
||||||
@Mock
|
|
||||||
private SmConfiguration smConfiguration;
|
private SmConfiguration smConfiguration;
|
||||||
|
|
||||||
private ScfsApiGatewayProperties properties() {
|
private ScfsApiGatewayProperties properties() {
|
||||||
|
|
@ -53,9 +53,9 @@ class SmConfigurationTest {
|
||||||
|
|
||||||
ScfsApiGatewayProperties.Cipher cipher = new ScfsApiGatewayProperties.Cipher();
|
ScfsApiGatewayProperties.Cipher cipher = new ScfsApiGatewayProperties.Cipher();
|
||||||
cipher.setStoreType(StoreType.RESOURCES);
|
cipher.setStoreType(StoreType.RESOURCES);
|
||||||
cipher.setChannelPrivateKey("/home/key.pem");
|
cipher.setChannelPrivateKey("sm2_private_key.pem");
|
||||||
cipher.setChannelCertificateSerial("/home/c1.pem");
|
cipher.setChannelCertificateSerial("xxxxxx");
|
||||||
cipher.setCertificate(Lists.list("/home/c2.pem"));
|
cipher.setCertificate(Lists.list("scfs_sm2_certificate.pem"));
|
||||||
properties.setCipher(cipher);
|
properties.setCipher(cipher);
|
||||||
|
|
||||||
properties.setOnline(true);
|
properties.setOnline(true);
|
||||||
|
|
@ -65,23 +65,18 @@ class SmConfigurationTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void getProperties() {
|
void getProperties() {
|
||||||
Mockito.when(smConfiguration.getProperties()).thenReturn(properties());
|
smConfiguration = new SmConfiguration(properties());
|
||||||
ScfsApiGatewayProperties properties = smConfiguration.getProperties();
|
ScfsApiGatewayProperties properties = smConfiguration.getProperties();
|
||||||
Assertions.assertNotNull(properties);
|
Assertions.assertNotNull(properties);
|
||||||
}
|
}
|
||||||
|
|
||||||
// @Test
|
@Test
|
||||||
// void smProfile() {
|
void smProfile() {
|
||||||
// Mockito.when(smConfiguration.getProperties()).thenReturn(properties());
|
smConfiguration = new SmConfiguration(properties());
|
||||||
// Mockito.when(smConfiguration.smProfile()).thenReturn(new SmConfiguration().smProfile());
|
SmProfile smProfile = smConfiguration.smProfile();
|
||||||
// Mockito.when(smConfiguration.getChannel()).thenReturn(new SmConfiguration().getChannel());
|
Assertions.assertNotNull(smProfile);
|
||||||
// SmProfile smProfile = smConfiguration.smProfile();
|
assertThatJson("{\"channelNo\":\"000000\",\"appNo\":\"111111\"}").isEqualTo(smProfile.getChannel());
|
||||||
// Assertions.assertNotNull(smProfile);
|
assertThatJson("{\"host\":\"http://127.0.0.1\",\"connPool\":{\"maxRequests\":100,\"maxRequestPerHost\":100,\"connectTimeout\":100,\"socketTimeout\":100},\"headers\":{\"aa\":\"123456\"},\"proxy\":{\"enabled\":true,\"host\":\"128.0.0.1\",\"port\":\"1000\",\"username\":\"name\",\"password\":\"123456\",\"scheme\":\"https\"}}\n")
|
||||||
// assertThatJson("{\"channelNo\":\"000000\",\"appNo\":\"111111\"}").isEqualTo(smProfile.getChannel());
|
.isEqualTo(smProfile.getHttpProfile());
|
||||||
// assertThatJson("{\"logEnabled\":false,\"compressionEnabled\":false," +
|
}
|
||||||
// "\"connPool\":{\"maxRequests\":100,\"maxRequestPerHost\":100,\"connectTimeout\":100,\"socketTimeout\":100}," +
|
|
||||||
// "\"proxy\":{\"enabled\":true,\"host\":\"128.0.0.1\",\"port\":\"1000\",\"username\":\"name\",\"password\":\"123456\",\"scheme\":\"https\"}," +
|
|
||||||
// "\"headers\":{\"aa\":\"123456\"}}")
|
|
||||||
// .isEqualTo(smProfile.getHttpProfile());
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDeTCCAmGgAwIBAgIhAII88+MQ8uLtGvhVBudKldxDAQBv3vL9AZlT+vTeEqi/MA0GCSqGSIb3
|
||||||
|
DQEBCwUAMIGNMQswCQYDVQQGEwJDTjESMBAGA1UECAwJ5rWZ5rGf55yBMRIwEAYDVQQHDAnmna3l
|
||||||
|
t57luIIxITAfBgNVBAoMGOa1meaxn+eooOW3nuWVhuS4mumTtuihjDEYMBYGA1UECwwP5pWw5a2X
|
||||||
|
6YeR6J6N6YOoMRkwFwYDVQQDDBBzY2ZzLmN6Y2IuY29tLmNuMB4XDTIzMDYxODA5MDczMVoXDTI0
|
||||||
|
MDYxODA5MDczMVowUjELMAkGA1UEBhMCQ04xEjAQBgNVBAgMCea1meaxn+ecgTESMBAGA1UEBwwJ
|
||||||
|
5p2t5bee5biCMRswGQYDVQQKDBLnqKDlt57llYbkuJrpk7booYwwggEiMA0GCSqGSIb3DQEBAQUA
|
||||||
|
A4IBDwAwggEKAoIBAQCfHOgnUYbFi780EX9xQTdWPvCyBhaEnU5Y2p1bW4dHoumgEtjQOkLlRe3U
|
||||||
|
g1lu6TfhuE9YOQ9+V+Dsnzt7MXIRI7KlOuwpfwXn3e/MYP5ZtDBUiuSGNNVSP39wgb6aYXhvFY/L
|
||||||
|
m9gaO8Q4rauzK94Clw4sH3a7J6ST50xHss8VjSVFUkcPhpH+OJBTUrXWiccZCn01XDz0vmq6J3Au
|
||||||
|
jM55WBEmoz2r9iiVdCjZsgB4veQIpCKuMvJsEXVgRzULUnaqdX+7BTDBs30kCGyyBarR+wXLAKNQ
|
||||||
|
1nENFs1IGM99I+O8UsD6CvUnt2t7l3B8/qIlOSfds8x+BoUxQwhmUaMjAgMBAAEwDQYJKoZIhvcN
|
||||||
|
AQELBQADggEBACRCHOYH8ncOiYjMm3As7OFdnVDuGByMoZsDucqwrs0mJZVdp3OMgvGhC9zkzdZX
|
||||||
|
sJFKQeIRp/13cD1SKxtwfU7w4J+/FWpWPEG9Jf2bLqurYivu0tTa1xe5SDL4unNaj/o7BA0vaKJe
|
||||||
|
gagyULAilNCGBCfy59BSR/GQbgAC6pdl3soMx/s1c9BcZVplbq12/rmStGce6h3QqNjwpRMowbVW
|
||||||
|
XswXhr08AUevF7UriDjHkCsa6MqQ5x+ShV9qO1f2LDYBQRnM2Ty44EV5eUbHyKOJAYF+WqT6IRiA
|
||||||
|
2sMZrKRTHaNZB4j0Vc87HuxDtTNh/EEXU2sO31WZHs3ymAChbC4=
|
||||||
|
-----END CERTIFICATE-----
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCfHOgnUYbFi780EX9xQTdWPvCy
|
||||||
|
BhaEnU5Y2p1bW4dHoumgEtjQOkLlRe3Ug1lu6TfhuE9YOQ9+V+Dsnzt7MXIRI7KlOuwpfwXn3e/M
|
||||||
|
YP5ZtDBUiuSGNNVSP39wgb6aYXhvFY/Lm9gaO8Q4rauzK94Clw4sH3a7J6ST50xHss8VjSVFUkcP
|
||||||
|
hpH+OJBTUrXWiccZCn01XDz0vmq6J3AujM55WBEmoz2r9iiVdCjZsgB4veQIpCKuMvJsEXVgRzUL
|
||||||
|
UnaqdX+7BTDBs30kCGyyBarR+wXLAKNQ1nENFs1IGM99I+O8UsD6CvUnt2t7l3B8/qIlOSfds8x+
|
||||||
|
BoUxQwhmUaMjAgMBAAECggEAQ+meKz4QdJvnse0wBKKN4Hl/2bRggxzzVliFJnvEG27tIb45nXLo
|
||||||
|
n5x/3R9tGjpf+C9namP8eXQ/1C9Iv5XEto0SkJS8PR/y4NspIYZaueX/ZO5diOzfCjqBBf/S32jv
|
||||||
|
8xX0aLbtf5D3+SsjaJe2LEvWKD4Luuk6RUjJlaa73dnSuGFSuvYV8MvFdHtfU8L8ZRoqZwmM9QTg
|
||||||
|
+Gpix4z6Hy/Mmi1xRl0EhIITq+mV9wR9Ock/0o12nvsNDyDSyrrt3niXTTkVCbct+t4UFwtnrZyH
|
||||||
|
dwl1OQ+WleTkUQY+wNgpq4jLjwGowXnqXlKff3tvXEt+3tpdOS8i+kXYwIrvIQKBgQDVnldDo2iq
|
||||||
|
TwLcZjXbreHskn/4hvWYUPqucEZ93jmyYNKUKPlXkVnc+kXnS0uuM5JZpi/7+FDkTqwHK83ET4/n
|
||||||
|
kTC9zM+K7KyIBbljclPjzXYJAW7nwD8A/vKx6CWi++f4buYc+lttsTprdAZ4/kWPTnvNJSjhSTAR
|
||||||
|
SQ32HxkiIQKBgQC+rjujW31WN4d2j48+K0B+7bIQON+VtmBZ48u2ZIQOi4PdoBvHv8HqQyhJlR+6
|
||||||
|
z49k5WczSqAXdG2+nIgs8fpjj0lc7YiMIYs0VsLodOToH9J2MfXjWi+A4Y2vbfcjfUuCWhKSZs6B
|
||||||
|
eMLNe1LPIBDmlT3A1X83qkCpvAYYQWAkwwKBgFVtslZRZk0dtfYwRf+phT1XxSe9yT/1uprCOd6i
|
||||||
|
XY6RnAU2cajsbvSpfgUmnoh3BWMmy+/HeYokUDW59ds5OkKQVN7CpolXZxQqvd4gXZ4vj7HASfsS
|
||||||
|
bd/XFXXCcjLA7R70MsCJ+sBebQ+F4gTHI0hRSb9bygJ2g2uWPKgd/a4hAoGABCtZIHxKpEz4iE4h
|
||||||
|
SrG1alEWOKaVtPdU6gJCHQ3bmVnRm1H56Yc23UF0qw84r2QEdadSd1ulXn3sPGO90oXD/NNQPljv
|
||||||
|
SGkfWxiekGil7LFtb6ot/zeknEPSTkiwQ7VkpkgD6fGXiFs0nzuYFvFTjUcsH4BLlNMDMPLsizE6
|
||||||
|
wfMCgYANvw4Lq1cVfHAl3f6IZlpWHPFEEJbPcBLu9+qtUlZjleCaWA8WXuiBxkqaIkeVi3JMst34
|
||||||
|
adfIfBsAk4FeyLpkiTYNjOckZvXFXYKA3a05l/RJ5rsnnI9GRh+3Gk3V+87OU7HwMU6jNZmQiPIO
|
||||||
|
/jerEvZ9A5tbuzKkfJj2F0ZXfw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIB7jCCAZOgAwIBAgIhALdtngtzF/RUeMwmUCBIxE9gKqg6JyTI/0AIb7owcUCnMAoGCCqBHM9V
|
||||||
|
AYN1MIGNMQswCQYDVQQGEwJDTjESMBAGA1UECAwJ5rWZ5rGf55yBMRIwEAYDVQQHDAnmna3lt57l
|
||||||
|
uIIxITAfBgNVBAoMGOa1meaxn+eooOW3nuWVhuS4mumTtuihjDEYMBYGA1UECwwP5pWw5a2X6YeR
|
||||||
|
6J6N6YOoMRkwFwYDVQQDDBBzY2ZzLmN6Y2IuY29tLmNuMB4XDTIzMDYxODEwMTE0N1oXDTI0MDYx
|
||||||
|
ODEwMTE0N1owUjELMAkGA1UEBhMCQ04xEjAQBgNVBAgMCea1meaxn+ecgTESMBAGA1UEBwwJ5p2t
|
||||||
|
5bee5biCMRswGQYDVQQKDBLnqKDlt57llYbkuJrpk7booYwwWTATBgcqhkjOPQIBBggqgRzPVQGC
|
||||||
|
LQNCAATgVojRcvIdy12MIpdBfrwkbSDROpyggvGs4KkZj7FQ4dfZjG9U/IemckKOiB1rziBmvMZ+
|
||||||
|
xcNHM2f7sc4vnNGbMAoGCCqBHM9VAYN1A0kAMEYCIQDMYfauQRljajUQjQP8mhVxmCbpt8ttwmJ+
|
||||||
|
tZaY3nYUdAIhAPBxzw9sBktnnfs0OL5JWoD/gtl7Q47DFozB1y7Lg/0D
|
||||||
|
-----END CERTIFICATE-----
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgGAiYfS2SFBIImE3m/aYxU8hrIGtb
|
||||||
|
YMYJOG52CVAj6NmgCgYIKoEcz1UBgi2hRANCAATgVojRcvIdy12MIpdBfrwkbSDROpyggvGs4KkZ
|
||||||
|
j7FQ4dfZjG9U/IemckKOiB1rziBmvMZ+xcNHM2f7sc4vnNGb
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDyzCCArOgAwIBAgIUBs3aqSytdZmDJQJ2R4RzMMF1YpEwDQYJKoZIhvcNAQEL
|
||||||
|
BQAwgY0xCzAJBgNVBAYTAkNOMRIwEAYDVQQIDAnmtZnmsZ/nnIExEjAQBgNVBAcM
|
||||||
|
CeadreW3nuW4gjEhMB8GA1UECgwY5rWZ5rGf56ig5bee5ZWG5Lia6ZO26KGMMRgw
|
||||||
|
FgYDVQQLDA/mlbDlrZfph5Hono3pg6gxGTAXBgNVBAMMEHNjZnMuY3pjYi5jb20u
|
||||||
|
Y24wHhcNMjQwMjEzMDk1MjQwWhcNMzQwMjEwMDk1MjQwWjCBjTELMAkGA1UEBhMC
|
||||||
|
Q04xEjAQBgNVBAgMCea1meaxn+ecgTESMBAGA1UEBwwJ5p2t5bee5biCMSEwHwYD
|
||||||
|
VQQKDBjmtZnmsZ/nqKDlt57llYbkuJrpk7booYwxGDAWBgNVBAsMD+aVsOWtl+mH
|
||||||
|
keiejemDqDEZMBcGA1UEAwwQc2Nmcy5jemNiLmNvbS5jbjCCASIwDQYJKoZIhvcN
|
||||||
|
AQEBBQADggEPADCCAQoCggEBAMPBs6aV43hfpgOJNSTm24WGGolgYh1IFvvHXgTk
|
||||||
|
4J3/ZQjHHyX+0XXrasCU95iq4czfiaLUdrQCdr3q20w0wMzKrdMFTGrufwfSktTx
|
||||||
|
9ugKitTzejBGPgSqt+Tu0bRwyB5SathtpNc8Pl2VG8p2kXE3VQ1Fq/6ZhRvU4/Gg
|
||||||
|
e4lHGh5EYCb9FYLWdOP1Rh4BBAp6FvkWFYPdQEsLGTSJeA+t/KSRkN4t5Qj18D53
|
||||||
|
MQOescObP6O319Ce6ndFWS7v+fUNBDII5QM6fbg0Z8FdyIN6K8nf9tnVInLm3/ge
|
||||||
|
7obKrIkqo/c571QBuRtlY6ci7XzpHp7s0GTmf/4eAN/XsIsCAwEAAaMhMB8wHQYD
|
||||||
|
VR0OBBYEFPxZwIS1s2a+59+F4mEvMwf01exmMA0GCSqGSIb3DQEBCwUAA4IBAQBE
|
||||||
|
5FuyVUFm4hRxsO8Jl412lxEvtMtgB3QT0mj0+SWVAp/Cb7Jh3yqkszmnx3CC64lB
|
||||||
|
OzfU8rsQMu+R8NoBEUIO03vD9DhozYE67iUcmzwKil6IwedA8QxzL/UZpbf/1SqC
|
||||||
|
Vf4/z0a2dZO7ys/WYPJh+bxsiB5UIfmhnNDIKQoOMrFEzkxz6KHpNXQGt0fj7ugd
|
||||||
|
8HPSkDtYBoCluI9YfWeOazmVAVZxhpLSMi+6NzVwdXjOdKTgxAYMkXIdtPKLiC0z
|
||||||
|
zycbiBuKN7tL/NtHfpYQ1noakUahMzw1XvUNTs47PIaDgqG+mjZR3hRRKQq3iNHy
|
||||||
|
pwDwvSima1XX0KnrzLg+
|
||||||
|
-----END CERTIFICATE-----
|
||||||
|
|
@ -0,0 +1,28 @@
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDDwbOmleN4X6YD
|
||||||
|
iTUk5tuFhhqJYGIdSBb7x14E5OCd/2UIxx8l/tF162rAlPeYquHM34mi1Ha0Ana9
|
||||||
|
6ttMNMDMyq3TBUxq7n8H0pLU8fboCorU83owRj4Eqrfk7tG0cMgeUmrYbaTXPD5d
|
||||||
|
lRvKdpFxN1UNRav+mYUb1OPxoHuJRxoeRGAm/RWC1nTj9UYeAQQKehb5FhWD3UBL
|
||||||
|
Cxk0iXgPrfykkZDeLeUI9fA+dzEDnrHDmz+jt9fQnup3RVku7/n1DQQyCOUDOn24
|
||||||
|
NGfBXciDeivJ3/bZ1SJy5t/4Hu6GyqyJKqP3Oe9UAbkbZWOnIu186R6e7NBk5n/+
|
||||||
|
HgDf17CLAgMBAAECggEAOyoOoZEYxHdoJhZwlPwfKe57k7ypOr9gju1VObZxOt+H
|
||||||
|
Sk1gWSv4Y6Loy1batG4lO7XuE+QSElrSR5k1eYVSJjM1sRsfWwxFIXifvzN4U+5n
|
||||||
|
wm/qJK/+K4vrc4pIoDgcC6oON+Z/lTvUf5VC5oDKeYTnNFEz6Am/RMelsxA1diob
|
||||||
|
SNSwPTPijqy0b63IHSWAbB+zmurRZPOSzy5lZ2F+xdYhnF+j9XprP4iJiHydvrgH
|
||||||
|
RJbxwsiphjgPeqPSVSs5MTQ0zDumRkbMBANk/Y5rCGybBSGpW1BwXZjTp3jtY9Tr
|
||||||
|
DmXDbzsiZWx/D1wFd0F+BhS6vg3dUkX63mSDOaTvKQKBgQDpLcwdAkhvWbRs03ev
|
||||||
|
5/BgmgHO2iwJkAL6yyX9wox4NOYe1FInBht5Nc/ZC0mXy5E4Wmd1SGAoYt8R2vxo
|
||||||
|
LnIyJnRE4iUKWxL87okKCDW4b3AaMTMZXyKmkMgMPDvpk6Odag5Ey2xpojb8TP7q
|
||||||
|
QtZu5DWTkU2lR+2Z4qH8+DFC2QKBgQDW6k4guiR0ZP7Po1QLQWXwRfQU4WUlxaKp
|
||||||
|
MEp6hsdKRN2MPbbPqtg4PoBpc1Hpvx2SX3YGAaRIwJtLGuoOq4TnVJ+9SKI5VDqT
|
||||||
|
YcjE4UZm1DDmm1XYaCJKYeN2Swr2xl2VA6LJpHHZDLXC7YVshZ/53lJhPTbnBpIE
|
||||||
|
0T+MBCIoAwKBgAtSS+zEpZuycU4vXkpOKp+mGpxef3DfayWeI3QUtBlKCDpK+Moo
|
||||||
|
Q8E42aSiJaqXGa/ww8EwCGstkcMeLM8qIiVJNK/7guzjyyI4urKf/2u7DWhYJzD+
|
||||||
|
K4KG2Q+vBQGsR29nLNYuQk9GrwDFBEN/h0XPEsLddTWnLmQgWtkbe9jRAoGBAIAj
|
||||||
|
dW+37HJloTPl+v82//ORkeU9OlSaEND1lQKXB431n261gSEyiPaH9YJqGqXWqGgU
|
||||||
|
eMc+BVjHVhAivPkANR7EavWtr+Okn8QuIkmY06QN0hY8+aMs+30D/l4Sgjf+r99g
|
||||||
|
Kpg1bxftpxXRDqNUzLxrXQzTNb/rP/aVWGFAOalHAoGAPiW3cKvfTOLIS0PFxGOF
|
||||||
|
EKQzr/TDGnKJNKeGJ25VOKPnq8RDX/Ik2+hNjdThOWApIgDQo4JtUMCxCDM7lRcu
|
||||||
|
ne9B/UShSzd8uuZgHZVSFD+pfPJvyVpZ/ORHvrQqUAtveQgk7Cpp2tuvsixbBhdQ
|
||||||
|
E6ZWsef5uyYdyjLp2C4cl2A=
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIICGTCCAcCgAwIBAgIhAPtOPc4Cl0OO05B3H0ZXa5L9fmt/HpvRKn2H6CG1mUjlMAoGCCqBHM9V
|
||||||
|
AYN1MIGNMQswCQYDVQQGEwJDTjESMBAGA1UECAwJ5rWZ5rGf55yBMRIwEAYDVQQHDAnmna3lt57l
|
||||||
|
uIIxITAfBgNVBAoMGOa1meaxn+eooOW3nuWVhuS4mumTtuihjDEYMBYGA1UECwwP5pWw5a2X6YeR
|
||||||
|
6J6N6YOoMRkwFwYDVQQDDBBzY2ZzLmN6Y2IuY29tLmNuMB4XDTI0MDMyNjA4NDU1MFoXDTI5MDMy
|
||||||
|
NjA4NDU1MFowfzELMAkGA1UEBhMCQ04xEjAQBgNVBAgMCea1meaxn+ecgTESMBAGA1UEBwwJ5p2t
|
||||||
|
5bee5biCMSEwHwYDVQQKDBjmtZnmsZ/nqKDlt57llYbkuJrpk7booYwxJTAjBgNVBAsMHOaVsOWt
|
||||||
|
l+mHkeiejemDqC3mtYvor5Xor4HkuaYwWTATBgcqhkjOPQIBBggqgRzPVQGCLQNCAAT0KcBDXLn6
|
||||||
|
Zv5vsEtuDzZclr30phN++uOVaQoFcDhhbeZlqRSIqRdg6YstCHUenN7NL2S1b1JlsWeIUxGCndZU
|
||||||
|
MAoGCCqBHM9VAYN1A0cAMEQCIGp00kvdZqtobJ9X7YHAKBtGZXnXBKeuhdM+ZIhYelwBAiB1Dv0s
|
||||||
|
0ahzWO+jJ/DVN8zM1b4noePZArFed8qHXsvt+Q==
|
||||||
|
-----END CERTIFICATE-----
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgmnhieO9Pq+6MhLFfve3N4E4WMbRq
|
||||||
|
MaIhlgShgDlQPeqgCgYIKoEcz1UBgi2hRANCAATGZG5DywFAZNgP5i83MIL9NJALqqbjeiYUXhFX
|
||||||
|
JDwADC5ricSL3as4GNrni3iQqH3C2xIiVQg7V0tELKnekigB
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
Loading…
Reference in New Issue