ข้ามไปยังเนื้อหา
BitcoinToolkit

พื้นฐานของ Bitcoin

Satoshi คืออะไร?

satoshi คือหน่วยที่เล็กที่สุดที่แสดงใน Bitcoin เรียนรู้ความสัมพันธ์ BTC หน่วยกลาง และตัวอย่างการแปลงที่แม่นยำ.

คำตอบโดยตรง

satoshi คือหน่วยที่เล็กที่สุดที่แสดงใน Bitcoin เรียนรู้ความสัมพันธ์ BTC หน่วยกลาง และตัวอย่างการแปลงที่แม่นยำ.

satoshi คือหน่วยย่อยที่เล็กที่สุดที่บันทึกในผลลัพธ์ของธุรกรรม Bitcoin หนึ่ง bitcoin ประกอบด้วย 100,000,000 satoshis อย่างแน่นอน แต่ความสัมพันธ์คงที่นั้นเป็นเพียงจุดเริ่มต้น กระเป๋าเงิน คำขอชำระเงิน ใบแจ้งหนี้ Lightning การประมาณค่าธรรมเนียมธุรกรรม การแลกเปลี่ยน ระบบบัญชี และ API ทั้งหมดสามารถแสดงตัวเลขที่เกี่ยวข้องซึ่งใช้หน่วยที่แตกต่างกันและตอบคำถามที่แตกต่างกันได้.

กระเป๋าเงินอาจแสดง 0.00025000 BTC ในขณะที่ใบแจ้งหนี้แสดง 25,000 sats. ค่าเหล่านั้นแสดงจำนวน bitcoin เท่ากัน ค่าที่เขียนเป็น 25 sat/vB, อย่างไรก็ตาม คืออัตราค่าธรรมเนียมธุรกรรม ไม่ใช่ยอดคงเหลือ ค่าที่เขียนเป็น 25,000 msat เกี่ยวข้องกับการบัญชี Lightning และเท่ากับ 25 sats ไม่ใช่ 25,000 sats.

ภารกิจในทางปฏิบัติจึงไม่ใช่แค่การจดจำอัตราส่วนการแปลงเพียงค่าเดียว แต่คือการเรียนรู้ที่จะรักษาหน่วยไว้ รู้จักความแม่นยำระดับ satoshi ทั้งหมด แยกแยะจำนวนเงินจากอัตราค่าธรรมเนียม และยืนยันว่าซอฟต์แวร์ไม่ได้เปลี่ยนค่าโดยไม่รู้ตัวผ่านการปัดเศษหรือการจัดรูปแบบ.

หนึ่ง bitcoin มีกี่ satoshi?

หนึ่ง bitcoin มี 100 ล้าน satoshi พอดี ความสัมพันธ์นี้คงที่:

1 BTC = 100,000,000 sats
1 sat = 0.00000001 BTC

“Satoshi” คือชื่อหน่วยเต็ม “Sat” คือคำย่อเอกพจน์ที่ใช้ทั่วไป ในขณะที่ “sats” มักใช้สำหรับปริมาณพหูพจน์ ชื่อนี้ให้เกียรติแก่ Satoshi Nakamoto ผู้เขียนนามแฝงของ Bitcoin white paper.

อัตราส่วนนี้ไม่เปลี่ยนแปลงตามราคาตลาดของ bitcoin หนึ่ง sat ยังคงเป็นหนึ่งในร้อยล้านของหนึ่ง BTC ไม่ว่า BTC จะซื้อขายสูงขึ้น ต่ำลง หรือไม่มีการกำหนดราคา fiat เลยก็ตาม ราคาตลาดเปลี่ยนแปลงอำนาจซื้อ แต่ไม่เปลี่ยนหน่วยเงินตรา.

ความแตกต่างนี้แยกการคำนวณสองแบบออกจากกัน การแปลงหน่วยเงินตราตอบคำถามว่า “จำนวนนี้แทน bitcoin เท่าใด?” การแปลง fiat ตอบคำถามว่า “จำนวนนั้นมีมูลค่าเท่าใดตามอัตราแลกเปลี่ยนและเวลาเฉพาะ?” กระเป๋าเงินสามารถอัปเดตการประมาณการเป็นดอลลาร์ได้โดยไม่เปลี่ยนจำนวน satoshi.

จำนวนเต็มภายใน transaction output

Bitcoin ไม่ได้เก็บจำนวนเงิน output เป็นสตริง BTC ทศนิยมเช่น 0.00234567. transaction output ประกอบด้วยค่าจำนวนเต็มที่วัดเป็น satoshi และ locking script ที่กำหนดเงื่อนไขที่ค่าดังกล่าวจะถูกใช้จ่ายในภายหลัง.

Bitcoin Core กำหนดจำนวนเงินด้วยชนิดจำนวนเต็มที่เรียกว่า CAmount และกำหนดหนึ่ง BTC เป็น 100,000,000 satoshis รูปแบบ transaction ที่บันทึกไว้ยังแสดงค่า output แต่ละค่าเป็นจำนวนเต็มของ satoshi.

สมมติว่า transaction output มีจำนวนเต็ม:

234567

output นั้นมี 234,567 sats พอดี กระเป๋าเงินอาจแสดงค่าเดียวกันเป็น:

  • 234,567 sats
  • 2,345.67 bits
  • 2.34567 mBTC
  • 0.00234567 BTC

การแสดงผลเปลี่ยนไป แต่จำนวนเต็มพื้นฐานไม่เปลี่ยน นี่คือเหตุผลที่กระเป๋าเงินสองใบสามารถแสดงหน่วยเงินตราที่แตกต่างกันได้โดยไม่ขัดแย้งกันเกี่ยวกับจำนวนเงินที่กระเป๋าเงินควบคุม.

เป็นที่รู้กันทั่วไปว่า Bitcoin รองรับทศนิยมแปดตำแหน่ง คำอธิบายที่แม่นยำกว่าคือ หนึ่ง BTC ถูกกำหนดเป็น 100,000,000 satoshi จำนวนเต็ม ดังนั้นอินเทอร์เฟซที่แสดงรูปแบบ BTC จึงสามารถแสดงจำนวน satoshi ทั้งหมดได้ถึงทศนิยมแปดตำแหน่ง จุดทศนิยมเป็นส่วนหนึ่งของชั้นการนำเสนอ ไม่ใช่ส่วนหนึ่งของเอาต์พุตธุรกรรมที่ถูกทำให้เป็นอนุกรม.

ทำไมทศนิยมแปดตำแหน่งของ BTC จึงมีความสำคัญ

เนื่องจากหนึ่ง BTC เท่ากับ 100,000,000 sats ทศนิยมแปดตำแหน่งในจำนวนที่แสดงในรูปแบบ BTC จึงถึงขอบเขตของ satoshi ทั้งหมด:

0.00000001 BTC = 1 sat

ทศนิยมตำแหน่งที่เก้าที่ไม่เป็นศูนย์หมายถึงเศษส่วนของ satoshi ตัวอย่างเช่น:

0.000000015 BTC × 100,000,000
= 1.5 sats

เอาต์พุตธุรกรรมเลเยอร์ฐานของ Bitcoin ไม่สามารถเข้ารหัส 1.5 sats ได้ เนื่องจากช่องค่าของมันบันทึกเป็นจำนวนเต็ม ซอฟต์แวร์ต้องปฏิเสธค่านั้นหรือใช้กฎการปัดเศษที่ชัดเจนก่อนสร้างธุรกรรม.

เลขศูนย์ต่อท้ายที่เกินมาไม่ได้สร้างความแม่นยำทางเศรษฐกิจเพิ่มเติม สตริงสองรายการนี้ยังคงแทนจำนวนเดียวกัน:

0.00000001 BTC
0.000000010 BTC

ทั้งสองมีค่าเท่ากับหนึ่ง sat พอดี สตริงที่สองมีตำแหน่งทศนิยมที่แสดงเพิ่มขึ้นหนึ่งตำแหน่ง แต่ตัวเลขที่เก้าเป็นศูนย์.

ตอนนี้เปรียบเทียบ:

0.000000010 BTC = 1 sat
0.000000011 BTC = 1.1 sats

จำนวนแรกสามารถแสดงได้อย่างแม่นยำบนเลเยอร์พื้นฐานของ Bitcoin จำนวนที่สองไม่สามารถ ปัญหาไม่ใช่จำนวนตัวอักษรหลังจุดทศนิยมโดยตัวมันเอง ปัญหาคือค่าที่ไม่เป็นศูนย์เกินกว่าความแม่นยำของ satoshi ทั้งหน่วย.

BTC, mBTC, bits และ sats

BTC, mBTC, bits และ sats เป็นวิธีที่แตกต่างกันในการเขียนจำนวน Bitcoin แบบเดียวกัน พวกมันคือหน่วยย่อย ไม่ใช่สินทรัพย์แยกต่างหาก การเปลี่ยนหน่วยย่อยจะเปลี่ยนตำแหน่งของจุดทศนิยม มันไม่ได้ย้ายเงิน เปลี่ยนความเป็นเจ้าของ หรือสร้างเอาต์พุตธุรกรรมที่แตกต่างกัน.

ความสัมพันธ์ของหน่วยคงที่

หน่วยค่าใน BTCSatoshi ต่อหน่วยการเพิ่มขึ้นของ satoshi ทั้งหน่วยที่เล็กที่สุด
BTC1 BTC100,000,000 sats0.00000001 BTC
mBTC0.001 BTC100,000 sats0.00001 mBTC
bit หรือ μBTC0.000001 BTC100 sats0.01 bit
sat0.00000001 BTC1 sat1 sat

มิลลิบิตคอยน์ เขียนว่า mBTC คือหนึ่งในพันของหนึ่ง BTC ดังนั้นจึงเท่ากับ 100,000 sats บิต หรือเรียกอีกอย่างว่าไมโครบิตคอยน์หรือ μBTC เท่ากับ 100 sats BIP 176 อธิบายว่า “bit” เป็นหน่วยแสดงผล ไม่ใช่สินทรัพย์แยกต่างหาก.

จำนวน 25,000-sat เท่ากันสามารถเขียนได้เป็น:

  • 25,000 sats
  • 250 bits
  • 0.25 mBTC
  • 0.00025 BTC

ไม่มีการเพิ่มหรือลบอะไร มีเพียงหน่วยที่เปลี่ยนไป.

แต่ละหน่วยยังมีขอบเขตความแม่นยำของ satoshis ทั้งหมดที่แตกต่างกัน ฟิลด์ BTC สามารถแสดง sats ทั้งหมดได้ถึงทศนิยมแปดตำแหน่ง ฟิลด์ mBTC ไม่ต้องการทศนิยมเกินห้าตำแหน่งสำหรับความแม่นยำของ sats ทั้งหมด ฟิลด์ bit ถึงหนึ่ง sat ที่ทศนิยมสองตำแหน่ง ฟิลด์ sat ควรมีจำนวนเต็มเมื่อแสดงจำนวนชั้นฐาน.

จุดทศนิยมเป็นตัวเลือกการแสดงผล

กระเป๋าเงินสามารถแสดงยอดคงเหลือเป็น BTC แม้ว่าเอาต์พุตธุรกรรมที่อยู่เบื้องหลังยอดคงเหลือนั้นจะมีค่า satoshi เป็นจำนวนเต็ม กระเป๋าเงินอื่นอาจแสดงยอดคงเหลือเดียวกันเป็น sats ระบบบัญชีอาจใช้ mBTC ในขณะที่อินเทอร์เฟซการชำระเงินขนาดเล็กอาจใช้ bits.

BTC มักสะดวกสำหรับยอดคงเหลือที่ใหญ่กว่า Sats ง่ายต่อการตรวจสอบสำหรับการชำระเงินขนาดเล็กและค่าธรรมเนียมเพราะไม่ต้องมีเลขศูนย์นำหน้าจำนวนมาก Bits ให้สเกลกลาง แม้ว่าซอฟต์แวร์ไม่จำเป็นต้องเสนอทุกหน่วย.

ไม่มีหน่วยแสดงผลใดที่จริงมากกว่าหน่วยอื่น สำหรับการคำนวณชั้นฐานที่แม่นยำ ทั้งหมดจะแปลงเป็นจำนวนเต็ม canonical ของ sats.

ทำไมกระเป๋าเงินถึงเลือกหน่วยที่แตกต่างกัน

อินเทอร์เฟซกระเป๋าเงินเลือกหน่วยเพื่อความอ่านง่าย ค่าเช่น 0.00000100 BTC อาจง่ายต่อการจดจำว่าเป็น 100 sats ยอดคงเหลือที่ใหญ่กว่าอาจง่ายต่อการเปรียบเทียบเป็น BTC อินเทอร์เฟซอาจอนุญาตให้ผู้ใช้เปลี่ยนหน่วยโดยไม่เปลี่ยนจำนวนจริง.

ป้ายหน่วยต้องมองเห็นได้ ตัวเลขเช่น 100000 ไม่สมบูรณ์ด้วยตัวเองเพราะอาจหมายถึง 100,000 sats, 100,000 bits, 100,000 mBTC หรือ 100,000 BTC.

ใช้ ตัวแปลง Satoshi เมื่อภารกิจคือการแปลงจำนวนที่แน่นอนระหว่าง BTC, mBTC, bits และ sats ตัวแปลงจะดำเนินการคำนวณ คู่มือนี้จะอธิบายว่าทำไมหน่วยถึงทำงานแบบนั้น.

การแปลงที่แม่นยำโดยไม่มีการปัดเศษอย่างเงียบ ๆ

การแปลง Bitcoin ที่เชื่อถือได้ต้องรักษาจำนวนเงินทางเศรษฐกิจไว้ ไม่ควรยอมรับทศนิยมที่มีความละเอียดเกินไป ปัดเศษอย่างเงียบ ๆ แล้วนำเสนอผลลัพธ์ที่ถูกปัดเศษราวกับว่าไม่มีการเปลี่ยนแปลงใด ๆ.

การตรวจสอบ satoshi ทั้งจำนวน

สำหรับอินพุต BTC การแปลงหลักคือ:

sats = BTC × 100,000,000

เพื่อให้ผลลัพธ์ถูกแสดงอย่างแม่นยำในเอาต์พุตเลเยอร์ฐานของ Bitcoin ค่า satoshi ต้องเป็นจำนวนเต็ม.

อินพุต BTCผลลัพธ์ satoshi ที่แม่นยำสถานะเลเยอร์ฐาน
0.00000001 BTC1 satแม่นยำ
0.000000010 BTC1 satแม่นยำ; ศูนย์ต่อท้ายพิเศษ
0.000000015 BTC1.5 satsแม่นยำเกินไป
0.00234567 BTC234,567 satsแม่นยำ
0.002345675 BTC234,567.5 satsแม่นยำเกินไป

ผลลัพธ์ที่แม่นยำเกินไปไม่เหมือนกับสตริงอักขระที่ไม่ถูกต้อง ทศนิยมอาจมีความหมายทางคณิตศาสตร์ แต่ไม่สามารถกลายเป็นเอาต์พุต satoshi ทั้งหน่วยที่แน่นอนได้โดยไม่เปลี่ยนจำนวน.

ความแม่นยำเกินไปและการปัดเศษแบบเงียบ

พิจารณาอินพุตนี้:

0.002345675 BTC

การแปลงที่แน่นอนคือ:

0.002345675 × 100,000,000
= 234,567.5 sats

หากซอฟต์แวร์ตัดทอนค่า จะสร้าง 234,567 sats หากปัดขึ้น จะสร้าง 234,568 sats ไม่มีเอาต์พุตใดเหมือนกับจำนวนทางคณิตศาสตร์ดั้งเดิม.

ความแตกต่าง sat หนึ่งหน่วยอาจมีค่าน้อยทางการเงิน แต่พฤติกรรมยังคงมีความสำคัญ ซอฟต์แวร์การเงินที่กำหนดได้ควรให้ผลลัพธ์เดียวกันสำหรับอินพุตเดียวกัน ระบบสองระบบที่ใช้กฎการปัดเศษซ่อนเร้นต่างกันอาจไม่สอดคล้องกัน การปัดเศษซ่อนเร้นซ้ำๆ ยังสามารถสร้างความแตกต่างในการกระทบยอดในหลายระเบียน.

อินเทอร์เฟซที่ชัดเจนควรแยกความแตกต่างระหว่างสามสถานะ:

  1. แม่นยำ: อินพุตแปลงเป็นจำนวนเต็มของ sats.
  2. แม่นยำเกินไป: อินพุตต้องใช้เศษส่วนของ satoshi.
  3. ไม่ถูกต้อง: ข้อความไม่สามารถแยกวิเคราะห์เป็นจำนวนในหน่วยที่เลือก.

การปฏิเสธจำนวนชั้นฐานที่แม่นยำเกินไปมักชัดเจนกว่าการใช้กฎการปัดเศษซ่อนเร้น เมื่อแอปพลิเคชันปัดเศษ ควรระบุกฎและแสดงค่าหลังการปัดเศษก่อนที่ผู้ใช้จะอนุมัติธุรกรรม.

ทำไม floating point สามารถเปลี่ยนผลลัพธ์ได้

เศษส่วนทศนิยมจำนวนมากไม่สามารถแสดงได้อย่างแม่นยำด้วยเลขคณิต floating point ไบนารีทั่วไป ซอฟต์แวร์อาจเก็บค่าไว้สูงหรือต่ำกว่าข้อความทศนิยมที่ผู้ใช้ป้อนเล็กน้อย.

เมื่อค่าประมาณนั้นคูณด้วย 100,000,000 และปัดเศษเป็นจำนวนเต็ม มันสามารถข้ามขอบเขต satoshi ทั้งหน่วย การแปลงที่คุ้นเคยส่วนใหญ่อาจดูถูกต้อง แต่ความถูกต้องไม่ควรขึ้นอยู่กับการประมาณที่มองไม่เห็น.

ลำดับการแปลงที่ปลอดภัยกว่าคือ:

  1. อ่านจำนวนเป็นสตริงทศนิยม.
  2. ระบุหน่วยที่เลือก.
  3. ทำให้สตริงเป็นมาตรฐานโดยไม่แปลงเป็น floating point ไบนารี.
  4. ปรับขนาดทศนิยมเป็น sats จำนวนเต็ม.
  5. ปฏิเสธตัวเลขที่ไม่ใช่ศูนย์เกินความแม่นยำของ satoshi ทั้งหน่วย.
  6. สร้างหน่วยแสดงผลทุกหน่วยจากค่าจำนวนเต็มเดียวกัน.

เมื่อซอฟต์แวร์มีจำนวนเต็มมาตรฐานของ sats แล้ว ก็สามารถหามา BTC, mBTC และ bits ได้โดยไม่สูญเสียจำนวนพื้นฐาน การแปลงแบบไปกลับสามารถทดสอบได้:

สตริงทศนิยม BTC
→ sats จำนวนเต็ม
→ สตริงทศนิยม BTC

การแปลงที่แม่นยำและถูกต้องจะคืนค่าเศรษฐกิจเดียวกันหรือปฏิเสธอินพุตดั้งเดิมอย่างชัดเจนว่าแม่นยำเกินไป.

ตัวอย่างการแปลงที่ทำซ้ำได้

ใช้จำนวน BTC นี้:

0.00234567 BTC

แปลง BTC เป็น sats:

0.00234567 × 100,000,000
= 234,567 sats

แปลง BTC เป็น mBTC:

0.00234567 × 1,000
= 2.34567 mBTC

แปลง sats เป็น bits:

234,567 ÷ 100
= 2,345.67 bits

การแสดงผลที่แม่นยำทั้งสี่แบบจึงเป็นดังนี้:

  • 0.00234567 BTC
  • 2.34567 mBTC
  • 2,345.67 bits
  • 234,567 sats

จำนวนเงินยังคงไม่เปลี่ยนแปลงในทุกขั้นตอน การแสดงผลแต่ละครั้งได้มาจากจำนวนเต็ม satoshi ที่เหมือนกันทุกประการ.

Sats ในกระเป๋าเงินและคำขอชำระเงิน

ยอดคงเหลือในกระเป๋าเงินที่แสดงอาจดูเหมือนตัวเลขหนึ่งตัว แต่ bitcoin บนเชนถูกแสดงผ่าน transaction outputs กระเป๋าเงินสามารถควบคุม unspent transaction outputs หลายรายการ ซึ่งมักเรียกว่า UTXOs และรวมค่า satoshi ของพวกมันเพื่อแสดงยอดคงเหลือรวมหนึ่งค่า.

ยอดคงเหลือในกระเป๋าเงินคือผลรวมของ UTXOs

กระเป๋าเงินอาจควบคุม UTXOs สามรายการ:

40,000 sats
75,000 sats
119,567 sats

ยอดคงเหลือที่แสดงคือ:

40,000
+ 75,000
+ 119,567
= 234,567 sats

กระเป๋าเงินนี้ควบคุมจำนวนเงินรวมเท่ากับกระเป๋าเงินที่ถือ UTXO หนึ่งรายการมูลค่า 234,567-sat การแปลงหน่วยเหมือนกัน แต่โครงสร้างการใช้จ่ายในอนาคตไม่เหมือนกัน.

อินพุตสามรายการสามารถสร้างธุรกรรมที่ใหญ่กว่าอินพุตหนึ่งรายการ ซึ่งสามารถเปลี่ยนขนาดเสมือน ค่าธรรมเนียมเครือข่าย โครงสร้าง change-output และผลกระทบต่อความเป็นส่วนตัว Sats อธิบายมูลค่า UTXOs อธิบายว่ามูลค่านั้นถูกล็อกไว้ที่ใดและจะใช้จ่ายได้อย่างไร.

สิ่งนี้อธิบายว่าทำไมกระเป๋าเงินสองใบที่มียอดคงเหลือเท่ากันจึงสามารถได้รับการประมาณค่าธรรมเนียมธุรกรรมที่แตกต่างกัน ยอดคงเหลือสามารถเหมือนกันใน sats ในขณะที่โครงสร้างอินพุตที่เลือกแตกต่างกัน.

จำนวนเงิน Bitcoin URI ใช้ BTC

คำขอชำระเงิน Bitcoin สามารถระบุจำนวนเงินใน bitcoin: URI BIP 321 ระบุพารามิเตอร์จำนวนเงินเป็นทศนิยม BTC.

bitcoin:<address>?amount=0.001

จำนวนเงินหมายถึง:

0.001 BTC
= 100,000 sats

มันไม่ได้หมายถึง 0.001 sat กระเป๋าเงินอาจแสดงการชำระเงินที่แยกวิเคราะห์แล้วใน sats แต่จำนวนเงิน URI เองใช้สัญกรณ์ BTC.

สิ่งนี้สร้างความเสี่ยงในการคัดลอกและวาง การวาง 100000 จากใบแจ้งหนี้ที่ระบุเป็น sat ลงในช่องที่ระบุเป็น BTC จะเปลี่ยนจำนวนเงินที่ตีความอย่างมาก ตัวเลขเพียงอย่างเดียวไม่เพียงพอ หน่วยต้องมาพร้อมกับตัวเลข.

กระเป๋าเงินควรแสดงปลายทางและจำนวนเงินที่แยกวิเคราะห์แล้วก่อนขออนุญาต ผู้ใช้ควรตรวจสอบปลายทาง หน่วย และจำนวนเงินสุดท้ายที่ผู้รับจะได้รับซึ่งแสดงในหน้าจอยืนยัน.

จำนวนเงินหนึ่งรายการในหลายอินเทอร์เฟซ

พิจารณาการชำระเงิน 234,567 sats กระเป๋าเงิน URI หน้าจอค่าธรรมเนียม และอินเทอร์เฟซ Lightning อาจแสดงตัวเลขที่เกี่ยวข้องหลายตัว:

การแสดงผลความหมาย
0.00234567 BTCจำนวนเงินผู้รับที่แสดงใน BTC
234,567 satsจำนวนเงินผู้รับเดียวกันที่แสดงใน sats
1,410 satsค่าธรรมเนียมธุรกรรมบนเชนทั้งหมดที่เป็นไปได้
10 sat/vBอัตราค่าธรรมเนียมที่ใช้กำหนดราคาขนาดเสมือน
750 msatจำนวนเงิน Lightning หรือค่าธรรมเนียมการกำหนดเส้นทางที่ต่ำกว่า satoshi

ค่าทั้งห้าสามารถถูกต้องได้ในเวลาเดียวกันเพราะค่าเหล่านี้ตอบคำถามที่แตกต่างกัน ผู้ใช้ต้องระบุว่าป้ายกำกับอธิบายจำนวนเงินที่ชำระ ค่าธรรมเนียมรวม อัตราค่าธรรมเนียม หรือความแม่นยำทางบัญชีของ Lightning

Sats, millisatoshis และ sat/vB

คำเหล่านี้ดูเกี่ยวข้องกัน แต่ sat, msat และ sat/vB ไม่สามารถใช้แทนกันได้.

satoshi ในหน่วยมิลลิของ Lightning

เครือข่าย Lightning ใช้หน่วยบัญชีที่ละเอียดกว่าที่เรียกว่า millisatoshi ย่อว่า msat:

1 sat = 1,000 msat

ข้อความโปรโตคอล Lightning ใช้ฟิลด์ที่กำหนดเป็น millisatoshi สำหรับจำนวนเงินที่ชำระ ค่า HTLC ยอดคงเหลือ และค่าธรรมเนียมการกำหนดเส้นทาง สิ่งนี้ช่วยให้โปรโตคอลสามารถคำนวณค่าที่ต่ำกว่า satoshi ทั้งหมดภายในเส้นทางการชำระเงินนอกเชน.

ตัวอย่างเช่น:

1,500 msat = 1.5 sats
25,000 msat = 25 sats

ค่า 1.5 sats สามารถมีอยู่ในการบัญชี Lightning มันไม่สามารถกลายเป็น transaction output ชั้นฐาน Bitcoin อิสระที่มีมูลค่า 1.5 sats เมื่อสถานะช่องสัญญาณถูกบังคับใช้ผ่านธุรกรรมบนเชน กฎธุรกรรมที่เกี่ยวข้องจะแก้ไขค่า output เป็น satoshi ทั้งหมด.

Millisatoshis ไม่ได้นิยาม BTC ใหม่และไม่ได้สร้าง bitcoin ชั้นฐานคลาสใหม่ พวกมันให้ความแม่นยำทางบัญชีนอกเชนที่ละเอียดกว่าในขณะที่ชั้นฐานยังคงใช้ค่า output เป็น satoshi ทั้งหมด.

ป้ายกำกับหน่วยยังคงมีความสำคัญ:

25,000 msat = 25 sats
25,000 sats = 25,000,000 msat

การขาดตัวอักษร m เปลี่ยนการตีความด้วยปัจจัย 1,000.

อัตราค่าธรรมเนียมเทียบกับค่าธรรมเนียมรวม

satoshi คือจำนวนเงิน Sat/vB คืออัตราค่าธรรมเนียม: satoshis ต่อไบต์เสมือน.

ความสัมพันธ์อย่างง่ายของค่าธรรมเนียมคือ:

ค่าธรรมเนียมรวมใน sats
=
ขนาดเสมือนใน vB
×
อัตราค่าธรรมเนียมใน sat/vB

ธุรกรรม 141-vB ที่ 10 sat/vB มีค่าธรรมเนียมจำลองเป็น:

141 vB × 10 sat/vB
= 1,410 sats

ค่าธรรมเนียมธุรกรรมคือ 1,410 sats อัตราค่าธรรมเนียมคือ 10 sat/vB การเขียน “10 sats” จะอธิบายจำนวนเงินมากกว่าอัตราที่ใช้กำหนดราคาธุรกรรม.

จำนวนเงินที่ส่งไม่ได้กำหนดค่าธรรมเนียมเพียงลำพัง การชำระเงินที่น้อยกว่าอาจมีค่าใช้จ่ายมากกว่าการชำระเงินที่มากกว่าเมื่อการชำระเงินที่น้อยกว่านั้นใช้จำนวนอินพุตมากกว่าหรือสร้างธุรกรรมที่ใหญ่กว่า อ่าน วิธีที่ค่าธรรมเนียมธุรกรรม Bitcoin ทำงาน สำหรับความสัมพันธ์ที่สมบูรณ์ระหว่างอินพุต เอาต์พุต Weight ขนาดเสมือน และ sat/vB.

ป้ายกำกับสี่ป้าย คำถามสี่คำถามที่แตกต่างกัน

ป้ายกำกับสิ่งที่วัดตัวอย่าง
sat หรือ satsจำนวน bitcoin25,000 sats
BTCสินทรัพย์เดียวกันที่มาตราส่วนการแสดงผลที่ใหญ่ขึ้น0.00025 BTC
msatการบัญชี Lightning ระดับย่อย satoshi25,000 msat = 25 sats
sat/vBอัตราค่าธรรมเนียมธุรกรรมบนเชน10 sat/vB

เปรียบเทียบค่าเฉพาะหลังจากระบุหน่วยและบทบาทของค่าเหล่านั้นแล้ว.

หน่วยที่เล็กที่สุดไม่ใช่การทดสอบความสามารถในการใช้จ่าย

หนึ่ง sat คือจำนวนเต็มที่เล็กที่สุดที่แสดงในเอาต์พุตเลเยอร์ฐาน Bitcoin แต่ไม่ได้หมายความว่าทุกเอาต์พุตหนึ่ง-sat นั้นใช้งานได้จริงในการสร้าง ส่งต่อ หรือใช้จ่าย.

ฝุ่นตามนโยบาย

ฝุ่นไม่ใช่หน่วยย่อยที่เล็กกว่า เป็นแนวคิดนโยบายโหนดที่เชื่อมโยงกับประเภทสคริปต์ของเอาต์พุตและต้นทุนโดยประมาณในการใช้จ่ายเอาต์พุตนั้น.

เอาต์พุตสามารถมีค่า satoshi จำนวนเต็มบวกและยังคงต่ำกว่าเกณฑ์การส่งต่อที่เกี่ยวข้องกับฝุ่นของโหนด ซึ่งไม่ได้ทำให้จำนวนเงินเป็นเศษส่วนหรือไม่ถูกต้องภายใต้แบบจำลองหน่วย หมายความว่าเอาต์พุตขัดแย้งกับขอบเขตนโยบายการส่งต่อ.

ประเภทเอาต์พุตที่แตกต่างกันสามารถมีต้นทุนการใช้จ่ายที่แตกต่างกัน ซึ่งหมายความว่าขอบเขตนโยบายฝุ่นที่เกี่ยวข้องไม่ได้ถูกกำหนดโดยจำนวน sats เพียงอย่างเดียว.

ความสามารถในการใช้จ่ายทางเศรษฐกิจ

เอาต์พุตอาจอยู่เหนือเกณฑ์ฝุ่นตามนโยบายและยังคงมีค่าใช้จ่ายในการใช้จ่ายมากกว่าที่มีอยู่ อัตราค่าธรรมเนียมในอนาคต ประเภทอินพุต และขนาดเสมือนส่วนเพิ่มที่เพิ่มโดยอินพุตเป็นตัวกำหนดการเปรียบเทียบทางเศรษฐกิจนั้น.

คำถามสิ่งที่วัด
จำนวนเงินเป็นจำนวนเต็มของ sats หรือไม่?หน่วยและความแม่นยำ
เอาต์พุตไม่ใช่ฝุ่นหรือไม่?การจัดการนโยบายการส่งต่อ
เอาต์พุตคุ้มค่าที่จะใช้จ่ายหรือไม่?ต้นทุนการใช้จ่ายส่วนเพิ่มในอนาคต

คู่มือหน่วยตอบคำถามแรก ใช้ เครื่องคำนวณ Bitcoin Dust และ UTXO Spendability สำหรับการวิเคราะห์นโยบายและความสามารถในการใช้จ่ายทางเศรษฐกิจ.

ขอบเขตนี้ป้องกันข้อผิดพลาดทั่วไป: การสมมติว่า “หนึ่ง sat ถูกต้อง” ยังหมายถึง “UTXO หนึ่ง-sat มีประโยชน์” หน่วยสามารถถูกต้องได้ในขณะที่เอาต์พุตไม่สามารถใช้งานได้จริง.

ข้อผิดพลาดที่เปลี่ยนจำนวนเงิน

ข้อผิดพลาดด้านหน่วยที่ร้ายแรงที่สุดไม่ได้มาจากอัตราส่วนการแปลงคงที่ เกิดขึ้นเมื่อตัวเลขสูญเสียป้ายกำกับ ซอฟต์แวร์ปัดเศษค่าที่แม่นยำเกินไปอย่างเงียบ ๆ หรือผู้ใช้สับสนระหว่างจำนวนเงินผู้รับกับค่าธรรมเนียมเครือข่าย.

ขาดเลขศูนย์นำหน้า

ค่าเหล่านี้ต่างกันด้วยตัวประกอบของสิบ:

0.0001 BTC = 10,000 sats
0.00001 BTC = 1,000 sats

ค่า BTC ขนาดเล็กมีเลขศูนย์นำหน้าหลายตัว ซึ่งทำให้การตรวจสอบด้วยสายตาทำได้ยาก การแปลงเป็น sats สามารถทำให้ขนาดง่ายต่อการตรวจสอบก่อนที่จะลงนามในธุรกรรม.

ขาดหรือเปลี่ยนหน่วย

สตริง 100000 ไม่ระบุจำนวน Bitcoin ที่สมบูรณ์ ค่าเหล่านี้เป็นค่าที่แตกต่างกัน:

  • 100,000 sats
  • 100,000 bits
  • 100,000 mBTC
  • 100,000 BTC

คัดลอกหน่วยพร้อมกับตัวเลข ตรวจสอบช่องปลายทางอีกครั้งก่อนวาง.

การปนกันระหว่างการชำระเงินและค่าธรรมเนียม

กระเป๋าเงินสามารถส่ง 100,000 sats และเรียกเก็บค่าธรรมเนียมเครือข่าย 1,200-sat จำนวนเงินที่ผู้รับได้รับและยอดเดบิตทั้งหมดของกระเป๋าเงินแตกต่างกัน:

จำนวนผู้รับ: 100,000 sats
ค่าธรรมเนียมเครือข่าย: 1,200 sats
ยอดเดบิตทั้งหมด: 101,200 sats

เดบิตสุดท้ายยังสามารถขึ้นอยู่กับอินพุตที่เลือกและการทอนเงิน ตรวจสอบจำนวนเงินผู้รับและค่าธรรมเนียมเป็นบรรทัดแยกกันในหน้าจอยืนยันของกระเป๋าเงิน.

การคัดลอกค่าที่มีความแม่นยำเกินไป

ค่าที่เช่น 0.000000015 BTC เท่ากับ 1.5 sats ระบบการชำระเงินชั้นฐานต้องปฏิเสธหรือเปิดเผยกฎการปัดเศษที่ชัดเจน การแสดง 1 หรือ 2 sats โดยไม่อธิบายการแปลงจะเปลี่ยนจำนวนเงินอย่างเงียบๆ.

ตัวคั่นหลักพันและ locale

ค่าที่มนุษย์อ่านได้อาจมีเครื่องหมายจุลภาค ช่องว่าง หรือตัวคั่นทศนิยมตาม locale ช่องโปรโตคอลและ API มักใช้รูปแบบที่เข้มงวดกว่า ตัวอย่างเช่น จำนวน Bitcoin URI ใช้สัญลักษณ์ทศนิยม BTC และจุดเป็นตัวคั่นทศนิยม.

อย่าถือว่าระบบทุกตัวตีความ 1,000 เป็นหนึ่งพัน นักแยกวิเคราะห์บางตัวอาจปฏิเสธ ในขณะที่ locale อื่นอาจตีความเครื่องหมายจุลภาคแตกต่างกัน ปรับอินพุตให้เป็นมาตรฐานภายใต้กฎที่บันทึกไว้ก่อนแปลง.

สัญกรณ์วิทยาศาสตร์ใน APIs

APIs หรือสเปรดชีตบางตัวอาจจัดรูปแบบค่า BTC ขนาดเล็กเป็นสัญกรณ์วิทยาศาสตร์ เช่น 1e-8. นิพจน์นั้นทางคณิตศาสตร์เท่ากับหนึ่ง sat เมื่อตีความเป็น BTC แต่ไม่ใช่ทุกกระเป๋าเงินหรือช่องการชำระเงินที่ยอมรับสัญกรณ์วิทยาศาสตร์.

แปลงค่าเป็นรูปแบบทศนิยมที่ชัดเจนหรือจำนวนเต็ม-satoshi ก่อนส่งไปยังระบบที่คาดหวังจำนวน Bitcoin อย่าถือว่านิพจน์ทางคณิตศาสตร์ที่ถูกต้องเป็นรูปแบบช่องการชำระเงินที่ถูกต้องด้วย.

การใช้เงินเฟียตเป็นจำนวนเงินต้นทาง

กระเป๋าเงินอาจแสดง 50,000 sats ข้างมูลค่าเงินดอลลาร์โดยประมาณ การประมาณค่าเฟียตสามารถเปลี่ยนแปลงได้ตามผู้ให้บริการ เวลาประทับ สเปรด และการปัดเศษการแสดงผล จำนวน 50,000-sat ยังคงคงที่.

อย่าสร้างจำนวน Bitcoin ขึ้นใหม่โดยการแปลงการแสดงผลเฟียตที่ปัดเศษกลับเป็น BTC ใช้จำนวนที่ระบุเป็น Bitcoin เป็นค่าการชำระเงินที่เชื่อถือได้.

สิ่งที่ satoshi ไม่บอกคุณ

จำนวน satoshi อธิบายปริมาณ มันไม่ได้ระบุด้วยตัวเอง:

  • เจ้าของเงินทุน;
  • ที่อยู่หรือสคริปต์ล็อก;
  • จำนวนหรือประเภทของ UTXOs;
  • สถานะการยืนยันของธุรกรรม;
  • ค่าธรรมเนียมเครือข่ายทั้งหมด;
  • อัตราค่าธรรมเนียมที่เลือก;
  • ขนาดเสมือนของธุรกรรม;
  • ว่าเอาต์พุตเป็นฝุ่นหรือไม่;
  • ว่าเอาต์พุตคุ้มค่าที่จะใช้จ่ายหรือไม่;
  • มูลค่าเฟียตปัจจุบัน;
  • ว่าการชำระเงินเป็นแบบ on-chain หรือ Lightning;.

คำถามเหล่านั้นต้องการบริบทเพิ่มเติม ข้อมูลอ้างอิงเครือข่าย Bitcoin ครอบคลุมบริบทของเครือข่ายและธุรกรรม คู่มือค่าธรรมเนียมครอบคลุมขนาดเสมือนและ sat/vB เครื่องคำนวณ Dust ครอบคลุมนโยบายและเศรษฐศาสตร์การใช้จ่าย.

การแยกงานเหล่านี้ออกจากกันป้องกันไม่ให้คำตอบเกี่ยวกับหน่วยเงินตราง่ายๆ กลายเป็นข้อสรุปที่ไม่ถูกต้องเกี่ยวกับค่าธรรมเนียม การยืนยัน ความเป็นเจ้าของ หรือความสามารถในการใช้จ่าย.

ก่อนที่คุณจะยืนยันจำนวนเงิน Bitcoin

ใช้ลำดับนี้เมื่อใดก็ตามที่ BTC, mBTC, bits, sats หรือ msats ปรากฏในขั้นตอนการชำระเงิน:

  1. ระบุว่าการชำระเงินอยู่บนเลเยอร์ฐานของ Bitcoin หรือ Lightning.
  2. อ่านหน่วยที่แนบมากับจำนวนเงิน.
  3. ยืนยันว่าตัวเลขคือจำนวนเงินที่ผู้รับได้รับ ไม่ใช่ค่าธรรมเนียมหรืออัตราค่าธรรมเนียม.
  4. แปลงผ่านความสัมพันธ์ของหน่วยเงินตราที่คงที่ ไม่ใช่ผ่านราคาเงินเฟียต.
  5. ยืนยันว่าจำนวนเงินบนเชนแปลงเป็นจำนวนเต็มของ sats.
  6. มองหากฎการปัดเศษ การตัดทอน หรือจำนวนขั้นต่ำที่ชัดเจน.
  7. ตรวจสอบปลายทาง จำนวนเงินผู้รับ และค่าธรรมเนียมในตัวอย่างสุดท้ายของกระเป๋าเงิน.
  8. เก็บหน่วยไว้แนบเมื่อใดก็ตามที่คัดลอกจำนวนเงินไปยังระบบอื่น.

satoshi นิยามง่ายๆ คือ หนึ่งในร้อยล้านของหนึ่ง bitcoin การใช้อย่างถูกต้องต้องมีนิสัยเพิ่มเติมหนึ่งอย่าง—อย่าแยกตัวเลขออกจากป้ายหน่วยของมัน.

คำถามที่พบบ่อยเกี่ยวกับ Satoshi

sat เหมือนกับ satoshi หรือไม่?

ใช่ “Satoshi” คือชื่อหน่วยเต็ม ในขณะที่ “sat” และ “sats” เป็นรูปแบบย่อที่พบบ่อย หนึ่ง sat เท่ากับ 0.00000001 BTC และ 100,000,000 sats เท่ากับหนึ่ง BTC.

เอาต์พุต Bitcoin สามารถมีน้อยกว่าหนึ่ง satoshi ได้หรือไม่?

ไม่ได้ เอาต์พุตธุรกรรมเลเยอร์ฐานของ Bitcoin บันทึกจำนวนเต็มของ satoshi ค่าทางคณิตศาสตร์เช่น 1.5 sats ต้องถูกปฏิเสธหรือเปลี่ยนแปลงผ่านกฎการปัดเศษที่ชัดเจนก่อนที่จะกลายเป็นเอาต์พุต.

ทำไม Lightning ถึงใช้ millisatoshi?

Lightning ใช้ millisatoshi สำหรับการบัญชีนอกเชนและการคำนวณค่าธรรมเนียมการกำหนดเส้นทางที่ต่ำกว่าหนึ่ง satoshi เต็ม หนึ่ง sat เท่ากับ 1,000 msat ความแม่นยำนี้ไม่เปลี่ยนรูปแบบจำนวนเต็ม satoshi ของเอาต์พุตในเลเยอร์ฐานของ Bitcoin

sat/vB เป็นหน่วยเงินตราของ Bitcoin หรือไม่?

ไม่ Sat/vB คืออัตราค่าธรรมเนียมธุรกรรมที่วัดเป็น satoshi ต่อไบต์เสมือน Sats วัดจำนวน bitcoin ในขณะที่ sat/vB กำหนดราคาขนาดเสมือนของธุรกรรมบนเชน.

ทำไมกระเป๋าเงินถึงแสดงหน่วยต่างกันสำหรับยอดคงเหลือเดียวกัน?

กระเป๋าเงินสามารถจัดรูปแบบจำนวนเต็ม satoshi เดียวกันเป็น BTC, mBTC, bits หรือ sats การแสดงผลเปลี่ยนไป แต่ค่า satoshi จำนวนเต็มพื้นฐานยังคงเหมือนเดิม.

แหล่งข้อมูลทางเทคนิค

ความสัมพันธ์ของหน่วย โมเดลเอาต์พุตธุรกรรม คำศัพท์ขนาดเสมือน พฤติกรรม Bitcoin URI และขอบเขตการบัญชี Lightning ในคู่มือนี้ อ้างอิงจากเอกสารอ้างอิงทางเทคนิคหลักต่อไปนี้.

แหล่งข้อมูล

  1. Bitcoin Core: BIPs ที่รองรับ (รวมถึง BIP 176)
  2. BIP 176: หน่วย Bits
  3. เอกสารไวท์เปเปอร์ Bitcoin

เครื่องมือที่เกี่ยวข้อง

เครื่องมือที่เกี่ยวข้อง

ศูนย์หัวข้อ

เหรียญที่เกี่ยวข้อง

BTC

Bitcoin

ข้อมูลอ้างอิงตลาด Bitcoin, กราฟแท่งเทียน BTC/USDT แบบเรียลไทม์, เครื่องมือที่ใช้งานได้จริง และคำแนะนำเครือข่ายที่ผ่านการตรวจสอบ.

รีวิวเมื่อ 2026-07-25

สำรวจ Bitcoin →

เรียนรู้ต่อ

คำแนะนำที่เกี่ยวข้อง

ค่าธรรมเนียมธุรกรรม Bitcoin ทำงานอย่างไร

ค่าธรรมเนียม Bitcoin ขึ้นอยู่กับขนาดเสมือนของธุรกรรม อัตราค่าธรรมเนียม และความต้องการพื้นที่ในบล็อกที่เปลี่ยนแปลงไป—ไม่ใช่เพียงแค่จำนวนเงินที่ส่งเท่านั้น.

อ่านคู่มือ →