链客区块链技术面试题目专题(一)

想知道更多区块链技术问答,请百度【链客区块链技术问答社区】,有专业的区块链技术问答。

以太坊的账户包含四个部分: 随机数,用于确定每笔交易只能被处理一次的计数器 账户目前的以太币余额 账户的合约代码,如果有的话 账户的存储(默认为空) 这四个部分怎么查看,有哪位大神知道么? eth.accounts只能看到42位的地址
答:随机数,其实就是递增的数字,每个nonce只能用一次,而且是越来越大的。这样就可以保证每笔交易只被处理一次。nonce就像其他参数(from,to, value, gas等)一样,可以在交易中携带的。余额,即账户的余额,代码,即合约账户的代码,普通账户没有。存储,暂时没了解。

eth rpc怎么设置允许ip访问 ?rpcaddr设置的是127.0.0.1    我用另一台机器用程序调用rpc访问不了。
答:开内网,把127.0.0.1 换成内网地址。

搭建基于以太坊的私有量环境,如果搭在自己的电脑上,会对开发测试有影响吗?还是单独弄一台机器比较好
答:没影响。私有链搭那都一样。

在自己的ethereum wallet发行的智能合约,如何加到另一台电脑上的ethereum wallet?我在自己的电脑上用ethereum wallet发布,mist中观察没问题,将步骤复制到另一台电脑上的mist中就不显示接口。
答:添加abi+地址,接口就是abi

感觉使用geth attach对服务器内存消耗很大,使用web3j会不会好一点?有人试过没有?我现在使用的是geth attach,导致服务器很卡。
答:挖矿导致的,跟geth attach 没关系。一般我都将日志直接在控制台输出,所以在挖矿产生日志后不利于敲新的命令,所以开启一个新的终端,用geth attach 链接比较方面。

geth 命令加了 --txpool.lifetime 0h10m0s 这个失效时间了, 可是 10分钟过去了, txpool.content 里面的pending数据还在 这怎么回事呢?
答:--txpool.lifetime value Maximum amount of time non-executable transaction are queued (default: 3h0m0s)在queue队列中,你这个在pending队列中。

imtoken上的智能合约是部署在以太坊主链还是私有链的? 我有点不明白在以太坊主链上部署智能合约和私有链有什么区别了。
答:imtoken的智能合约都是部署在主链上的,私有链是不同于主链的个人或者组织另外搭建的区块链。imtoken的智能合约虽说是部署在主链上,但是进行交易的时候,使用的节点,并非是官方主节点,而是imtoken服务器上搭建的节点,该节点与主链数据完全一样,并且实时同步数据,分布式运行。

ETH钱包怎么做呢,求指点 想实现跟imtoken类似的功能,添加token,转账,收款,该怎么准备呢?
答:eth钱包用web3j就可以,包含了创建导入keystore,助记词,私钥等等功能。而添加token就是根据给的合约调用token内的方法,比如ERC20代币的totalSupply,symbol,name等,这些操作不需要花费gas,就像imtoken钱包一样添加合约地址就能显示出相应的信息,而转账操作就需要你的账户内有以太币了,调用合约的transfer()方法就ok了。

 以太坊有命令查看链上有多少节点么?
答:没有办法查询到有多少节点。但可以查询到连接到的节点, admin.peers.

ABI编码你们都是怎么生成的啊?只能在这个地方生成么,假如我要是做DAPP后台需要去请求以太坊的接口,那请求的参数不是要用ABI编码以后再传么,就是不知道这个过程怎么处理。
答:编译软件都可以生成abi的。用合约abi和合约地址,就可以生成合约对象,直接调用接口了。

你可能感兴趣的:(链客区块链技术面试题目专题(一))