惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

宝玉的分享
宝玉的分享
The GitHub Blog
The GitHub Blog
Vercel News
Vercel News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
酷 壳 – CoolShell
酷 壳 – CoolShell
Last Week in AI
Last Week in AI
F
Fortinet All Blogs
Jina AI
Jina AI
I
InfoQ
T
The Blog of Author Tim Ferriss
P
Proofpoint News Feed
博客园 - 三生石上(FineUI控件)
G
Google Developers Blog
V
Visual Studio Blog
L
LangChain Blog
WordPress大学
WordPress大学
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
T
Tor Project blog
GbyAI
GbyAI
MongoDB | Blog
MongoDB | Blog
V
V2EX
Stack Overflow Blog
Stack Overflow Blog
H
Help Net Security
Recorded Future
Recorded Future
N
News and Events Feed by Topic
云风的 BLOG
云风的 BLOG
Martin Fowler
Martin Fowler
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
罗磊的独立博客
O
OpenAI News
Google DeepMind News
Google DeepMind News
S
Schneier on Security
C
Check Point Blog
N
Netflix TechBlog - Medium
The Register - Security
The Register - Security
aimingoo的专栏
aimingoo的专栏
TaoSecurity Blog
TaoSecurity Blog
T
Tenable Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Hugging Face - Blog
Hugging Face - Blog
Cyberwarzone
Cyberwarzone
月光博客
月光博客
The Last Watchdog
The Last Watchdog
B
Blog
有赞技术团队
有赞技术团队
Blog — PlanetScale
Blog — PlanetScale
T
Tailwind CSS Blog
Hacker News: Ask HN
Hacker News: Ask HN
H
Heimdal Security Blog
美团技术团队

夜行人

回家路上 第一期的直播演示项目 震动检测器 正能量 在线参观CodeLab Neverland 发布 CodeLab Adapter 3.3.1 DynamicTable 之 纸糊方向盘 CodeLab DynamicTable: 一个可实施的技术方案 CodeLab Insight 发布 Alpha 版 情人节 Home Assistant 周报 && IoT 周报 (02) Joplin: 关注隐私的 Evernote 开源替代软件 浏览器的未来与 Web 传感器 Home Assistant 周报 && IoT 周报 (01) 百宝箱(01) 论自由 介绍 WebThings Home Assistant 周报 && iot 周报 (00) 百宝箱(00) 毛姆读书心得 传世之作 周末徒步 CodeLab Adapter ❤️ Jupyter/Python 航班 躲雨 夏令营途中 [译]思想--作为一种技术 The future of coding 美国之行 三门问题的程序模拟 从Python转向Pharo https://blog.just4fun.site/post/iot/iot-open-source-projects/ Python异步编程笔记 https://blog.just4fun.site/post/iot/iot-open-source-hardware-community/ 万物积木化开发者社区 CodeLab ❤️ Blender Scratch3技术分析之云变量 API(第7篇) [译]对管道(Pipes)的偏爱 [译]提出正确的问题比得到正确答案更重要 蓝牙设备与Scratch3.0 创建你的第一个Scratch3.0 Extension Scratch3技术分析之项目内部数据(第6篇) Scratch3技术分析之社区 API(第5篇) Scratch3技术分析之User API(第4篇) Scratch3技术分析之项目主页API(第3篇) Scratch3技术分析之静态资源API(第2篇) Scratch3.0、micro:bit与Windows7 https://blog.just4fun.site/post/iot/zerynth-vs-micropython/ 核聚变、方所与半宅空间 可视化编程为何是个糟糕的主意 codelab.club周末聚会 关于codelab.club '下一件大事'是一个房间 Hungry Robot - Eat everything 编程作为一种思考方式 今日简史 史蒂夫·乔布斯传 罗素自选文集 https://blog.just4fun.site/post/edx/tianjin-scratch-ai/ https://blog.just4fun.site/post/edx/richie-cms-openedx/ 徒步武功山 WebUSB与micro:bit 积木化编程与3D场景 夜宿武功山顶 scratch3-adapter接入优必选Alpha系列机器人 https://blog.just4fun.site/post/edx/video-migration-note/ scratch3-adapter重构笔记 https://blog.just4fun.site/post/edx/edx-community-members/ 两种硬件编程风格的比较 使用micro:bit自制PPT翻页笔 柏拉图对话集 scratch3.0 + micro:bit 七月电影放映计划 非营利组织的管理 Screenly--用树莓派让任何屏幕变为可编程的数字标牌 以最佳实践开始你的Django项目 micro:bit与事件驱动 为Scratch3.0设计的插件系统(上篇) OCR应用一例 近两年读过的一些好书 blockly开发之使用python驱动浏览器中的turtle(2) 牛顿新传 文学理论入门 逻辑的引擎 人生的意义 blockly开发之生成并运行js代码(1) blockly开发之hello world(0) micro:bit使用笔记 神器之Termux https://blog.just4fun.site/post/iot/micropython-notes/ Cozmo what is this Scratch的前世今生 下段旅程 我行在远方 爆裂 途中杂记 https://blog.just4fun.site/post/edx/open-edx-startup/ cozmo系列之入门 - 有性格且可编程的机器人 PaperWeekly开发笔记 创业二三事
区块链学习笔记
2016-04-28 · via 夜行人

未来正不断到来,而当下不断成为过去

过去人们眼中惊世骇俗的事物,今天的人已经习以为常,他们不能相信曾经居然有人会对此感到惊讶

他们同时又惊讶于,当下居然有人会激进和愚蠢到相信眼前这些惊世骇俗的事物在将来能被人广泛接受。它们多么有悖于今天的常识啊

当尼尼微城昌盛一时,新福音书已经老旧

区块链

  • 区块链(英语:Blockchain或Block chain)是一种分布式数据库,起源自比特币。
  • 区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
  • 区块链在网络上是公开的,可以在每一个离线比特币钱包数据中查询。

问题背景

“原理"和"意义/用途"

区块链的一些要素

  • 包含一个分布式数据库
  • 分布式数据库是BC的物理载体,BC是交易的逻辑载体,所有核心节点都应包含该条BC数据的全副本
  • BC按时间序列化Block,且是整个网络交易数据的主体
  • BC只对添加有效,对其他操作无效
  • 基于非对称加密的公私钥验证
  • 记账节点要求拜占庭将军问题可解/避免
  • 共识过程(consensus progress)是演化稳定的,即面对一定量的不同节点的矛盾数据不会崩溃。
  • 共识过程能够解决double-spending问题

系统特征

它几乎无懈可击。首先你不能凭空造出比特币,只能挖矿获得;其次你无法伪造交易,无法控制不属于你的账户。一旦交易被确认,几乎无法取消。我这里说“几乎”,是因为有“51%攻击”的存在。而51%攻击条件非常苛刻。

相关知识

  • 密码学
    • 非对称加密,公钥和私钥
  • p2p

一些理解角度

  • 比特币本质是构造了一个永不停息、无坚不摧的时间戳系统。

#比特币 参考比特币 (Bitcoin) 系统是如何运行的?

公钥私钥

公钥私钥是现代密码学分支非对称性加密里面的名词,通常都是用公钥加密信息,用私钥解密信息,为什么要这样? 因为你看电视剧的时候,发电报那种都是对称性加密,这种加密方式缺点是显而易见的,如果被人知道了密钥和加密方法,于是按照加密方法反着来就能解密。 一直到非对称性加密这种情况才有所改观,公钥就是可以对全世界公开的密钥,比如你和google通讯,用google给的1024位的公钥加密,送到google那里只有他有对应的私钥,只有他能解密,于是就保证了通讯安全

椭圆曲线签名算法(ECDSA)

  • 只要知道私钥,可以算出相应的公钥;
  • 你用私钥签名过的东西,可以用公钥算一下是不是你签的;

交易账单

比特币其实没有钱包,只有交易账单,整个比特币就是一大堆交易账单

账户

比特币的账户,就是一段公钥

比特币的账单

FROM(谁发送的,包括两部分)
Previous tx: 你要花的这笔钱的那个账单的id, 也就是说,你花的任何一笔钱都应该有人转给你过,需要出示那个账单的id
scriptSig: 你对这笔交易的签名,就是把单子用你的私钥做hash,只有你能做这个hash

TO(谁接受,包括两部分)
Value: 要发多少
scriptPubKey: 对方的公钥,比特币账户就是一段公钥

#以太坊

关于以太坊

简而言之,以太坊(Ethereum)是一项将比特币中的一些技术和概念运用于计算领域的创新。
比特币被认为是一个系统,该系统维护了一个安全地记录了所有比特币账单的共享的全球账簿。以太坊,则是利用了很多跟比特币类似的机制(比如区块链技术和 P2P 网络),来维护一个共享的计算平台,这个平台可以灵活且安全地运行用户想要的任何程序(当然也包括类似比特币的区块链程序)

以太坊要实现的是一个内置了编程语言的区块链协议,由于支持了编程语言,那么理论上任何区块链应用都可以用这门语言进行定义,进而作为一种应用,运行于以太坊的区块链协议之上(译注:该协议的意义与互联网时代的 TCP/IP 协议有的一拼)

比特币经常被称之为"全球账簿",以太坊可以被看作一台“全球计算机”

本质上,以太坊的目标,就是将区块链技术所具有的去中心化、开放、和安全这三大特点,引入到几乎所有能被计算的领域。

基本概念

####公钥加密系统 Alice有一把公钥和一把私钥。她可以用她的私钥创建数字签名,而Bob可以用她的公钥来验证这个签名确实是用Alice的私钥创建的,也就是说,确实是Alice的签名

####点对点网络 就像BitTorrent, 以太坊分布式网络中的所有节点都地位平等,没有中心服务器

####区块链 区块链就像是一个全球唯一的帐簿,或者说是数据库,记录了网络中所有交易历史。

####节点 你可以运行节点,通过它读写以太坊区块链,也即使用以太坊虚拟机。完全节点需要下载整个区块链。轻节点仍在开发中。

####矿工 挖矿,也就是处理区块链上的区块的节点。

####以太币 缩写ETH。一种你可以购买和使用的真正的数字货币

####工作量证明 矿工们总是在竞争解决一些数学问题。第一个解出答案的(算出下一个区块)将获得以太币作为奖励

####Gas (汽油) 在以太坊上执行程序以及保存数据都要消耗一定量的以太币,

####DApp 以太坊社区把基于智能合约的应用称为去中心化的应用程序(Decentralized App)。DApp的目标是(或者应该是)让你的智能合约有一个友好的界面,外加一些额外的东西,例如IPFS(可以存储和读取数据的去中心化网络,不是出自以太坊团队但有类似的精神)

##运行以太坊节点可用的客户端 Go语言实现的客户端geth (go-ethereum)。 testrpc:使用了Python客户端pyethereum

##写智能合约用的编程语言

  • 类似Javascript的Solidity(主导)
  • 类Python的Serpent

相关

开发者

资讯