问题标签 [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.
javascript - 如何将 Ionic SPV 比特币钱包连接到区块链节点?
为了进一步扩展我对比特币的理解,我想尝试使用 Ionic] (cordova) 移动应用程序框架(混合应用程序)构建我自己的基于 SPV 的钱包。
使用浏览器版本的bitcoinjs-lib,我已经成功地按照 BIP44 指南实现了分层确定性钱包(如 BIP32 中所述)的所有密钥生成方案。
然而,在这一点上,我对如何在混合应用程序中使用BIP37中描述的布隆过滤器实现与网络中的完整节点的通信感到困惑。任何人都可以为我指出如何最好地实施这一点的正确方向。
还有一些具体的问题可能会帮助我朝着正确的方向前进:
- 是否所有完整节点都处理 SPV 客户端发送的布隆过滤器?
- 如何从科尔多瓦应用程序连接到比特币节点?(如果我没记错的话,必须连接到节点的 TCP 套接字)
任何帮助当然将不胜感激!
memory - 在 Ethereum Solidity 中,“memory”关键字的作用是什么?
在查看示例合同时,有时数组是在具有“内存”的方法中声明的,有时则不是。有什么不同?
python - python版本与json.dumps冲突
我是新手python
。我正在运行我在网上获得的脚本:
我明白了:
我读到它与 python 版本有关,应该是一些2.7
. 所以我下载了pyenv
. 我在包含file.py
:的目录中设置了正确的版本pyenv local 2.7.10
。但我仍然得到同样的错误。
(有关信息,我正在尝试安装blockchain
工具:ethereum)
javascript - 在以太坊区块链上保存合约数据的更有效方式是什么?
我正在玩一个私有的以太坊区块链,我对实现一些智能合约很感兴趣。但是,信息非常有限,因为这是区块链的较新实现。
举个例子,假设我想要一份包含某人信息的合同。为每个人创建一个新合约更有效,还是简单地将所有用户的信息保存在同一个合约中?
在伪代码中,这两个选项如下所示。
选项 1(为每个人实例化一个新合同):
选项 2(在一份合约中保存所有用户的信息):
以下是我们如何量化这种情况下的“效率”:
- 每次实例化新合约时,我们都必须为合约挖掘区块,然后挖掘用户对合约进行的任何交易。但是,如果我们只实例化一个合约,我们只会挖掘一次合约部署,然后再挖掘任何交易,但是......
- 如果我们选择将所有用户的所有信息存储在一个合约中,则只是将合约数据的“差异”(所有用户的“数组”)存储为一个块,还是将整个数据集存储在每个街区?或者...
- 如果我们选择“每个用户的合同”选项,如果我们多次存储整个合同定义是否会“浪费空间”(是否值得进行可能的冗余挖掘)?
希望我的问题很清楚,但如果没有,请告诉我。我相信这个问题是“权衡”之一。
(回复:标签——我正在使用以太坊的 golang 实现,以及与之交互的 JavaScript API。)
blockchain - 为什么我的私有以太坊网络上的对等发现失败?
我正在尝试建立一个私有以太坊网络以在通过 LAN 连接的一组 5 台机器中运行。正如以太坊文档中提到的那样,我使用自定义--networkid 15693
来设置网络,但是当我geth
在不同的机器上运行并使用它形成一些初始连接时,admin.addPeer()
就会保持这种状态;对等发现似乎不起作用。例如,我有节点1
,2
和3
这样的连接是1--2
and 2--3
,那么为什么3
无法发现1
?
编辑 如果我在本地(在机器内)设置网络,则节点能够发现并相互连接,但是通过 LAN 它会失败。
bitcoin - 在不删除换行符的情况下编译智能合约
我是与以太坊编写智能合约的新手。
根据官方文档,编译智能合约需要删除合约源代码中的所有换行符:
https://ethereum.gitbooks.io/frontier-guide/content/contract_greeter.html
由于我认为删除过程并不聪明,我想编译代码本身,如:
迎宾员.txt
有人该怎么做吗?
我使用的编译器是 Solidity。
protocol-buffers - PROTOBUF_INLINE_NOT_IN_HEADERS
我正在尝试在 debian 8 上安装开源项目 Open Transactions。我已经安装了所有依赖项,并且在编译(make)时遇到了问题。即使我确保安装了 protobuf 项目,我的终端仍显示以下错误:
关于如何处理这个问题的任何想法?在网上找不到任何帮助。
transactions - OpenTransactions/Protobuf 模棱两可的错误
我正在尝试编译 OpenTransactions,但我必须先安装一些其他项目,编译器在某个点停止并向我显示以下错误日志:
我首先遇到了这个问题并解决了它(我认为)。有人对此有任何见解吗?
bitcoin - 以太坊专网挖矿
1)我使用以下命令设置了一个私有以太坊网络
2)创建一个帐户
3) 然后,使用 miner.start() 命令启动矿工。
过了一会儿,以太币被自动添加到我的帐户中,但我的私人网络中没有任何待处理的交易。那么我的矿工从哪里得到以太币呢?
即使我没有在我的网络中实例化任何事务,但一旦我启动矿工,我可以看到日志中记录了一些事务。
日志如下:
我的创世块代码如下:
由于我的网络是孤立的并且只有一个节点(没有对等节点),我对这种行为感到很困惑。任何见解将不胜感激。
azure - 单个 VM 中的 Azure 多个 VM
我想知道是否可以在单个 VM 中运行多个 VM。基本上,我正在为即将到来的大学科目做一些研究。我想运行一个迷你区块链风格的环境,我需要多个 VM 来测试它。
你认为我最好的方法是什么?具有多台机器的单一云服务?还是我需要购买我需要的每台虚拟机?