Tags:
Node Thumbnail

Adam Langley นักวิจัยด้านความปลอดภัยของกูเกิล (เป็นคนเสนอให้ CA ต้องเปิดเผยการออกใบรับรองตั้งแต่ปี 2011) ออกมาอธิบายแนวคิดการพัฒนาของ BoringSSL ไลบรารีเข้ารหัสที่กูเกิลแยกโครงการออกมาจาก OpenSSL ว่าแม้จะมี API คล้ายกับ OpenSSL แต่มีความแตกต่างกันลงลึกถึงระดับล่างจำนวนมาก

บล็อคของ Langley ระบุโครงการภายนอกไม่จำเป็นต้องย้ายมาใช้ BoringSSL เพราะจะมีปัญหาความเข้ากันได้อยู่หลายจุดจนกระทั่งไม่คุ้ม ตัวแอปพลิเคชั่นเองไม่สามารถใช้งานสองไลบรารีพร้อมกันได้ เพราะมีชื่อฟังก์ชั่นซ้ำกันเป็นจำนวนมาก และความเปลี่ยนแปลงคำนึงถึงการใช้งานของกูเกิลเองเป็นหลัก อย่างไรก็ตาม BoringSSL ถูกใช้งานใน Chromium และ Android M เป็นต้นไป ทำให้นักพัฒนาภายนอกอาจจะต้องเข้าใช้งาน BoringSSL ด้วย

กระบวนการแตกโครงการของ BoringSSL ก็ไม่เหมือนโครงการอื่นที่มักจะสำเนาโครงการมาทั้งชุดแล้วค่อยแก้ แต่เป็นการพิจารณาทีละฟังก์ชั่น, ปรับฟอร์แมตโค้ดใหม่, ทำความสะอาดโค้ด, หรือบางทีก็ทิ้งบางฟังก์ชั่นไป โค้ดทั้งหมดถูกปรับให้สามารถสร้างเอกสารประกอบโค้ดได้อัตโนมัติ โครงการตัดกระบวนการเข้ารหัสเก่าๆ ออกเป็นจำนวนมาก เช่น Blowfish, RC5, MD2 จากเดิม OpenSSL มีโค้ดทั้งหมด 468,000 บรรทัด ตอนนี้ BoringSSL มี 200,000 บรรทัดแม้จะรวมกระบวนการเข้ารหัสใหม่ๆ ที่กูเกิลเพิ่มเข้าไปแล้วก็ตาม

กระบวนการสร้างสุ่มเลิกใช้กระบวนการที่ซับซ้อนของ OpenSSL เดิม แต่ใช้ urandom ของลินุกซ์โดยตรง, กระบวนการแจ้งข้อผิดพลาดปรับจากระบบของ OpenSSL ที่ค่อนข้างไม่เหมือนใคร กระบวนการเข้ารหัสแบบ ChaCha20-Poly1305 ของกูเกิลเองกำลังรอการรีวิวเร็วๆ นี้ กระบวนการเข้ารหัสอื่น เช่น Curve25519 และ Ed25519 ก็น่าจะรองรับเร็วๆ นี้เช่นกัน ไปจนถึงโปรโตคอล TLS 1.3 ก็น่าจะรองรับภายในปีหน้า

ที่มา - Imperial Violet

Get latest news from Blognone

Comments

By: toooooooon
iPhoneWindows PhoneAndroidBlackberry
on 26 October 2015 - 13:02 #856152

น่าเปลี่ยนชื่อเป็น ExcitingSSL

By: paween_a
Android
on 26 October 2015 - 13:04 #856153
paween_a's picture

ตรงประโยคนี้ "อย่างไรก็ตาม BoringSSL ถูกใช้งานใน Chromium และ Android M เป็นต้นไป ทำให้นักพัฒนาภายนอก" เหมือนยังจบไม่สมบูรณ์

By: lew
FounderJusci's WriterMEconomicsAndroid
on 26 October 2015 - 13:06 #856154 Reply to:856153
lew's picture

เอ้อ สงสัยผมเผลอลบประโยคไปครับ


lewcpe.com, @wasonliw

By: panurat2000
ContributorSymbianUbuntuIn Love
on 26 October 2015 - 13:25 #856158 Reply to:856153
panurat2000's picture

บล็อคของ Langley ระบุโครงการภายนอกไม่จำเป็นย้ายมาใช้ BoringSSL

บล็อค => บล็อก

ไม่จำเป็นย้าย ?

By: jane
AndroidUbuntu
on 26 October 2015 - 13:30 #856160
jane's picture

นึกถึง LibreSSL

By: lew
FounderJusci's WriterMEconomicsAndroid
on 26 October 2015 - 13:33 #856161 Reply to:856160
lew's picture

ต่างกันพอสมควรนะครับ LibreSSL ประกาศตัวเองว่าจะเป็น "drop-in" ดังนั้น API หลายตัวที่จะชอบหรือไม่ชอบ LibreSSL จะรักษาไว้ตลอด ไส้ในอาจจะเปลี่ยนแต่ API เหมือนเดิม

Boring นี่กูเกิลสนใจแค่โครงการของตัวเอง ถ้าโครงการของตัวเองพร้อมจะเปลี่ยน API ก็ซัดเลย


lewcpe.com, @wasonliw