Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitbb6874f

Browse files
committed
add query chaincode test
1 parent35c868e commitbb6874f

File tree

105 files changed

+1428
-16
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

105 files changed

+1428
-16
lines changed

‎pom.xml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
<groupId>ijarvis.intelliq</groupId>
66
<artifactId>FabricExample</artifactId>
77
<version>1.0-SNAPSHOT</version>
8+
89
<packaging>jar</packaging>
910

1011
<name>FabricExample</name>
@@ -31,4 +32,42 @@
3132
<version>1.0.1</version>
3233
</dependency>
3334
</dependencies>
35+
<build>
36+
<finalName>intelliq-Fabric</finalName>
37+
<plugins>
38+
<plugin>
39+
<!-- 解决编译版本包的问题-->
40+
<groupId>org.apache.maven.plugins</groupId>
41+
<artifactId>maven-compiler-plugin</artifactId>
42+
<version>3.6.0</version>
43+
<configuration>
44+
<source>1.8</source>
45+
<target>1.8</target>
46+
<compilerVersion>1.8</compilerVersion>
47+
<encoding>UTF-8</encoding>
48+
</configuration>
49+
</plugin>
50+
<plugin>
51+
<!-- 编译可运行的jar包-->
52+
<groupId>org.apache.maven.plugins</groupId>
53+
<artifactId>maven-shade-plugin</artifactId>
54+
<version>3.0.0</version>
55+
<executions>
56+
<execution>
57+
<phase>package</phase>
58+
<goals>
59+
<goal>shade</goal>
60+
</goals>
61+
<configuration>
62+
<transformers>
63+
<transformerimplementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
64+
<mainClass>Apps</mainClass>
65+
</transformer>
66+
</transformers>
67+
</configuration>
68+
</execution>
69+
</executions>
70+
</plugin>
71+
</plugins>
72+
</build>
3473
</project>

‎src/main/java/ijarvis/intelliq/App.java

Lines changed: 0 additions & 13 deletions
This file was deleted.
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
packageijarvis.intelliq;
2+
3+
importorg.apache.log4j.Logger;
4+
importorg.hyperledger.fabric.sdk.*;
5+
importorg.hyperledger.fabric.sdk.exception.CryptoException;
6+
importorg.hyperledger.fabric.sdk.exception.InvalidArgumentException;
7+
importorg.hyperledger.fabric.sdk.security.CryptoSuite;
8+
importjava.util.Collection;
9+
10+
/**
11+
* Hello world!
12+
*
13+
*/
14+
publicclassFabricApp{
15+
privatestaticLoggerlogger=Logger.getLogger(FabricApp.class);
16+
publicstaticHFClientclient=null;
17+
publicstaticCryptoSuitecs =CryptoSuite.Factory.getCryptoSuite();
18+
publicstaticUserpeer0org1=null;
19+
20+
/**
21+
* 初始化超级账本的客户端等相关属性
22+
*/
23+
publicstaticvoidinit()throwsCryptoException,InvalidArgumentException {
24+
client =HFClient.createNewInstance();
25+
client.setCryptoSuite(cs);
26+
Stringkeystorepath=FabricApp.class.getResource("/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp").getPath();
27+
peer0org1 =newSampleUser(keystorepath,"Admin");
28+
client.setUserContext(peer0org1);
29+
30+
}
31+
publicstaticvoidqueryFabcar(Channelchannel,Stringkey)throwsException {
32+
QueryByChaincodeRequestreq =client.newQueryProposalRequest();
33+
ChaincodeIDcid =ChaincodeID.newBuilder().setName("epointchaincodezzk").setVersion("0.1").build();
34+
req.setChaincodeID(cid);
35+
req.setFcn("query");
36+
req.setArgs(newString[] {key });
37+
System.out.println("Querying for " +key);
38+
Collection<ProposalResponse>resps =channel.queryByChaincode(req);
39+
for (ProposalResponseresp :resps) {
40+
Stringpayload =newString(resp.getChaincodeActionResponsePayload());
41+
System.out.println("response: " +payload);
42+
}
43+
}
44+
45+
}
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
packageijarvis.intelliq;
2+
3+
importorg.hyperledger.fabric.sdk.Enrollment;
4+
importorg.hyperledger.fabric.sdk.User;
5+
6+
importjavax.xml.bind.DatatypeConverter;
7+
importjava.io.*;
8+
importjava.nio.file.Files;
9+
importjava.nio.file.Path;
10+
importjava.nio.file.Paths;
11+
importjava.security.GeneralSecurityException;
12+
importjava.security.KeyFactory;
13+
importjava.security.PrivateKey;
14+
importjava.security.spec.PKCS8EncodedKeySpec;
15+
importjava.util.HashSet;
16+
importjava.util.Set;
17+
18+
publicclassSampleUserimplementsUser {
19+
20+
privatefinalStringcertFolder;
21+
privatefinalStringuserName;
22+
23+
publicSampleUser(StringcertFolder,StringuserName) {
24+
this.certFolder =certFolder;
25+
this.userName =userName;
26+
}
27+
28+
@Override
29+
publicStringgetName() {
30+
returnuserName;
31+
}
32+
33+
@Override
34+
publicSet<String>getRoles() {
35+
returnnewHashSet<String>();
36+
}
37+
38+
@Override
39+
publicStringgetAccount() {
40+
return"";
41+
}
42+
43+
@Override
44+
publicStringgetAffiliation() {
45+
return"";
46+
}
47+
48+
@Override
49+
publicEnrollmentgetEnrollment() {
50+
returnnewEnrollment() {
51+
52+
@Override
53+
publicPrivateKeygetKey() {
54+
try {
55+
returnloadPrivateKey(Paths.get(certFolder,"/keystore/ea2db84973c9c54436c47d7e10b9b63420f654ecd7c541fab14646e976294393_sk"));
56+
}catch (Exceptione) {
57+
returnnull;
58+
}
59+
}
60+
@Override
61+
publicStringgetCert() {
62+
try {
63+
returnnewString(Files.readAllBytes(Paths.get(certFolder,"/signcerts/Admin@org1.example.com-cert.pem")));
64+
}catch (Exceptione) {
65+
return"";
66+
}
67+
}
68+
};
69+
}
70+
71+
@Override
72+
publicStringgetMspId() {
73+
return"Org1MSP";
74+
}
75+
/***
76+
* loading private key from .pem-formatted file, ECDSA algorithm
77+
* (from some example on StackOverflow, slightly changed)
78+
* @param fileName - file with the key
79+
* @return Private Key usable
80+
* @throws IOException
81+
* @throws GeneralSecurityException
82+
*/
83+
publicstaticPrivateKeyloadPrivateKey(PathfileName)throwsIOException,GeneralSecurityException {
84+
PrivateKeykey =null;
85+
InputStreamis =null;
86+
try {
87+
is =newFileInputStream(fileName.toString());
88+
BufferedReaderbr =newBufferedReader(newInputStreamReader(is));
89+
StringBuilderbuilder =newStringBuilder();
90+
booleaninKey =false;
91+
for (Stringline =br.readLine();line !=null;line =br.readLine()) {
92+
if (!inKey) {
93+
if (line.startsWith("-----BEGIN ") &&line.endsWith(" PRIVATE KEY-----")) {
94+
inKey =true;
95+
}
96+
continue;
97+
}else {
98+
if (line.startsWith("-----END ") &&line.endsWith(" PRIVATE KEY-----")) {
99+
inKey =false;
100+
break;
101+
}
102+
builder.append(line);
103+
}
104+
}
105+
//
106+
byte[]encoded =DatatypeConverter.parseBase64Binary(builder.toString());
107+
PKCS8EncodedKeySpeckeySpec =newPKCS8EncodedKeySpec(encoded);
108+
KeyFactorykf =KeyFactory.getInstance("ECDSA");
109+
key =kf.generatePrivate(keySpec);
110+
}finally {
111+
is.close();
112+
}
113+
returnkey;
114+
}
115+
}

‎src/test/java/ijarvis/intelliq/AppTest.java

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,36 @@
22

33

44
importorg.apache.log4j.Logger;
5+
importorg.hyperledger.fabric.sdk.Channel;
6+
importorg.hyperledger.fabric.sdk.exception.CryptoException;
7+
importorg.hyperledger.fabric.sdk.exception.InvalidArgumentException;
8+
importorg.hyperledger.fabric.sdk.exception.TransactionException;
9+
importorg.junit.Before;
510
importorg.junit.Test;
611

712
/**
813
* Unit test for simple App.
914
*/
1015
publicclassAppTest {
1116
privatestaticLoggerlogger=Logger.getLogger(AppTest.class);
12-
@Test
13-
publicvoidSetup(){
14-
logger.debug("Fabric Test Start........");
1517

18+
privatestaticStringCONNFIG_Orderer="grpc://192.168.188.111:7050";
19+
privatestaticStringCONNFIG_Peer0Org1="grpc://192.168.188.112:7051";
20+
privatestaticStringCHANNELID="epointchannel";
21+
@Before
22+
publicvoidSetup()throwsCryptoException,InvalidArgumentException {
23+
logger.debug("Fabric Test Init........");
24+
FabricAppfabricApp=newFabricApp();
25+
FabricApp.init();
26+
27+
}
28+
@Test
29+
publicvoidTestEpointChainCodeQuery()throwsException {
30+
Channelchannel =FabricApp.client.newChannel(CHANNELID);
31+
channel.addPeer(FabricApp.client.newPeer("peer",CONNFIG_Peer0Org1));
32+
channel.addOrderer(FabricApp.client.newOrderer("orderer",CONNFIG_Orderer));
33+
channel.initialize();
34+
FabricApp.queryFabcar(channel,"liubo");
1635
}
1736

1837
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg/bYTxme8nVBxvEHs
3+
6MzKqP3O6b8vnChNtbsH4Ad+0qWhRANCAARNEKY+SnAH2+Iz9hCYd35eztUYfHwF
4+
gZmAVhDa5/rTvt28Qs8WKZvjOLp3DSlbLxFJdiQzPJgLqEK0PdJu4mBp
5+
-----END PRIVATE KEY-----
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIICLjCCAdWgAwIBAgIQW1bqbmpm/Gqxrc6JzNaljjAKBggqhkjOPQQDAjBpMQsw
3+
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
4+
YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w
5+
bGUuY29tMB4XDTE3MTEyMTE1MzYwNVoXDTI3MTExOTE1MzYwNVowaTELMAkGA1UE
6+
BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz
7+
Y28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFtcGxlLmNv
8+
bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABE0Qpj5KcAfb4jP2EJh3fl7O1Rh8
9+
fAWBmYBWENrn+tO+3bxCzxYpm+M4uncNKVsvEUl2JDM8mAuoQrQ90m7iYGmjXzBd
10+
MA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMB
11+
Af8wKQYDVR0OBCIEIDH1Q7aSHEjxvMJrdRxIODWSuEUtI6dGoZhrbQRpu2F8MAoG
12+
CCqGSM49BAMCA0cAMEQCIAhRRNM45gb+JC0xe/pKnF+tBOfCofQAcUiOpXaQ60vR
13+
AiBcme4/Iml8wHNbj9W2PEsvmd/Y9mhfoqgNU1i1s2cq0Q==
14+
-----END CERTIFICATE-----
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIICCTCCAbCgAwIBAgIQTG9UTqEtooxz530DZXKN1zAKBggqhkjOPQQDAjBpMQsw
3+
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
4+
YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w
5+
bGUuY29tMB4XDTE3MTEyMTE1MzYwNVoXDTI3MTExOTE1MzYwNVowVjELMAkGA1UE
6+
BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz
7+
Y28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZI
8+
zj0DAQcDQgAERlYPRJDi/tTXlPnYz0AXJZLeILYYdx6PxZ4V1KTXvRJYgQtanmcL
9+
S0TqNGV/NXo6dIdTbKBsNHSyp1eYZKHiG6NNMEswDgYDVR0PAQH/BAQDAgeAMAwG
10+
A1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgMfVDtpIcSPG8wmt1HEg4NZK4RS0jp0ah
11+
mGttBGm7YXwwCgYIKoZIzj0EAwIDRwAwRAIgMF8+DbXwhgFnxYyEse+lg7iV0BcZ
12+
zOjGvjG6VU9Voe4CIGieYQv2VEjUFpcNniclf2aEZUC1LgQbjc9/lchLTFhI
13+
-----END CERTIFICATE-----
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIICLjCCAdWgAwIBAgIQW1bqbmpm/Gqxrc6JzNaljjAKBggqhkjOPQQDAjBpMQsw
3+
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
4+
YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w
5+
bGUuY29tMB4XDTE3MTEyMTE1MzYwNVoXDTI3MTExOTE1MzYwNVowaTELMAkGA1UE
6+
BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz
7+
Y28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFtcGxlLmNv
8+
bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABE0Qpj5KcAfb4jP2EJh3fl7O1Rh8
9+
fAWBmYBWENrn+tO+3bxCzxYpm+M4uncNKVsvEUl2JDM8mAuoQrQ90m7iYGmjXzBd
10+
MA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMB
11+
Af8wKQYDVR0OBCIEIDH1Q7aSHEjxvMJrdRxIODWSuEUtI6dGoZhrbQRpu2F8MAoG
12+
CCqGSM49BAMCA0cAMEQCIAhRRNM45gb+JC0xe/pKnF+tBOfCofQAcUiOpXaQ60vR
13+
AiBcme4/Iml8wHNbj9W2PEsvmd/Y9mhfoqgNU1i1s2cq0Q==
14+
-----END CERTIFICATE-----
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIICNDCCAdugAwIBAgIQT9etw8t7aYIQtuiMz3KHXzAKBggqhkjOPQQDAjBsMQsw
3+
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
4+
YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4
5+
YW1wbGUuY29tMB4XDTE3MTEyMTE1MzYwNVoXDTI3MTExOTE1MzYwNVowbDELMAkG
6+
A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu
7+
Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt
8+
cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABA5HBeDu1PNzgMtRVYKV
9+
xXyyo66LUCKELTWPwWSNZQYu5dLpzZlDXvgQBh4wi6gnC1f4Pes5QKl29b4okAK4
10+
8ZSjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB
11+
/wQFMAMBAf8wKQYDVR0OBCIEIC0Z6OWMj2U25469tpLIcOhu8XCi6FNftt0NmwDL
12+
+aIYMAoGCCqGSM49BAMCA0cAMEQCIFDXpVq296kwdeupOjgWuG+y+uzLmtg37Tvr
13+
+GMr14PLAiACPib8IIWsgKlLvBXLBM5DsVAUmGY2rk15re67wEqHwg==
14+
-----END CERTIFICATE-----
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIICCTCCAbCgAwIBAgIQTG9UTqEtooxz530DZXKN1zAKBggqhkjOPQQDAjBpMQsw
3+
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
4+
YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w
5+
bGUuY29tMB4XDTE3MTEyMTE1MzYwNVoXDTI3MTExOTE1MzYwNVowVjELMAkGA1UE
6+
BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz
7+
Y28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZI
8+
zj0DAQcDQgAERlYPRJDi/tTXlPnYz0AXJZLeILYYdx6PxZ4V1KTXvRJYgQtanmcL
9+
S0TqNGV/NXo6dIdTbKBsNHSyp1eYZKHiG6NNMEswDgYDVR0PAQH/BAQDAgeAMAwG
10+
A1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgMfVDtpIcSPG8wmt1HEg4NZK4RS0jp0ah
11+
mGttBGm7YXwwCgYIKoZIzj0EAwIDRwAwRAIgMF8+DbXwhgFnxYyEse+lg7iV0BcZ
12+
zOjGvjG6VU9Voe4CIGieYQv2VEjUFpcNniclf2aEZUC1LgQbjc9/lchLTFhI
13+
-----END CERTIFICATE-----
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIICLjCCAdWgAwIBAgIQW1bqbmpm/Gqxrc6JzNaljjAKBggqhkjOPQQDAjBpMQsw
3+
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
4+
YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w
5+
bGUuY29tMB4XDTE3MTEyMTE1MzYwNVoXDTI3MTExOTE1MzYwNVowaTELMAkGA1UE
6+
BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz
7+
Y28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFtcGxlLmNv
8+
bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABE0Qpj5KcAfb4jP2EJh3fl7O1Rh8
9+
fAWBmYBWENrn+tO+3bxCzxYpm+M4uncNKVsvEUl2JDM8mAuoQrQ90m7iYGmjXzBd
10+
MA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMB
11+
Af8wKQYDVR0OBCIEIDH1Q7aSHEjxvMJrdRxIODWSuEUtI6dGoZhrbQRpu2F8MAoG
12+
CCqGSM49BAMCA0cAMEQCIAhRRNM45gb+JC0xe/pKnF+tBOfCofQAcUiOpXaQ60vR
13+
AiBcme4/Iml8wHNbj9W2PEsvmd/Y9mhfoqgNU1i1s2cq0Q==
14+
-----END CERTIFICATE-----
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg/5QbRRO9q6e7jNBE
3+
Yvad4tUzdG1U3Z2lUOdbt8sdlXWhRANCAASl9QIou11/+exP4SsZ0K0XGzFO72vj
4+
Ls8FQEKZ19CVs+xsewsK37gn9h2s56IysgMqJ6MOo1CKq/yT7VdjTbCl
5+
-----END PRIVATE KEY-----
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIICDDCCAbOgAwIBAgIRAIL6e7l9Sfu4UDWyjthplekwCgYIKoZIzj0EAwIwaTEL
3+
MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG
4+
cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt
5+
cGxlLmNvbTAeFw0xNzExMjExNTM2MDVaFw0yNzExMTkxNTM2MDVaMFgxCzAJBgNV
6+
BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp
7+
c2NvMRwwGgYDVQQDExNvcmRlcmVyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYI
8+
KoZIzj0DAQcDQgAEpfUCKLtdf/nsT+ErGdCtFxsxTu9r4y7PBUBCmdfQlbPsbHsL
9+
Ct+4J/YdrOeiMrIDKiejDqNQiqv8k+1XY02wpaNNMEswDgYDVR0PAQH/BAQDAgeA
10+
MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgMfVDtpIcSPG8wmt1HEg4NZK4RS0j
11+
p0ahmGttBGm7YXwwCgYIKoZIzj0EAwIDRwAwRAIgK5X0itCSpLQHVjLePAVUgePL
12+
RtG3d6bJkjjmHQw23HYCIFPxaps7D2Y5tXIOQmrYpGipZ0ZAo0yhZ5fFLrE7Tefw
13+
-----END CERTIFICATE-----
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIICNDCCAdugAwIBAgIQT9etw8t7aYIQtuiMz3KHXzAKBggqhkjOPQQDAjBsMQsw
3+
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
4+
YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4
5+
YW1wbGUuY29tMB4XDTE3MTEyMTE1MzYwNVoXDTI3MTExOTE1MzYwNVowbDELMAkG
6+
A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu
7+
Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt
8+
cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABA5HBeDu1PNzgMtRVYKV
9+
xXyyo66LUCKELTWPwWSNZQYu5dLpzZlDXvgQBh4wi6gnC1f4Pes5QKl29b4okAK4
10+
8ZSjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB
11+
/wQFMAMBAf8wKQYDVR0OBCIEIC0Z6OWMj2U25469tpLIcOhu8XCi6FNftt0NmwDL
12+
+aIYMAoGCCqGSM49BAMCA0cAMEQCIFDXpVq296kwdeupOjgWuG+y+uzLmtg37Tvr
13+
+GMr14PLAiACPib8IIWsgKlLvBXLBM5DsVAUmGY2rk15re67wEqHwg==
14+
-----END CERTIFICATE-----

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp