V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  acess  ›  全部回复第 35 页 / 共 110 页
回复总数  2191
1 ... 31  32  33  34  35  36  37  38  39  40 ... 110  
2020-11-06 18:54:15 +08:00
回复了 chenpingan 创建的主题 Bitcoin BTC 现在适合入场吗
@chenpingan 而且我觉得冷钱包虽然表面上的关键之处是离线,实质上离线还不是最重要最根本的,最根本的是要保持软件(甚至硬件)干净可信。如果钱包软件有后门,那即便是“冷”了一样有 N 种方法能黑掉币,甚至连数字签名都可以拿来夹带泄露信息。
(这其实也算是区·块·链这个概念被批评的一大要点,说到底就是人的问题技术其实解决不了,哎)
2020-11-06 18:50:45 +08:00
回复了 chenpingan 创建的主题 Bitcoin BTC 现在适合入场吗
@chenpingan HD 钱包存在一个固有的弱点,就是泄露单个私钥+泄露主公钥( xpub/ypub/zpub 之类的)=泄露对应的主私钥=泄露这个主公 /私钥下面的所有子私钥。所以用了 HD 钱包最好就别把单个私钥倒来倒去了,老老实实记住助记词就可以了。(而且如果你不搞冷热分离,直接用热钱包,那这个弱点对你来说等于不存在,因为私钥也在联网的机器上,可以直接拿到)
想要规避这个风险,符合 BIP39 (尤其是 BIP44/49/84 )规范的钱包一般提供“账户”(这个“账户”指的是走不同 HD 派生路径推导的不同组别的地址,不是“账户余额”那个“账户”),不同“账户”之间是互相隔离的,所以即便其中一个发生这种泄露了,也不影响另一个。但是很遗憾,Electrum 开发者貌似对这个概念不太感冒。所以,有个最简单粗暴的办法:创建新钱包,不同助记词之间很显然是互相隔离的。
2020-11-06 18:41:42 +08:00
回复了 chenpingan 创建的主题 Bitcoin BTC 现在适合入场吗
@chenpingan Electrum 当然有私钥了……你创建一个标准钱包,右键点地址,菜单里面不就有获取私钥的选项。这些私钥都是从 HD 种子(助记词)派生出来的,知道 HD 种子(助记词)就等于知道了这些私钥。

newbiewallet.ga 这个我没听说过。
2020-11-05 18:10:54 +08:00
回复了 chenpingan 创建的主题 Bitcoin BTC 现在适合入场吗
@chenpingan 没有硬件钱包,也可以用另一台不联网的设备安装 Electrum 作为冷钱包端,私钥(应该说是 HD 种子 /助记词)自始至终都不会“触网”,交易信息是通过二维码在两台设备间传递的。
但是这样有个问题貌似一直没修,就是二维码装不下体积太大的交易,Electrum 也没有拆分成多个二维码来绕开问题(啊,FLOSS 开发者的倔强+1 )。
2020-11-05 18:08:14 +08:00
回复了 chenpingan 创建的主题 Bitcoin BTC 现在适合入场吗
@chenpingan 对接硬件钱包的时候,助记词的生成也是硬件钱包完成的,然后 6 楼说的助记词不标准不通用、以及没有给 3 开头的 P2SH 封装隔离见证地址这个两个问题,就都不存在了,在这个场景下 Electrum 并没有那么倔强……
2020-11-05 18:06:19 +08:00
回复了 chenpingan 创建的主题 Bitcoin BTC 现在适合入场吗
@chenpingan 不过有一说一,Electrum 历史上爆过好几次大漏洞,最近的一次是钓鱼漏洞,影响持续到现在。虽然理论上弹窗钓鱼你不理他就没事,但总是有人会中招的,毕竟迷惑性太强了,钱包窗口自己弹出来的。
我自己的用法是用 Electrum Personal Server 对接 Bitcoin Core 全节点,所以当时爆钓鱼漏洞的时候我不去看新闻甚至不知道有这回事,完全没受影响;其次就是对接硬件钱包,这样 Electrum 只是硬件钱包的“前端”或者说“热端”(硬件钱包则是“冷端”),电脑上是没有私钥的,但凡有转出动作都需要在硬件钱包自己的屏幕上检查通过才能签名交易。
2020-11-05 18:02:38 +08:00
回复了 chenpingan 创建的主题 Bitcoin BTC 现在适合入场吗
@chenpingan (单私钥)纸钱包啊?现在已经认为过时了,不推荐用了。
个人比较喜欢用 Electrum 。不过 Electrum 开发者也有点固执,有些地方让我感觉不爽。首先是助记词( HD 种子),不是通用的 BIP39 助记词而且他自己的 Electrum2.0 标准,和别家不通用;而且创建钱包时不给 3 开头的 P2SH 兼容隔离见证地址选项,只给 1 开头的 P2PKH 传统地址和 bc1 开头的原生隔离见证地址两个选项,然而前者每虚拟字节手续费最贵,后者有兼容性问题,老钱包(包括一些交易所的提币界面)不识别这种新设计的地址。
@githere shou dao hei qian 然后就是冻卡咯
2020-11-01 13:58:31 +08:00
回复了 dblpx 创建的主题 Android 关于两个 Android 程序同时访问麦克风的功能实现
@daozhihun
我现在用的 los17.1,是 Android 10 。

目前我只找到 ScreenCam 可以内录任何 app 和系统的声音,但是很蛋疼,详见:/t/659086#reply2

Android 10 提供内录音频的录屏 API,但是必须 app 主动声明允许才可以录。
我一直好奇有没有 xposed 之类的办法能解除这个限制。不过即便解除了,貌似还是不能达到 Android 6.0 上 SCR Screen Recorder 那种耳机播放+音频内录+麦克风同时录制这种完美效果(虽然 SCR 也是需要 root 的,但是它效果完美啊)。

不知道 Android 11 能不能搞定这个需求,听你说的,似乎是搞定了,但只能是系统 app 才能录,用户 app 仍然不行?(嗯,这样也基本够用了)

而且你说“app 去获取系统声音是谷歌严格禁止的”这个我也不明白,是出于安全隐私方面的原因,还是……版权方面受到了压力……什么的?

另外即便 Android 11 搞定了这个需求,肯定还有大量机器一时半会(甚至是永远)升级不到 Android 11……
/t/659086 Android 10 仍然不太行……
/t/720330#r_9708050 Android 11 也许有改观
2020-11-01 13:53:44 +08:00
回复了 acess 创建的主题 Android 录屏同时内录音频, Android 10 似乎仍然不太行
(我之前还发过帖子 /t/646170
目前我只找到 ScreenCam 可以内录任何 app 和系统的声音,但是很蛋疼,必须刷 magisk 模块才能录,而且录了就不能同时播放(外放或耳机),最近发现用着还有 bug:有的时候即便没在录制,拔掉耳机就不外放了(不确定是不是和 ScreenCam 的 magisk 模块有关);而且 ScreenCam 停止录屏的时候会卡上几十秒,有时还会提示崩溃,所幸录出来的音视频数据还是完好的。
ScreenCam 提供魔改 ROM 的内录“后门”选项,但是我实测 los 上肯定是不能用的;(可能记错)而且小米上 screencam 貌似也不行,好像还是麦克风。
2020-10-31 22:58:31 +08:00
回复了 dblpx 创建的主题 Android 关于两个 Android 程序同时访问麦克风的功能实现
@daozhihun 借楼问一下音频内录(无论是系统还是 app ),感觉应该蛮相关的: /t/659086
其实现在这个状况一直让我失望,我只是偶尔会看游戏视频,但我感觉内录音频+玩家语音这个需求是非常合理的,不知道 Google 为啥从 Android 7.0 开始就各种拦路设卡,搞得连获取 root 权限后都不太能搞。
不知道 Android 11 在这方面有没有什么新动向呢?
多重签名,不知道楼主说的是哪种?我记得还是必须有第三方参与仲裁吧,用的是 2of3 多重签名。
2020-10-23 15:44:11 +08:00
回复了 Ficelle 创建的主题 Bitcoin 对于区块链和比特币想请教一下问题
提到 UTXO,我又想到白皮书里的 Merkle 树剪枝,实际上那个 Merkle 树剪枝是没意义的。

从根本上讲,比特币的区·块·链账本里只登记了“交易记录”,并没有登记“当前余额”,“当前余额”是从“交易记录”重放、推算出来的。中本聪的白皮书里把比特币的交易叫做“币”,听起来就好像与众不同了——“比特币没有账户!”
但是很显然,换一个名字叫,并不能绕过本质问题,比特币只是形式上没有账户而已,本质上并没有多大区别。全节点还是必须自己想办法把“当前余额”给重放、重建出来,也就是 UTXO 集合,这样才能对后续的交易进行验证。

从安全 /信任层面讲,如果新上线的节点不完整下载、验证整条区·块·链账本,那就可能受到恶意节点欺骗(回到白皮书本身去抠字眼,白皮书写的也只是“回收磁盘空间”,而不是“节约下载带宽”)。即使一个恶意节点没有挖矿算力,它也完全可以恶意地挑选 Merkle 树分支来进行恶意的裁剪,把本来没被花掉的币裁掉,或者把本来已经被花掉的币加回来(根据情况,可以直接加回来,也可以把当时直接花掉这个币的交易裁掉),等等,然后受骗的节点在验证交易时就会出错,和其他(没受骗的)节点出现不一致。如果恶意节点有挖矿算力,它还可以花掉从来就没存在过的币(实质上等于凭空造币,也就是通胀),然后这种交易也没有什么特征,因为有很多其他的交易也是来自于“不存在(整个分支都被裁掉)的交易”。

从效律上讲,很显然,维护一个独立的 UTXO 集合数据库,验证交易时就只需要对这个 UTXO 集合数据库进行查询、增删,不再需要回溯读取历史区块的内容。如果需要回溯读取历史区块内容,很显然效律相比而言就非常低下。(这里也可以看出来,UTXO 集合数据库在记录了区块高度的情况下,其实还是一个方便查询的索引,可以直接查到某个币 /交易是在哪个区块里面;只不过是在验证交易的时候,UTXO 集合本身就提供了需要的数据,所以就不太像是个索引了)
2020-10-23 15:29:20 +08:00
回复了 Ficelle 创建的主题 Bitcoin 对于区块链和比特币想请教一下问题
回头看 4 楼的帖子,我感觉“51%攻击是挖分叉链,让原本较短的分叉链反超之前的长链”这个有点不严谨……实际上 51%攻击还可以隐蔽地进行,可以私下里偷偷先挖好,等到明面上的交易完成(攻击方完成付款),再把更长的分叉链(攻击链)公开放出去,然后别的节点就会被迫丢弃之前的链,接受攻击链(首先是因为攻击链也没有违反规则;其次,如果不接受,对于当时没有在线、后来才上线加入网络的节点来说,它们无从分辨哪条链才是诚实链、哪条链是攻击链),最后攻击方的付款被强制撤回,收款方钱货两空。
2020-10-23 14:50:06 +08:00
回复了 Ficelle 创建的主题 Bitcoin 对于区块链和比特币想请教一下问题
实际上即便内存池里有交易,有的时候矿工仍然会挖空块。一般是因为 SPY mining,也就是 A 矿池假装成 B 矿池的矿工,从 B 矿池接收区块头、coinbase 交易等信息,这些信息不足以判断前一个区块是否合法,但是足够矿机暴力试错挖矿。然后 A 矿池的矿工就可以和 B 矿工站在同一个区块高度共同竞争挖下一个区块了。

完整下载、验证一个区块需要比较长的时间,只下载区块头等信息需要的时间就非常短,于是这里就有一个空当。这个时候,因为 A 矿池不知道前一个区块里有什么交易,所以不能更新 UTXO 集合、不知道内存池里哪些交易可以打包(要排除双花的情况,否则挖出来的区块就非法了),这个时候就只能挖空块了。

一般情况下这样不会出什么问题,如果 A 矿池不采取这个挖空块的策略,那他就不能在最新的区块后面延续挖新的区块,只能在同一个高度挖一个分叉,所以很显然 A 矿池还是采取挖空块的策略对自己更有利。
不过 2015 年的时候,BIP66 软分叉升级在部署时出了一点问题,SPY mining 因为没有完整验证上一个区块的内容就抢先挖,就放大了问题,导致网络出现比较长的分叉。

( BitMEX 博客上有篇文章总结了比特币的软分叉、硬分叉历史。不过我觉得“软分叉”“硬分叉”的概念本来就很混乱,一般是从共识规则被放宽还是被收紧来定义的,但是也有从其他角度定义的,比如兼容性改变,或者是网络实际状况等等;甚至还有人认为“共识规则放宽 /收紧”这个定义是 Blockstream 公司 /比特币核心开发组为了维护自己的利益才刻意强调的说辞)
2020-10-23 14:26:25 +08:00
回复了 Ficelle 创建的主题 Bitcoin 对于区块链和比特币想请教一下问题
没有供打包的交易,当然也可以挖矿出块,这个时候区块里只有一个给矿工自己发奖励的 coinbase 交易,一般被叫做空块。

创世区块比较特殊,它是直接硬编码写到全节点软件代码里的,而且创世 coinbase 交易生成的 50BTC 并没有进入 UTXO 集合,这 50BTC 等于不存在。

coinbase 交易实际上没有输入,它的输入内容是可以随便写的,中本聪就写了那句著名的报纸头版头条,有人说这是对金融危机的回应,也有人说这可能就是个时间戳而已,证明这个区块是那天之后才挖出来的,所以可以证明比特币挖矿是公平的、证明中本聪没有在发布比特币之前私自偷偷预挖币。

这里还有两个梗,都是关于创世地址。首先,有些比特币开发者认为 1A1z 开头的那个创世地址其实是一种误解,认为创世区块并没有地址,因为创世交易的输出是一个裸公钥 P2PK 输出,而不是现在常见的公钥哈希 P2PKH 输出,虽然这两种输出都是同一个私钥控制,币的所有权一模一样,但是技术细节并不一样。其次,创世区块里的 50BTC 等于不存在,不能被花掉,但是原则上创世地址如果用私钥签名交易,它收到的其他币都是可以花掉的。不过也有人猜测,创世区块里的那个公钥也许(只是也许)并不是从某个私钥推导出来的,所以没有对应私钥。

Sergio Demian Lerner 在这方面做过一些研究,可以去 bitcointalk 论坛搜搜他的帖子。
2020-10-23 14:16:08 +08:00
回复了 Ficelle 创建的主题 Bitcoin 对于区块链和比特币想请教一下问题
@Ficelle
《精通比特币》第二版是有中文版的,随便一搜就能找到。

内存池里面是待打包的交易,虽然一般全节点没有对接算力、不能独立挖矿出块,但是默认也会接受、验证、转发网络上广播的交易,交易在(被矿工)打包进区块之前,就暂存在内存池里。(所以说实际上交易数据在网络上会被重复传播两遍,然后才有 compact block 之类的技术,只给其他节点传输一个“骨架”,让其他节点从内存池里自己把对应的交易找出来、把完整区块重新组装出来,这样就可以设法大幅省掉重复传播第二次的开销、加快区块传播、避免出现带宽占用峰值)

内存池是每个节点各自维护的,很显然全节点完全可以自由选择要让哪些交易进入内存池(当然,一般不会选择非法交易,原因楼上说过了)、还可以选择优先打包哪些交易(一般是按照矿工费率 sat/vB 排序,优先打包矿工费付得多的;有些矿池提供“加速”,就是在付费后专门把对应的交易“插队”到前面,不过对于用户来说,我觉得加速器价格太贵,还是直接用 RBF 来追加手续费比较好);而且很显然不同节点的内存池内容完全可以不一样。
内存池里面的“零确认”交易不进链确认就是不作数的,只有进链确认了才算数。

内存池里面积压的交易,默认是有过期时间的,过期了就会丢弃出去。不过每一笔交易本身是没有过期时间的,所以即便因为长时间拥堵暂时被某些节点丢弃了,也随时可以重新广播出去,然后又会进入内存池、等待打包进链。
2020-10-23 00:20:29 +08:00
回复了 Ficelle 创建的主题 Bitcoin 对于区块链和比特币想请教一下问题
看到第 2 个问题,还有楼上说的 UTXO,感觉我可能说得很罗嗦、又没有 get 到你要问的点。

其实《精通比特币第二版》第十章“挖矿与共识”,尤其是“交易的独立检验”这一节应该就是你要找的答案。
2020-10-23 00:02:10 +08:00
回复了 Ficelle 创建的主题 Bitcoin 对于区块链和比特币想请教一下问题
3.上面已经说了,奖励不止是新币,还有交易手续费。
但是理论上(考虑矿工只是单纯逐利、甚至“不择手段”)貌似是只要有交易手续费参与,就不稳定,很多年前 Arvind Narayanan 有篇论文说了这个问题。我了解不多,只看了摘要图,简单说,如果内存池里可以被打包进区块赚到的交易手续费太少,而前一个区块里已经被别人打包赚走的交易手续费又很多,那逐利的矿工就可能把别人已经打包的交易重新拿出来,自己挖一条分叉链,把本属于别人的手续费收入据为己有,同时为了笼络其他矿工和自己同流合污,他可以只拿一部分手续费,另一部分分给愿意同流合污的其他矿工,由此让自己的分叉链获得算力支持。
这样一来,理论上,矿工就不会老老实实地正常延长区·块·链账本了,导致整个网络的动荡不稳。
1 ... 31  32  33  34  35  36  37  38  39  40 ... 110  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5089 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 34ms · UTC 08:29 · PVG 16:29 · LAX 01:29 · JFK 04:29
Developed with CodeLauncher
♥ Do have faith in what you're doing.