语义版本化问题
语义化版本 2.0.0《语义化版本 2.0.0》,三段版本号语义: 版本格式:主版本号.次版本号.修订号,版本号递增规则如下: 主版本号:当你做了不兼容的 API 修改, 次版本号:当你做了向下兼容的功能性新增, 修订号:当你做了向下兼容的问题修正。 先行版本号及版本编译信息可以加到“主版本号.次版本号.修订号”的后面,作为延伸。
以太坊为什么会有 gas 系统?
根据官方文档: GasOne important aspect of the way the EVM works is that every single operation that is executed inside the EVM is actually simultaneously executed by every full node. This is a necessary component of the Ethereum 1.0 consensus model, and has the benefit that any contract on the EVM can call any other contract at almost zero cost, but also has the drawback that computational steps on the EVM are very expensive. Roughly, a good heuristic to use is that you will not be able to do...
《以太坊到底是如何工作》读书笔记
《以太坊到底是如何工作》 以太坊的简单定义transactional singleton machine with shared-state 事务性状态共享的单例机器 实际上就是逻辑上唯一,但物理上由多个节点维护的共识中的 world computer。这台机器的状态是由事务变迁驱动的: 幽灵协议“GHOST” = “Greedy Heaviest Observed Subtree” 简而言之,就是只在拥有最大计算量的路径上进行计算(这个协议是从比特币那里来的吗?)。 账户与事务外部账户由私钥控制,内部账户由代码控制。 外部账户可以主动发起事务,内部账户只有收到事务以后才能发起内部事务。 账户的状态构成一个账户的状态总是由四个组件构成: nonce:如果这是个外部账户,则这个数字代表了这个账户地址发出的事务数。如果这是个合约账户,则这个数字代表了这个账户创造的合约数量。这两种情况下,nonce 都不是随机数。 balance:这个地址拥有的 Wei 数量。一个以太币有个 1e+18 Wei。 storageRoot:默认为空。Merkle Patricia...
IOTA
IOTA 简介IOTA 是下一代(第三代)加密货币,只做货币,不做其他用途的链(?)。专注于解决机器与机器(M2M)之间的交易问题。通过实现机器与机器间无交易费的支付来构建未来机器经济(machine economy)的蓝图,即物联网 + 数字货币的经济生态。物联网天然就有分布式特性,很适合搞区块链。 德国团队创立,由德国政府资助的一个中心化的研究去中心化下一代加密货币的项目。团队成员的上一个作品是第一代 POS 货币未来币(NXT)。 IOTA 的发行量极大,IOTA总供应量为(3 ^ 33-1)/ 2 或2,779,530,283,277,761个。所有IOTA都是在初始块创建的,总数不变,也不用开采。IOTA初上市的时候只募集到五十万美金,所以早期投资者的投资回报极高。有意思的是,因为 IOTA 基金会是非盈利组织,他们甚至没有锁定货币,所以他们持有的百分之五的 IOTA 代币,还是其他投资者捐献给基金会用以维持基金会运行的。 IOTA...
闪电网络、侧链、隔离见证与大区块扩容问题
闪电网络闪电网络的原理闪电网络就是在链外专门设置一个通道(channel),所有的交易都在链上进行,只有最终结算在链上进行。这就好像我们的计算机体系结构里面加入的一个工作内存和主内存的...
EOS 相关问题
石墨烯(graphene,读作gurafin,没有尾音 i)技术本身是由 cryptonomex 开发的一个库,目前已经有国内的开发者开始使用它来开发公有链相关的基础设施。BM-丹尼尔•拉里默(Dan Larimer)是 cryptonomex 的创始人。 EOS 声称自己具有以下几个优点: 不易分叉 高 TPS 可以平滑升级 EOS 的365天众筹模式可以让 EOS 团队负成本的操盘。EOS 总量是无限的,(据说)增发的部分只是给矿工创造价值。
推荐算法笔记
分类的话: 用户画像算法 用户画像算法、聚类算法 分类算法: gbtd、随机森林 识别完了看哪个变量更重要。要有可解释性。 价格相关数据:体现在什么方面?一定要跟收入密切相关的。要对数据和业务的理解很重要。 分类项目:部分已知,有一部分训练集,用未知的和已知的做一个比较。打标签。寻找标签里最重要的因素。 gbtd(底层是很多决策树)。svm。dnn。可能解释性那么强。决策树。xgbox。 输出是:分类的概率。 聚类项目:完全未知,从数据本身来发现特征。k-means。层次聚类。 输出是:不同类别的特征。 要理解商业逻辑。
跨域与同源策略问题
什么是同源策略同源策略(same origin policy)指的是,两个网页的协议、域名和端口都相同。 但 Windows RT IE 是例外的,对它而言,端口号并不是同源策略的组成部分之一。 同源策略的变化同源策略最初的要求是,同源的网页才能打开同源网页下的 cookie。cookie 实际上是一种对浏览器用户总是可见,但对 javascript 代码不总可见的内容。 但现代的同源策略起了轻微的变化: localStorage 和 IndexedDB 也受同源策略限制。 “Cookies使用不同的源定义方式。一个页面可以为本域和任何父域设置cookie,只要是父域不是公共后缀(public suffix)即可。设置cookie时,你可以使用 Domain,Path,Secure,和 Http-Only 标记来限定其访问性。” 对XMLHttpRequest和<img>标签则会受到同源策略的约束: 通常允许进行跨域写操作(Cross-origin writes)。例如链接,重定向以及表单提交(基于 get 实现写,如下面讲到的 img)。特定少数的 HTTP...
Echart 词汇表
emphasis n 强调roam 漫游scatterplot 散点图effectscatter 特效散点
以太坊为什么不适合拿来做联盟链?
联盟链必然要求多个账户系统存在,联盟中的每个节点都必须独立保存自己的私钥,则在当前的 gas 系统限制下,每个账户必须有自己的ether存款。 是不是允许多头出块?如果允许多头出块,则各个账户可以预先prefund或者在网络启动的时候充钱,不必考虑货币流通性问题。但多头出块的缺点是,不可抵挡分叉。而且,实际上极有可能还是存在货币流通性问题。 不允许多头出块,则必须由我们自己的中心账户来出块,我们自己来出块的话,其他账户发起合约请求需要的货币需要定期从我们的中心账户提取出来。 如果可以用强一致性的协议来预先持久化所有的写消息,也许可以靠监控把错误恢复过来,当然这也对业务产生了强依赖,业务的写操作必须是可以通过类似反幂等的方式恢复过来的。这就是把Raft分布式强一致性协议当做一个分布式的WAL来用了。ES 不适合拿来当这个 WAL,因为它不是强实时写的。