Tags:
Node Thumbnail

ภายใต้บรรยากาศของความไม่วางใจว่าระบบรักษาความปลอดภัยอะไรจะถูกสร้างช่องโหว่โดย NSA ไว้บ้าง ระบบยูนิกซ์ที่เน้นเรื่องความปลอดภัยอย่าง FreeBSD ก็ประกาศว่าจะไม่ใช้งานตัวสร้างเลขสุ่มในซีพียู มาเป็นตัวสร้างเลขสุ่มของระบบปฎิบัติการโดยตรงอีกต่อไป

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

การที่ FreeBSD ไม่ใช้ชุดคำสั่งจากซีพียูโดยตรง ไม่ได้แปลว่าจะทิ้งไม่ใช้คำสั่งเหล่านี้ไปเสียหมด โดยจะเปลี่ยนไปใช้ค่าสุ่มจากฮาร์ดแวร์เหล่านี้ เข้าไปเป็นค่าเริ่มต้นของการสร้างเลขสุ่มเทียมที่ใช้อัลกอริทึม Yarrow เพื่อเพิ่มความสุ่มในกรณีให้ปลอดภัยขึ้น

คำสั่งการดึงค่าสุ่มจากซีพียูโดยตรงยังสามารถทำได้ด้วยการเรียกคำสั่งแอสแซมบลี ไลบรารีบางตัวที่ไม่ได้ใช้ค่าจาก /dev/random ก็อาจจะใช้ค่าโดยตรงจากซีพียูต่อไป

กระบวนการผสมค่าสุ่มมีความพิเศษอย่างหนึ่ง คือ เราสามารถสร้างค่าสุ่มใหม่ด้วยการใช้แหล่งค่าสุ่มสองแหล่งมา XOR กัน แล้วจะได้ค่าสุ่มที่ดีกว่าเดิมหรือเท่ากับค่าเดิมเสมอ ไม่มีทางแย่ลง

ที่มา - ArsTechnica

Get latest news from Blognone

Comments

By: iDan
ContributorAndroidSUSEUbuntu
on 12 December 2013 - 10:23 #664352

การที่ FreeBSD ไม่ใช่ชุดคำสั่งจากซีพียูโดยตรง

ไม่ใช่ ---> ไม่ใช้ หรือป่าวครับ?

By: skycreeper
iPhoneBlackberryUbuntu
on 12 December 2013 - 11:08 #664368

มีมิตรสหายท่านหนึ่งเอาข่าวนี้ไป quote ด้วย แปลกดีครับ

By: lew
FounderJusci's WriterMEconomicsAndroid
on 12 December 2013 - 11:35 #664369 Reply to:664368
lew's picture

แปลกยังไงหรือครับ????


lewcpe.com, @wasonliw

By: PaPaSEK
ContributorAndroidWindowsIn Love
on 12 December 2013 - 11:57 #664372 Reply to:664369
PaPaSEK's picture

เพราะช่วงนี้เค้าแชร์แต่เรื่องการเมืองมั้งครับ

แต่จริงๆ แล้วคนที่ติดตามน่าจะมีคนไอทีเยอะพอควรนะ ผมเล่นมุกนิ้วกลางของลินัสก็มีคนเข้าใจ

By: lew
FounderJusci's WriterMEconomicsAndroid
on 12 December 2013 - 12:06 #664377 Reply to:664372
lew's picture

อ่อ หน้าเพจ "มิตรสหายท่านหนึ่ง" เอาไปลงจริงๆ

ผมงงนึกว่ามีมิตรสหายสักคนเอาไป quote เฉยๆ


lewcpe.com, @wasonliw

By: anoid on 12 December 2013 - 13:22 #664398 Reply to:664377

ตอนเห็นข่าวนี้ที่เพจมิตรสหาย เหมือนมีเซนส์เลย ว่าต้องมาจากเวปนี้แน่ๆ และต้องเป็น คุณ lew ที่เขียน 5555

By: hisoft
ContributorWindows PhoneWindows
on 12 December 2013 - 13:32 #664403 Reply to:664398
hisoft's picture

"คนร้ายต้องอยู่ในหมู่พวกเรานี่แหละ" คุณ lew ไม่ได้กล่าวไว้

By: hoolala
Android
on 12 December 2013 - 12:54 #664392

กระบวนการผสมค่าสุ่มมีความพิเศษอย่างหนึ่ง คือ เราสามารถสร้างค่าสุ่มใหม่ด้วยการใช้แหล่งค่าสุ่มสองแหล่งมา XOR กัน แล้วจะได้ค่าสุ่มที่ดีกว่าเดิมหรือเท่ากับค่าเดิมเสมอ ไม่มีทางแย่ลง

คำว่าดีขึ้นหรือแย่ลงนี่มันเป็นยังไงหรอครับ?

By: tekkasit
ContributorAndroidWindowsIn Love
on 12 December 2013 - 13:37 #664404 Reply to:664392
tekkasit's picture

ดีขึ้นคือหมายถึงระดับการสุ่มของข้อมูลเพิ่มขึ้น

By: lew
FounderJusci's WriterMEconomicsAndroid
on 12 December 2013 - 14:26 #664421 Reply to:664392
lew's picture

กระบวนการสุ่มอาจจะมี "ความแย่" ได้หลายอย่างครับ เช่น มี bias (ปล่อย 0 และ 1 ไม่เท่ากัน), หรือมี pattern บางอย่างทำให้จับแนวทางของค่าสุ่มได้ สามารถคาดการณ์ค่าก่อนหน้าหรือหลังจากนั้น หากสังเกตค่าสุ่มบางช่วง

การนำมา XOR กัน เช่น เรามีค่าสุ่มยาวๆ ที่มี bias ชุดหนึ่ง กับชุดที่ไม่มี bias ชุดหนึ่ง หากนำมา XOR กัน ความ bias ก็จะหายไป เช่น

0b000000001111 XOR 0b010101010101 จะได้ 0b010101011010 

เมื่อ XOR ค่าสุ่มจากหลายแหล่งไปเรื่อยๆ การคาดเดาค่าก่อนหน้า และค่าหลังจากช่วงที่สังเกตก็จะยากขึ้น ความ bias ก็จะหายไปอย่างที่เห็น

ปัญหาคือหากใช้หลายแหล่งมากๆ กระบวนการสร้างค่าสุ่มจะช้าลงเรื่อยๆ


lewcpe.com, @wasonliw

By: meisrame
iPhoneAndroidUbuntu
on 12 December 2013 - 15:03 #664433 Reply to:664421
meisrame's picture

อ่ะเฮ๊อะ...!! ธาตุไฟเข้าแทรกครับ (งง)

By: hoolala
Android
on 12 December 2013 - 16:01 #664446 Reply to:664421

อ้อ พอเข้าใจแล้ว ขอบคุณมากครับ

By: jinxplay
ContributoriPhoneAndroidWindows
on 12 December 2013 - 15:48 #664445
jinxplay's picture

xkcd ที่เกี่ยวข้อง

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

By: nhongcm77 on 12 December 2013 - 17:51 #664480

บอกตามตรงว่า อ่านข่าวนี้แล้ว "งง" และ "ไม่รู้เรื่อง" จริง ๆ ครับ รบกวนช่วยแปลให้คนทั่ว ๆ ไปอย่างผมเข้าใจด้วยครับ /ขอบคุณครับ

By: Perl
ContributoriPhoneUbuntu
on 12 December 2013 - 18:08 #664492 Reply to:664480
Perl's picture

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

คำขวัญ Blognone

Google คือเพื่อนของคุณครับ :)

By: nhongcm77 on 12 December 2013 - 18:13 #664494 Reply to:664492

ขอบคุณครับ :)

By: lew
FounderJusci's WriterMEconomicsAndroid
on 12 December 2013 - 18:44 #664507 Reply to:664480
lew's picture

ย้อนไปอ่านเรื่อง random number ก่อนได้ครับ

ถ้ายังไม่เข้าใจอาจจะต้องถามว่าความรู้พื้นฐานคอมพิวเตอร์ระดับไหน จะได้แนะนำถูก


lewcpe.com, @wasonliw

By: nhongcm77 on 13 December 2013 - 08:23 #664668 Reply to:664507

ขอบคุณที่แนะนำครับ

ผมรู้แค่ระดับผู้ใชั้ทั่วไป ที่รูจักโปรแกรมพื้นฐานต่าง ๆ ในเครื่องว่าใช้ทำอะไรได้บ้าง เช่น Web Browser , Office , Graphic แต่ก็ไม่รู้ทั้งหมดว่าใช้อบ่างไร เช่น PhotoShop รวมไปถึงไม่มีความรู้ในระดับการสร้างโปรแกรมหรือความสัมพันธ์เชิงลึกของ Hardware กับ Software ครับ

ดังนั้นจึงติดตามอ่าน Blognone ในข่าวที่เกี่ยวกับนวัตกรรมที่คนส่วนใหญ่สัมผัสได้ และติดตามข่าวเชิงเทคนิคบ้าง ครับ

By: lew
FounderJusci's WriterMEconomicsAndroid
on 13 December 2013 - 17:06 #664798 Reply to:664668
lew's picture

ถ้าแบบนั้นแล้วยังอยากอ่านเข้าใจก็ต้องหาคอร์สระบบปฎิบัติการคอมพิวเตอร์ ไปนั่งเรียนล่ะครับ อธิบายสั้นๆ คงไม่ไหว


lewcpe.com, @wasonliw

By: PaPaSEK
ContributorAndroidWindowsIn Love
on 16 December 2013 - 10:59 #665220 Reply to:664668
PaPaSEK's picture

ควรจะมีพื้นฐานดิจิตอลพื้นฐานก่อนครับ ไม่งั้นจะงงมาก ถ้าเข้าใจดิจิตอลแล้วจะงงน้อยลง (ยังไงก็งง)

พวก XOR, OR, AND, NAND อะไรแบบนี้

By: ZicmA
Android
on 12 December 2013 - 19:36 #664517

ผมว่าน่าสนใจดี นึกถึงการใช้งานในการเขียนเกมส์
ซึ่งจะต้องเขียน Randomize Algorithm ให้ดีพอที่จะไม่สามารถคาดเดาการสุ่มค่า และกระจายค่าการสุ่ม
เพื่อใช้ในการตีบวก หรือสุ่มไอเทมต่างๆ
เพราะถ้าใช้การสุ่มพื้นฐานจะสามารถคาดเดาได้ง่าย และได้รับผลกระทบเมื่อ Server ทำงานหนัก จะสามารถทำให้สามารถคาดเดาได้
โดยเฉพาะการสุ่มที่ไม่มีดีเลย์ เช่นการตีบวกรัวๆ
จะทำให้เกิดเหตุการณ์ คือ ตีบวกสำเร็จได้ติดๆกัน 3-4 ครั้งรวด
ถ้าระบบการสุ่มเลขดีขึ้น น่าจะช่วยเพิ่มความสมดุล และสมจริงของการ Random ขึ้นมา

By: lew
FounderJusci's WriterMEconomicsAndroid
on 12 December 2013 - 20:29 #664537 Reply to:664517
lew's picture

ถ้าใช้ค่าสุ่มในเกมทั่วไปก็ใช้งานตัวสุ่มธรรมดาได้ครับ

กรณีนี้คือตัวสุ่มที่มีความสำคัญต่อการเข้ารหัสอย่างมาก มีคนมานั่งสังเกตุค่าสุ่มนับหมื่นนับแสนครั้งเพื่อสำรวจดูว่ามีรูปแบบบางอย่างของค่าที่สุ่มออกมาได้หรือไม่ ถ้าเจอรูปแบบก็จะไม่สุ่มอีกต่อไป


lewcpe.com, @wasonliw

By: mementototem
ContributorJusci's WriterAndroidWindows
on 13 December 2013 - 12:28 #664716 Reply to:664517
mementototem's picture

ตีบวกสำเร็จติด ๆ กันนี่ดีออกครับ ตีล้มเหลวติด ๆ กันนี่หมดกำลังใจเล่นเลยนะครับ


Jusci - Google Plus - Twitter

By: nextman13
AndroidBlackberryUbuntuWindows
on 13 December 2013 - 10:59 #664699

มีแบบ mini.iso เหมือน centos ไหมครับตอนนี้หาอยู่ ส่วนตัวตอนนี้กำลังลอง netbsd เปรียบเทียบครับเพราะชอบตัวเริ่มติดตั้งมันเล็กดี ที่เหลือก็ค่อยๆ เอาไปใส่หรือติดตั้งเพิ่ม