标签: blockchain

Blockchain和HyperLedger Fabric的区别

当我试图理解区块链技术时,我遇到了HyperLedger Fabric.根据文档,它是区块链技术的实现.

那是什么意思?块链只是一个概念和HyperLedger Fabric,这个概念的实现?

更新: 超级分层结构在哪里存储交易?我知道它是一个p2p体系结构,每个对等体都有一个事务副本,但通常这些事务是一个不断增长的集合.每个同行都有成长交易的副本吗?我还不清楚这一点.社区是否推荐任何数据库?

blockchain hyperledger-fabric

16
推荐指数
3
解决办法
4895
查看次数

Hyperledger织物的性能测试

在尝试使用Hyperledger Fabric实现性能时,IBM团队在他们的文章Hyperledger Fabric:Permissioned Blockchains的分布式操作系统中报告过,我遇到了一些问题和错误.我收集了所有有用的信息,并希望与HF社区分享.另外,我向Fabric开发人员提出了一些关于其性能的问题.

目标说明

在四个c5.9xlarge(36vCPU)aws实例上使用Cello部署Hyperledger Fabric v1.1.0网络:

{
    fabric001: {
      cas: [],
      peers: ["anchor@peer1st.main"],
      orderers: ["orderer1st.orderer"],
      zookeepers: ["zookeeper1st"],
      kafkas: ["kafka1st"]
    },
    fabric002: {
      cas: [],
      peers: ["worker@peer2nd.main"],
      orderers: ["orderer2nd.orderer"],
      zookeepers: ["zookeeper2nd"],
      kafkas: ["kafka2nd"]
    },
    fabric003: {
      cas: [],
      peers: ["worker@peer3rd.main"],
      orderers: ["orderer3rd.orderer"],
      zookeepers: ["zookeeper3rd"],
      kafkas: ["kafka3rd"]
    },
    fabric004: {
      cas: ["ca1st.main"],
      peers: [],
      orderers: ["orderer4th.orderer"],
      zookeepers: ["zookeeper4th"],
      kafkas: ["kafka4th"]
    }
}
Run Code Online (Sandbox Code Playgroud)

TLS已禁用.

Fabric通道配置(所有其他参数是默认值):

BatchTimeout: 1s
BatchSize:
    MaxMessageCount: 500
    AbsoluteMaxBytes: 200 MB
    PreferredMaxBytes: 50 MB
Run Code Online (Sandbox Code Playgroud)

我将CouchDB和LevelDB的测试作为状态数据库进行了测试.我使用官方Fabcar链码(Golang实现)进行测试.我创建了简单的nodejs应用程序,它使用SDK与Fabric网络交互,并公开HTTP API进行负载测试.这个应用程序是无状态的,可以轻松扩展.对于负载测试,我使用的是YandexTank工具.我用高负载执行了两种测试:查询(当区块链为空时,通过peer001向Fabric状态请求)和插入(区块链内的事务).

结果 …

performance load-testing blockchain hyperledger-fabric

15
推荐指数
1
解决办法
4763
查看次数

数据位置必须是函数中返回参数的“内存”,但没有给出

我在 remix 中尝试了像上面那样的 Solidity 示例,solidity 版本 > 0.5.0 但我现在收到此错误。解决此错误的方法是什么?

contract MyContract {
    string value;

    function get() public view returns (string) {
        return value;
    }

    function set(string _value) public {
        value = _value;
    }

    constructor() public {
        value = "myValue";
    }
}
Run Code Online (Sandbox Code Playgroud)

blockchain ethereum solidity

15
推荐指数
2
解决办法
1万
查看次数

智能合约在区块链中的位置(以太坊或Hyperledger)

那么,让我们考虑典型的贸易融资流程.导出器部署具有装运条件的合同,并在部署完成后生成散列.

问题:

1)合同在哪里存储?
2)海关和进口商等其他参与者如何获得此合同?
3)我们可以激活参与者级别对区块链合同的访问吗?

storage contract blockchain ethereum hyperledger

14
推荐指数
2
解决办法
6543
查看次数

处理以太坊DApps中的用户配置文件

我正在创建一个以太坊DApp.DApp由具有关联数据的用户组成,例如电子邮件,姓名和个人资料图片.我想将用户的内容作为JSON对象存储在IPFS中,并使用IPFS哈希在链上引用它.我怎样才能将这些数据与特定用户相关联?从某种意义上说,后续与DApp的交互将用户与存储在IPFS中的数据联系起来.这是使用用户帐户哈希和某种密码完成的吗?

例如,用户A有兴趣使用DApp,因此,提供他或她的电子邮件,姓名和个人资料图片.然后,任何与DApp的后续交互,如评论或帖子,都会将此用户链接到IPFS中的相应用户数据.

对这种建模用户的方式的任何建议或调整将不胜感激.谢谢!

(PS我来自传统的网络/移动应用程序世界,所以我只是习惯于使用智能合约对事物进行建模.所以如果这是一个简单或结构不合理的问题,我会提前道歉.)

blockchain ethereum solidity ipfs

14
推荐指数
1
解决办法
2077
查看次数

"咖啡与区块链"如何将种植者与买家相匹配?

在IBM生产的"Coffee with Blockchain"应用程序中,它在Growers和Buyers之间进行价格匹配.我想知道如何实现匹配(在示例应用程序或实际实现中).

可在此处查看该应用示例:https://www.youtube.com/watch?v = suE5KHkESF4

"咖啡与区块链"如何将种植者与买家相匹配?

一些问题可以帮助指导答案:

这种匹配是否完全作为链码操作?如果是这样,那将如何实施?

例如,Grower会提交一个交易,他们有一批新的豆子准备装运,并触发链码中的匹配部分来查找/选择买家吗?

我怀疑这个过程是否具有确定性,否则种植者的新批次宣告失败,他们必须重试.也许在链码中有不同的方式吗?

或者匹配是否在链代码之外运行,在分类帐中监听更新,而是调用API调用链代码方法将bean从Grower-A转移到Buyer-B?

我对此表示怀疑,然后将匹配集中到一些可信赖的提供商,而不是经过验证/认可的链代码.

谢谢

blockchain hyperledger hyperledger-fabric

14
推荐指数
1
解决办法
541
查看次数

Blockchain是一个单一的链表吗?

看作数据类型,Blockchain是一个单一的链表吗?由于每个块使用散列引用前一个块.
还是某种树?

types list data-structures blockchain

12
推荐指数
1
解决办法
3046
查看次数

错误 HH604:运行 JSON-RPC 服务器时出错:错误:0308010C:数字信封例程::不受支持

我正在 Linux 中设置安全帽。我首先使用这些命令设置了反应应用程序。

npx create-react-app react-dapp

cd react-dapp 
Run Code Online (Sandbox Code Playgroud)

然后我使用此命令安装了一些安全帽依赖项。

npm install ethers hardhat @nomiclabs/hardhat-waffle \
        ethereum-waffle chai \
        @nomiclabs/hardhat-ether
Run Code Online (Sandbox Code Playgroud)

这一切都做得正确。然后我创建了安全帽配置和设置。

npx hardhat 
Run Code Online (Sandbox Code Playgroud)

然后我编辑了hardhat.config.js文件。我有这样的地方。

module.exports = {
solidity: "0.8.4",
paths: {                         
   artifacts: './src/artifacts',  
},
networks: {                 
  hardhat: {
   chainId: 1337                
 }
Run Code Online (Sandbox Code Playgroud)

} }; 之后我创建了节点。

npx hardhat node 
Run Code Online (Sandbox Code Playgroud)

我收到这个错误:

错误 HH604:运行 JSON-RPC 服务器时出错:错误:0308010C:数字信封例程::不受支持

linux api blockchain metamask hardhat

12
推荐指数
2
解决办法
8575
查看次数

Solidity 中的内部和私有有什么区别?

在 Solidity 中,我们有四种访问类型。其中两个是privateinternal。如果两者都可以在智能合约中使用,但部署后都不可见,有什么区别?

blockchain solidity smartcontracts

12
推荐指数
2
解决办法
8839
查看次数

安装后未找到松露命令

我通过npm以下方式安装了松露:

sudo npm install -g truffle

但是当我在控制台上运行松露列表时它就给了我

bash:truffle:命令未找到

npm blockchain ethereum truffle

11
推荐指数
4
解决办法
7759
查看次数