การเรียนรู้ด้วยออราเคิล“ เงียบขรึม”


11

คำถามของฉันค่อนข้างทั่วไปฉันจึงสร้างเรื่องราวที่ดีที่จะให้เหตุผล อดทนกับฉันถ้ามันไม่เหมือนจริง ;-)

เรื่องราว

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

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

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

คำถาม

คำพยากรณ์ที่นายวายใช้นั้นแปลกไปเล็กน้อยในการที่จะบอกเขาว่า "ความจริง แต่ไม่ใช่ความจริงทั้งหมด" (ดังนั้นคำคุณศัพท์ "เงียบขรึม") แม่นยำยิ่งขึ้น: Mr. Y จะรู้ว่ารหัสผ่านนั้นถูกต้องเมื่อคอมพิวเตอร์ของเขายอมรับ แต่เมื่อรหัสผ่านถูกปฏิเสธ Mr. Y จะไม่ทราบว่ารหัสผ่านนั้นถูกต้องหรือไม่: รหัสผ่านอาจถูกปฏิเสธเนื่องจากไม่ได้รับรหัสผ่าน สอดคล้องกับรูปแบบบางอย่าง แต่มันอาจถูกปฏิเสธเพราะเคยเป็นสิ่งที่ถูกต้อง แต่ไม่มีอีกต่อไปตามกฎ "การเปลี่ยนแปลงเดือนละครั้ง" ของ Mr. X

ดังนั้นคุณวายจะสามารถทำอะไรกับมันได้บ้างไหม? หรือเราสามารถเรียกร้อง / พิสูจน์ได้ว่ารหัสผ่านของ Mr. X นั้นไม่สามารถคาดเดาได้โดยธรรมชาติ (ตามที่กำหนดไว้ในการตั้งค่าการเรียนรู้ PAC แต่แนวคิดนี้อาจมีอยู่ในกรอบอื่น ๆ )

คำตอบ:


12

ดูเหมือนว่าคุณกำลังพยายามที่จะเรียนรู้ภาษา PAC โดยเห็นเพียงตัวอย่างเชิงบวก สิ่งนี้เรียกว่า "การเรียนรู้จากตัวอย่างเชิงบวก (เท่านั้น)" แต่คุณก็มีพลังที่จะได้รับตัวอย่างของคุณเองที่ติดฉลากไว้: ถ้า oracle เป็นจริงอย่างสมบูรณ์แล้วสิ่งเหล่านี้จะเป็นแบบสอบถามแบบสมาชิกดังนั้นโมเดลของคุณจะถูกเรียกว่า "การเรียนรู้จากตัวอย่างเชิงบวกและแบบสอบถามสมาชิก" ในกรอบนี้มีบางผลลัพธ์ - ตัวอย่างเช่นภาษาต้นไม้สามารถเรียนรู้ได้ (ไม่ปลอดภัย) DFA ไม่ได้เนื่องจากผลการแข็งการเข้ารหัสลับ (ดูสิ่งนี้ด้วย)

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

นอกจากนี้ - ดูเหมือนว่าเป็นข้อกำหนดแปลก ๆ ที่สามารถพิสูจน์ได้ว่า "รหัสผ่านของ Mr. X นั้นไม่สามารถคาดเดาได้อย่างแท้จริง" ปกติแล้วจะไม่เพียงพอที่จะสร้างรหัสผ่านที่ถูกต้องใหม่เพื่อทำลายระบบดังกล่าวได้หรือไม่ แต่นี่ดูเหมือนจะเป็นคำถามสำหรับอัลกอริทึมของ Mr. Y เอง ...


ขอบคุณสำหรับคำตอบ. ฉันไม่เข้าใจย่อหน้าสุดท้ายของคุณจริง ๆ : สามารถพูดแบบเดียวกันกับคลาสแนวคิดที่ยากได้ไหม? ฉันหมายความว่าคุณ Y โชคดีที่เดารหัสผ่านแบบสุ่มไม่ได้หมายความว่าเขาจะทำได้อีกครั้ง แต่ฉันจะต้องพลาดจุดของคุณ
Anthony Labarre

ฉันเดาว่าฉันจะถือว่ารหัสผ่านเป็น "เบาบาง" อย่างที่เดาได้ยาก หากคุณไม่ต้องการที่จะคิดว่าแล้วฉันมีความสุขเป็นเพียงเหมาะกับคำตอบของฉันดียิ่งขึ้น :)
เลฟ Reyzin

0

ความยากลำบากในการวิศวกรรมย้อนกลับอัลกอริทึมดูเหมือนจะขึ้นอยู่กับจำนวนของพื้นที่คีย์ที่หมดอายุแล้ว

สมมติว่าอัลกอริธึมของ Mr. X นั้นถูก จำกัด อย่างมากดังนั้นจึงมีเพียงปุ่มที่อาจใช้ได้ 10,000 ปุ่มเท่านั้น หาก Mr. X เพิ่งเริ่มก่อตั้ง บริษัท นี้ดังนั้นจึงมีคีย์ที่หมดอายุน้อยมาก - และด้วยเหตุนี้ "การปฏิเสธเชิงลบ" ไม่กี่ตัว - จากนั้นวิศวกรรมย้อนกลับอัลกอริทึมอาจจะค่อนข้างง่าย หาก Mr. X หมดอายุคีย์ที่ใช้ได้จริงอาจหมดอายุไปแล้ว 9,000 ดังนั้นเราจึงมี 9 "10" เชิงลบเท็จ "ดังนั้นวิศวกรรมย้อนกลับอัลกอริทึมดูเหมือนจะยากกว่ามาก และแน่นอนถ้า Mr. X ได้หมดอายุคีย์ที่ใช้ได้ทั้งหมดยกเว้นคีย์ที่ Mr. Y และผู้ทำงานร่วมกันของเขารู้แล้วดังนั้น "taciturn oracle" จะให้ข้อมูลใหม่กับเขา


0

ดูเหมือนว่าในความเป็นจริงสามารถใช้รหัสผ่านที่ถูกต้องได้จำนวน จำกัด เท่านั้น หากภาษารหัสผ่านมี จำกัด ก็ไม่มีความหวัง (เช่นในกรณีนี้อาจใช้รหัสผ่านที่ถูกต้องทั้งหมดซึ่งในกรณีนี้ oracle จะส่งคืน FALSE เสมอ)

ยังไม่มีข้อความ>2nn

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.