分类
Uncategorized

比特币真的稀缺吗?

比特币真的稀缺吗?

我是加密/区块链的新手,但我对这些可能性非常兴奋。考虑到人们对这一话题的热情,我想非常明确地说,我并没有试图起诉比特币或加密货币。我在试着理解整件事是怎么运作的。
我的理解是,比特币的数量是有限制的:2100万比特币。因此,比特币作为价值存储的优点之一是,不能像美联储“印刷”美元那样“印刷”更多的比特币。
我还了解到,人们可以将比特币兑换成发行量有限的其他加密货币,如Litecoin。而且,据推测,没有什么能阻止另一种加密货币以类似的规则被创建……等等。
那么,比特币——作为一种价值存储——真的有限吗?如果像比特币这样的所有货币都是可互换的,那么它们之间的有效区别是什么?在10年内,为什么我需要比特币(Bitcoin)、Litecoin(Litecoin)和任何其他类似构造的资产中存储价值?从理论上讲,难道所有的资本不应该均匀地流入所有这些货币吗?同样,假设它们可以互换。
可扩展性
分享
改进这个问题
跟随
14小时前问的
德斯坦
10111青铜徽章
新贡献者
最后3点在回答比特币和Altcoins时提到:bitcoin.stackexchange.com/a/105589–13小时前的Prayank
添加评论
1个答案
0
是的,比特币被刻意限制,因为比特币的比特币数量永远不会超过2100万比特币。
不,其他货币形式的存在并不影响这种特殊货币形式的特征。这是一个固有的特征。
是的,新的货币形式的潜力意味着,一般来说,就印在钞票正面的数字总和而言,货币是无限的,但这个数字并不是特别有意义。所有可用货币形式的实际集体价值都是由外部因素决定的。
所有这些都没有影响到地球上不可能有超过2100万个BTC。从这个意义上说,比特币确实很稀缺。这是真的,无论它需要10000 BTC买一个比萨饼或纳纳索希买一辆法拉利。
在这个问题上进行哲学上的争论是毫无意义的。这种稀缺形式的唯一显著影响是对比特币价值的通货紧缩影响。或者至少是缺乏大规模或长期的通胀影响。还有一些东西对比特币有通货膨胀或通货紧缩的影响。也就是说,影响其价值的外部因素。
分享
改进这个答案
跟随
两小时前编辑的
2小时前回答的
红砂砖
11k22金徽章1717银徽章3636铜徽章
添加评论Web

分类
Uncategorized

为什么在比特币的代码“unconfTxs”中使用“blockIndex”`

我正在阅读rpc的estimateSmartFee方法的代码,我不明白为什么在TXS中使用blockIndex?
estimateSmartFee loop unconf TXS以获取费率(代码:https://github.com/bitcoin/bitcoin/blob/0.18/src/policy/fees.cpp#L291)
但是值unconfTxs[blockIndex][bucketinex]将在TxConfirmStats::ClearCurrent中重置,或者在TxConfirmStats::removeTx中减少。为什么不这样定义呢?
源文件费用.cpp
unsigned int TxConfirmStats::NewTx(unsigned int nBlockHeight,double val)
{
无符号int bucketindex=bucketMap.下界(val)->秒;
unsigned int blockIndex=nBlockHeight%未确认TXS.size();
unconfTxs[块索引][块索引]++;
返回bucketindex;
}
无约束TXS
//未完成交易的内存池计数
//对于每个bucket X,跟踪mempool中的事务数
//对于每个可能的确认值Y都是未确认的
std::vector<std::vector<int>>unconfTxs;//unconfTxs[Y][X]
比特币
分享
改进这个问题
跟随
11月28日19点20分被问到
托克斯特托克斯特
3533青铜徽章
添加评论
1个答案
0
整个向量就是跟踪自从一个事务进入mempool以来经过了多少个块,以及它的速率是多少。因此,它允许估计器在feerate为X的情况下查看mempool中有多少个事务在Y块中。这允许估计器查看可能需要什么feerate才能在Y块中确认事务。
如果你只知道每种费率下的交易数量,那只会告诉你未确认交易的费率分布。这对于估计在一个事务包含在一个块中之前要经过多少块是没有帮助的。
分享
改进这个答案
跟随

Web

分类
Uncategorized

区块链大小差异

截至2021年3月,约有700000个区块[1]。为什么区块链的大小只有~350GB[2],而不是700GB,因为区块大小是1MB?
谢谢你的帮助。
块链
块大小
分享
改进这个问题
跟随
两小时前问的
雅各布斯坦奇
10322青铜徽章
新贡献者
添加评论
1个答案
1
1 MB是最大大小,而不是每个块的大小。在早期,交易很少,大多数街区几乎都是空的。
分享
改进这个答案
跟随
1小时前回答
利凡克利夫
44511银质徽章1313铜质徽章
添加评论

Web

分类
Uncategorized

自动化Bip39种子回收

我最近忘记了密码,所以被锁在了账本外面。当我试图从我的恢复短语重置时,我意识到我只有24个必要的单词中的23个(不知道它是怎么发生的)。我不确定这个词在哪个位置,但我确信其他23个词的顺序是正确的。也就是说,我必须在其他任何位置上尝试所有的可能性。
我发现这篇文章给了我一个单词列表来填充缺失的单词:丢了比特币钱包,12个助记符种子短语单词中只有11个。我怎样才能得到我的比特币?
我正在寻找一段代码,可以让我搅拌的解决方案,而不用手动尝试钱包一个接一个。
钱包回收
记忆种子
分享
改进这个问题
跟随
10月9日18:52编辑
墨奇♦
52.8K33232金徽章145145银徽章459459铜徽章
10月9日16:59被问到
内特·格雷
3133青铜徽章
你需要一个程序来生成所有可能的组合吗?一个例子是一个程序,里面保存了所有可能的文件组合。或者你正在寻找一个程序来测试所有可能的组合直接在处置?– vincenzopalazzo 10月9日19:49
我现在列出了所有的可能性,通过代码上的链接,原来的职位。我只想有一个自动化的方法来测试大约200个条目的列表(我相信由于校验和规则,列表太小了)。我下载了electrum钱包,并已手动测试了一些,但过程是相当乏味的– 内特·格雷10月9日20:11
添加评论
3个答案
0
你知道钥匙链上的一个地址吗?Ledger使用BIP44派生,因此您可以编写一个循环来检查不同的种子短语,并将结果地址与您知道的应该在keychain中的地址进行比较。这样你就可以在不需要在线的情况下输入恢复词。
例如,如果是我,我可能会用bitcoinjs库写一些东西。下面是用bitcoinjs编写的一个开始(注意,我使用的是3.3.2版)。这将获取一个恢复种子和一个地址,它将搜索密钥链并告诉您地址是否存在于其中。
//var words=“段增加英寸确保玉米雪茄建议获取产量证明”;
//var addr=“1C4XZQX7UH8CNXZAN5CRUJKBXGB1GUWP”;
var searchbtn=document.getElementById(“搜索BTN”);
searchbtn.onclick =函数(){
变量字=document.getElementById(“文字”)。价值;
变量地址=document.getElementById(“地址”)价值;
变量深度=document.getElementById(“深度”)。值;
墨水链(addr,words,depth);
}
函数inkeychain(addr,keychain,depth){
var isfound=假;
对于(var i=0;i<深度;i++){
变量种子=hd.bip39.mnemonicToSeed(钥匙链);
var根=b。bitcoin.HDNode.fromSeedBuffer(种子)
//常量根=bitcoin.HDNode.fromSeedHex(seed.toString(’hex’))
var钱包=root.derivePath(“m/44’/0’/0’/0/”+i);
//遗产
变量地址=wallet.getAddress();
变量wif=wallet.keyPair.toWIF();
//赛格威特p2sh
变量pubKey=wallet.keyPair.getPublicKeyBuffer();
var pubKeyHash=b。bitcoin.crypto.hash160(公开密钥);
var脚本=b。bitcoin.script.witnessPubKeyHash.output.encode(pubKeyHash);
var scripthash=b。bitcoin.crypto.hash160(手稿);
var scriptPubKey2=b。bitcoin.script.scriptHash.output.encode(散列);
变量p2shsegwit=b。bitcoin.address.fromOutputScript(脚本PubKey2);
if(地址===addr){
isfound=真;
console.log(地址,wif);
$(’#result’).html(’在keychain中的’+i+’位置找到了’+addr+’);
警报(’找到!’);
}else if(p2shsegwit===地址){
//检查是否存在segwit p2sh
isfound=真;
console.log(德国威斯康辛州);
$(’#result’).html(’在keychain中的’+i+’位置找到了’+addr+’);
警报(’找到!’);
}
}
if(isfound===false){
$(’#result’).html(’无匹配项’);
}
}
https://bitcoinfunction.com/?id=5d9ea508d9bed
从这里开始,您可以更进一步,让单词变量成为一个包含所有不同组合的数组,然后循环它们。
分享
改进这个答案
跟随
编辑时间:10月10日3:27

我只知道24个单词中的23个,实际上我刚刚发现了我将比特币从另一个钱包转移到分类账的交易记录。在这种情况下,你的方法行得通吗?另外,如果我在electrum中手动测试一组单词,并选择m/84’/0’/0’,而不是m/44’/0’/0’,它是否会显示钱包中是否有硬币?我对电脑略知一二,但有些问题我想不通,所以很抱歉问了一些看似愚蠢的问题。– 内特·格雷10月10日19:53
添加评论
0
从您链接到的相关问题扩展这个答案(使用python),我们可以开始缩小可能性列表。
从已知单词的有序列表开始:
有序\u已知\u单词=[
“荣耀”,
“两次”,
“电影”,
“近”,
“高级”,
“信任”,
“雷声”,
“背书”,
“建议”,
‘方案’,
“习惯”,
‘限制’,
“慢”,
“院子”,
“堵塞”,
“参加”,
‘轴’,
“够了”,
‘仅’,
“魔法”,
“头发”,
‘规则’,
‘区域’,
]
首先,为缺失单词的每个可能位置生成短语模式:
def生成短语模式(有序的已知单词,助记符长度=24):
模式列表=[]
对于范围内的i(0,助记符长度):
列表模板=[‘{x}’]*助记符长度
单词位置=0
对于位置,枚举中的已知单词(有序的已知单词):
如果i<=位置:
列表模板[position+1]=已知单词
其他:
列表模板[位置]=已知单词
单词位置+=1
列表_patterns.append(’,’.join(列表\模板))
返回\u模式的\u列表
这将使列表列表产生如下结果:
{x} ,荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,限制,缓慢,码,阻塞,出席,轴,足够,只有,魔术,头发,规则,区域
荣耀,{x},两次,电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,限制,慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,{x},电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,限制,慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,{x},接近,高级,信任,雷鸣,支持,建议,计划,习惯,限制,慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,近,{x},高级,信任,雷鸣,支持,建议,计划,习惯,限制,慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,{x},信任,雷鸣,支持,建议,计划,习惯,限制,慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,{x},雷鸣,支持,建议,计划,习惯,限制,慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,{x},支持,建议,计划,习惯,限制,慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,{x},建议,计划,习惯,限制,慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,{x},计划,习惯,限制,慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,计划,{x},习惯,限制,缓慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,{x},限制,缓慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,限制,{x},慢,码,阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,限制,缓慢,{x},码,阻塞,出席,轴,足够,只有,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,限制,缓慢,码,{x},阻塞,出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,限制,缓慢,码,阻塞,{x},出席,轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,限制,慢,码,阻塞,出席,{x},轴,足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,限制,缓慢,码,阻塞,出席,轴,{x},足够,只,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,限制,缓慢,码,阻塞,出席,轴,足够,{x},仅,魔术,头发,规则,区域
荣耀,两次,电影,接近,高级,信任,雷霆,支持,建议,计划,习惯,限制,缓慢,码,阻塞,出席,轴,

def生成所有有效短语(短语模式):
从btctools.HD文件导入检查,单词
短语总数=[]
对于短语模式中的模式:
对于单词:
助记符=pattern.format格式(x=文字)
如果检查(助记符):
总计_短语.附加(助记符)
返回总计\u短语
在这一点上,我们有180个有效的24字助记符短语,其中一个包含您的硬币。
而你可以手动检查所有这些,这将是一个乏味的任务。正如m1xolyd1an的回答中所讨论的,如果您知道以前使用的地址之一,我们可以使用这些助记符短语中的每一个来生成每个短语产生的前5个左右的确定性地址,并执行比较以检查地址匹配。
从btctools导入Xprv
导入json
主地址列表=[]
对于所有短语中的短语:
m=从助记符(短语)
#检查前几个地址空间是否存在已知匹配
对于范围(0,5)中的i:
地址=(m/44./0./0./0/i).地址(’P2PKH’)
如果addr==’1C26mdyEsNpe4fpkYtuHzH4Y378wez8mxP’:
主地址_列表.append({addr:phrase})
elif addr==’1BjoCJhvRCx9nVLPaKhg4qQ2YYps8mDgY4’:
主地址_列表.append({addr:phrase})
打印(找到地址匹配:’,len(主地址列表))
打印(json.dumps文件(主地址列表,缩进=4,排序键=True)
如果找到任何地址匹配项,则将它们打印为键值对:
{
“<地址>”:“<记忆短语>”
}
下面是两个以不同方式合并上述逻辑的python脚本:
https://github.com/d-fay/cryptotools/blob/master/solve\u partial\u 12word\u助记符\u example.py
https://github.com/d-fay/cryptotools/blob/master/solve\u partial\u 24word\u助记符\u example.py
分享
改进这个答案
跟随
编辑时间:3月27日1:03
回复时间:2月28日5:49
塔基2
10133青铜徽章
添加评论
-1
1-恐怕您无法找到/搜索24个助记种子短语单词中有23个的比特币地址。
另一个灾难是不知道单词的顺序。
继续。。。我的建议是生成并保存一个熵,就像这个例子中的十六进制值。这样,在这种情况下,您可以轻松检索任何地址。
分享
改进这个答案
跟随
19年10月24日1:23答复
坎雷
1
作者提到要确定其他23个单词的顺序——taky2 Feb 28’20 5:50
添加评论

Web

分类
Uncategorized

比特币兑换自导IRA LLC

我有一个自我指导的个人退休账户,通过一个有限责任公司控制资金。是否有人以其有限责任公司的名义在比特币交易所注册,如果有,哪些交易所对建立这样一个实体是用户友好的?
提前谢谢!
交易所
分享
改进这个问题
跟随
1月18日2:41问
蕾妮·D
1122枚青铜徽章
添加评论
1个答案
0
Coinbase很简单,只花了几天时间。我提供了所有需要的信息,而且很简单。我还建立了一个双星没有问题。
分享
改进这个答案
跟随
4月8日23:37答复
乔治罗德里格斯
1
添加评论
你的答案

Web

分类
Uncategorized

云计算的未来趋势

传统云计算领域主要分为计算、存储以及网络CDN,其中计算所占体量最大。在区块链云计算赛道中,Filecoin是去中心化存储、THETA是去中心化网络CDN,Dfinity是去中心化CPU计算,深脑链则是去中心化GPU计算。
去年英伟达市值超越英特尔,标志着传统云计算从CPU向GPU转移的主流趋势。而去中心化GPU在人工智能、云游戏以及区块链零知识证明计算领域都有着广泛的用例。

深脑链主网上线在即:

深脑链(DBC)是2017年年底成立的国产项目,力图通过区块链技术构建全球最大的分布式高性能算力网络。经过四年的运营,深脑链在去中心化计算(GPU)赛道首先落地。
为了进一步赋能区块链生态,实现更多的商业落地,深脑链DBC即将基于波卡Substrate上线主网。主网公测分为阶段一和阶段二,分别有51个节点和21个节点;目前DBC主网公测第二阶段即将启动,基础门槛为500万DBC ,共选出21个超级节点,每个节点可以获得39.6万DBC 奖励。
此外,DBC的挖矿模型也十分独特:不同于大多数项目只有挖矿收益,DBC矿工还将获得额外的GPU算力出租收益。这项收益主要来自于包括人工智能、云游戏、视觉渲染、区块链等相关行业的企业租用DBC算力网络的算力付费。Web

分类
Uncategorized

币圈清算」2020年暴跌黑天鹅剧本

吃个大饼  船员  2019-12-18 10:42:15  发布在 生活漫谈 143762  27
本剧本纯属虚构,如有雷同,纯属巧合

2020年的1月份,距离减半还有四个月。中国沉浸在过年的节日里,但是币圈这个节似乎过的很沉闷。2023年,回过头来,人们称之为2020年为「币圈清算」年,整个币圈似乎经历了一次清算。

在2019年10月开始,币圈人就盼着减半的行情启动,没想到迎来的是一次又一次的暴跌和阴跌,但是人们希望还在,还是不断在抄底和定投。

在减半故事的刺激下,矿工们开始加扛杠买矿机,矿机厂家纷纷推出了各种矿机金融产品,分期支付、算力期货、矿机期货。后世的人们原以为矿机巨头们是大而不倒的存在,没想到矿机厂家为了面对日益竞争的局面,自身企业也加足了杠杆。比特大陆面临着矿机市场萎缩的局面,以及内部股东的斗争,向民间资本和机构借贷了大量的资金用于矿机的扩大生产和市场价格战。

交易所巨头们认为这是最后一次战役,决定了谁是老大的最后一次牛市战役,于是疯狂地布局和加码,前三交易所中的币安因为19年遇到了盗币有窟窿,在交易所中增发了比特币从散户中拿到资金进行扩张和布局(纯属虚构,假的,只是为了小说素材),火币发力合约,为了合约深度设置了诸多机器人,相当于当市场的对手盘。(纯属虚构,假的,只是为了小说素材)imtoken 布局dex ,疯狂在国外招人,成本急剧上升。比特派为了支持更多的链和服务高效,集合了更多功能,甚至向矿池业务衍生。(全部是假的,小说素材需要)一线的区块链公司全部在加杠杆,增加成本开支布局,卯足劲等着减半的大牛市。

创业公司虽然感觉19年年底不太好过,但是都是强撑着等着2020年一波牛市,雨露均沾赚点钱,所以也都咬着牙不裁员,手头上甚至有很多主流币。甚至一些二线区块链创业团队还在扩张,被一些政策上和国际上利好的消息面所吸引,认为自己可以努力一下够上一线。

还有很多人拿着 USDT 等着行情一启动,马上就上。USDT 市场发行总量一度超过 60 亿美金。散户们上一波牛市或多或少被割,不甘心,一有现金马上抄底购入比特币。

都等着减半牛市。

但是19年最后的两个月剧情不对,市场一直阴跌,没有任何涨的迹象。大家互相鼓气,没事,过了这个年就好。没想到在过年前,经历了一次暴跌,比特币直逼 5000 美金,甚至下探到 4000 多的价位。而主流币更是惨淡,跌幅一度超过30%。有些人嗅到了不一样的味道,这个年过的苦闷,不敢有太大的开支。不过还是有希望过完年会好。

2月,仍然没起色,场外的 USDT 一直处于负溢价,似乎没有人要 USDT。但是2月还是有一些略微的5%的涨幅,有些人受到了鼓舞。

3月行情突然向下探了一波。市场开始恐慌了,所有乐观崩到了极点,开始崩不住了。几大传销大盘,plustoken等在持续抛盘,甚至加大了抛盘的速度。矿工开始有些人撑不住了,他们加码的杠杆,已经没有流动资金和借贷可以加仓了,分期的矿机开始续不上了,之前的矿机大半已经关机了,很多矿场已经没人挖矿了。矿机市场开始出现大面积违约。

往下 4000 美金,比特大陆的杠杆爆了。矿工的违约出现了多米诺骨牌反应,比特大陆后期支付不起矿机代工生产的费用了。资金上出现了大窟窿。

4月,有传闻某头部交易所丢币,已经没有足够的币给用户了。开始出现了币圈用户提现到钱包大面积行为,首先是一大交易所出现了暂停提币,给出的原因是系统维护。一周后,仍然维护,市场更加恐慌了,提币的人更多了,两天后,另外一大交易所也暂停提币。市场彻底恐慌了。各种消息满天飞,也不知道是真是假。

5月减半。行情没有如约而至,而是继续向下,没有入场资金。矿工纷纷割肉,比特大陆一片混乱,算力开始骤降。

6月7月,仍然不见起色。矿工发现算力下降了非常多,原来的矿机勉强可以挖矿了,没人再继续购买新的矿机了。国内几大矿机厂家都出现了资金问题。而暂停提币的交易所,陆陆续续放了一些币出来,交易所也找外面的资本借贷了大量的资金来填补窟窿。

7月、8月、9月,惨淡。10月,美国 FBI 通过各种渠道施压,连续关闭了 泰达 数个存美金的账户,消息传出,市场疯狂挤兑,USDT 暂停提现美金,跌至0.6美金一枚。泰达高层与美国周旋两个月,无效,11月中旬,放出公告,泰达进入破产程序,市面上的 USDT 一夜归零。

泰达的清算造成了 BTC 的一波小涨幅,涨幅将近20%,许多人把 USDT 买成比特币。但是市场持续的低迷,已经让市场信心和资金都处于崩溃的边缘,随后比特币仍然继续往下跌。

2020年12月,一片惨淡。

2021年,3月。某大交易所进入破产程序,比特大陆缩减规模,裁员高达80%。市场似乎再也起不来了,曾经的巨头们也龟缩到小规模。似乎又回到了2015年的起点。

2022年,惨淡中市场在恢复。回过头来看2019年下半年开始,整个市场都在疯狂加杠杆,原以为是韭菜收割机的公司也在加杠杆,而一旦币价下跌,连环暴雷。

2020年是币圈的清算年,全部重新洗牌,而清算都缘于各方的杠杆加到了极致,加上全球的经济衰退导致了币圈也一起清算。

2023年,市场开始进入慢牛,而市场上的佼佼者们似乎换了一批全新的面孔。

说明:暴跌写着玩玩,不要当真。

来源:@茶猫-MOREWeb

分类
Uncategorized

科学挖矿]常用挖矿软件和工具链接

 
算力论坛  版主  2019-04-25 07:29:05  发布在 算力论坛 110460  7
需要整理的资料很多,暂时放一些简单的。

挖矿新闻

https://cryptoage.com/zh/

自动挖矿类

Nicehash,显卡CPU挖矿,安装软件自动选择当日最高收益挖矿,按比特币结算,适合新手和购买出售算力。https://www.nicehash.com/

华硕量子云,显卡挖矿。https://www.quantumcloudai.com/

razer雷蛇,显卡挖矿积分换雷蛇的键盘鼠标等。https://www.razer.com/softminer

玩客云,带宽挖矿积分换购物卡或日常用品。https://www.onethingcloud.cn/

Honeyminer,显卡挖矿。https://honeyminer.com/

Minergate, 显卡挖矿。https://cn.minergate.com/

手动集成类

轻松矿工,常用挖矿软件图形界面操作,需要参考各矿池配置。http://www.qskg.top/

挖矿系统

Mineros,U盘、硬盘和无盘挖矿系统,安装后用盘启动可在网页配置。https://www.mineros.cn/

Hiveos, https://cn.minergate.com/

矿池列表

https://miningpoolstats.stream

https://poolexplorer.com/algorithm

挖矿收益

https://2cryptocalc.com/most-profitable-gpu
https://www.coincalculators.io/

https://www.asicminervalue.com/

算力历史记录查看

https://bitinfocharts.com

https://www.crypto51.app/

7-360天涨跌幅

https://cryptodeltas.sciusanalytics.com/

项目评级和排行

https://weisscrypto.com/en/coins

https://www.f2pool.com/coins

https://www.altdex.co/privacy/

https://messari.io/onchainfx

其它

51攻击成本
https://www.crypto51.app/

分类
Uncategorized

创宇区块链实验室 | Harvest.finance 闪电贷攻击事件

 

创宇区块链安全实验室 水手 2021-04-20 14:50:41 发布在 区块链社区

8004 1

前言

前不久,DeFi 项目 Harvest.finance 遭受黑客攻击,黑客利用闪电贷套利 2400 万美元,涉及金额巨大,轰动一时

知道创宇区块链安全实验室  旨在通过全盘梳理攻击流程和代码细节,一窥闪电贷套利的秘密。

全盘梳理

基础信息

攻击者地址:0xF224ab004461540778a914ea397c589b677E27bb
攻击合约地址:0xc6028a9Fa486F52efd2B95B949AC630d287CE0aF
首次攻击 tx:0x35f8d2f572fceaac9288e5d462117850ef2694786992a8c3f6d02612277b0877
VaultProxy(fUSDC):0xf0358e8c3CD5Fa238a29301d0bEa3D63A17bEdBE
CRVStrategyStableMainnet:0xD55aDA00494D96CE1029C201425249F9dFD216cc
VaultYCRV:0xF2B223Eb3d2B382Ead8D85f3c1b7eF87c1D35f3A
CRVStrategyYCRVMainnet:0x2427DA81376A0C0a0c654089a951887242D67C92
convertor:0xfCA4416d9dEF20aC5b6Da8b8b322b6559770eFbF
*为方便起见,后面提到的地址均只用地址前 4 位代表

交易始末

从 tx0x35f8 中的代币转移记录中可以大致看出事件经过

详细的合约调用过程可通过以太坊交易分析平台载入交易 hash 进行分析

流程分析大致如上,事件概括起来即是攻击者 0xf224 部署了攻击合约 0xc602,然后一系列闪电贷攻击均在攻击合约的 0xfdb57542 方法中进行,其中核心流程就是通过 Uniswap 的 Flash Swap 进行闪电贷,先获得大量 USDT 和 USDC 为后续攻击做准备,然后重复执行如下动作:

  1. Curve ySwap 中进行 USDT=>USDC 的巨额兑换(巨额兑换造成 y 池中 USDC 价格上涨)
  2. USDC 质押存入 VaultProxy fUSDC 池( USDC 价格上涨,铸造出较平常更多的 fUSDC )
  3. Curve ySwap 进行 USDC=>USDT 回兑(1 步骤的逆操作,USDC 价格恢复)
  4. VaultProxy fUSDC 池中赎回 USDC ( USDC 价格回落,赎回出较平常更多的 USDC )

最后归还闪电贷并将获利的 USDC 兑换为 ETH 提取

代码细节

攻击合约未开源,暂时不作分析。可先从关键的 VaultProxy fUSDC 池合约 0xf035 的 deposit 函数入手,分析 fUSDC 的铸造量是如何计算的

从质押函数中可以看出 fUSDC 的铸造量是根据 fUSDC 总量和 USDC 策略的总投资量的比例来决定的

underlyingBalanceWithInvestment 函数实现如下:

fUSDC 池代理合约 0xf035 会进一步调用 CRVStrategyStableMainnet 策略合约 0xD55a 去进一步查询已投资的底层资产 USDT 的量

来到稳定币策略合约 0xD55a,investedUnderlyingBalance 函数实现如下:

这里的调用就稍微复杂一点了,从 ycrvVault 合约 0xF2B2 获取 shares 与 price,将乘积传入 underlyingValueFromYCrv 函数,结果与该合约 USDT 的量的和作为最后的函数返回值

我们先来看 ycrvVault 合约 0xF2B2

该金库合约 0xf2b2 本身继承了 ERC20,具有代币属性,从构造函数中可以看出代币代表 fyToken

也就是说上面获取的 shares 即是策略合约拥有的 fyToken 量

然后是 price,来看 getPricePerFullShare 函数:

可以明显看出 price 即是 yToken 对 fyToken 的占比,那么 shares 与 price 的乘积即代表策略合约所占有的 yToken 量,最后传入 underlyingValueFromYCrv 函数,在该函数中会调用 convertor.yCrvToUnderlying

这里就到了整个过程中最关键的地方了,也是问题的根本所在

convertor 合约 0xfCA4 并未开源

我们再次回到以太坊交易分析平台,查看整个 deposit 调用过程

可以看到前面的调用流程分析如实,并且 convetor 的调用最终会调用 Curve 的 Zap.calc_withdraw_one_coin,而该函数用于查询 lpToken 的赎回价

问题就在这里了,这里相当于就是向 Curve 问价,而调用传入的是 yToken 的量,那么返回的就是 yUSDC 兑换 USDC 的价格,即 USDC/yUSDC

而当前面巨额兑换 USDC 后,y 池中 USDC 价格上涨,那么相对价格 USDC/yUSDC 就会下跌。Harvest.finance 的 USDC 策略中 yUSDC 资产所具有的 USDC 净值经 calc_withdraw_one_coin 计算而来就损耗减少,最终反映到 deposit 函数的 fUSDC 铸造算法中,将导致 fUSDC 铸造量增加


总结

归根到底,Harvest.finance 被攻击的本质原因在于对策略稳定币价值的估价出现了问题,直接调用易被操纵价格的 Curve 的 calc_withdraw_one_coin 函数来估价,从而使攻击者有机可乘。这就是一次典型的喂价机制不完善导致的价格操纵的经济攻击事件。

知道创宇区块链安全实验室官网:www.knownseclab.com
知道创宇唯一指定存证平台www.attest.im
联系我们:blockchain@knownsec.com



知道创宇区块链安全实验室导航


微信公众号
@ 创宇区块链安全实验室

微博
@ 知道创宇区块链实验室
https://weibo.com/BlockchainLab


知乎
@ 知道创宇区块链安全实验室
https://www.zhihu.com/org/zhi-dao-chuang-yu-qu-kuai-lian-an-quan-shi-yan-shi


Twitter
@KS_Blockchain_
https://twitter.com/KS_BlockchainWeb

分类
Uncategorized

不要开公司了,做一个 DAO 吧

 
响指研究所  水手  2021-04-21 12:16:11  发布在 区块链社区 1256  0

DAO 并不专指一个行业或者领域,它是一种组织治理结构,就像有限责任公司可以从事各种业务,DAO 既可以做资产管理,也可以做 DeFi 协议、NFT……这里探讨的是 DAO 这种治理结构的优势和不足,并通过用例来说明 DAO 是如何进行治理的。

任何组织都离不开决策,如何决策又取决于治理模式。公司作为最常见的组织,当前普遍采用的治理结构是管理层+董事会:管理层监督公司日常运营,董事会则提供战略监督并审查管理层。公司治理主要体现为对企业剩余价值的索取权和控制权,譬如净利润用于股东分红还是投入再生产。治理的目标则是提高公司价值,实现股东利益最大化。

公司治理和公司相伴相生,已历经几个世纪的演变,然而当前主流治理模式并非最佳实践,也并非适合所有公司组织。譬如,个人股东受财力所限,一般在公司中所占份额较小,没有足够的动力和实力去监督企业家,而甘愿成为消极股东。又譬如,互联网平台利用创作者生产的内容或数据获得广告收益,在传统公司治理结构下,这种收益归股东所有,缺少合理的创作者激励机制。此外还存在治理过程不透明,激励错位,治理效率低下等问题。

2016 年以太坊主网上线,它所提供的智能合约自动执行功能最早、最被寄予厚望的应用场景就是治理。这种通过在区块链上执行一系列规则来进行协作的组织被称为 DAO(去中心化自治组织)。当时,人们对 DAO 充满期待,以致于去中心化风投基金 The DAO 在短时间内筹集了 1.5 亿美金。DAO 以代币持有人代替股东,允许最大的代币持有人实际担任协议的董事会。这个事实上的董事会通过提议或投票进行升级和指导未来的发展,帮助引导协议的方向。

DAO 可以做什么

DAO 的核心功能是提案和投票,通过类似 Aragon,DAOStack,DAOhaus,Llama ,MolochDAO 和 MyCo 智能合约提供的 DAO 工具,可以处理投票、资金和筹集资金分配相关的问题。此外还有像 Snapshot 之类的工具,专门用于管理代币持有人投票的提案,这些工具使查看提案的相关详细信息和投票状态变得容易。利用这些工具 DAO 可以透明、高效的完成传统公司治理功能:

控制资产。DAO 常见的功能之一就是控制资金库的使用。譬如以盈利为目标的投资基金,采用
DAO 的组织形式,利益相关方可以是匿名的,可身处世界上的任何地方,通过提案和投票达成共识,一起管理 DAO 的资产。
重要岗位的任命。DAO 可以通过投票合理地任用人员,那些具有社区声望的人更容易得到社区的认可。
协议升级及新功能上线。协议代币持有者是利益相关方,但协议开发上线的权力往往掌握在项目方小部分手中,通过投票可以做到将这种权力下放。
代币经济模型的改变。一些项目早期设定的经济模型在发展过程中出现不适用的情况,需要增发,或者改变代币分配比例。
开发提案。对于开发资源有限的项目来说,不能满足所有功能需求,通过投票决定是否进行某个功能的开发。

广义上来说,不是只有名称里带有 DAO 的项目才是一个去中心化组织,如果一个加密项目本身是通过去中心化的方式进行治理,即代币持有者能就项目的方向与各种参数设定进行投票,而非仅由中心化的团队进行决策,则该项目也可被看作一个 DAO。譬如:

构建了去中心化稳定币的 MakerDAO 的代币持有者可以管理系统并对稳定费等参数进行投票。
Curve DAO 它会产生手续费并为锁仓的代币持有者们提供收入分红。Curve 代币 (CRV) 的锁仓时间越久,该DAO 成员获得的投票权与回报就越多。与按比例进行收益分成的传统公司不同,Curve DAO 设立了根据代币持有人的投资时间长短对投票权和收入份额进行加权的制度。
2 月 3 日 yearn.finance (YFI)社区以 83.46% 的支持率通过了「增发 6666 枚 YFI 代币的提案」。
4 月 1 日,Kava 发起主网升级提案,拟定于 4 月 8 日升级;1 月 23 日,0x 社区以超过 99% 的支持率通过协议 V4 版本的升级。

DAO 的用例

The LAO
The LAO 的全称是「Limited Liability Autonomous Organization」,意为「有限责任自治组织」,它通过 OpenLaw 提供的工具实现合规。OpenLaw 在 The LAO 创建和维护过程充当「管理员」的角色,收取一定的开发费用,除非应社区成员要求,否则不会对 The LAO 行使任何控制权。

作为美国特拉华州合法的有限责任实体, The LAO 允许社区成员购买权益,并通过类似 MolochDAO 智能合约处理投票、资金和筹集资金分配相关的问题,以分配给初创公司和其他需要融资的项目。The LAO 社区目前已募集到 15,119.82 ETH ,价值 3674 万美元,官网显示已投票通过 19 个提案,否决 3 个提案。The LAO 支持的项目大致可分为去中心化资产管理、交易与衍生品、NFT、开发与工具、基础设施这五类领域。

Flamingo DAO
Flamingo DAO 是 The LAO 社区孵化的首个 NFT 主题的 DAO,它因为以超 76 万美元高价购买 CryptoPunks 收藏品「CryptoPunk 2890」而受到关注。Flamingo 的功能有:

● 购入 NFT,进行所有权分割,接入现有 DeFi 平台。
● 预定知名 NFT 艺术家、匠人、创作者的作品。
● 购入数字艺术家各自社区或社交代币来投资数字艺术家。
● 管理购入作品,为公众创建「超虚拟世界」的数字博物馆和画廊。
● 挖掘并投资支持 NFT 核心基础设施和项目。

成为 Flamingo DAO 的会员即可对上述业务提案进行投票,通过投入 ETH 的方式可以成为会员,每投入 60 ETH 获得 1% 投票权(10 万枚 Flamingo 代币),每人最多可获得 9% 投票权,代币不可转让,如需转让需要获得会员多数票通过。会员投票权包含:

● 确定投资标的及投资方式
● 发行新治理代币替代现有 Flamingo 代币
● 未来 DAO 持有资产资产类型(ETH、DAI、BTC 或任何生息资产)
● 决定所有资金和资产流向、使用方式、收益分发
● Flamingo 组织架构
● 会员去留,吸纳新会员
● 多数投票决定解散 Flamingo,或将 Flamingo 投资资产转移至另一实体或机构

Moloch DAO
Moloch DAO 是一个为促进以太坊生态系统发展提供津贴奖励的 DAO,它的目标是为以太坊基础设施做出贡献,并解决生态系统开源开发中的公共问题。Moloch 使投票、成员资格、治理成为可能,其代码是协调机制的。成为 Moloch DAO 每人需要捐赠 100 ETH,若成员不同意 DAO 的整体决策,允许成员退出并取出资金。为创建其他的 DAO,MolochDAO 的合约已经被分叉了许多次。

Vitalik Buterin 评价 Moloch DAO 是社区驱动的努力,以维持、发展和改良以太坊社区的氛围。

MetaCartel Ventures
早期,MetaCartel 创建了一个 DAO,为在以太坊去中心化生态系统中开发新产品的黑客和建设者提供资助。在过去的一年里,它为很多此领域最受欢迎的新兴项目提供了早期资金,包括:Mintbase、Known Origin、rDAI、Kickback、Sablier、DeFiZap、RocketNFT、Gelato Finance。

基于 MetaCartel DAO 在赠款项目上的成功,MetaCartel 组建了 MetaCartel Ventures,它是一家以盈利为目标投资 dapp 的基金,其成员由 33 家 (截至目前) 认证投资者和建设者组成,包括许多加密社区中富有经验的建设者们,例如 Zapper 和 Rai。其本质则是一个去中心化组织,使用 MolochDAO 的 v2版本来管理组织资金、分配股份以及管理组织成员之间的投票。

0x DAO
4 月 13 日,去中心化交易协议 0x (ZRX)宣布正式在主网启动 0x DAO,初始社区金库有 200 万枚 ZRX,目前价值约 422 万美元。任何人都可在 0x 论坛分享 DAO 资金使用想法,但提交提案最低需要 10 万枚 ZRX (占 ZRX 总供应量的 0.01%),每次投票将持续 72 小时,并可直接在 ZRX Portal 上投票。0x DAO 在初始阶段将仅能控制社区资金的使用,而非核心协议。

总结

回到文章开头讲到的公司治理,事实上除了我们熟知的股份有限公司制通过管理层+董事会来实现治理。合作社也是一个非常独特的治理结构。合作社的构想可以追溯到 18 世纪中叶,它是将股份出售给公司用户、创建者或客户的公司。然而因为合作社在资本和经营两方面的效率都比较低下(组织、协调和激励数以百万权益相等的股东是非常困难的)合作社很容易被结构更精简、更容易获得资本的传统型公司击败。

美国户外运动品牌 REI 也许是最为知名的消费者合作社。当 REI 盈利良好时,消费者会根据其合乎资格的消费额瓜分年度 10% 利润。传统公司通过派发股息或回购来增加对股东的回馈,而合作社是让消费者 / 用户受益,通过奖励消费来进一步创造价值。

区块链可以改善合作社的运营效率,让合作社打造出具有更高吸引力的模式,嵌入到去中心化模板上。但这里的治理创新依然主要体现在效率和自动化上,而不是其底层设计。可以发现很多 DeFi 平台代币都通过向核心用户、对平台有贡献的人分配代币,让他们共享到平台发展的红利,这和合作社的模式非常像。

效率和自动化水平的提高可以解决一些问题,但不能解决所有问题。DAO 是强大的组织方式,可以用代码替换法律合同的各个方面,并节省大量的运营开销。但如果对DAO的控制变得中心化,或是被模糊地定义,同样会产生问题。怀俄明州参议院委员会还通过了一项怀俄明州 DAO 法案,该法案将有助于创建法律认可的 DAO。

此外,与授权 CEO 进行快速决策的管理制度相比,DAO 在协调和快速行动方面还存在很多困难。为了提高效率,折中的办法是「渐进式去中心化」,也就是将治理权力进行一定的集中化。

传统公司面临的股东参与度低的情况,在 DAO 中也依然会存在,不是所有的成员都想投票,或者参与投票的成员事实上不符合标准。在这种情况下,可能会有选民将投票委托给那些在投票中更知情、更积极、也与他们的信仰一致的成员,可能会出现协议游说团体。

另一个问题是,完全开放成员资格有可能导致成员质量降低和杂音越来越多,可以通过 DAO 筛选过程,或最小代币持有量来解决这些问题,以至少确保参与者利益相关(skin in the game),并激励 DAO 实现成功。

官网

https://snapfingers.com

合作请联系

contact@snapfingers.com Web