coincheCK怎么发送eth出去呢
㈠ ETH开发实践——批量发送交易
在使用同一个地址连续发送交易时,每笔交易往往不可能立即到账, 当前交易还未到账的情况下,下一笔交易无论是通过 eth.getTransactionCount() 获取nonce值来设置,还是由节点自动从区块中查询,都会获得和前一笔交易同样的nonce值,这时节点就会报错 Error: replacement transaction underpriced
在构建一笔新的交易时,在交易数据结构中会产生一个nonce值, nonce是当前区块链下,发送者(from地址)发出的交易(成功记录进区块的)总数, 再加上1。例如新构建一笔从A发往B的交易,A地址之前的交易次数为10,那么这笔交易中的nonce则会设置成11, 节点验证通过后则会放入交易池(txPool),并向其他节点广播,该笔交易等待矿工将其打包进新的区块。
那么,如果在先构建并发送了一笔从地址A发出的,nonce为11的交易,在该交易未打包进区块之前, 再次构建一笔从A发出的交易,并将它发送到节点,不管是先通过web3的eth.getTransactionCount(A)获取到的过往的交易数量,还是由节点自行填写nonce, 后面的这笔交易的nonce同样是11, 此时就出现了问题:
实际场景中,会有批量从一个地址发送交易的需求,首先这些操作可能也应该是并行的,我们不会等待一笔交易成功写入区块后再发起第二笔交易,那么此时有什么好的解决办法呢?先来看看geth节点中交易池对交易的处理流程
如之前所说,构建一笔交易时如果不手动设置nonce值,geth节点会默认计算发起地址此前最大nonce数(写入区块的才算数),然后将其加上1, 然后将这笔交易放入节点交易池中的pending队列,等到节点将其打包进区块。
构建交易时,nonce值是可以手动设置的,如果当前的nonce本应该设置成11, 但是我手动设置成了13, 在节点收到这笔交易时, 发现pending队列中并没有改地址下nonce为11及12的交易, 就会将这笔nonce为13的交易放入交易池的queued队列中。只有当前面的nonce补齐(nonce为11及12的交易被发现并放入pending队列)之后,才会将它放入pending队列中等待打包。
我们把pending队列中的交易视为可执行的,因为它们可能被矿工打包进最新的区块。 而queue队列因为前面的nonce存在缺失,暂时无法被矿工打包,称为不可执行交易。
那么实际开发中,批量从一个地址发送交易时,应该怎么办呢?
方案一:那么在批量从一个地址发送交易时, 可以持久化一个本地的nonce,构建交易时用本地的nonce去累加,逐一填充到后面的交易。(要注意本地的nonce可能会出现偏差,可能需要定期从区块中重新获取nonce,更新至本地)。这个方法也有一定的局限性,适合内部地址(即只有这个服务会使用该地址发送交易)。
说到这里还有个坑,许多人认为通过 eth.getTransactionCount(address, "pending") ,第二个参数为 pending , 就能获得包含本地交易池pending队列的nonce值,但是实际情况并不是这样, 这里的 pending 只包含待放入打包区块的交易, 假设已写入交易区块的数量为20, 又发送了nonce为21,22,23的交易, 通过上面方法取得nonce可能是21(前面的21,22,23均未放入待打包区块), 也可能是22(前面的21放入待打包区块了,但是22,23还未放入)。
方案二是每次构建交易时,从geth节点的pending队列取到最后一笔可执行交易的nonce, 在此基础上加1,再发送给节点。可以通过 txpool.content 或 txpool.inspect 来获得交易池列表,里面可以看到pending及queue的交易列表。
启动节点时,是可以设置交易池中的每个地址的pending队列的容量上限,queue队列的上容量上限, 以及整个交易池的pending队列和queue队列的容量上限。所以高并发的批量交易中,需要增加节点的交易池容量。
当然,除了扩大交易池,控制发送频率,更要设置合理的交易手续费,eth上交易写入区块的速度取决于手续费及eth网络的拥堵状况,发送每笔交易时,设置合理的矿工费用,避免大量的交易积压在交易池。
㈡ 在RHEL5.5下,如何做到从一个网卡读取数据,从另外一个网卡发送出去
你可以这样试试:
1.开启Linux的路由功能
2.在Linux中设置一条默认路由,出口选择eth1
㈢ ip route add xxx.xxx.xxx.xxx via yyy.yyy.yyy.yyy dev eth0
ip route add 10.89.255.0/24 via 10.89.255.254 dev eth0
所有目的地址是10.89.255.0/24的数据包,其下一跳地址(gateway)为10.89.255.254,并且从本机eth0 接口发送出去。
㈣ SAFEIS安全报告:加密史上十大被盗事件梳理及应对策略
2008年全球金融危机因为中心化世界的种种弊端而爆发并进而席卷全球,为了消除这些弊端,中本聪创立了比特币网络,区块链也因此诞生。
为了提高整个网络以及交易的安全性,区块链采用分布式节点和密码学,且所有链上的记录是公开透明、不可篡改的。最近几年,区块链获得长远发展,形成了庞大的加密生态。
然而,区块链自问世以来,加密货币骗局频发并有愈演愈烈之势,加密货币也无法为用户的资金提供足够的安全性。此外,加密货币可以匿名转移,从而导致加密行业的重大攻击盗窃事件频发。
下文将梳理剖析加密史上十大加密货币盗窃事件,以及防范加密资产被盗的六大实用策略。
1.Mt. Gox 被盗事件
Mt. Gox 被盗事件仍然是 历史 上最大的加密货币盗窃案,在 2011 年至 2014 年期间,有超过 85 万比特币被盗。
Mt. Gox 声称导致损失的主要原因是源于比特币网络中的一个潜在漏洞——交易延展性,交易延展性是通过改变用于产生交易的数字签名来改变交易的唯一标识符的过程。
2011 年 9 月,MtGox 的账户私钥就已泄露,然而该公司并没有使用任何审计技术来发现漏洞并预防安全事件的发生。此外,由于 MtGox 定期重复使用已泄露私钥的比特币地址,导致被盗资金损失不断扩大,到 2013 年中,该交易所已被黑客盗取63万枚比特币。
许多交易所会同时使用冷钱包和热钱包来进行资产的存储和转移,一旦交易所的服务器被黑,黑客便可以盗取热钱包里面的加密资产。
2.Linode被盗事件
加密网络资产托管公司Linode主要业务就是托管比特币交易所和巨鲸的加密资产,不幸的是,这些被托管的加密资产储存在热钱包中,更为不幸的是,Linode 于 2011 年 6 月遭到黑客攻击。
这导致超过5万枚比特币被盗,Linode的客户损失惨重,其中,Bitcoinia、Bitcoin.cx以及Gavin Andresen分别损失43000枚、3000枚和5000枚比特币。
3.BitFloor被盗事件
2012 年 5 月,黑客攻击 BitFloor 并盗窃了24000枚比特币,这一切源于钱包密钥备份未加密,才使攻击者轻而易举获得了钱包密钥,并进而盗取了巨额加密资产。
被盗事件发生后,BitFloor 的创建者 Roman Shtylman 决定关闭交易所。
4.Bitfinex被盗事件
使用多重签名账户并不能完全杜绝安全事件的发生,Bitfinex接近12万枚巨额比特币资产被盗事件就证明了这一点。
2022年6月份,2000万枚OP代币就是以为不恰当使用多重签名账户而被盗。
5.Coincheck被盗事件
总部位于日本的 Coincheck 在 2018 年 1 月被盗价值 5.3 亿美元的 NEM ( XEM ) 代币。
Coincheck事后透露,由于当时的人员疏忽,黑客能够轻易访问他们的系统,且由于资金保存在热钱包中并且安全措施不足,黑客能够成功盗取巨额加密资产。
6.KuCoin被盗事件
KuCoin 于 2020 年 9 月宣布,黑客盗取了大量的以太坊 ( ETH)、BTC、莱特币 ( LTC )、Ripple ( XRP )、Stellar Lumens ( XLM )、Tron ( TRX ) 和 USDT等加密资产。
朝鲜黑客组织 Lazarus Group 被指控为KuCoin被盗事件的始作俑者,这次被盗事件造成了2.75 亿美元的资金损失。幸运的是,该交易所收回了约2.7亿美元的被盗资产。
7.Poly Network被盗事件
Poly Network被盗事件是有史以来最严重的加密货币盗窃案之一,2021 年 8 月,一位被称为“白帽先生”的黑客利用了 DeFi 平台 Poly Network 网络中的一个漏洞,成功窃取了Poly Network上价值约 6 亿美元的加密资产。
Poly Network被盗事件蹊跷的是,自被盗事件发生后,“白帽先生”不仅与Poly Network官方保持公开对话,而且还于一周后归还了所有被盗的加密资产。“白帽先生”因此获得50万美元的奖金,并获得了成为 Poly Network 高级安全官的工作机会。
8.Cream Finance被盗事件
2021 年 10 月,Cream Finance发生安全事件,被黑客盗取价值1.3 亿美元的加密资产。这是 Cream Finance 今年发生的第三起加密货币盗取事件,黑客在 2021 年 2 月盗取了 3700 万美元的加密资产,在 2021年 8 月盗取了 1900 万美元的加密资产。
本次被盗事件是通过闪电贷攻击的方式完成的,攻击者使用 MakerDAO 的 DAI 生成大量 yUSD 代币,同时还利用 yUSD 价格预言机来完成闪电贷攻击。
9.BadgerDAO被盗事件
2021 年 12 月,一名黑客成功从DeFi 项目 BadgerDAO 上的多个加密货币钱包中窃取资产。
该事件与通过Cloudflare将恶意脚本注入网站用户界面时的网络钓鱼有关。 黑客利用应用程序编程接口 (API) 密钥窃取了 1.3 亿美元的资金。API 密钥是在 Badger 工程师不知情或未经许可的情况下创建的,用于定期将恶意代码注入其一小部分客户端。
然而,由于黑客未能及时从Badger提取资金,因此大约 900 万美元加密资产得以追回。
10.Bitmart被盗事件
2021 年 12 月,Bitmart 的热钱包遭到黑客攻击,约 2 亿美元加密资产被盗。研究发现,约1 亿美元的加密资产是通过以太坊网络盗取转移的,另外接近1亿美元是通过币安智能链网络盗取转移的。
此次被盗事件涉及20多种代币,包括比特币等主流币,和相当数量的山寨币等。
保护加密资产的最佳方法是重视钱包的加密保护和安全的私钥存放方式,以及对市场上的项目进行深入的研究和辨识,避免踏入攻击者的陷阱。
由于区块链的不可篡改和不可逆性,一旦钱包私钥泄露,加密资产被盗便不可避免并无法追回。
防范加密资产被盗的六大实用策略:
1.使用冷钱包
与热钱包不同,冷钱包不连接互联网,因此不会受到网络攻击。私钥存储在冷钱包中可有有效保护加密资产。
2.使用安全网络
在交易或进行加密交易时,仅使用安全的网络,避免使用公共 Wi-Fi 网络。
3. 资金分散到多个钱包中
鸡蛋不要放到同一个篮子中,这句话在金融领域和加密领域都十分受用。
将加密资产分发到不同的多个钱包中,这样可以在遭受攻击时,将损失降到最低。
4. 提高个人设备安全性
确保个人设备安装了最新的安全软件,以防御新发现的漏洞和网络攻击,并且开启防火墙来提高设备的安全性,以避免黑客通过设备系统安全漏洞来进行攻击。
5.设置强密码并定期更改
在谈论安全性时,我们不能低估强密码的重要性。很多人在多个设备、应用程序社交媒体帐户和加密钱包上使用相同的密码,这大幅增加了加密资产被盗的几率。
防止被盗需要钱包账户建立一个安全等级较高的强密码,这个强密码需要具有独特性,并养成定期更改的习惯。此外,选择双重身份验证 (2FA) 或多重身份验证 (MFA) 可以提高安全性。
6. 谨防钓鱼攻击
通过恶意广告和电子邮件进行的网络钓鱼诈骗在加密货币世界中十分猖獗。在进行加密交易时要格外小心,避免点击任何可疑和未知链接。
应当始终检查核实有关加密投资的相关信息和网站的URL,尤其是这些信息极具诱惑力且不合常理时,比如,项目方官方通过Didcord等渠道私聊信息,当然,项目方Didcord被攻击的安全事件的频繁发生,这时的恶意链接可能是在公共频道中而不是私聊界面,这种情况下,多渠道检查核实有关加密投资相关信息的真实性就显得格外重要了!
SAFEIS是国际知名的创新型区块链生态安全服务平台,基于 数据、 智能、网络安全、图计算等多种核心技术打造,具有完备的数据处理和精准追溯能 ,服务对象涵盖全球诸多知名公司和项目。
“让区块链更安全”是一个光荣使命,我们将践行光荣使命、续航崭新征程。
㈤ luno发送ETH对方还没确认可以取消吗
luno发送ETH,对方还没确认是可以取消的。如果交易提交了但还没被确认则可以取消。以太坊是一个基于区块链的开源软件平台,拥有数以千计的去中心化应用程序 (DApp),为其原生加密货币以太 (ETH) 提供支持,可以在全球范围内发送和接收,而不受任何第三方干扰。
取消的操作:
取消待处理的以太坊交易有两种主要方法:应用程序内取消和设置自定义随机数。通常,当用户以较低的 gas 价格提交时,以太坊交易会挂起数小时或卡住。 因此,用户经常发现有必要更改以太坊交易。
在解决这个问题时,用户需要记住只有当交易仍在网络上未决时才能尝试取消。 他们需要采取的第一步是在区块浏览器中验证交易是否仍在等待中。 主要是粘贴交易哈希,也称为以太坊交易 ID,如果区块浏览器显示“待处理”,用户仍然可以尝试取消它。
取消卡住的以太坊交易的最简单方法是应用程序内取消,这需要用户退出以太坊钱包应用程序并关闭浏览器,重新打开并重新登录应用程序。