- วิธีที่ SATWEI อ่านข้อมูล
- RSShttps://bitcoincore.org/en/rss.xml
- สถานะ
- เชื่อมต่อแล้วตรวจสอบล่าสุด
- สัญญาอนุญาตของเนื้อหา
- MIT (เนื้อหาในเว็บไซต์ เว้นแต่จะระบุไว้เป็นอย่างอื่น)
เอกสารเผยแพร่


ประกาศด้านความปลอดภัยการพัฒนาอ่าน 4 นาที นอกเหนือจากการล่มที่เปิดเผยไปแล้ว CVE-2018-17144 ยังเปิดให้นักขุดเพิ่มอุปทานบิตคอยน์ในรุ่น 0.15.X ถึง 0.16.2 ด้วยการใช้เอาต์พุตซ้ำสองครั้งในธุรกรรมเดียว นักพัฒนาเก็บส่วนนี้ไว้ก่อนเพื่อให้เวลาระบบต่างๆ ย้ายไป 0.16.3 หรือ 0.17.0rc4 เชื่อว่าแฮชเรตกว่าครึ่งแพตช์แล้ว ยังไม่พบความพยายามโจมตี และมีคำเรียกร้องให้ผู้ใช้ที่ได้รับผลกระทบอัปเกรดโดยด่วน
Bitcoin Core


CVE-2018-17144 ทำให้ Bitcoin Core 0.14.0 ถึง 0.16.2 ล่มเมื่อเจอบล็อกที่มีธุรกรรมใช้อินพุตเดียวซ้ำสองครั้ง จึงมีคำเตือนให้ผู้ใช้อัปเกรดเป็น 0.16.3 ทันที มีเพียงนักขุดที่ยอมสละรายได้ที่ได้รับอนุญาตอย่างน้อย 12.5 BTC เท่านั้นที่สร้างบล็อกเช่นนี้ได้
Bitcoin Core


RPC verifytxoutproof ใน Bitcoin Core 0.16.2 ไม่ตกเป็นเหยื่อการโจมตีราคาแพงต่อ SPV proof ที่เปิดเผยเมื่อต้นเดือนมิถุนายนอีกแล้ว แต่ไคลเอนต์ SPV จริงยังเสี่ยงอยู่ อีกการแก้ไขหนึ่งทำให้ abandontransaction ทิ้งลูกหลานทุกรุ่นของธุรกรรม ไม่หยุดแค่รุ่นลูก
Bitcoin Core


Bitcoin Core 0.16.1 เลิกส่งต่อ OP_CODESEPARATOR ใน signature script แบบ legacy การเปลี่ยนนโยบายนี้ช่วยให้แก้ปัญหาบล็อกที่ตรวจสอบช้าในอนาคตได้ง่ายขึ้น นักขุดเสียตัวเลือก -blockmaxsize ไปโดยให้ใช้ -blockmaxweight แทน และได้การแก้บั๊กที่อาจทำให้เสียรายได้เมื่อขุดสองบล็อกติดกันในเวลาสั้นๆ
Bitcoin Core


Segwit กลายเป็นค่าเริ่มต้นของกระเป๋าใน Bitcoin Core 0.16.0 ที่อยู่ใหม่จะเป็น p2sh-segwit เว้นแต่ตั้ง -addresstype เป็นอย่างอื่น และสร้างหรือจ่ายเข้าที่อยู่ bc1 แบบ native ตาม BIP173 ได้ กระเป๋าใหม่เป็น HD เท่านั้นและรุ่นก่อนหน้าเปิดไม่ได้ ส่วนหน้าจอส่งเงินใน GUI เปิด RBF ตาม BIP125 เป็นค่าเริ่มต้น
Bitcoin Core


เพื่อกันไว้ก่อนสำหรับการแยกเครือข่ายในอนาคต Bitcoin Core 0.15.1 ตัดเพียร์ที่เสนอเชนต่ำกว่า minimum-chain-work ระหว่างซิงก์ครั้งแรก รวมถึงเพียร์ขาออกที่ส่ง header ซึ่งรู้อยู่แล้วว่าไม่ถูกต้อง ปลายเชนที่นิ่งอยู่ 30 นาทีจะกระตุ้นให้เปิดการเชื่อมต่อขาออกเพิ่ม นักขุดใช้ blockmaxsize ตรงๆ ไม่ได้อีก ตัวเลือกนี้เลิกใช้แล้วและเป็นเพียงการกำหนดขีดจำกัดน้ำหนักโดยนัย
Bitcoin Core


GUI ที่ล่มตอนเปิดโปรแกรมเป็นเหตุให้ต้องออก Bitcoin Core 0.15.0.1 ไคลเอนต์บางตัวที่อัปเกรดเป็น 0.15.0 สะดุดกับค่าธรรมเนียมที่ตั้งเองซึ่งอินเทอร์เฟซไม่มีให้เลือกแล้ว แพตช์ขนาดเล็ก #11332 จัดการค่าที่ไม่ถูกต้องนี้
Bitcoin Core


การประมาณค่าธรรมเนียมใน Bitcoin Core 0.15.0 มองไปข้างหน้าได้ 1,008 บล็อก จากเดิม 25 และผู้ใช้ GUI เพิ่มค่าธรรมเนียมของธุรกรรมที่ยังไม่ยืนยันผ่าน Replace-By-Fee ได้ ฐานข้อมูล chainstate แบบแยกรายเอาต์พุตเร่งการดาวน์โหลดบล็อกครั้งแรกขึ้น 30-40% การแปลงฐานข้อมูลเกิดอัตโนมัติเมื่อเปิดครั้งแรก ใช้เวลาราว 5 ถึง 30 นาที
Bitcoin Core


ผู้ร่วมพัฒนาประจำของ Bitcoin Core ไม่มีส่วนเกี่ยวข้องกับ btc1 ซึ่งเป็นตัวติดตั้ง Segwit2x และโครงการปฏิเสธคำอ้างว่ามันเป็นอัปเดตที่จำเป็น โดยเรียกว่าเป็นการแหกกฎเครือข่ายที่ยังเป็นข้อขัดแย้ง Segwit ซอฟต์ฟอร์กที่จะเกิดในอีกไม่กี่วันไม่เกี่ยวกับฮาร์ดฟอร์กนั้น และผู้ใช้ส่วนใหญ่ไม่ต้องทำอะไร แถลงการณ์ยังเตือนว่า Segwit2x ไม่มีแผนทำ replay protection ที่แข็งแรง
Bitcoin Core


ใครเปิด UPnP ไว้ควรติดตั้ง Bitcoin Core 0.14.2 โดยเร็ว ความผิดพลาดเรื่อง signedness ของจำนวนเต็มใน miniupnpc ที่ติดมาด้วย (CVE-2017-8798) เปิดให้ผู้โจมตีในเครือข่ายท้องถิ่นก่อ denial of service หรืออาจสร้างความเสียหายอื่น UPnP ยังปิดอยู่ตามค่าเริ่มต้น โหนดที่ไม่เคยเปิดจึงไม่กระทบ
Bitcoin Core


นักขุดที่ไม่ใช้ segwit ยังเรียก getblocktemplate ได้หลังการเปิดใช้งาน เพราะ Bitcoin Core 0.14.1 ตัดธุรกรรม segwit ออกจากเทมเพลต ค่าเริ่มต้น -dbcache เปลี่ยนเป็น 450MiB และเพดานนี้คงอยู่แม้ในช่วงที่ flush พุ่งสูง อาร์กิวเมนต์ที่เปลี่ยนชื่อใน createrawtransaction และ disconnectnode จะทำให้โค้ดที่ใช้ named argument จาก 0.14.0 พัง
Bitcoin Core


กระเป๋าของโหนดใหม่อาจรับส่งเงินได้ก่อนซิงก์จบ ภายใต้โหมดลูกผสม full block SPV ในโรดแมปของ Bitcoin Core ซึ่งดึงบล็อกตามคีย์ที่เก่าที่สุดของกระเป๋าก่อน ระหว่างที่การตรวจสอบเต็มรูปแบบดำเนินต่อเบื้องหลัง ปัญหาความเป็นส่วนตัวรั่วของ Bloom filter หมดไป แต่ต้องแลกกับแบนด์วิดท์ที่มากขึ้น และการชำระเงินควรรอ 6 การยืนยันขึ้นไป
Bitcoin Core


หากเปลี่ยน ECDSA เป็นลายเซ็น Schnorr multisig แบบ 50-of-50 จะเล็กลงเท่าการใช้จ่ายด้วยคีย์เดียว และซ่อนนโยบายจากคนภายนอกได้ โรดแมปของ Bitcoin Core ชี้ว่าอุปสรรคหลักคือ cancellation ที่ผู้เซ็นประสงค์ร้ายหักลบคีย์ของผู้ใช้อื่น Delinearization รับมือการโจมตีนี้ได้ แม้บทพิสูจน์ความปลอดภัยยังอยู่ระหว่าง peer review
Bitcoin Core


แคชลายเซ็นใน Bitcoin-Qt 0.7.0, Ultraprune กับ LevelDB ใน 0.8.0 และการซิงก์แบบ headers-first ใน Bitcoin Core 0.10 คือเนื้อหาตอนแรกของการย้อนดูการเร่งความเร็วซอฟต์แวร์อ้างอิง การตรวจสคริปต์แบบขนานอย่างเดียวก็ให้ผล 35% ถึง 100% ในการทดสอบของนักพัฒนา
Bitcoin Core


โหนดใหม่ดาวน์โหลดบล็อกครั้งแรกบน Bitcoin Core 0.14.0 เร็วกว่า 0.13.2 ถึง 5.7 เท่าในการทดสอบบน Amazon EC2 ด้วยค่าเริ่มต้น ใช้เวลา 6 ชั่วโมง 24 นาที เทียบกับ 1 วัน 12 ชั่วโมง 40 นาที ปัจจัยหลักคือ assumed valid blocks และหน่วยความจำที่ mempool ใช้ร่วมกับแคช UTXO กระเป๋ายังเพิ่มค่าธรรมเนียมภายหลังได้เป็นทางเลือก โดยปิดไว้ตามค่าเริ่มต้น
Bitcoin Core


การส่งจากกระเป๋าที่ชนเพดานสายธุรกรรมยังไม่ยืนยันไม่คืน RPC error อีกแล้วใน Bitcoin Core 0.13.2 แต่จะแจ้งว่าสำเร็จ แล้วลองใส่ mempool ใหม่ตอน rebroadcast โดยไม่ต้องรีสตาร์ต รุ่นนี้ยังปิดการประมาณค่าธรรมเนียมเป้าหมาย 1 บล็อก และแก้การจัดการ compact block ที่ไม่ถูกต้อง
Bitcoin Core


การห่อ segwit ใน P2SH มีต้นทุนไบต์สูงสุด P2WSH/P2SH เพิ่ม 19% และ P2WPKH/P2SH เพิ่ม 11% บนธุรกรรมขนาด 180 ไบต์ ตามการคำนวณของ Bitcoin Core ถึงสิ่งที่ BIP141 จะนำมา การตรวจสอบต้องใช้ SHA256 เพิ่มราวห้าครั้งต่อธุรกรรม ฝั่งความเสี่ยงมีการชั่งน้ำหนักเรื่องบั๊ก บล็อกที่ใหญ่ขึ้น และค่าธรรมเนียมที่ต่ำลง ส่วนผู้เขียนไม่ออกความเห็นเรื่องการเปิดใช้งาน
Bitcoin Core


นักขุดได้โค้ดสำหรับส่งสัญญาณซอฟต์ฟอร์ก segwit ใน Bitcoin Core 0.13.1 โดยเริ่มส่งได้ตั้งแต่ 15 พฤศจิกายน 2016 เมื่อถึงต้นรอบปรับความยากถัดไป การ lock in ต้องได้ 95% ของบล็อกในรอบ 2,016 บล็อก และเปิดใช้งานหลังจากนั้นอีกหนึ่งรอบ กระเป๋ายังเข้ากันได้ จึงอาจมีเพียงนักขุดที่ต้องลงมือ
Bitcoin Core


Segwit ต้องการความร่วมมือสองกลุ่ม นักขุดต้องส่งสัญญาณบิต 1 ใน 95% ของบล็อกตลอดรอบปรับความยาก และต้องมีฟูลโหนดมากพอที่รัน Bitcoin Core 0.13.1 หรือซอฟต์แวร์ที่เข้ากันได้ การส่งสัญญาณเปิดที่รอบปรับความยากแรกซึ่งตรงกับหรือหลัง 15 พฤศจิกายน 2016 คู่มือแยกขั้นตอนสำหรับนักขุด ผู้ดูแลโหนด ผู้ใช้กระเป๋า และนักพัฒนา รวมถึงผู้ที่เลือกไม่อัปเกรด
Bitcoin Core


โค้ด Segwit เข้ามาใน Bitcoin Core 0.13.0 แต่ยังไม่ทำงานบน mainnet การใช้งานจริงต้องรอรุ่นถัดไปซึ่งคาดว่าเป็น 0.13.1 Compact block relay (BIP152) ลดแบนด์วิดท์ที่พุ่งเป็นช่วงๆ กระเป๋าใหม่ใช้คีย์ HD ตาม BIP32 จึงสำรองครั้งเดียวครอบคลุมกุญแจส่วนตัวทั้งหมดในอนาคต และบิลด์ Linux ARM เข้ามาอยู่ในหน้าดาวน์โหลดอย่างเป็นทางการ
Bitcoin Core