0:00:02.940,0:00:08.500 อินเทอร์เน็ต: การเข้ารหัสและกุญแจสาธารณะ 0:00:08.990,0:00:10.719 สวัสดีค่ะ ฉันมีอา กิล-เอปเนอร์ 0:00:10.969,0:00:13.430 เรียนเอกวิทยาศาสตร์คอมพิวเตอร์[br]ที่ UC เบิร์กลีย์ 0:00:13.680,0:00:15.516 และทำงานที่กระทรวงกลาโหมค่ะ 0:00:15.641,0:00:18.185 หน้าที่รักษาความปลอดภัยของข้อมูลค่ะ 0:00:18.602,0:00:21.855 อินเทอร์เน็ตเป็นระบบเปิดสาธารณะ 0:00:21.939,0:00:26.401 เราทุกคนรับส่งข้อมูล[br]ผ่านสายไฟและการเชื่อมต่อที่เราแชร์กัน 0:00:26.693,0:00:30.781 แต่แม้จะเป็นระบบเปิด เรายัง[br]แลกเปลี่ยนข้อมูลกันแบบส่วนตัวกันมากค่ะ 0:00:31.073,0:00:35.410 เช่นหมายเลขบัตรเครดิจ ข้อมูลธนาคาร[br]รหัสผ่านและอีเมล 0:00:35.619,0:00:38.455 แล้วของส่วนตัวพวกนี้[br]จะเป็นความลับได้ยังไง 0:00:38.497,0:00:42.417 ข้อมูลทุกประเภทสามารถเป็นความลับได้[br]ผ่านกระบวนการที่เรียกว่าการเข้ารหัส 0:00:42.543,0:00:46.129 คือการสลับตำแหน่งหรือเปลี่ยนข้อความ[br]เพื่อซ่อนข้อความต้นฉบับ 0:00:46.672,0:00:51.177 ส่วนการถอดรหัสก็คือการไขรหัสข้อความนั้น[br]เพื่อให้มันอ่านได้นั่นเอง 0:00:51.552,0:00:55.472 ไอเดียแบบนี้เรียบง่ายมาก[br]มนุษย์เราทำมาหลายศตวรรษแล้วค่ะ 0:00:55.639,0:00:59.768 การเข้ารหัสยุคแรก ๆ ที่รู้จักกันดี[br]คือการเข้ารหัสของซีซาร์ ไซเฟอร์ 0:01:00.102,0:01:04.398 นายพลชาวโรมันที่ถูกตั้งชื่อตาม[br]จูเลียส ซีซาร์เข้ารหัสคำสั่งทางทหาร 0:01:04.606,0:01:07.359 เพื่อที่ว่า หากศัตรูได้ข้อความนั้นไปแล้ว 0:01:07.609,0:01:08.986 จะไม่สามารถเข้าใจได้ 0:01:09.737,0:01:13.949 ซีซาร์ ไซเฟอร์เป็นอัลกอริธึม[br]ที่แทนที่ตัวอักษรในข้อความต้นฉบับ 0:01:14.283,0:01:17.119 ด้วยอักษรตัวถัดไปในลิสต์อักขระ 0:01:17.411,0:01:20.455 หากตัวเลขนั้นเป็นสิ่งที่[br]มีเพียงผู้ส่งและผู้รับที่รู้กัน 0:01:21.039,0:01:26.044 ก็จะเรียกว่ากุญแจ[br]ที่ให้ผู้อ่านปลดล็อกข้อความลับ 0:01:27.379,0:01:29.923 ตัวอย่างเช่น หากข้อความต้นฉบับเขียนว่า[br]'HELLO' 0:01:30.549,0:01:34.136 การใช้อัลกอริธึม ซีซาร์ ไซเฟอร์[br]ที่มีกุญแจเป็น 5 0:01:34.678,0:01:37.306 ข้อความที่เข้ารหัสก็จะเป็นแบบนี้ค่ะ 0:01:39.474,0:01:44.187 ในการไขรหัสข้อความ[br]ผู้รับก็เพียงใช้กุญแจเพื่อคืนค่าเดิม 0:01:45.814,0:01:47.983 แต่ปัญหาใหญ่ของซีซาร์ ไซเฟอร์คือ 0:01:48.358,0:01:54.281 ใครก็แกะข้อความได้ด้วยการลองทุกกุญแจ 0:01:54.656,0:01:57.242 ซึ่งภาษาอังกฤษมีอักษรเพียง 26 ตัว 0:01:57.451,0:02:02.289 แปลว่าแค่ลองกุญแจอย่างมาก 26 ดอก[br]ก็แกะข้อความสำเร็จแล้ว 0:02:02.664,0:02:08.170 การลองใช้กุญแจ 26 ดอกไม่ได้ยากมาก[br]ใช้เวลาอย่างมากก็ 1-2 ชั่วโมง 0:02:08.545,0:02:09.671 มาทำให้ยากขึ้นดีกว่า 0:02:10.047,0:02:12.424 แทนที่จะเปลี่ยนอักษรแต่ละตัว[br]ในจำนวนที่เท่ากัน 0:02:12.758,0:02:15.385 เรามาเปลี่ยนแต่ละตัว[br]ในจำนวนที่ไม่เท่ากันดีกว่า 0:02:16.011,0:02:21.975 ตัวอย่างนี้เป็นกุญแจสิบหลัก แสดงถึง[br]จำนวนตำแหน่งทีอักษรแต่ละตัวต้องเปลี่ยน 0:02:22.184,0:02:24.227 เพื่อเข้ารหัสข้อความยาว ๆ 0:02:26.271,0:02:28.231 การเดากุญแจนี้จะยากมาก 0:02:28.274,0:02:33.278 การเข้ารหัส 10 หลัก[br]มีผลลัพธ์ที่เป็นไปได้ถึง 1 หมื่นล้านผล 0:02:34.029,0:02:36.948 คงไม่มีมนุษย์คนไหนที่แก้ได้ 0:02:37.199,0:02:38.825 เพราะจะใช้เวลาหลายศตวรรษ 0:02:39.576,0:02:45.040 แต่คอมพิวเตอร์ทั่วไปยุคนี้ใช้เวลา[br]เพียงไม่กี่วินาทีในการลอง 10 ล้านผลลัพธ์ 0:02:45.499,0:02:50.587 โลกยุคใหม่ที่คนร้ายติดอาวุธ[br]เป็นคอมพิวเตอร์แทนดินสอ 0:02:50.710,0:02:56.343 คุณจะเข้ารหัสข้อความให้ปลอดภัย[br]และยากต่อการแกะได้อย่างไร 0:02:56.677,0:03:01.723 ที่ว่ายาก หมายถึงมีความเป็นไปได้มาก[br]เกินกว่าที่จะคำนวณในเวลาที่ไม่นานเกินไป 0:03:02.057,0:03:08.397 การสื่อสารที่ปลอดภัยในปัจจุบัน[br]มีการเข้ารหัสด้วยกุญแจ 256 บิท 0:03:08.563,0:03:11.608 แปลว่าคอมพิวเตอร์ของคนร้าย[br]ที่แทรกแซงข้อความของคุณ 0:03:11.817,0:03:14.820 ต้องพยายามใช้ตัวเลือกที่เป็นไปได้ขนาดนี้ 0:03:15.028,0:03:18.573 จนกว่าจะเจอกุญแจและไขข้อความได้ 0:03:19.866,0:03:23.036 ต่อให้คุณมี[br]ซูเปอร์คอมพิวเตอร์ 100,000 เครื่อง 0:03:23.328,0:03:27.999 แต่ละเครื่องลองกุญแจได้ [br]1 ล้าน* 1 พันล้านดอกต่อวินาที 0:03:28.208,0:03:32.713 ก็ยังต้องใช้เวลาหลายล้านล้านปี[br]กว่าจะลองครบทุกทางเลือก 0:03:32.754,0:03:36.925 เพื่อแกะข้อความเดียวที่เข้ารหัส 256 บิท 0:03:37.551,0:03:42.431 แน่นอนว่าชิปคอมพิวเตอร์เร็วขึ้นเท่าตัว[br]และเล็กลงครึ่งหนึ่งทุกปี 0:03:42.764,0:03:45.434 หากมันพัฒนาแบบนี้ต่อไปเรื่อย ๆ 0:03:45.684,0:03:50.647 ปัญหาที่เป็นไปไม่ได้ในปัจจุบัน[br]ก็จะแก้ได้ในอีกไม่กี่ร้อยปี 0:03:51.022,0:03:53.775 และ 256 บิทก็จะไม่ปลอดภัยพอแล้ว 0:03:54.151,0:04:00.073 ที่จริงเราได้ลองเพิ่มมาตรฐานความยาว[br]เพื่อให้ทันต่อความเร็วคอมพิวเตอร์ 0:04:00.741,0:04:05.287 ข่าวดีคือการใช้กุญแจที่ยาวขึ้นไม่ทำให้[br]การเข้ารหัสข้อความยากขึ้นมากนัก 0:04:05.537,0:04:11.168 แต่มันเพิ่มจำนวนการคาดเดาเพื่อแกะรหัส[br]เป็นทวีคูณ 0:04:11.501,0:04:16.089 เมื่อผู้รับและผู้ส่งมีกุญแจดอกเดียวกัน[br]ในการเข้ารหัสและแกะรหัส 0:04:16.620,0:04:21.928 แบบนั้นเรียกว่าการเข้ารหัสแบบสมมาตร[br]ซึ่งเหมือนซีซาร์ ไซเฟอร์ 0:04:22.220,0:04:27.100 ที่ต้องมีการตกลงกุญแจลับกันล่วงหน้า[br]ระหว่างคนสองคนที่พื้นที่ส่วนตัว 0:04:27.476,0:04:31.271 ก็ดีนะคะ แต่อินเทอร์เน็ตมันเปิดกว้าง[br]เป็นสาธารณะ 0:04:31.521,0:04:35.275 จึงเป็นไปไม่ได้ที่คอมพิวเตอร์สองเครื่อง[br]จะมา "พบกัน" แบบส่วนตัว 0:04:35.484,0:04:37.152 เพื่อตกลงกันเรื่องกุญแจลับ 0:04:37.444,0:04:40.363 คอมพิวเตอร์จึง[br]ใช้กุญแจการเข้ารหัสแบบไม่สมมาตร 0:04:40.572,0:04:45.702 ซึ่งเป็นกุญแจสาธารณะที่สามารถแลก[br]กับใครก็ได้ และกุญแจส่วนตัวที่ไม่ได้แชร์ 0:04:46.828,0:04:52.793 กุญแจสาธารณะใช้เพื่อเข้ารหัสข้อมูล[br]ใครก็ใช้เพื่อสร้างข้อความลับได้ 0:04:53.001,0:04:58.590 แต่จะไขความลับได้นั้นต้องใช้คอมพิวเตอร์[br]ที่เข้าถึงกุญแจส่วนตัวได้เท่านั้น 0:04:59.090,0:05:02.469 วิธีการของมันคือคณิตศาสตร์[br]ที่เราจะยังไม่พูดถึงในตอนนี้ 0:05:02.969,0:05:06.139 ลองคิดตามว่าคุณมีตู้จดหมายส่วนตัว 0:05:06.306,0:05:09.684 ที่ใครก็มาหย่อนจดหมายก็ได้ [br]แต่ว่าต้องใช้กุญแจ 0:05:10.018,0:05:12.521 คุณจะปั๊มกุญแจเพื่อหย่อนจดหมาย[br]กี่ดอกก็ได้ 0:05:12.729,0:05:15.816 ก่อนแจกให้เพื่อนคนหนึ่ง[br]หรือจะให้คนทั่วไปมาเปิดก็ได้ 0:05:16.066,0:05:22.113 เพื่อนคุณหรือคนแปลกหน้า ใช้กุญแจสาธารณะ[br]ในการเปิดรูหย่อนจดหมาย 0:05:22.948,0:05:26.034 แต่มีแค่คุณที่เปิดตู้จดหมายได้[br]ด้วยกุญแจส่วนตัว 0:05:26.326,0:05:29.037 เพื่อเข้าถึงข้อความลับที่คุณได้รับ 0:05:29.412,0:05:31.665 คุณก็ส่งข้อความที่ปลอดภัยให้เพื่อนได้ 0:05:31.832,0:05:34.709 ด้วยการใช้กุญแจสาธารณะ[br]ในการหย่อนตู้จดหมายเพื่อน 0:05:35.126,0:05:40.131 วิธีนี้ทำให้คนแลกข้อความกันอย่างปลอดภัย[br]โดยไม่ต้องตกลงเรื่องกุญแจส่วนตัว 0:05:40.590,0:05:43.593 การเข้ารหัสกุญแจสาธารณะคือรากฐาน 0:05:43.802,0:05:46.888 ของการส่งข้อความในอินเทอร์เน็ตสาธารณะ[br]อย่างปลอดภัย 0:05:47.055,0:05:51.059 รวมถึงโพรโตคอลด้านการรักษาความปลอดภัย[br]อย่าง SSL และ TLS 0:05:51.083,0:05:53.520 ที่คอยปกป้องเราเวลาเราใช้อินเทอร์เน็ต 0:05:54.104,0:05:58.400 ปัจจุบัน คอมพิวเตอร์ก็ใช้เจ้าตัวนี้[br]ทุกครั้งที่คุณเห็นแม่กุญแจเล็ก ๆ 0:05:59.605,0:06:02.112 หรือตัว https ในแถบที่อยู่ของเบราว์เซอร์ 0:06:02.696,0:06:05.657 นั่นแปลว่าคอมพิวเตอร์คุณ[br]ใช้การเข้ารหัสกุญแจสาธารณะ 0:06:05.866,0:06:09.411 เพื่อแลกเปลี่ยนข้อมูลอย่างปลอดภัย[br]ในเว็บไซต์ที่คุณเปิดใช้อยู่ 0:06:09.578,0:06:12.372 เมื่อมีผู้ใช้อินเทอร์เน็ตมากขึ้น 0:06:12.622,0:06:15.000 ก็จะมีการส่งข้อมูลส่วนตัวมากขึ้น 0:06:15.208,0:06:18.420 การทำให้ข้อมูลปลอดภัย[br]ก็จะสำคัญมากขึ้น 0:06:18.628,0:06:21.548 และเมื่อคอมพิวเตอร์เร็วขึ้นเรื่อย ๆ 0:06:21.881,0:06:26.136 เราต้องพัฒนาวิธีใหม่ ๆ ในการเข้ารหัส[br]ให้ถอดรหัสยากขึ้นสำหรับคอมพิวเตอร์ 0:06:26.595,0:06:29.890 นี่แหละค่ะงานของฉัน [br]ซึ่งมันเปลี่ยนอยู่ตลอดเวลาค่ะ