[閒聊] 還是沒搞懂比特幣如何計算私鑰餘額

看板DigiCurrency作者 (perry tsai)時間1年前 (2023/03/04 13:01), 1年前編輯推噓16(16054)
留言70則, 9人參與, 1年前最新討論串1/1
一個比特幣私鑰可以產生大量公鑰 公鑰可以產生一堆地址 如果我使用比特幣錢包 基本上我創建一個錢包私鑰 然後用多個不同的地址去收款 錢包是如何加總我所有地址的餘額的? ---- Sent from BePTT on my iPhone 13 Pro Max -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 75.157.229.193 (加拿大) ※ 文章網址: https://www.ptt.cc/bbs/DigiCurrency/M.1677906103.A.45D.html

03/04 13:09, 1年前 , 1F
加總是前端做的事
03/04 13:09, 1F

03/04 13:28, 1年前 , 2F
你自己不是都講完了…加法不就是機器最會做的事
03/04 13:28, 2F

03/04 13:47, 1年前 , 3F
你的錢包知道這些地址都是你的啊
03/04 13:47, 3F

03/04 13:47, 1年前 , 4F
當然其他任何人都不知道
03/04 13:47, 4F

03/04 13:58, 1年前 , 5F
我對這問題也不太懂 我猜是反正私鑰對這些地址都有控制
03/04 13:58, 5F

03/04 13:58, 1年前 , 6F
能力 所以餘額加總是自己錢包的事 鍊只管這些地址有錢
03/04 13:58, 6F

03/04 13:58, 1年前 , 7F
猜錯請指正
03/04 13:58, 7F

03/04 14:58, 1年前 , 8F
不是啊,地址無限多耶,怎麼全部加總
03/04 14:58, 8F

03/04 15:03, 1年前 , 9F
交易有限阿 比特幣的區塊鏈 是記錄交易又不是記錄餘額
03/04 15:03, 9F
交易有限,問題是我怎麼知道此筆交易的地址是屬於我這個私鑰的

03/04 15:13, 1年前 , 10F
UTXOs set是有限集合
03/04 15:13, 10F

03/04 15:16, 1年前 , 11F

03/04 15:16, 1年前 , 12F
直接看最後的餘額章節
03/04 15:16, 12F

03/04 15:20, 1年前 , 13F
Account based用習慣了,UTXO真是很難理解,我支付一筆交易,背後整合我的UTXO來支付, 要使用哪些UTXO,這部分又是誰來決定的,礦工或是我的錢包軟體?我們使用者只是很直觀 的從我的地址支付到另一個地址,但是整個運作底層根本不是這樣XD ※ 編輯: ripple0129 (75.157.229.193 加拿大), 03/04/2023 15:46:35 ※ 編輯: ripple0129 (75.157.229.193 加拿大), 03/04/2023 16:03:50

03/04 16:41, 1年前 , 14F
不過除了稍微混淆一下追蹤者外 我是看不出太大意義
03/04 16:41, 14F

03/04 16:41, 1年前 , 15F
畢竟這種交易方式很浪費資源不是嗎
03/04 16:41, 15F

03/04 17:56, 1年前 , 16F
問了AI是錢包軟體來整合UTXO
03/04 17:56, 16F

03/04 17:56, 1年前 , 17F
XD
03/04 17:56, 17F

03/04 18:22, 1年前 , 18F
畢竟公開帳本,隱匿性也很重要
03/04 18:22, 18F

03/04 19:04, 1年前 , 19F
是一個助記詞(Seed)能產生一堆公私鑰對,不是一把私鑰一堆公鑰
03/04 19:04, 19F

03/04 19:04, 1年前 , 20F
HD錢包內部通常會預生成約10~100個地址(公私鑰對)
03/04 19:04, 20F

03/04 19:04, 1年前 , 21F
你的幣會從這裡加總,當有掃到使用紀錄(收付)時
03/04 19:04, 21F

03/04 19:04, 1年前 , 22F
會往後多掃N個地址(依各錢包軟體不同)
03/04 19:04, 22F

03/04 19:05, 1年前 , 23F
UTXO花用那些input一般由錢包軟體自動以支出output額度決定
03/04 19:05, 23F

03/04 19:07, 1年前 , 24F
不過你會手刻一樣能手刻,input=output(含找回)+fee 就行了
03/04 19:07, 24F

03/04 19:10, 1年前 , 25F
只要你有能力給那些input有效簽章(有用到的地址私鑰)
03/04 19:10, 25F

03/04 19:13, 1年前 , 26F
你花用同地址的兩筆input只要用該地址的私鑰簽章
03/04 19:13, 26F

03/04 19:13, 1年前 , 27F
你花用不同地址的input,要用那些有用到的地址私鑰
03/04 19:13, 27F

03/04 19:15, 1年前 , 28F
某種程度這也是多簽交易,少了一把交易就不成立無法上鍊
03/04 19:15, 28F

03/04 19:27, 1年前 , 29F
@wahaha99,UTXO這種顛覆傳統的記帳模式絕對才是
03/04 19:27, 29F

03/04 19:28, 1年前 , 30F
中本聰最大的創見 (PoW也不算是中本聰獨立發明的)
03/04 19:28, 30F

03/04 19:29, 1年前 , 31F
確保隱私性只能算是UTXO最不重要的優點
03/04 19:29, 31F

03/04 19:30, 1年前 , 32F
可以說因為有了UTXO才讓Bitcoin有潛力變成
03/04 19:30, 32F

03/04 19:30, 1年前 , 33F
全球通用的電子現金
03/04 19:30, 33F

03/04 19:33, 1年前 , 34F
*UTXO原生性只能被花一次,所以可以達成零確認支付
03/04 19:33, 34F

03/04 19:37, 1年前 , 35F

03/04 19:38, 1年前 , 36F
而account-based則一定要等待確認,甚至是多個確認
03/04 19:38, 36F

03/04 19:39, 1年前 , 37F
以BCH的日常支付來說,三秒等待double-spend proof
03/04 19:39, 37F

03/04 19:40, 1年前 , 38F
就已經非常安全,至於BTC被啥anti-feature搞自行研究
03/04 19:40, 38F

03/04 19:42, 1年前 , 39F
*UTXO因為是stateless,對於全球擴容有極大的優勢
03/04 19:42, 39F

03/04 19:44, 1年前 , 40F
礦工不在乎各錢包甚至是各地址的狀態,就可驗證。
03/04 19:44, 40F

03/04 19:46, 1年前 , 41F
因為礦工驗證的是UTXO狀態而不是address或wallet狀態
03/04 19:46, 41F

03/04 19:47, 1年前 , 42F
甚至有能力達成硬體化的平行驗證,達成極大的TPS
03/04 19:47, 42F

03/04 19:52, 1年前 , 43F

03/04 19:54, 1年前 , 44F

03/04 19:54, 1年前 , 45F
只要有利益,要讓礦工在TPS上再現算力的指數增長根本
03/04 19:54, 45F

03/04 19:55, 1年前 , 46F
小菜一蝶,實在無法想像為什麼現在卡在這邊了
03/04 19:55, 46F

03/04 19:56, 1年前 , 47F
而儲存空間也不成問題,前面已經講過礦工只在乎UTXO
03/04 19:56, 47F

03/04 19:57, 1年前 , 48F
所以歷史狀態都可驗證完後被丟棄。
03/04 19:57, 48F

03/04 19:58, 1年前 , 49F
Bitcoin白皮書第七章: https://tinyurl.com/y6ny6nnh
03/04 19:58, 49F

03/04 20:01, 1年前 , 50F
Bitcoin白皮書第八章提到的SPV錢包也必須依靠UTXO
03/04 20:01, 50F

03/04 20:02, 1年前 , 51F
現在的web3錢包並非是trustless,他必須有可信的RPC
03/04 20:02, 51F

03/04 20:02, 1年前 , 52F
但中本聰提出SPV錢包可以獨立驗證自己的交易是否可信
03/04 20:02, 52F

03/04 20:03, 1年前 , 53F
是一種真的可以在客戶端truetless又去中心化的錢包
03/04 20:03, 53F

03/05 00:41, 1年前 , 54F
感謝回應...我消化一下
03/05 00:41, 54F

03/05 02:48, 1年前 , 55F
想了一下,stateless做到0確認的前提是用的node可信吧?
03/05 02:48, 55F

03/05 02:49, 1年前 , 56F
應該說,要多次確認除了店家怕遇到假帳與雙花,鍊也怕分岔
03/05 02:49, 56F

03/05 02:51, 1年前 , 57F
歷史狀態驗證完就丟棄...那不就沒用到區塊鍊了?
03/05 02:51, 57F

03/05 02:51, 1年前 , 58F
只存在於pool的概念?
03/05 02:51, 58F

03/05 03:13, 1年前 , 59F
要做到接受零確認支付的確前提是必須是well-connected
03/05 03:13, 59F

03/05 03:14, 1年前 , 60F
而Bitcoin錢包預設就會和多個全節點"同時"連接
03/05 03:14, 60F

03/05 03:15, 1年前 , 61F
通常會是六個,也就是這六個節點必需共謀日蝕攻擊
03/05 03:15, 61F

03/05 03:15, 1年前 , 62F
這難度比連到一個不可信的節點還來的高太多
03/05 03:15, 62F

03/05 03:19, 1年前 , 63F
原始區塊鏈是一種timestamp server的觀念
03/05 03:19, 63F

03/05 03:19, 1年前 , 64F
對於一個已經在線上一直運作的節點而言
03/05 03:19, 64F

03/05 03:19, 1年前 , 65F
已經驗證過的區塊以後就不會再驗證一次
03/05 03:19, 65F

03/05 03:20, 1年前 , 66F
當然沒必要留在硬碟占空間,但是區塊鏈還是會一直增長
03/05 03:20, 66F

03/05 03:21, 1年前 , 67F
一直都會有新的區塊需要驗證
03/05 03:21, 67F

03/05 03:21, 1年前 , 68F
而且無論如何一定還是要有一些archieve node
03/05 03:21, 68F

03/05 03:22, 1年前 , 69F
讓一些新加入的驗證節點,有需要的時候可以從頭驗證
03/05 03:22, 69F

03/05 03:22, 1年前 , 70F
一定還是會有一些節點儲存完整的區塊鏈
03/05 03:22, 70F
文章代碼(AID): #1a0j2tHT (DigiCurrency)