通过Fabric-sdk-java中的End2EndIT.blockwalker中获取的信息
前置条件:知道区块链的Channel。
本文没有列全相关类的方法,某些需要的信息可能还需要查看fabric-sdk-java来确定。
BlockchainInfo channelInfo = channel.queryBlockchainInfo();
// 根据区块号获取
BlockInfo returnedBlock = channel.queryBlockByNumber(blockNumber);
// 根据交易ID获得
BlockInfo returnedBlock = channel.queryBlockByTransactionID(txid);
// 根据Hash获得
BlockInfo returnedBlock = channel.queryBlockByHash(hash);// 根据Hash获得
// 获取Hash
// 数据的Hash
Hex.encodeHexString(returnedBlock.getDataHash());
// 前一个区块的Hash
Hex.encodeHexString(returnedBlock.getPreviousHash());
// 计算出当前区块的Hash
// *************BlockHash = cal(blockNumber,block.preHash,DataHash)*****************
Hex.encodeHexString(SDKUtils.calculateBlockHash(client,
blockNumber, returnedBlock.getPreviousHash(), returnedBlock.getDataHash()));
// 获取信封的个数
returnedBlock.getEnvelopeCount();
// 获取信封信息
returnedBlock.getEnvelopeInfos()
for(lockInfo.EnvelopeInfo envelopeInfo : returnedBlock.getEnvelopeInfos())
envelopeInfo = returnedBlock.getEnvelopeInfo(0);
// 获取当前信封的交易ID
String txid = envelopeInfo.getTransactionID();
// 获取当前信封所在的通道
String channelId = envelopeInfo.getChannelId();
// 交易时间戳
out(" Transaction number %d has transaction timestamp: %tB %<te, %<tY %<tT %<Tp", i, envelopeInfo.getTimestamp());
// 随机数[生成特定要求的Hash用的]
Hex.encodeHexString(envelopeInfo.getNonce());
// 交易创建者
String MSPID = envelopeInfo.getCreator().getMspid();
// 创建者证书
String cert = envelopeInfo.getCreator().getId();
// 将信封强制转换为(BlockInfo.TransactionEnvelopeInfo)
BlockInfo.TransactionEnvelopeInfo transactionEnvelopeInfo = (BlockInfo.TransactionEnvelopeInfo) envelopeInfo;
// 获取一个交易中action的个数【目前,每个交易只有一个action】
transactionEnvelopeInfo.getTransactionActionInfoCount());
// 交易是否有效,区块链中所有提交的交易都会被放进区块链,只有有效的才会改状态数据库
transactionEnvelopeInfo.isValid());
// 有效码
transactionEnvelopeInfo.getValidationCode());
// 获取所有交易Action信息
transactionEnvelopeInfo.getTransactionActionInfos()
// 获取交易状态
transactionActionInfo.getResponseStatus(); // 200
// 交易响应信息
transactionActionInfo.getResponseMessageBytes();
// 交易背书者个数
transactionActionInfo.getEndorsementsCount();// 2
// 获取背书者信息
BlockInfo.EndorserInfo endorserInfo = transactionActionInfo.getEndorsementInfo(n);
// 背书者签名
Hex.encodeHexString(endorserInfo.getSignature())
// 背书者MspID和证书
endorserInfo.getMspid(); endorserInfo.getId();
// 调用合约的参数
transactionActionInfo.getChaincodeInputArgsCount();// 参数个数
// 获取第z个参数
String arg1 = new String(transactionActionInfo.getChaincodeInputArgs(z), UTF_8);
/*
Transaction action 1 has 4 chaincode input arguments // 交易参数
Transaction action 1 has chaincode input argument 0 is: invoke
Transaction action 1 has chaincode input argument 1 is: a
Transaction action 1 has chaincode input argument 2 is: b
Transaction action 1 has chaincode input argument 3 is: 10
*/
// 合约响应
String responce = new String(transactionActionInfo.getProposalResponsePayload())));
// 合约名字
String chaincodeIDName = transactionActionInfo.getChaincodeIDName();
// 合约版本
String chaincodeIDVersion = transactionActionInfo.getChaincodeIDVersion();
// 合约路径
String chaincodeIDPath = transactionActionInfo.getChaincodeIDPath();
// 交易读写集
TxReadWriteSetInfo rwsetInfo = transactionActionInfo.getTxReadWriteSet();
// 迭代获得每个name space read write set
rwsetInfo.getNsRwsetInfos();
// 迭代器获得单个命名空间
String namespace = nsRwsetInfo.getNamespace();
// 读写集
KvRwset.KVRWSet rws = nsRwsetInfo.getRwset();
rws.getReadsList()
rws.getWritesList()
//out("Namespace %s read set %d key %s version [%d:%d]", namespace, rs, readList.getKey(),readList.getVersion().getBlockNum(), readList.getVersion().getTxNum());
// Namespace mycc read set 0 key a version [3:0]
KvRwset.KVRead readList. : rws.getReadsList()
readList.getVersion().getBlockNum(); //区块号
readList.getVersion().getTxNum()); //交易号
/*获取某个版本下某个key对应的值,如在启动完byfn:a has value 90 */
//out("Namespace %s write set %d key %s has value '%s' ", namespace, rs,writeList.getKey(),valAsString);
// Namespace mycc write set 0 key a has value '90'
writeList.getKey();
new String(writeList.getValue().toByteArray(), UTF_8);
/**
* byfn样例前四个区块信息。
*/
// =======================区块4==================================
current block number 4 has data hash:
af10f896e9ee54513706206ab9aa443c1fa6a067224c8bbe05a01d4df676f785
current block number 4 has previous hash id:
d814ede0966b9be0d8e41f9915f34466d5464d07cf2cebd6e54c5945801238ab
current block number 4 has calculated block hash is
66f98bd234933abba42be6483ca59912f328b46e5e170af9e70479a5e1441ef5
current block number 4 has 1 envelope count:// byfn up执行结束只有一个信封
Transaction number 1 has transaction id:
0c4931a2cca2f51b466bca9ed8c5d1a554e5364dfe1df71a745a478344746cfa
Transaction number 1 has channel id: mychannel
Transaction number 1 has epoch: 0
Transaction number 1 has transaction timestamp: 七月 14, 2020 20:15:52 下午
Transaction number 1 has type id: TRANSACTION_ENVELOPE //TRANSACTION_ENVELOPE交易类型
Transaction number 1 has nonce : 2554c44420c91cf85bc659aa323e28a939ffa1c88ef91d7d
Transaction number 1 has submitter mspid: Org2MSP, certificate:
-----BEGIN CERTIFICATE-----
MIICKTCCAc+gAwIBAgIQG8LbJwCh772CL6r0qTkVTzAKBggqhkjOPQQDAjBzMQsw
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu
b3JnMi5leGFtcGxlLmNvbTAeFw0yMDA3MTQxMjA2MDBaFw0zMDA3MTIxMjA2MDBa
MGsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T
YW4gRnJhbmNpc2NvMQ4wDAYDVQQLEwVhZG1pbjEfMB0GA1UEAwwWQWRtaW5Ab3Jn
Mi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABKbYHtGHVbC+
EIJaybVLdbK9LZJ1VQOl5ifctBzU+OfVG7k6WhT1BCdKA1r55POxKSpe8qTIbsjZ
TKX3r5fBmh2jTTBLMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1Ud
IwQkMCKAICsQDwxFO7VGN3OcTaS7lrN8cG5s+mgPu95SxlK3cpmnMAoGCCqGSM49
BAMCA0gAMEUCIQD+KhgZg5INCLxrWptTA7zYHSMI+In5XHfbzAoZnRGF3AIgAK00
BLFfbgMVnZ48EzKi/RySXhP4QjMD64ZxRC9zZlY=
-----END CERTIFICATE-----
Transaction number 1 has 1 actions
Transaction number 1 isValid true
Transaction number 1 validation code 0
Transaction action 1 has response status 200
Transaction action 1 has response message bytes as string:
Transaction action 1 has 2 endorsements
Endorser 0 signature: 3044022002063874e37e4fa764ecf7463292acc7f364d0ce87ec1992905c74e0edb9ed8f02206fa680a9d608434b831d9f0aea3d77102c28995060ffa8c1bc141f7655dd4c90
Endorser 0 endorser: mspid Org1MSP
certificate
-----BEGIN CERTIFICATE-----
MIICKTCCAc+gAwIBAgIRAP5JTshqKWwUu+mBF5xI7bQwCgYIKoZIzj0EAwIwczEL
MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG
cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh
Lm9yZzEuZXhhbXBsZS5jb20wHhcNMjAwNzE0MTIwNjAwWhcNMzAwNzEyMTIwNjAw
WjBqMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN
U2FuIEZyYW5jaXNjbzENMAsGA1UECxMEcGVlcjEfMB0GA1UEAxMWcGVlcjAub3Jn
MS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJEzPhiApsIe
soedVM9suKadzLGZKkWaLNq1eDqriXvPsyW/QP8Kgtx0r7/Xh/sVSh8kZ0kuL3js
psiL5RXUkAejTTBLMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1Ud
IwQkMCKAINLc3Vxwm+iOCqrJBz+jzu6Russd5AVg3XJd2AqErAyiMAoGCCqGSM49
BAMCA0gAMEUCIQDZmqnudaZpz+MU5078Ijou5461moX6BlRUfE2QOP2BSQIgMtw5
B44as7PHBmX7b6MPTr4i4mrD+oGpocEea9BGE1Q=
-----END CERTIFICATE-----
Endorser 1 signature: 304402200e51aa37ae529311d452bb06402b80fa88af8fe19b65a306a9051888ef37717702200daef3f41cf7ff9dba6725bcde751b3e47f87361814ba8299c1b0405391ce504
Endorser 1 endorser: mspid Org2MSP
certificate -----BEGIN CERTIFICATE-----
MIICJzCCAc6gAwIBAgIQBwPbGtYTeQgMUNLUN29aODAKBggqhkjOPQQDAjBzMQsw
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu
b3JnMi5leGFtcGxlLmNvbTAeFw0yMDA3MTQxMjA2MDBaFw0zMDA3MTIxMjA2MDBa
MGoxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T
YW4gRnJhbmNpc2NvMQ0wCwYDVQQLEwRwZWVyMR8wHQYDVQQDExZwZWVyMC5vcmcy
LmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIXy4DLf/Q1G5
lP9vu4bo/GXpefxM0KALcY5udAjrfX66WjfOvSvQ15J+B9i5mE22r4yGz6shJOOM
SbKasiLat6NNMEswDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0j
BCQwIoAgKxAPDEU7tUY3c5xNpLuWs3xwbmz6aA+73lLGUrdymacwCgYIKoZIzj0E
AwIDRwAwRAIgHUv7JJOsLYwvJbNWUAVHew245PtmM7WOp1cVM4MAjI0CIDqBBGnX
n4kQQgOxiY4WXuFRfxyeeQdPmfyN8eKeO5Bu
-----END CERTIFICATE-----
Transaction action 1 has 4 chaincode input arguments // 交易参数
Transaction action 1 has chaincode input argument 0 is: invoke
Transaction action 1 has chaincode input argument 1 is: a
Transaction action 1 has chaincode input argument 2 is: b
Transaction action 1 has chaincode input argument 3 is: 10
Transaction action 1 proposal response status: 200
Transaction action 1 proposal response payload:
Transaction action 1 proposal chaincodeIDName: mycc, chaincodeIDVersion: 1.0, chaincodeIDPath:
Transaction action 1 has 2 name space read write sets
Namespace lscc read set 0 key mycc version [3:0]
Namespace mycc read set 0 key a version [3:0]
Namespace mycc read set 1 key b version [3:0]
Namespace mycc write set 0 key a has value '90'
Namespace mycc write set 1 key b has value '210'
// =======================区块3==================================
current block number 3 has data hash: 4b556be695f75c53531218e7ee56555e25ff3bfff6c8fb708afe426430f13dee
current block number 3 has previous hash id: 1870eabee280e985c3393c6602bb30f6e73b5b8591419d39aa9c986b679f4bb4
current block number 3 has calculated block hash is d814ede0966b9be0d8e41f9915f34466d5464d07cf2cebd6e54c5945801238ab
current block number 3 has 1 envelope count:
Transaction number 1 has transaction id: da9201d1e7f0a47f88f81c6fdcd5f2d5c9e6268d87eadb57c5142afeee5f1f0c
Transaction number 1 has channel id: mychannel
Transaction number 1 has epoch: 0
Transaction number 1 has transaction timestamp: 七月 14, 2020 20:12:02 下午
Transaction number 1 has type id: TRANSACTION_ENVELOPE //TRANSACTION_ENVELOPE交易类型
Transaction number 1 has nonce : ea18222ff3cc86aea50f8608bcd1e340336f5e00db047040
Transaction number 1 has submitter mspid: Org2MSP, certificate: -----BEGIN CERTIFICATE-----
MIICKTCCAc+gAwIBAgIQG8LbJwCh772CL6r0qTkVTzAKBggqhkjOPQQDAjBzMQsw
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu
b3JnMi5leGFtcGxlLmNvbTAeFw0yMDA3MTQxMjA2MDBaFw0zMDA3MTIxMjA2MDBa
MGsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T
YW4gRnJhbmNpc2NvMQ4wDAYDVQQLEwVhZG1pbjEfMB0GA1UEAwwWQWRtaW5Ab3Jn
Mi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABKbYHtGHVbC+
EIJaybVLdbK9LZJ1VQOl5ifctBzU+OfVG7k6WhT1BCdKA1r55POxKSpe8qTIbsjZ
TKX3r5fBmh2jTTBLMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1Ud
IwQkMCKAICsQDwxFO7VGN3OcTaS7lrN8cG5s+mgPu95SxlK3cpmnMAoGCCqGSM49
BAMCA0gAMEUCIQD+KhgZg5INCLxrWptTA7zYHSMI+In5XHfbzAoZnRGF3AIgAK00
BLFfbgMVnZ48EzKi/RySXhP4QjMD64ZxRC9zZlY=
-----END CERTIFICATE-----
Transaction number 1 has 1 actions
Transaction number 1 isValid true
Transaction number 1 validation code 0
Transaction action 1 has response status 200
Transaction action 1 has response message bytes as string:
Transaction action 1 has 1 endorsements
Endorser 0 signature: 3045022100bbb91a90591824df7aa048117746f98b8d7618c8fe940f35d6f67639885404eb022017268078faac34c7049cd797b28d7ee039475f3d5137c884ad67ba4ee812dedf
Endorser 0 endorser: mspid Org2MSP
certificate -----BEGIN CERTIFICATE-----
MIICJzCCAc6gAwIBAgIQBwPbGtYTeQgMUNLUN29aODAKBggqhkjOPQQDAjBzMQsw
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu
b3JnMi5leGFtcGxlLmNvbTAeFw0yMDA3MTQxMjA2MDBaFw0zMDA3MTIxMjA2MDBa
MGoxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T
YW4gRnJhbmNpc2NvMQ0wCwYDVQQLEwRwZWVyMR8wHQYDVQQDExZwZWVyMC5vcmcy
LmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIXy4DLf/Q1G5
lP9vu4bo/GXpefxM0KALcY5udAjrfX66WjfOvSvQ15J+B9i5mE22r4yGz6shJOOM
SbKasiLat6NNMEswDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0j
BCQwIoAgKxAPDEU7tUY3c5xNpLuWs3xwbmz6aA+73lLGUrdymacwCgYIKoZIzj0E
AwIDRwAwRAIgHUv7JJOsLYwvJbNWUAVHew245PtmM7WOp1cVM4MAjI0CIDqBBGnX
n4kQQgOxiY4WXuFRfxyeeQdPmfyN8eKeO5Bu
-----END CERTIFICATE-----
Transaction action 1 has 6 chaincode input arguments // lscc 生命周期合约交易参数
Transaction action 1 has chaincode input argument 0 is: deploy
Transaction action 1 has chaincode input argument 1 is: mychannel
//初始化参数
Transaction action 1 has chaincode input argument 2 is: ?'??????mycc??1.0????init??a??100??b??200
Transaction action 1 has chaincode input argument 3 is: ????????????????????Org1MSP????????Org2MSP??
Transaction action 1 has chaincode input argument 4 is: escc
Transaction action 1 has chaincode input argument 5 is: vscc
Transaction action 1 proposal response status: 200
Transaction action 1 proposal response payload: ??mycc??1.0??escc"?vscc*,????????????????????Org1MSP????????Org2...
Transaction action 1 proposal chaincodeIDName: lscc, chaincodeIDVersion: 1.4.4, chaincodeIDPath:
Transaction action 1 has 2 name space read write sets
Namespace lscc read set 0 key mycc version [0:0]
Namespace lscc write set 0 key mycc has value '??mycc??1.0??escc"?vscc*,????????????????????Org1MSP????????Org2...'
Namespace mycc write set 0 key a has value '100'
Namespace mycc write set 1 key b has value '200'
// =======================区块2==================================
current block number 2 has data hash: bb2e6ef83e9c33229225b9e12c0a2f480f270a25fc511e69abfac49700b0f13d
current block number 2 has previous hash id: edcbd214efa7047be77dd9876c5b2ae6fbe36f54fdf3726a59ee7fd67ae8984a
current block number 2 has calculated block hash is 1870eabee280e985c3393c6602bb30f6e73b5b8591419d39aa9c986b679f4bb4
current block number 2 has 1 envelope count:
Transaction number 1 has transaction id:
Transaction number 1 has channel id: mychannel
Transaction number 1 has epoch: 0
Transaction number 1 has transaction timestamp: 七月 14, 2020 20:11:55 下午
Transaction number 1 has type id: ENVELOPE
Transaction number 1 has nonce : ab3cb626425776c7e9259ca379fe89d12eb04d6792b51d7a
Transaction number 1 has submitter mspid: OrdererMSP, certificate: -----BEGIN CERTIFICATE-----
MIICHTCCAcSgAwIBAgIQONEfXTGwJRoNfdBmxfwmhjAKBggqhkjOPQQDAjBpMQsw
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w
bGUuY29tMB4XDTIwMDcxNDEyMDYwMFoXDTMwMDcxMjEyMDYwMFowajELMAkGA1UE
BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz
Y28xEDAOBgNVBAsTB29yZGVyZXIxHDAaBgNVBAMTE29yZGVyZXIuZXhhbXBsZS5j
b20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATLO5RBDYiauJ+TEbYNSgIT65BF
oZBKX2C0t8NzazE6v0mAtYv3ZnbWi77PVWEcbfObv547SEtHmy9v8BzXyeaXo00w
SzAOBgNVHQ8BAf8EBAMCB4AwDAYDVR0TAQH/BAIwADArBgNVHSMEJDAigCDjufH5
UPc1qkGqOqxxFLULiU5C6uE0r6JcEmxbYPqzyjAKBggqhkjOPQQDAgNHADBEAiBo
x9A2j6B5AlRwUqgsG1+FB9nC63MJl6EJJbKpuWHLHgIgegLQL8BarkSS27/Df/+X
w1ej0jjFw/2c9VjXhug+yK0=
-----END CERTIFICATE-----
// =======================区块1==================================
current block number 1 has data hash: 35321a24ef3af920294de8591f3998ec6d44a41ff2ac5ffeb65d2796b7f934a6
current block number 1 has previous hash id: 742898e692aae23fb40e94ef57030a279f3633989ac73bf8e839d7f26e0e597a
current block number 1 has calculated block hash is edcbd214efa7047be77dd9876c5b2ae6fbe36f54fdf3726a59ee7fd67ae8984a
current block number 1 has 1 envelope count:
Transaction number 1 has transaction id:
Transaction number 1 has channel id: mychannel
Transaction number 1 has epoch: 0
Transaction number 1 has transaction timestamp: 七月 14, 2020 20:11:52 下午
Transaction number 1 has type id: ENVELOPE // ENVELOPE交易类型
Transaction number 1 has nonce : 42eb01613dd8fac79334652894df6a931c83c78d71d31f82
Transaction number 1 has submitter mspid: OrdererMSP, certificate: -----BEGIN CERTIFICATE-----
MIICHTCCAcSgAwIBAgIQONEfXTGwJRoNfdBmxfwmhjAKBggqhkjOPQQDAjBpMQsw
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w
bGUuY29tMB4XDTIwMDcxNDEyMDYwMFoXDTMwMDcxMjEyMDYwMFowajELMAkGA1UE
BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz
Y28xEDAOBgNVBAsTB29yZGVyZXIxHDAaBgNVBAMTE29yZGVyZXIuZXhhbXBsZS5j
b20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATLO5RBDYiauJ+TEbYNSgIT65BF
oZBKX2C0t8NzazE6v0mAtYv3ZnbWi77PVWEcbfObv547SEtHmy9v8BzXyeaXo00w
SzAOBgNVHQ8BAf8EBAMCB4AwDAYDVR0TAQH/BAIwADArBgNVHSMEJDAigCDjufH5
UPc1qkGqOqxxFLULiU5C6uE0r6JcEmxbYPqzyjAKBggqhkjOPQQDAgNHADBEAiBo
x9A2j6B5AlRwUqgsG1+FB9nC63MJl6EJJbKpuWHLHgIgegLQL8BarkSS27/Df/+X
w1ej0jjFw/2c9VjXhug+yK0=
-----END CERTIFICATE-----
current block number 0 has data hash: 3be464bc9d3b26f68996856d5ab4dce1ee766eac70838b7699d5998528452a15
current block number 0 has previous hash id:
current block number 0 has calculated block hash is 742898e692aae23fb40e94ef57030a279f3633989ac73bf8e839d7f26e0e597a
current block number 0 has 1 envelope count:
Transaction number 1 has transaction id:
Transaction number 1 has channel id: mychannel
Transaction number 1 has epoch: 0
Transaction number 1 has transaction timestamp: 七月 14, 2020 20:11:38 下午
Transaction number 1 has type id: ENVELOPE // ENVELOPE交易类型
Transaction number 1 has nonce : 4d281908aff6c10d2b4e88cc78f31284f9e7f82517568d77
Transaction number 1 has submitter mspid: OrdererMSP, certificate: -----BEGIN CERTIFICATE-----
MIICHTCCAcSgAwIBAgIQONEfXTGwJRoNfdBmxfwmhjAKBggqhkjOPQQDAjBpMQsw
CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy
YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w
bGUuY29tMB4XDTIwMDcxNDEyMDYwMFoXDTMwMDcxMjEyMDYwMFowajELMAkGA1UE
BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz
Y28xEDAOBgNVBAsTB29yZGVyZXIxHDAaBgNVBAMTE29yZGVyZXIuZXhhbXBsZS5j
b20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATLO5RBDYiauJ+TEbYNSgIT65BF
oZBKX2C0t8NzazE6v0mAtYv3ZnbWi77PVWEcbfObv547SEtHmy9v8BzXyeaXo00w
SzAOBgNVHQ8BAf8EBAMCB4AwDAYDVR0TAQH/BAIwADArBgNVHSMEJDAigCDjufH5
UPc1qkGqOqxxFLULiU5C6uE0r6JcEmxbYPqzyjAKBggqhkjOPQQDAgNHADBEAiBo
x9A2j6B5AlRwUqgsG1+FB9nC63MJl6EJJbKpuWHLHgIgegLQL8BarkSS27/Df/+X
w1ej0jjFw/2c9VjXhug+yK0=
-----END CERTIFICATE-----