在香港茶餐廳買一個菠蘿包配熱奶茶,金額可能是三十多港元;但在比特幣網絡中,隨著資產價格攀升,若直接用「BTC」為單位計價,標籤上往往會出現「0.00005231 BTC」這種長串小數。對於習慣整數計價的普通用戶而言,這種小數點後帶多個零的顯示方式不僅極易看錯,在實際輸入轉帳時也增加了輸錯金額的風險。比特幣社群與應用端逐步將計量單位轉向其最小底層單位——「聰」(Satoshi,簡稱 sat)。比特幣的最小單位是 1 聰,等於 0.00000001 BTC(即一億分之一個比特幣)。1 個完整的比特幣則等於 1 億聰(100,000,000 sats)。

然而,「最小單位」在現實操作中並不僅僅是一道簡單的數學換算題。在區塊鏈的實務運作裡,最小單位牽涉到三個完全不同層級的限制與規則:第一層是協議層源碼規定的最小記帳單位(1 聰);第二層是主網節點為了防範網絡堵塞與垃圾數據而設定的粉塵限制門檻(Dust Limit,通常為數百聰);第三層則是各大中心化交易所、錢包服務商與第二層網絡(Layer 2)所各自制定的下單、提幣與路由計費門檻。深入理解這三層機制的差異,才能在日常轉帳、定投積累以及鏈上資產管理中避免手續費倒貼、交易被節點拒絕或資產鎖死的困境。

「聰」的命名起源與底層代碼設計

「聰」(Satoshi)是以比特幣匿名創始人中本聰(Satoshi Nakamoto)的名字命名。在 2008 年發布的比特幣白皮書中,中本聰並未正式定義「聰」這個字眼,但已經在源碼中確定將 1 顆比特幣細分至小數點後第 8 位。直到 2010 年底至 2011 年初,Bitcointalk 論壇上的早期開發者與社群成員(包括用戶 ribuck 等)提議將 0.01 BTC 稱為 Cent,將 0.00000001 BTC 定義為最小單位並命名為「Satoshi」,該提議最終獲得社群廣泛認同並寫入後續的客戶端代碼標準中。

從計算機科學與底層代碼架構來看,比特幣網絡在底層並沒有「浮點數」的概念。也就是說,在 Bitcoin Core 核心代碼與分佈式帳本中,根本不存在「0.5 BTC」或「0.00000001 BTC」這樣帶有小數點的儲存格式。所有在鏈上流轉的未花費交易輸出(UTXO),其數額一律以 64 位元帶符號整數(Signed 64-bit Integer,即 int64_t)記錄為整數聰。

為什麼底層堅持使用整數聰記帳?

計算機在處理浮點數(小數)運算時,受限於 IEEE 754 標準,極容易因二進制與十進制轉換而產生微小的「浮點精度誤差」(Rounding Errors)。在金融帳本中,哪怕是 0.0000000000001 的誤差都會導致節點間帳目不一致,進而引發區塊鏈共識破裂(硬分叉)。比特幣將所有金額在底層視為「整數個聰」,從源頭杜絕了浮點數運算的捨入風險,前端錢包看到的 BTC 小數只是軟體介面展示時進行的除法換算。

比特幣的總發行量上限設定為 2,100 萬顆。將 2,100 萬乘以每顆 1 億聰,整個比特幣網絡最終存在的總聰數上限為:

21,000,000 × 100,000,000 = 2,100,000,000,000,000 聰(即 2,100 兆聰)

這個總數為 2.1 × 1015 聰,遠低於 64 位元整數所能表示的最大上限(9,223,372,036,854,775,807,約 9.22 × 1018),同時也完全落在各類編程語言安全整數(JavaScript MAX_SAFE_INTEGER 為 9.007 × 1015)的精準運算範圍內。中本聰在設計之初對小數位數與總量的選取,展現了極為嚴密的工程學考量。

比特幣度量單位全覽與換算對照

隨著比特幣歷史發展,市場與開發者曾推出過多種中間過渡單位,以適應不同時期的幣價水平與支付場景。下表列出比特幣體系中所有標準與歷史度量單位的換算關係:

單位名稱 符號 / 簡稱 以 BTC 表示 以 聰(sat)表示 主要歷史與實務場景
比特幣 (Bitcoin) BTC 1 100,000,000 大額資產結算、機構儲備與宏觀市場報價
分比特 (Bitcent) cBTC 0.01 1,000,000 早期社群曾用,現已極少使用
毫比特 (Millibitcoin) mBTC 0.001 100,000 2013-2017 年礦池結算與論壇打賞常見單位
微比特 (Microbitcoin / Bit) μBTC / bit 0.000001 100 曾被部分錢包提倡為日常消費單位(1 bit = 100 sats)
芬尼 (Finney) Finney 0.0000001 10 紀念 Hal Finney 曾提議的單位(以太坊採納了此概念)
聰 (Satoshi) sat / sats 0.00000001 1 比特幣主網底層原生最小記帳單位
毫聰 (Millisatoshi) msat 0.00000000001 0.001 閃電網絡(Layer 2)通道內部路由計費單位

快速心算與補零換算法

在日常轉帳與查看錢包時,將 BTC 換算為聰只需記住「向右移動 8 位小數點」;反之,將聰換算為 BTC 則是「向左移動 8 位小數點」。例如:

  • 0.1 BTC = 10,000,000 sats(一千萬聰)
  • 0.01 BTC = 1,000,000 sats(一百萬聰)
  • 0.001 BTC = 100,000 sats(十萬聰)
  • 0.0001 BTC = 10,000 sats(一萬聰)
  • 0.00001 BTC = 1,000 sats(一千聰)
  • 0.000001 BTC = 100 sats(一百聰)

鏈上粉塵限制(Dust Limit):為何無法單獨轉帳 1 聰?

許多初學者在理解「最小單位是 1 聰」後,常會嘗試在鏈上發起一筆 1 聰的轉帳,結果卻被錢包或節點報錯拒絕。這是因為在比特幣主網上,存在一條名為「粉塵交易限制(Dust Limit)」的節點安全防禦規則。

1. 什麼是粉塵輸出?

在比特幣的 UTXO 模型中,全網所有全節點(Full Node)都必須將目前所有未花費的 UTXO 存儲在系統記憶體(RAM)中,以便毫秒級驗證新交易的合法性。如果允許用戶隨意在鏈上創建金額極小(例如 1 聰、2 聰)的輸出,攻擊者就可以花費極低的成本製造數以億計的微小 UTXO,這將迅速撐爆全球節點的記憶體,構成拒絕服務攻擊(DoS)。

為了防止這種情況,Bitcoin Core 開發團隊設定了粉塵門檻:如果一個 UTXO 在未來花費它時所需的礦工手續費,超過了該 UTXO 本身價值的 1/3 或全部價值,該輸出就被定義為「粉塵(Dust)」,主網節點預設將拒絕轉發包含該輸出的交易。

比特幣最小單位是多少:1. 什麼是粉塵輸出?相关概念与关系示意
為了防止這種情況,Bitcoin Core 開發團隊設定了粉塵門檻:如果一個 UTXO 在未來花費它時所需的礦工手續費,超過了該 UTXO 本身價值的 1/3 或全部價值,該輸出就被定義為「粉塵(Du

2. 各類地址格式的具體粉塵數值

粉塵門檻並非一個固定死板的數字,而是根據花費該 UTXO 所需的字節大小(腳本長度)以及網絡基礎費率基準計算得出的。由於不同類型的比特幣地址結構不同,其解鎖腳本所佔用的字節大小不同,對應的粉塵門檻也有明顯差異:

地址類型 前綴標識 花費輸入典型大小 標準粉塵門檻
傳統 Legacy (P2PKH) 1... 約 148 bytes 546 sats
兼容 SegWit (P2SH-P2WPKH) 3... 約 91 vBytes 540 sats
原生隔離見證 Native SegWit (P2WPKH) bc1q... 約 68 vBytes 294 sats
主根地址 Taproot (P2TR) bc1p... 約 57.5 vBytes 330 sats

從上表可見,如果使用的是常見的 Native SegWit(bc1q 開頭)地址,鏈上轉帳的單筆輸出金額至少需要達到 294 聰;若向傳統 1 開頭地址轉帳,則至少需要達到 546 聰。任何低於該閾值的鏈上轉帳請求,都會被節點 Mempool 視為非標準交易(Non-standard Transaction)而直接拋棄。

第二層網絡的微支付:閃電網絡與「毫聰(msat)」

既然主鏈存在 294 至 546 聰的粉塵限制,那麼在現實生活中的高頻、極微額支付(例如閱讀單篇文章付費 5 聰、按音訊播放秒數支付 1 聰)該如何實現?這正是比特幣第二層擴展方案——閃電網絡(Lightning Network)發揮作用的地方。

閃電網絡透過在鏈下建立雙向雙重簽名支付通道(Payment Channels),使交易無需每一筆都打包上鏈。為了在多個節點之間進行精確的手續費路由計算,閃電網絡引入了比主網聰更小的細分單位:毫聰(Millisatoshi,簡稱 msat)。

毫聰的換算關係:

  • 1 聰(sat)= 1,000 毫聰(msat)
  • 1 毫聰(msat)= 0.001 聰(sat)= 0.00000000001 BTC(百億分之一顆比特幣)

在閃電網絡中,節點為轉發支付提供的路由服務費通常極為低廉,例如轉發一筆支付可能僅收取 1 個 msat 加上轉帳金額的百萬分之一。這種極細顆粒度的計量方式完全由通道狀態機(Commitment Transactions)在鏈下維護。當用戶最終決定關閉閃電通道並將資產結算回比特幣主鏈時,通道結算程序會將累積的 msat 進行向下取整或按共識規則捨入為整數聰,最終以符合主網規則的整數聰寫入比特幣 UTXO 帳本。

Ordinals 協議與「序數理論」:每一聰都有獨立編號

在 2023 年初由 Casey Rodarmor 提出的 Ordinals(序數)協議,徹底改變了社群對「聰」的理解。在過去,人們普遍認為所有的聰都是完全同質化(Fungible)的——任何 1 聰與另外 1 聰在價值和屬性上沒有任何不同。

然而,Ordinals 協議根據比特幣產出的時間先後順序,為歷史上產出的每一顆聰分配了一個全球唯一的序數編號(從 0 一直到 2,099,999,999,999,999)。在此基礎上,開發者可以直接將圖片、文本、音訊等數據寫入 Taproot 腳本的見證數據區(Witness),這就是所謂的「銘文(Inscriptions)」,相當於直接將數據刻在特定的某「1 聰」之上。

稀有度等級 定義條件 全網總量預估
Common(普通) 非區塊產出的第一個聰的所有普通聰 佔全網總量 99% 以上
Uncommon(不尋常) 每個新區塊產出的第一個聰 約 6,929,999 個
Rare(稀有) 每個難度調整週期(2,016 個區塊)的第一個聰 約 3,437 個
Epic(史詩) 每次減半週期(210,000 個區塊)的第一個聰 僅 32 個
Legendary(傳奇) 每逢減半週期與難度調整重合(約每 6 次減半)的第一個聰 僅 5 個
Mythic(神話) 創世區塊(Genesis Block)的第一個聰(中本聰所挖掘) 僅有 1 個

由於特定序號的聰具備收藏價值與溢價,這促成了鏈上生態中的「尋聰(Sat Hunting)」現象。在進行鏈上常規轉帳時,用戶需特別留意專用錢包(如 Unisat、Xverse 等)的 UTXO 鎖定設定,避免在支付常規礦工費時,不小心將附帶珍貴銘文或稀有屬性的聰作為手續費消耗掉。

中心化交易所與香港投資者實務操作限制

對於香港及全球大多數透過中心化交易所(CEX,例如香港持牌虛擬資產交易平台 HashKey Exchange、OSL,以及其他國際主流平台)買賣比特幣的投資者而言,日常交易中感受到的限制通常並非來自鏈上粉塵限制,而是來自平台內部的業務規則:

  1. 最低下單門檻(Minimum Order Size):
    交易所為了維持訂單簿的流動性撮合效率,通常會設定單筆掛單的最低法定貨幣金額或最低 BTC 數量。一般而言,現貨交易的最低下單金額多設定在 5 至 10 美元(約 40 至 80 港元)等值 BTC,數量下限通常為 0.0001 BTC(10,000 聰)或 0.00001 BTC(1,000 聰)。
  2. 最低提幣限制(Minimum Withdrawal Limit):
    將比特幣從交易所提現至個人冷錢包或鏈上錢包時,交易所設定的最低門檻通常遠高於鏈上粉塵。例如,許多平台規定單次提幣最低數量為 0.0005 BTC(50,000 聰)至 0.001 BTC(100,000 聰)。若帳戶內餘額不足該門檻,則無法發起提現。
  3. 固定提現手續費(Flat Withdrawal Fee):
    中心化平台向用戶收取的提幣手續費往往是固定數額(例如 0.0001 BTC 至 0.0002 BTC,即 10,000 至 20,000 聰),而非實時鏈上手續費。如果用戶提現金額較小(例如僅提現 0.0005 BTC),固定手續費可能佔去本金的 20% 至 40%,形成極高的摩擦成本。

實務操作建議:定期定額(DCA)與 UTXO 管理策略

比特幣最小單位是多少:中心化交易所與香港投資者實務操作限制相关概念与关系示意
實務操作建議:定期定額(DCA)與 UTXO 管理策略

對於習慣每月小額定投(例如每次買入 500 港元)的投資者,切忌頻繁將每一筆微小金額單獨提現至鏈上個人地址。這樣會在錢包中積累大量數額僅幾萬聰的「碎屑 UTXO」。未來當比特幣鏈上手續費高漲時,一次轉帳若需合併數十個 UTXO 輸入,產生的礦工費可能高達數十美元。較佳策略是在交易所內累積至較大金額(如 0.01 BTC 以上)後,再發起單筆提幣,或在鏈上費率較低(如 10 sats/vB 以下)的週末離峰時段進行 UTXO 整合合併(Consolidation)。

關於比特幣最小單位的常見認知誤區

誤區一:BRC-20 的「SATS」代幣就是比特幣的「聰」?

這是一個非常普遍的概念混淆。市場上熱門的 SATS(或 1000SATS)是一個基於 Ordinals 協議刻寫在比特幣鏈上的 BRC-20 格式 Meme 代幣,其總量為 2,100 兆枚,純粹是在向比特幣最小單位致敬。持有 1 個 BRC-20 SATS 代幣,並不代表擁有 1 聰原生比特幣(BTC)。原生比特幣的聰是帳本底層的貨幣單位,而 BRC-20 SATS 只是鏈上腳本銘文衍生出的次級資產。

誤區二:買 0.001 顆比特幣需要付出更高的單位單價?

比特幣現貨交易市場遵循「撮合定價」,不存在零售分裝加價的機制。在相同時間點,無論是買入 10 顆 BTC 還是買入 0.001 顆 BTC,其成交的單價基準是完全一致的。不過,小額買入時需要特別留意交易所收取的「最低手續費」或法幣入金通道的固定成本,以避免總成本比例被攤薄。

誤區三:比特幣未來如果漲到數百萬美元,8 位小數不夠用怎麼辦?

在技術上,比特幣網絡若未來確實需要更小的分割精度,可以透過全網軟分叉或硬分叉升級來增加小數點位數(例如擴展至 16 位或 18 位小數)。然而,目前閃電網絡(毫聰 msat)與各類 Layer 2 側鏈已經在鏈下實現了比 1 聰小 1,000 倍甚至更小的計量精度,且主網目前結算粒度依然足夠支撐龐大經濟體系,因此在可預見的未來,修改主網 8 位小數的共識規則並無緊迫性。

免責聲明:虛擬資產價格具有高度波動性,過往表現不代表未來收益。涉及鏈上轉帳、私鑰保管、交易所下單手續費及相關法規合規要求,請以各大平台與監管機構官方公佈之最新指引為準。

常見問題(FAQ)

1. 比特幣最小單位是多少?

比特幣主網協議層的原生最小單位是「聰」(Satoshi,簡稱 sat)。1 聰等於 0.00000001 BTC(一億分之一個比特幣)。1 個完整的比特幣等於 100,000,000 聰。

2. 0.0001 BTC 等於多少聰?

0.0001 BTC 等於 10,000 聰(sats)。換算方法只需將 0.0001 乘以 100,000,000,或將小數點向右移動 8 位即可。

3. 為什麼我不能在鏈上轉帳 1 聰給朋友?

雖然協議最小單位是 1 聰,但比特幣節點為了防範網絡遭受垃圾交易與記憶體膨脹攻擊,設置了「粉塵交易限制(Dust Limit)」。在原生隔離見證地址下,單筆輸出的最低門檻通常為 294 聰;在傳統 1 開頭地址下則為 546 聰。低於此門檻的單筆轉帳會被節點判定為粉塵輸出而拒絕廣播。

4. 閃電網絡中的「毫聰(msat)」是什麼?

毫聰是閃電網絡(Layer 2)內部專用的微計費單位。1 聰 = 1,000 毫聰(即 1 毫聰 = 0.001 聰 = 0.00000000001 BTC)。它用於精準計算高頻微支付中的路由轉發費用,通道在關閉並回歸主鏈結算時會自動捨入為整數聰。

5. 什麼是「單位偏見(Unit Bias)」?

單位偏見是指許多剛接觸虛擬資產的新手,看到「1 顆比特幣要數十萬港元」就誤以為自己買不起,轉而購買單價看似便宜但基本面欠佳的空氣幣。事實上,比特幣可以任意購買 0.001 顆甚至幾萬聰,資產的漲跌幅度完全按百分比計算,與單枚整數價格高低無關。

6. 如何避免錢包內產生無法轉出的「死粉塵」?

盡量使用原生隔離見證(bc1q)或 Taproot(bc1p)地址以降低粉塵門檻;避免將極小額的代幣分批多次提現到不同地址;在手續費費率較低時(如週末或鏈上 Mempool 清空時),手動將錢包內的多個小額 UTXO 發送給自己的同一地址完成合併。