簡體   English   中英

如何在鏈碼超級賬本結構中獲取塊哈希

[英]How to get block hash inside chaincode hyperledger fabric

目前我正在使用 Hyperledger Fabric 鏈碼並嘗試獲取最后一個塊的哈希,但我還沒有找到任何方法來獲取它。 我需要我的鏈碼來訪問這個哈希來進行安全檢查。

我試圖從我的鏈代碼中調用 qscc,它從客戶端返回區塊鏈和哈希塊信息,但是這樣訪問受到限制。

代碼

   @Transaction()
   public String getBlockHash(final Context ctx) {
       ChaincodeStub stub = ctx.getStub();
       String[] argsQscc = {"GetChainInfo","mychannel"};
       Response response = stub.invokeChaincodeWithStringArgs("qscc", argsQscc);
       System.out.println("Result"+response.getMessage());
       return response.getMessage();
   }

由於潛在的死鎖,拒絕從另一個鏈代碼調用 QSCC 時出錯,“mychaincode”的原始調用。

不可能從鏈碼中獲取。 我不確定你是否願意,因為不同的同行可能處於不同的高度,你會得到不同的背書結果,導致你的交易無效。

我建議讓客戶端查詢此信息並將其作為輸入傳遞到調用的鏈代碼中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM