以太坊时间戳
Ⅰ 区块链如何保证使用安全
区块链项目(尤其是公有链)的一个特点是开源。通过开放源代码,来提高项目的可信性,也使更多的人可以参与进来。但源代码的开放也使得攻击者对于区块链系统的攻击变得更加容易。近两年就发生多起黑客攻击事件,近日就有匿名币Verge(XVG)再次遭到攻击,攻击者锁定了XVG代码中的某个漏洞,该漏洞允许恶意矿工在区块上添加虚假的时间戳,随后快速挖出新块,短短的几个小时内谋取了近价值175万美元的数字货币。虽然随后攻击就被成功制止,然而没人能够保证未来攻击者是否会再次出击。
当然,区块链开发者们也可以采取一些措施
一是使用专业的代码审计服务,
二是了解安全编码规范,防患于未然。
密码算法的安全性
随着量子计算机的发展将会给现在使用的密码体系带来重大的安全威胁。区块链主要依赖椭圆曲线公钥加密算法生成数字签名来安全地交易,目前最常用的ECDSA、RSA、DSA 等在理论上都不能承受量子攻击,将会存在较大的风险,越来越多的研究人员开始关注能够抵抗量子攻击的密码算法。
当然,除了改变算法,还有一个方法可以提升一定的安全性:
参考比特币对于公钥地址的处理方式,降低公钥泄露所带来的潜在的风险。作为用户,尤其是比特币用户,每次交易后的余额都采用新的地址进行存储,确保有比特币资金存储的地址的公钥不外泄。
共识机制的安全性
当前的共识机制有工作量证明(Proof of Work,PoW)、权益证明(Proof of Stake,PoS)、授权权益证明(Delegated Proof of Stake,DPoS)、实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)等。
PoW 面临51%攻击问题。由于PoW 依赖于算力,当攻击者具备算力优势时,找到新的区块的概率将会大于其他节点,这时其具备了撤销已经发生的交易的能力。需要说明的是,即便在这种情况下,攻击者也只能修改自己的交易而不能修改其他用户的交易(攻击者没有其他用户的私钥)。
在PoS 中,攻击者在持有超过51%的Token 量时才能够攻击成功,这相对于PoW 中的51%算力来说,更加困难。
在PBFT 中,恶意节点小于总节点的1/3 时系统是安全的。总的来说,任何共识机制都有其成立的条件,作为攻击者,还需要考虑的是,一旦攻击成功,将会造成该系统的价值归零,这时攻击者除了破坏之外,并没有得到其他有价值的回报。
对于区块链项目的设计者而言,应该了解清楚各个共识机制的优劣,从而选择出合适的共识机制或者根据场景需要,设计新的共识机制。
智能合约的安全性
智能合约具备运行成本低、人为干预风险小等优势,但如果智能合约的设计存在问题,将有可能带来较大的损失。2016 年6 月,以太坊最大众筹项目The DAO 被攻击,黑客获得超过350 万个以太币,后来导致以太坊分叉为ETH 和ETC。
对此提出的措施有两个方面:
一是对智能合约进行安全审计,
二是遵循智能合约安全开发原则。
智能合约的安全开发原则有:对可能的错误有所准备,确保代码能够正确的处理出现的bug 和漏洞;谨慎发布智能合约,做好功能测试与安全测试,充分考虑边界;保持智能合约的简洁;关注区块链威胁情报,并及时检查更新;清楚区块链的特性,如谨慎调用外部合约等。
数字钱包的安全性
数字钱包主要存在三方面的安全隐患:第一,设计缺陷。2014 年底,某签报因一个严重的随机数问题(R 值重复)造成用户丢失数百枚数字资产。第二,数字钱包中包含恶意代码。第三,电脑、手机丢失或损坏导致的丢失资产。
应对措施主要有四个方面:
一是确保私钥的随机性;
二是在软件安装前进行散列值校验,确保数字钱包软件没有被篡改过;
三是使用冷钱包;
四是对私钥进行备份。
Ⅱ 为什么UUID是无序的,不是包含时间戳生成的
UUID(Universally Unique Identifier)全局唯一标识符,是指在一台机器上生成的数字,它保证对在
同一时空中的所有机器都是唯一的。按照开放软件基金会(OSF)制定的标准计算,用到了以太网卡地址
、纳秒级时间、芯片ID码和许多可能的数字。由以下几部分的组合:当前日期和时间(UUID的第一个部
分与时间有关,如果你在生成一个UUID之后,过几秒又生成一个UUID,则第一个部分不同,其余相同)
,时钟序列,全局唯一的IEEE机器识别号(如果有网卡,从网卡获得,没有网卡以其他方式获得),
UUID的唯一缺陷在于生成的结果串会比较长。
Ⅲ 区块链是什么意思
区块链是一个信息技术领域的术语。
从本质上讲,它是一个共享数据库,存储于其中的数据或信息,具有“不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征。基于这些特征,区块链技术奠定了坚实的“信任”基础,创造了可靠的“合作”机制,具有广阔的运用前景。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
区块链的起源
区块链起源于比特币,2008年11月1日,一位自称中本聪(Satoshi Nakamoto)的人发表了《比特币:一种点对点的电子现金系统》一文,阐述了基于P2P网络技术、加密技术、时间戳技术、区块链技术等的电子现金系统的构架理念,这标志着比特币的诞生。
两个月后理论步入实践,2009年1月3日第一个序号为0的创世区块诞生。几天后2009年1月9日出现序号为1的区块,并与序号为0的创世区块相连接形成了链,标志着区块链的诞生。
Ⅳ 币圈内的一些专业术语是什么
1、Blockchain——区块链
区块链是分布式数据存储、点对点传输、共识机制、加密货币算法等计算机技术的新型应用模式。是一个共享的分布式账本,其中交易通过附加块永久记录。
2、Block——区块
在比特币网络中,数据会以文件的形式被永久记录,我们称这些文件为区块。一个区块是一些或所有最新比特币交易的记录集,且未被其他先前的区块记录。
3、Node——节点
由区块链网络的参与者操作的分类帐的副本。
4、去中心化
去中心化是一种现象或结构,必须在拥有众多节点的系统中或在拥有众多个体的群中才能出现或存在。节点与节点之间的影响,会通过网络而形成非线性因果关系。
5、共识机制
共识机制是通过特殊节点的投票,在很短的时间内完成对交易的验证和确认;对一笔交易,如果利益不相干的若干个节点能够达成共识,我们就可以认为全网对此也能够达成共识。
6、Pow——工作量证明
Proofof Work,是指获得多少货币,取决于你挖矿贡献的工作量,电脑性能越好,分给你的矿就会越多。
7、PoS——权益证明
Proofof Stake,根据你持有货币的量和时间进行利息分配的制度,在POS模式下,你的“挖矿”收益正比于你的币龄,而与电脑的计算性能无关。
8、智能合约
智能合约是一种旨在以信息化方式传播、验证或执行合约的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。
9、时间戳
时间戳是指字符串或编码信息用于辨识记录下来的时间日期。国际标准为ISO 8601。
10、图灵完备
图灵完成是指机器执行任何其他可编程计算机能够执行计算的能力。
11、Dapp——去中心化应用
是一种开源的应用程序,自动运行,将其数据存储在区块链上,以加密货币令牌的形式激励,并以显示有价值证明的协议进行操作。
12、DAO——去中心化自治组织
可以认为是在没有任何人为干预的情况下运行的公司,并将一切形式的控制交给一套不可破坏的业务规则。
13、PrivateKey——私钥
私钥是一串数据,它是允许你访问特定钱包中的令牌。它们作为加密货币,除了地址的所有者之外,都被隐藏。
14、PublicKey——公钥
是和私钥成对出现的,公钥可以算出币的地址,因此可以作为拥有这个币地址的凭证。
15、矿机
尝试创建区块并将其添加到区块链上的计算设备或者软件。在一个区块链网络中,当一个新的有效区块被创建时,系统一般会自动给予区块创建者(矿机)一定数量的代币,作为奖励。
16、矿池
是一个全自动的挖矿平台,使得矿机们能够贡献各自的算力一起挖矿以创建区块,获得区块奖励,并根据算力贡献比例分配利润(即矿机接入矿池—提供算力—获得收益)。
17、公有链
完全开放的区块链,是指任何人都可读取的、任何人都能发送交易且交易能获得有效确认的、全世界的人都可以参与系统维护工作,任何人都可以通过交易或挖矿读取和写入数据。
18、私有链
写入权限仅面向某个组织或者特定少数对象的区块链。读取权限可以对外开放,或者进行任意程度地限制。
19、联盟链
共识机制由指定若干机构共同控制的区块链。
20、侧链
楔入式侧链技术(pegged sidechains),它将实现比特币和其他数字资产在多个区块链间的转移,这就意味着用户们在使用他们已有资产的情况下,就可以访问新的加密货币系统。
21、跨链技术
跨链技术可以理解为连接各区块链的桥梁,其主要应用是实现各区块链之间的Atom交易、资产转换、区块链内部信息互通,或解决Oracle的问题等。
22、硬分叉
区块链发生永久性分歧,在新共识规则发布后,部分没有升级的节点无法验证已经升级的节点生产的区块,通常硬分叉就会发生。
23、软分叉
当新共识规则发布后,没有升级的节点会因为不知道新共识规则下,而生产不合法的区块,就会产生临时性分叉。
24、Hash——哈希值
一般翻译做”散列”,也有直接音译为”哈希”的。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。
25、主链
主链一词源于主网(,相对于测试网),即正式上线的、独立的区块链网络。
对币圈“行话”还不了解的小伙伴,赶快来学习一下:
1、法币是什么?
法币是法定货币,是由国家和政府发行的,只有政府信用来做担保,如人民币、美元等等。
2、token是什么?
token,通常翻译成通证。Token是区块链中的重要概念之一,它更广为人知的名字是“代币”,但在专业的“链圈”人看来,它更准确的翻译是“通证”,代表的是区块链上的一种权益证明,而非货币。
Token的三个要素
一是数字权益证明,通证必须是以数字形式存在的权益凭证,代表一种权利、一种固有和内在的价值;
二是加密货币,通证的真实性、防篡改性、保护隐私等能力由加密货币学予以保障;
三是能够在一个网络中流动,从而随时随地可以验证。
3、建仓是什么?
币圈建仓也叫开仓,是指交易者新买入或新卖出一定数量的数字货币。
4、梭哈是什么?
币圈梭哈就是指把本金全部投入。
5、空投是什么?
空投是目前一种十分流行的加密货币营销方式。为了让潜在投资者和热衷加密货币的人获得代币相关信息,代币团队会经常性地进行空投。
6、锁仓是什么?
锁仓一般是指投资者在买卖合约后,当市场出现与自己操作相反的走势时,开立与原先持仓相反的新仓,又称对锁、锁单,甚至美其名曰蝴蝶双飞。
7、糖果是什么?
币圈糖果即各种数字货币刚发行处在ICO时免费发放给用户的数字币,是虚拟币项目发行方对项目本身的一种造势和宣传。
8、破发是什么?
破指的是跌破,发指的是数字货币的发行价格。币圈破发是指某种数字货币跌破了发行的价格。
9、私募是什么?
币圈私募是一种投资加密货币项目的方式,也是加密货币项目创始人为平台运作募集资金的最好方式。
10、K线图怎么看?
K线图(Candlestick Charts)又称蜡烛图、日本线、阴阳线、棒线、红黑线等,常用说法是“K线”。它是以每个分析周期的开盘价、最高价、最低价和收盘价绘制而成。
11、对冲是什么?
一般对冲是同时进行两笔行情相关、方向相反、数量相当、盈亏相抵的交易。在期货合约市场,买入相同数量方向不同的头寸,当方向确定后,平仓掉反方向头寸,保留正方向获取盈利。
12、头寸是什么?
头寸是一种市场约定,承诺买卖合约的最初部位,买进合约者是多头,处于盼涨部位;卖出合约为空头,处于盼跌部位。
13、利好是什么?
利好:指币种获得主流媒体关注,或者某项技术应用有突破性进展,有利于刺激价格上涨的消息,都称为利好。
14、利空是什么?
利空:促使币价下跌的消息,如比特币技术问题,央行打压等。
15、反弹是什么?
币价在下跌趋势中因下跌过快而回升的价格调整现象。回升幅度小于下跌幅度。
16、杠杆是什么?
杠杆交易,顾名思义,就是利用小额的资金来进行数倍于原始金额的投资,以期望获取相对投资标的物波动的数倍收益率,抑或亏损。
Ⅳ 以太坊是如何挖矿的
以太坊的代币是通过采矿过程中产生的,每块采矿率为 5 个以太币。以太坊的采矿过程几乎与比特币相同,对于每一笔交易,矿工都可以使用计算机通过散列函数运行该块的唯一标题元数据,反复,快速地猜出答案,直到其中一人获胜。
许多新用户认为,采矿的唯一目的是以不需要中央发行人的方式生成醚(参见我们的指南“ 什么是以太? ”)。这是真的。以太坊的代币是通过采矿过程中产生的,每块采矿率为 5 个以太币。但是,采矿还有至少同样重要的作用。通常,银行负责保持交易的准确记录。他们确保资金不是凭空创造的,用户不会多次欺骗和花钱。不过,区块链引入了一种全新的记录保存方式,整个网络而不是中介,验证交易并将其添加到公共分类账。
Ethereum Mining
尽管“无信任”或“信任最小化”货币体系是目标,但仍有人需要确保财务记录的安全,确保没有人作弊。采矿是使分散记录成为可能的创新之一。矿工们在防止欺诈行为(特别是醚的双重支出)方面达成了关于交易历史的共识 – 这是一个有趣的问题,在分散化的货币未在工作区块链之前解决。虽然以太坊正在研究其他方法来就交易的有效性达成共识,但采矿目前将平台保持在一起。
挖矿如何工作
今天,以太坊的采矿过程几乎与比特币相同。对于每一笔交易,矿工都可以使用计算机反复,快速地猜出答案,直到其中一人获胜。更具体地说,矿工将通过散列函数(它将返回一个固定长度,乱序的数字和字母串,它看起来是随机的)运行该块的唯一标题元数据(包括时间戳和软件版本),只改变’nonce 值’ ,这会影响结果散列值。
如果矿工发现与当前目标相匹配的散列,矿工将被授予乙醚并在整个网络上广播该块,以便每个节点验证并添加到他们自己的分类账副本中。如果矿工 B 找到散列,矿工 A 将停止对当前块的工作,并为下一个块重复该过程。矿工很难在这场比赛中作弊。没有办法伪造这项工作,并拿出正确的谜题答案。这就是为什么解谜方法被称为“工作证明”。
另一方面,其他人几乎没有时间验证散列值是否正确,这正是每个节点所做的。大约每 12-15 秒,一名矿工发现一块石块。如果矿工开始比这更快或更慢地解决谜题,算法会自动重新调整问题的难度,以便矿工回弹到大约 12 秒钟的解决时间。
矿工们随机赚取这些乙醚,他们的盈利能力取决于运气和他们投入的计算能力。以太坊使用的具体工作量验证算法被称为’ethash’,旨在需要更多的内存,使得使用昂贵的 ASIC 难以开采 – 特殊的采矿芯片,现在是唯一可以盈利的比特币开采方式。
从某种意义上讲,ethash 可能已经成功实现了这一目的,因为专用 ASIC 不可用于以太坊(至少目前还没有)。此外,由于以太坊旨在从工作证明挖掘转变为“股权证明”(我们将在下面讨论),购买 ASIC 可能不是一个明智的选择,因为它可能无法长久证明有用。
转移到股权证明
不过,以太坊可能永远不需要矿工。开发人员计划放弃工作证明,即网络当前使用的算法来确定哪些交易是有效的,并保护其免受篡改,以支持股权证明,网络由代币所有者担保。如果并且当该算法推出时,股权证明可以成为实现分布式共识的一种手段,而该共识使用更少的资源。
Ⅵ 以太坊架构是怎么样的
以太坊最上层的是DApp。它通过Web3.js和智能合约层进行交换。所有的智能合约都运行在EVM(以太坊虚拟机)上,并会用到RPC的调用。在EVM和RPC下面是以太坊的四大核心内容,包括:blockChain, 共识算法,挖矿以及网络层。除了DApp外,其他的所有部分都在以太坊的客户端里,目前最流行的以太坊客户端就是Geth(Go-Ethereum)
Ⅶ 数字货币还在做吗
比特币的发行是根据区块高度来规定的,也就是距离创世第0号区块,现在挖到了第几号,比特币的总量上限就应该是多少。过了这个村就没这个店,如果矿工挖到一个区块,却没有领取这个区块的奖励,那这些比特币就等于被永久销毁了。
coinbase交易就是“凭空”生成比特币的特殊交易,只有矿工可以写这种交易,生成比特币的数量受到规则限制(每21万个区块减半一次的新币+本区块的交易手续费)。
但是,规则并没有规定矿工必须顶格把所有能拿走的奖励全部拿走,可以选择不拿。
所以,以前就发生过一个对接了RSK侧链的矿池搞出bug,忘记领走奖励的情况,白白占了一个区块的坑,等同于销毁了对应数额的比特币,让比特币总量永久性地减小了一点点。
另外,要花掉一笔比特币,只需要指定交易ID和输出序号。
如果矿工在多个区块重复写入了一模一样的多笔coinbase交易,交易ID当然也是重复的,比特币软件处理这种情况时,只以第一次为准。
所以这种情况也是白白占了一个区块的坑,永久销毁了对应数额的比特币。
我印象里这好像还是个安全漏洞,所以后来的新版比特币软件把这种写入重复coinbase交易的行为也禁止了。但是一直到现在也没有禁止矿工不领取自己应得的奖励。
一般来说,币是私钥控制的,把币转到任何人都不知道私钥的地址上,就等于被销毁了。
如果主人的安全工作做得很好,私钥没有泄露、也不可被猜解,但是他自己不慎弄丢了私钥,那就等于把他拥有的所有币销毁了。
只有一些特殊的情况需要有意销毁币。
一是不可逆地兑换成另一种币,比如依附于比特币的合约币XCP,还有依附于BCH的虫洞现金WHC,就是这种情况。
二是为了存证、在链上保存数据,比如时间戳:panbiao.com/2013/08/
以及当初以太坊创始团队的众筹:zhuanlan.hu.com/p/29
私钥本质上就是一个很大的数字,谁知道这个数字,谁就可以控制对应地址上的币。所以私钥一定要用靠谱的随机数生成,否则就可能被猜解、盗币。
对比特币来说,地址是公钥的哈希,没办法判断一个地址到底有没有对应的公钥和私钥(即使知道公钥也无法知道对应的私钥),所以即使明摆着是“烧毁”币的地址,系统也不禁止转入。
严格来说,锁住币的是一小段程序(脚本),这段程序就是把输入当做公钥和数字签名,先检查公钥哈希是否一致,再检查数字签名是否有效,有效就验证通过,允许转账;否则就判断交易非法、拒绝打包进链。
解释、执行这段程序的就是全节点软件。可以说是全节点的软件代码具体定义了一个币。
不过现在的状况很尴尬,绝大多数矿工都不跑全节点,只有少数几个矿池在跑。绝大多数用户也不跑全节点,即使是跑了全节点,也只能执行验证,没有算力、不能出块。