47 เรื่องปัญหาการทำธุรกรรมเร็ว

แปลโดย : Claude 3 Opus (Pro)

47

เรื่องปัญหาการทำธุรกรรมเร็ว

ในที่นี้ Satoshi อธิบายว่าบริษัทประมวลผลการชำระเงินจะตรวจสอบเครือข่าย Bitcoin เพื่อหาธุรกรรมที่ร้านค้าสนใจ รวมถึงธุรกรรมอื่น ๆ ที่ขัดแย้งกัน เนื่องจากโหนดจะยอมรับเฉพาะธุรกรรมแรกและปฏิเสธธุรกรรมอื่น ๆ ที่ขัดแย้งกับธุรกรรมเหล่านั้น ธุรกรรมของร้านค้าควรจะเห็นเป็นอันดับแรก หากบริษัทประมวลผลการชำระเงินพบธุรกรรมใด ๆ ที่ขัดแย้ง ก็จะแจ้งให้ร้านค้าทราบว่าธุรกรรมไม่ถูกต้อง แน่นอนว่าถ้าธุรกรรมที่ถูกต้องได้รับการยอมรับอย่างเป็นทางการ ร้านค้าสามารถคืนเงินให้ลูกค้าหรือประมวลผลการขายได้

Re: เครื่องขายขนมบิตคอยน์ (ปัญหาธุรกรรมเร็ว)

Satoshi Nakamoto 17 กรกฎาคม 2010, 22:29:13 น.

อ้างจาก: Insti, 17 กรกฎาคม 2010, 02:33:41 น.

เครื่องขายขนมบิตคอยน์ทำงานอย่างไร?

1. คุณอยากเดินเข้าไปที่เครื่อง ส่งบิตคอยน์ให้มัน 2. ? 3. เดินจากไปพร้อมกับกินขนมหวานอร่อย ๆ (กำไร!)

คุณไม่อยากต้องรออยู่ชั่วโมงเพื่อให้ธุรกรรมของคุณได้รับการยืนยัน บริษัทเครื่องขายไม่ต้องการแจกลูกอมฟรีมากมาย

ขั้นตอนที่ 2 ทำงานอย่างไร?

ผมเชื่อว่าจะเป็นไปได้สำหรับบริษัทประมวลผลการชำระเงินที่จะทำหน้าที่เผยแพร่ธุรกรรมอย่างรวดเร็วพร้อมการตรวจสอบที่ดีพอในเวลาประมาณ 10 วินาทีหรือน้อยกว่า

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

ตัวอย่างการคำนวณคร่าว ๆ:

ดังนั้นถ้าการใช้จ่ายซ้ำต้องรอแม้แต่วินาทีเดียว มันจะเสียเปรียบอย่างมาก

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

อีกเธรดหนึ่งในภายหลังได้กลับมาพูดถึงความสามารถในการขยายตัวและอัตราการทำธุรกรรม Satoshi ย้อนกลับไปที่เธรดข้างต้น

Re: ความสามารถในการขยายตัวและอัตราการทำธุรกรรม

Satoshi Nakamoto 29 กรกฎาคม 2010, 02:00:38 น.

อ้างจาก: Red, 22 กรกฎาคม 2010, 05:17:28 น.

ผมอยากรู้ความรู้สึกของนักพัฒนาเกี่ยวกับความสามารถในการขยายตัว ตัวอย่างเช่น ระบบสามารถรองรับผู้ใช้หนึ่งล้านคนได้หรือไม่ โดยสมมติว่าแต่ละคนทำธุรกรรมประมาณ 5 ครั้งต่อวัน 5 ล้านธุรกรรมต่อวันคือประมาณ 35,000 ธุรกรรมต่อ 10 นาที

มีคอขวดในการส่งต่อ 35,000 ธุรกรรมไปยังหนึ่งล้านโหนดเพื่อสร้างบล็อกหรือไม่? หรือปัญหานั้นได้รับการออกแบบแก้ไขไว้แล้ว?

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

อ้างจาก: bytemaster เมื่อ 28 กรกฎาคม 2010, 20:59:42 น.

นอกจากนี้ 10 นาทียังนานเกินไปที่จะตรวจสอบว่าการชำระเงินนั้นดีหรือไม่ มันต้องเร็วเท่ากับการรูดบัตรเครดิตในปัจจุบัน

ดูเธรดเครื่องขายขนม ผมได้เขียนโครงร่างไว้ว่าผู้ประมวลผลการชำระเงินสามารถตรวจสอบการชำระเงินได้ดีพอ จริง ๆ แล้วดีมาก (อัตราการฉ้อโกงต่ำกว่าบัตรเครดิตมาก) ในเวลาประมาณ 10 วินาทีหรือน้อยกว่า ถ้าคุณไม่เชื่อผมหรือไม่เข้าใจ ผมไม่มีเวลาที่จะพยายามโน้มน้าวคุณ ขออภัย http://bitcointalk.org/index.php?topic=423.msg3819#msg3819

Last updated