问题标签 [blockchain]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
483 浏览

javascript - 如何将 Ionic SPV 比特币钱包连接到区块链节点?

为了进一步扩展我对比特币的理解,我想尝试使用 Ionic] (cordova) 移动应用程序框架(混合应用程序)构建我自己的基于 SPV 的钱包。

使用浏览器版本的bitcoinjs-lib,我已经成功地按照 BIP44 指南实现了分层确定性钱包(如 BIP32 中所述)的所有密钥生成方案。

然而,在这一点上,我对如何在混合应用程序中使用BIP37中描述的布隆过滤器实现与网络中的完整节点的通信感到困惑。任何人都可以为我指出如何最好地实施这一点的正确方向。

还有一些具体的问题可能会帮助我朝着正确的方向前进:

  • 是否所有完整节点都处理 SPV 客户端发送的布隆过滤器?
  • 如何从科尔多瓦应用程序连接到比特币节点?(如果我没记错的话,必须连接到节点的 TCP 套接字)

任何帮助当然将不胜感激!

0 投票
3 回答
33440 浏览

memory - 在 Ethereum Solidity 中,“memory”关键字的作用是什么?

在查看示例合同时,有时数组是在具有“内存”的方法中声明的,有时则不是。有什么不同?

0 投票
1 回答
13067 浏览

python - python版本与json.dumps冲突

我是新手python。我正在运行我在网上获得的脚本:

我明白了:

我读到它与 python 版本有关,应该是一些2.7. 所以我下载了pyenv. 我在包含file.py:的目录中设置了正确的版本pyenv local 2.7.10。但我仍然得到同样的错误。

(有关信息,我正在尝试安装blockchain工具:ethereum)

0 投票
2 回答
397 浏览

javascript - 在以太坊区块链上保存合约数据的更有效方式是什么?

我正在玩一个私有的以太坊区块链,我对实现一些智能合约很感兴趣。但是,信息非常有限,因为这是区块链的较新实现。

举个例子,假设我想要一份包含某人信息的合同。为每个人创建一个新合约更有效,还是简单地将所有用户的信息保存在同一个合约中?

在伪代码中,这两个选项如下所示。

选项 1(为每个人实例化一个新合同):

选项 2(在一份合约中保存所有用户的信息):

以下是我们如何量化这种情况下的“效率”:

  1. 每次实例化新合约时,我们都必须为合约挖掘区块,然后挖掘用户对合约进行的任何交易。但是,如果我们只实例化一个合约,我们只会挖掘一次合约部署,然后再挖掘任何交易,但是......
  2. 如果我们选择将所有用户的所有信息存储在一个合约中,则只是将合约数据的“差异”(所有用户的“数组”)存储为一个块,还是将整个数据集存储在每个街区?或者...
  3. 如果我们选择“每个用户的合同”选项,如果我们多次存储整个合同定义是否会“浪费空间”(是否值得进行可能的冗余挖掘)?

希望我的问题很清楚,但如果没有,请告诉我。我相信这个问题是“权衡”之一。

(回复:标签——我正在使用以太坊的 golang 实现,以及与之交互的 JavaScript API。)

0 投票
0 回答
495 浏览

blockchain - 为什么我的私有以太坊网络上的对等发现失败?

我正在尝试建立一个私有以太坊网络以在通过 LAN 连接的一组 5 台机器中运行。正如以太坊文档中提到的那样,我使用自定义--networkid 15693来设置网络,但是当我geth在不同的机器上运行并使用它形成一些初始连接时,admin.addPeer()就会保持这种状态;对等发现似乎不起作用。例如,我有节点1,23这样的连接是1--2and 2--3,那么为什么3无法发现1

编辑 如果我在本地(在机器内)设置网络,则节点能够发现并相互连接,但是通过 LAN 它会失败。

0 投票
1 回答
265 浏览

bitcoin - 在不删除换行符的情况下编译智能合约

我是与以太坊编写智能合约的新手。

根据官方文档,编译智能合约需要删除合约源代码中的所有换行符:

https://ethereum.gitbooks.io/frontier-guide/content/contract_greeter.html

由于我认为删除过程并不聪明,我想编译代码本身,如:

迎宾员.txt

有人该怎么做吗?

我使用的编译器是 Solidity。

0 投票
2 回答
2240 浏览

protocol-buffers - PROTOBUF_INLINE_NOT_IN_HEADERS

我正在尝试在 debian 8 上安装开源项目 Open Transactions。我已经安装了所有依赖项,并且在编译(make)时遇到了问题。即使我确保安装了 protobuf 项目,我的终端仍显示以下错误:

关于如何处理这个问题的任何想法?在网上找不到任何帮助。

0 投票
1 回答
100 浏览

transactions - OpenTransactions/Protobuf 模棱两可的错误

我正在尝试编译 OpenTransactions,但我必须先安装一些其他项目,编译器在某个点停止并向我显示以下错误日志:

我首先遇到了这个问题并解决了它(我认为)。有人对此有任何见解吗?

0 投票
2 回答
1780 浏览

bitcoin - 以太坊专网挖矿

1)我使用以下命令设置了一个私有以太坊网络

2)创建一个帐户

3) 然后,使用 miner.start() 命令启动矿工。

过了一会儿,以太币被自动添加到我的帐户中,但我的私人网络中没有任何待处理的交易。那么我的矿工从哪里得到以太币呢?

即使我没有在我的网络中实例化任何事务,但一旦我启动矿工,我可以看到日志中记录了一些事务。

日志如下:

我的创世块代码如下:

由于我的网络是孤立的并且只有一个节点(没有对等节点),我对这种行为感到很困惑。任何见解将不胜感激。

0 投票
1 回答
38 浏览

azure - 单个 VM 中的 Azure 多个 VM

我想知道是否可以在单个 VM 中运行多个 VM。基本上,我正在为即将到来的大学科目做一些研究。我想运行一个迷你区块链风格的环境,我需要多个 VM 来测试它。

你认为我最好的方法是什么?具有多台机器的单一云服务?还是我需要购买我需要的每台虚拟机?