摘要:
ASP.NET 则是一种技术。 Main方法 代码编写规范 命名规范 阅读全文
摘要:
一 logging模块 CRITICAL = 50 #FATAL = CRITICAL ERROR = 40 WARNING = 30 #WARN = WARNING INFO = 20 DEBUG = 10 NOTSET = 0 #不设置 常用配置文件使用logging 1 """ 2 loggi 阅读全文
摘要:
* 一个产品的完整生命周期包括哪些流程? * 健康的软件开发流程是怎样? * 受欢迎的编码习惯; * 科学地解决问题之道。 瀑布模型 敏捷开发 阅读全文
摘要:
全节点: 1 一直在线 2 在本地硬盘上维护完全的区块链信息 3 在内存里维护UTXO集合,以便快速检验交易的正确性 4 监听比特币网络上的交易信息,验证每个交易的合法性 5 决定哪些交易会被打包到区块里 6 监听别的矿工挖出来的区块,验证器其合法性 7 挖矿:a 决定沿哪条链挖下去 b 当出现等长 阅读全文
摘要:
挖矿就是不断调整nouce和header中其他可变字段,使得整个block header 的hash值小于等于target,target越小,挖矿难度越大。 出块时间设置为了10分钟,可以尽可能避免同时发布区块,导致最长区块链多次分叉,总算力被分叉分散,而恶意节点算力集中在恶意节点后面抢到最长区块链 阅读全文
摘要:
Bitcoin工作在应用层,网络层是P2P 。 Bitcoin网络通信的设计原则是 simple robust ,but not efficient. 每个节点维护一个邻居节点的集合,消息传播采取 flooding的模式,邻居节点的选取是随机的,不考虑网络拓扑结构。也就是说转账速度跟离自己的远近没有 阅读全文
摘要:
比特币是基于 transaction-based ledger.(隐私保护性很好,但是在转账中需要说明币的来源,比较麻烦) 比特币的全节点需要维护一个UTXO的数据结构(unspent transaction output ). 获得记账权后,为了自己的交易信息还会在区块中打包别人的交易信息,为了鼓 阅读全文
摘要:
数字货币是文件,难伪造,但是容易复制,不像实体货币,花出去就没了,数字货币存在double spending attack,双花攻击。 去中心化的货币,需要解决两个问题: 1.货币的发行 挖矿 2.交易的有效性 每个交易都包含两部分,输入和输出。 输入部分要说明币的来源,输出部分给出收款人公钥的ha 阅读全文
摘要:
hash pointers:哈希指针,除了保存值的地址,还要存这整个区块的内容的hash值。这样就既能访问到值,还能确定访问的值有没有被篡改。 一 Blockchain Block chain is a linked list using hash pointers. 因为这个特点,这个区块链中的任 阅读全文
摘要:
所谓加密货币是不加密的,区块链上所有的交易内容(包括:账户的地址,转账的地址)都是公开的。 Bitcoin中主要用到密码学的中的两个功能:Hash和签名。 一 Hash Cryptographic hash function: 1.Collision resistance Hash碰撞其实很常见,因 阅读全文