เมื่อพูดถึงความปลอดภัยในโลกไซเบอร์ AES เป็นหนึ่งในตัวย่อที่คุณเห็นโผล่ขึ้นมาทุกที่ นั่นเป็นเพราะได้กลายเป็นมาตรฐานการเข้ารหัสระดับโลกและใช้เพื่อให้การสื่อสารของเรามีจำนวนมากปลอดภัย.
มาตรฐานการเข้ารหัสขั้นสูง (AES) เป็นรูปแบบการเข้ารหัสที่รวดเร็วและปลอดภัยซึ่งช่วยให้ไม่ต้องละสายตาจากข้อมูลของเรา เราเห็นมันในแอพส่งข้อความเช่น WhatsApp และ สัญญาณ, โปรแกรมที่ชอบ VeraCrypt และ WinZip, ในช่วงของฮาร์ดแวร์และเทคโนโลยีอื่น ๆ ที่เราใช้อยู่ตลอดเวลา.
ทำไม AES ถึงพัฒนาขึ้น?
การเข้ารหัสชนิดแรกสุดนั้นเรียบง่าย, การใช้เทคนิคต่าง ๆ เช่นการเปลี่ยนตัวอักษรแต่ละตัวในประโยคเป็นตัวอักษรที่อยู่หลังตัวอักษร ภายใต้รหัสประเภทนี้ประโยคก่อนหน้าจะกลายเป็น:
อย่างที่คุณเห็นรหัสง่าย ๆ นี้ทำให้อ่านไม่ได้อย่างสมบูรณ์ แม้จะมีความไม่สามารถอ่านได้ครั้งแรกหากคุณมีเวลาและรู้ว่ามันเป็นรหัสและไม่ใช่เพียงแค่ตัวละครจำนวนหนึ่งที่พุ่งไปที่หน้ามันจะไม่ยากเกินไปที่จะคิดออกในที่สุด.
เป็นคนดีขึ้นที่รหัสถอดรหัส, การเข้ารหัสจะต้องมีความซับซ้อนมากขึ้น เพื่อให้ ข้อความอาจเป็น เก็บเป็นความลับ. การแข่งขันทางอาวุธครั้งนี้เกิดขึ้นด้วยวิธีการที่ซับซ้อนมากขึ้นในขณะที่คนอื่นพยายามอย่างหนักที่จะทำลายพวกเขานำไปสู่เทคนิคที่ซับซ้อนมากขึ้น, เช่นเครื่องปริศนาที่คิดค้นโดยชาวเยอรมันในสงครามโลกครั้งที่หนึ่ง.
การสื่อสารทางอิเล็คทรอนิคส์ที่เพิ่มขึ้นก็เป็นประโยชน์สำหรับการเข้ารหัส ในปี 1970 สำนักงานมาตรฐานแห่งชาติของสหรัฐอเมริกา (NBS) เริ่มค้นหาวิธีมาตรฐานที่สามารถใช้เพื่อเข้ารหัสข้อมูลรัฐบาลที่ละเอียดอ่อน ผลการค้นหาของพวกเขาคือการนำอัลกอริธึมคีย์สมมาตรที่พัฒนาที่ IBM ซึ่งปัจจุบันเรียกว่า มาตรฐานการเข้ารหัสข้อมูล (DES). DES ทำหน้าที่ตรงตามวัตถุประสงค์ค่อนข้างดีในอีกสองสามทศวรรษข้างหน้า แต่ในทศวรรษที่ผ่านมาความกังวลด้านความปลอดภัยบางอย่างเริ่มปรากฏขึ้น.
DES มีเพียง รหัส 56 บิต (เมื่อเทียบกับ สูงสุด 256 บิตใน AES, แต่เราจะไปถึงในภายหลัง) ดังนั้นเมื่อเทคโนโลยีและวิธีการแคร็กดีขึ้นการโจมตีจึงเริ่มมีประโยชน์มากขึ้น ข้อความเข้ารหัสลับ DES แรกที่เปิดใช้งานไม่ได้คือในปี 1997 โดยโครงการ DESCHALL ใน การแข่งขันที่สนับสนุนโดย RSA Security.
ในปีถัดไปมูลนิธิ Electronic Frontier Foundation (EFF) ได้สร้างแครกเกอร์ DES ซึ่งสามารถบังคับคีย์ได้ในเวลาเพียงสองวัน ในปี 1999 เอฟเอฟ และการคำนวณโดยรวมครั้งแรกของอินเทอร์เน็ต, distributed.net, ร่วมมือกันเพื่อลดเวลาลงให้ต่ำกว่า 24 ชั่วโมง.
แม้ว่าการโจมตีเหล่านี้มีราคาแพงและไม่สามารถทำได้ แต่พวกเขาก็เริ่มแสดงให้เห็นว่าการครองราชย์ของ DES ในฐานะมาตรฐานการเข้ารหัสแบบ go-to กำลังจะสิ้นสุดลง ด้วยพลังการประมวลผล เพิ่มทวีคูณ ตาม กฎของมัวร์, มันเป็นเพียงเรื่องของเวลาจนกว่า DES จะไม่สามารถพึ่งพาได้อีกต่อไป.
รัฐบาลสหรัฐฯได้กำหนดภารกิจห้าปีเพื่อประเมินวิธีการเข้ารหัสที่แตกต่างหลากหลายเพื่อหามาตรฐานใหม่ที่จะปลอดภัย สถาบันมาตรฐานและเทคโนโลยีแห่งชาติ (NIST) ประกาศว่าในที่สุดได้ทำการเลือกในปลายปี 2544.
ทางเลือกของพวกเขาคือชุดย่อยเฉพาะของ Rijndael block cipher ซึ่งมีขนาดบล็อกคงที่ที่ 128- บิตและขนาดหลักเท่ากับ 128, 192 และ 256 บิต มันได้รับการพัฒนาโดย Joan Daemen และ Vincent Rijmen สองคนเข้ารหัสลับจากเบลเยียม ในเดือนพฤษภาคมปี 2002 AES ได้รับการอนุมัติให้เป็น มาตรฐานของรัฐบาลกลางสหรัฐอเมริกา และกลายเป็นอัลกอริธึมการเข้ารหัสมาตรฐานสำหรับส่วนที่เหลือของโลกได้อย่างรวดเร็วเช่นกัน.
ที่เกี่ยวข้อง: คู่มือเริ่มต้นสำหรับการเข้ารหัส
เหตุใดจึงเลือกเลขศูนย์นี้สำหรับ AES?
ด้วยการเข้ารหัสทุกชนิดจะมีการแลกเปลี่ยนกันอยู่เสมอ คุณสามารถมีมาตรฐานที่มีความปลอดภัยมากกว่า AES แบบทวีคูณ แต่มันใช้เวลานานเกินไปในการเข้ารหัสและถอดรหัสเพื่อใช้งานจริง ในท้ายที่สุดแล้ว NIST ได้รับการคัดเลือกจาก Rijndael block cipher สำหรับ ความสามารถรอบด้าน, รวมถึงประสิทธิภาพของฮาร์ดแวร์และซอฟต์แวร์ความง่ายในการติดตั้งและระดับความปลอดภัย.
AES ทำงานอย่างไร?
โปรดทราบว่าตัวอย่างต่อไปนี้เป็นการทำให้เข้าใจง่าย แต่ให้แนวคิดทั่วไปเกี่ยวกับวิธีการทำงานของ AES น่าเสียดายที่โลกนี้มีกาแฟไม่เพียงพอที่จะทำให้คนส่วนใหญ่ต้องการที่จะผ่าน AES ที่ซับซ้อนมากขึ้น โดยปกติกระบวนการจะดำเนินการในรูปแบบไบนารีและมีคณิตศาสตร์มากขึ้น.
ก่อนข้อมูลจะแบ่งออกเป็นบล็อก.
ภายใต้วิธีการเข้ารหัสนี้สิ่งแรกที่เกิดขึ้นคือข้อความธรรมดาของคุณ (ซึ่งเป็นข้อมูลที่คุณต้องการเข้ารหัส) จะถูกแยกออกเป็นบล็อก ขนาดบล็อกของ AES คือ 128- บิตดังนั้นจึงแยกข้อมูลออกเป็นคอลัมน์สี่คูณสี่สิบหกไบต์ (มีแปดบิตในหนึ่งไบต์และ 16 x 8 = 128).
หากข้อความของคุณคือ“ ซื้อมันฝรั่งทอดให้ฉันหน่อย” บล็อกแรกจะเป็นดังนี้:
ข | ม. | โอ | พี |
ยู | อี | ม. | โอ |
Y | อี | เสื้อ | |
s |
เราจะข้ามข้อความที่เหลือไปสำหรับตัวอย่างนี้และเพียงมุ่งเน้นสิ่งที่เกิดขึ้นกับบล็อกแรกเมื่อมีการเข้ารหัส ปกติแล้ว“ …ถึงชิปโปรด” จะถูกเพิ่มไปยังบล็อกถัดไป.
การขยายคีย์
การขยายคีย์เกี่ยวข้องกับการรับคีย์เริ่มต้นและใช้เพื่อสร้างคีย์อื่น ๆ สำหรับกระบวนการเข้ารหัสแต่ละรอบ คีย์กลมแบบ 128 บิตใหม่เหล่านี้ได้มาจากกำหนดการสำคัญของ Rijndael ซึ่งเป็นวิธีที่ง่ายและรวดเร็วในการสร้างรหัสคีย์ใหม่ หากคีย์เริ่มต้นคือ “คีย์ที่น่าเบื่อ 1”:
k | ผม | ||
อี | ข | n | |
Y | R | โอ | ก. |
s | อี | R | 1 |
จากนั้นคีย์ใหม่แต่ละปุ่มอาจมีลักษณะเช่นนี้เมื่อมีการใช้กำหนดเวลาคีย์ของ Rijndael:
14 | 29 | 1h | s5 |
h9 | 9f | เซนต์ | 9f |
gt | 2h | HQ | 73 |
KS | ดีเจ | DF | HB |
แม้ว่าพวกเขาจะดูเหมือนตัวอักษรแบบสุ่ม (และตัวอย่างข้างต้นเป็นเพียงการทำขึ้น) แต่ละคีย์เหล่านี้ได้มาจากกระบวนการที่มีโครงสร้างเมื่อใช้การเข้ารหัส AES จริง เราจะกลับมาใช้ปุ่มกลมเหล่านี้เพื่อใช้ในภายหลัง.
เพิ่มปุ่มกลม
ในขั้นตอนนี้เนื่องจากเป็นรอบแรกรหัสเริ่มต้นของเราจะถูกเพิ่มในบล็อกข้อความของเรา:
ข | ม. | โอ | พี |
ยู | อี | ม. | โอ |
Y | อี | เสื้อ | |
s |
+
k | ผม | ||
อี | ข | n | |
Y | R | โอ | ก. |
s | อี | R | 1 |
สิ่งนี้ทำด้วย XOR cipher ซึ่งเป็นอัลกอริธึมการเข้ารหัสเพิ่มเติม แม้ดูเหมือนว่าคุณจะไม่สามารถเพิ่มสิ่งเหล่านี้เข้าด้วยกันได้ แต่โปรดทราบว่ามันถูกสร้างขึ้นในรูปแบบไบนารี ตัวละครเป็นเพียงจุดเริ่มต้นในการลองทำสิ่งต่าง ๆ ให้เข้าใจง่ายขึ้น สมมุติว่าการดำเนินการทางคณิตศาสตร์นี้ให้ผลลัพธ์แก่เรา:
h3 | JD | zu | 7s |
s8 | 7d | 26 | 2n |
ดีเจ | 4b | 9d | 9c |
74 | เอล | 2h | hg |
ไบต์ที่ถูกแทนที่
ในขั้นตอนนี้แต่ละไบต์จะถูกแทนที่ตามตารางที่กำหนดไว้ล่วงหน้า นี่เป็นตัวอย่างจากจุดเริ่มต้นของบทความที่ประโยคถูกเขียนโดยการเปลี่ยนตัวอักษรแต่ละตัวเป็นตัวอักษรที่มาหลังจากนั้นในตัวอักษร (สวัสดี กลายเป็น ifmmp).
ระบบนี้ซับซ้อนกว่าเล็กน้อยและไม่จำเป็นต้องมีเหตุผลอะไรเลย แต่มีตารางที่สร้างขึ้นซึ่งสามารถค้นหาโดยอัลกอริทึมซึ่งกล่าวว่าเช่นนั้น h3 กลายเป็น JB, s8 กลายเป็น 9f, ดีเจ กลายเป็น 62 และอื่น ๆ หลังจากขั้นตอนนี้สมมติว่าตารางที่กำหนดไว้ให้เรา:
JB | N3 | KF | N2 |
9f | jj | 1h | js |
74 | WH | 0 วัน | 18 |
HS | 17 | d6 | px |
เลื่อนแถว
แถว Shift เป็นชื่อที่ตรงไปตรงมาและขั้นตอนนี้เป็นสิ่งที่คุณคาดหวัง แถวที่สองจะถูกย้ายหนึ่งช่องว่างไปทางซ้ายแถวที่สามจะถูกย้ายสองช่องว่างไปทางซ้ายและแถวที่สี่ถูกย้ายสามช่องว่างไปทางซ้าย สิ่งนี้ทำให้เรา:
JB | N3 | KF | N2 |
jj | 1h | js | 9f |
0 วัน | 18 | 74 | WH |
px | HS | 17 | d6 |
ผสมคอลัมน์
ขั้นตอนนี้ค่อนข้างยากที่จะอธิบาย หากต้องการตัดส่วนใหญ่ของคณิตศาสตร์และทำให้สิ่งต่าง ๆ ง่ายขึ้นสมมติว่าแต่ละคอลัมน์มีสมการทางคณิตศาสตร์ที่ใช้กับมันเพื่อที่จะกระจายมันออกไป สมมติว่าการดำเนินการให้ผลลัพธ์นี้แก่เรา:
LS | J4 | 2n | แม่ |
83 | 28 | คิคิ | 9f |
9w | XM | 3L | M4 |
5b | a9 | CJ | PS |
เพิ่มปุ่มกลม (อีกครั้ง)
จำคีย์กลมเหล่านั้นที่เราทำเมื่อเริ่มต้นใช้คีย์เริ่มต้นและกำหนดการสำคัญของ Rijndael หรือไม่ นี่คือที่เราเริ่มใช้มัน เรารับผลลัพธ์ของคอลัมน์ผสมของเราและเพิ่มคีย์กลมแรกที่เราได้รับ:
LS | J4 | 2n | แม่ |
83 | 28 | คิคิ | 9f |
9w | XM | 3L | M4 |
5b | a9 | CJ | PS |
+
14 | 29 | 1h | s5 |
h9 | 9f | เซนต์ | 9f |
gt | 2h | HQ | 73 |
KS | ดีเจ | DF | HB |
สมมติว่าการดำเนินการนี้ให้ผลลัพธ์ต่อไปนี้แก่เรา:
9d | 5b | 28 | เอสเอฟ |
LS | DF | HF | 3b |
9t | 28 | แรงม้า | 8F |
62 | 7d | 15 | อา |
อีกหลายรอบ …
หากคุณคิดว่าเป็นอย่างนั้นเราไม่ได้ปิด หลังจากเพิ่มคีย์กลมสุดท้ายแล้วมันจะกลับไปยังขั้นตอนการแทนที่ไบต์ซึ่งแต่ละค่าจะเปลี่ยนไปตามตารางที่กำหนดไว้ล่วงหน้า เมื่อเสร็จแล้วจะกลับไปเลื่อนแถวและย้ายแต่ละแถวไปทางซ้ายทีละหนึ่งช่องว่างสองหรือสามช่อง จากนั้นจะผ่านสมการคอลัมน์ผสมอีกครั้ง หลังจากนั้นคีย์กลมอีกอันจะถูกเพิ่มเข้าไป.
มันไม่ได้หยุดอยู่แค่นั้น เมื่อเริ่มต้นมันก็บอกว่า AES มีขนาดคีย์เป็น 128, 192 หรือ 256 บิต. เมื่อใช้คีย์ 128- บิตจะมีเก้ารอบนี้ เมื่อใช้คีย์ 192- บิตจะมี 11 เมื่อใช้คีย์ 256- บิตมี 13 ดังนั้นข้อมูลจะต้องผ่านการแทนที่ไบต์เปลี่ยนแถวผสมคอลัมน์และขั้นตอนที่สำคัญรอบขึ้นไปสิบสามครั้งแต่ละครั้ง ถูกเปลี่ยนแปลงในทุกขั้นตอน.
หลังจากรอบเก้า, 11 หรือ 13 รอบมีรอบเพิ่มเติมอีกหนึ่งรอบที่ข้อมูลถูกประมวลผลโดยการแทนที่ไบต์เปลี่ยนแถวและเพิ่มขั้นตอนคีย์กลม แต่ ไม่ ขั้นตอนคอลัมน์ผสม ขั้นตอนการผสมคอลัมน์นั้นเกิดขึ้นเพราะในขั้นตอนนี้มันจะกินพลังงานในการประมวลผลโดยไม่ต้องเปลี่ยนแปลงข้อมูลซึ่งจะทำให้วิธีการเข้ารหัสมีประสิทธิภาพน้อยลง.
เพื่อให้สิ่งต่าง ๆ ชัดเจนขึ้นกระบวนการเข้ารหัส AES ทั้งหมดดำเนินการดังนี้:
การขยายคีย์
เพิ่มปุ่มกลม
การทดแทนไบต์
เลื่อนแถว
ผสมคอลัมน์
เพิ่มปุ่มกลม
x 9, 11 หรือ 13 ครั้งขึ้นอยู่กับว่าคีย์เป็น 128, 192 หรือ 256 บิต
การทดแทนไบต์
เลื่อนแถว
เพิ่มปุ่มกลม
เมื่อข้อมูลได้ผ่านกระบวนการที่ซับซ้อนนี้ต้นฉบับของคุณ “ โปรดซื้อมันฝรั่งทอดให้ฉันหน่อย” ออกมามองสิ่งที่ต้องการ “ ok23b8a0i3j 293uivnfqf98vs87a”. ดูเหมือนว่าเป็นสตริงอักขระที่สุ่มอย่างสมบูรณ์ แต่อย่างที่คุณเห็นจากตัวอย่างเหล่านี้มันเป็นผลของการดำเนินการทางคณิตศาสตร์ที่แตกต่างกันมากมายที่ถูกนำไปใช้กับมันซ้ำแล้วซ้ำอีก.
อะไรคือจุดสำคัญของแต่ละขั้นตอนเหล่านี้?
มีหลายสิ่งเกิดขึ้นเมื่อข้อมูลของเราถูกเข้ารหัสและสิ่งสำคัญคือต้องเข้าใจว่าทำไม สำคัญ การขยายตัวเป็นสิ่งสำคัญ ขั้นตอนเพราะมันให้กุญแจแก่เราในรอบต่อไป มิฉะนั้นจะมีการเพิ่มรหัสเดียวกันในแต่ละรอบซึ่งจะทำให้ AES ง่ายต่อการถอดรหัส ในรอบแรกคีย์เริ่มต้นจะถูกเพิ่มเพื่อเริ่มต้นการแก้ไขข้อความธรรมดา.
ขั้นตอนการทดแทนไบต์, จุดข้อมูลแต่ละจุดจะเปลี่ยนไปตามตารางที่กำหนดไว้ล่วงหน้า, ยังมีบทบาทสำคัญ. มันเปลี่ยนแปลงข้อมูลในลักษณะที่ไม่เป็นเชิงเส้นเพื่อใช้ความสับสนกับข้อมูล ความสับสนเป็นกระบวนการที่ช่วยในการซ่อนความสัมพันธ์ระหว่างข้อมูลที่เข้ารหัสและข้อความต้นฉบับ.
แถวกะก็สำคัญเช่นกัน, ทำสิ่งที่เรียกว่าแพร่ ในการเข้ารหัสการแพร่หมายถึงการย้ายข้อมูลเพื่อเพิ่มความซับซ้อน ด้วยการเลื่อนแถวข้อมูลจะถูกย้ายจากตำแหน่งเดิมช่วยเพิ่มเติมเพื่อปิดบัง. ผสมคอลัมน์ ทำหน้าที่ในลักษณะที่คล้ายกันโดยการแก้ไขข้อมูลในแนวตั้งแทนที่จะเป็นแนวนอน.
ในตอนท้ายของรอบจะมีการเพิ่มคีย์รอบใหม่ที่ได้มาจากคีย์เริ่มต้น สิ่งนี้เพิ่มความสับสนให้กับข้อมูลมากขึ้น.
ทำไมมีหลายรอบ?
กระบวนการของ การเพิ่มปุ่มกลม, การทดแทนไบต์, เลื่อนแถว และ คอลัมน์ผสม เปลี่ยนแปลงข้อมูล แต่ก็ยังสามารถถอดรหัสได้โดยการเข้ารหัสซึ่งเป็นวิธีการศึกษาอัลกอริทึมการเข้ารหัสเพื่อที่จะทำลายมัน.
การโจมตีทางลัด เป็นหนึ่งใน ภัยคุกคามที่สำคัญ. การโจมตีเหล่านี้สามารถถอดรหัสการเข้ารหัสได้โดยใช้ความพยายามน้อยกว่าการบังคับให้ใช้สัตว์ป่า เมื่อ AES ได้รับการออกแบบพบการโจมตีทางลัดได้มากถึงหกรอบของกระบวนการ ด้วยเหตุนี้จึงมีการเพิ่มอีกสี่รอบสำหรับขั้นต่ำ AES แบบ 128 บิตเป็นหลักประกันความปลอดภัย. ผลการปัดเศษ 10 รอบให้วิธีการเข้ารหัสที่มีพื้นที่เพียงพอสำหรับการป้องกันการโจมตีทางลัดภายใต้เทคนิคและเทคโนโลยีในปัจจุบัน.
ทำไมเราไม่เพิ่มอีกรอบเพื่อเสริมความปลอดภัย?
ด้วยสิ่งต่าง ๆ ในด้านความปลอดภัยจำเป็นต้องมี การประนีประนอมระหว่างกำลังป้องกันบริสุทธิ์การใช้งานและประสิทธิภาพ. หากคุณใส่กลอนประตูสิบบานพร้อมสลักเกลียวไว้ที่จุดเข้าสู่บ้านของคุณมันจะทำให้ปลอดภัยยิ่งขึ้น นอกจากนี้ยังใช้เวลาในการเข้าและออกที่ไม่สมเหตุสมผลซึ่งเป็นสาเหตุที่เราไม่เคยเห็นใครทำ.
มันเหมือนกันเมื่อพูดถึงการเข้ารหัส เราสามารถทำให้มันปลอดภัยมากขึ้นโดยการเพิ่มรอบมากขึ้น แต่มันจะช้าลงและมีประสิทธิภาพน้อยลง. รอบชิงชนะเลิศ AES 10, 12 และ 14 ได้ถูกตัดสินเนื่องจากมีการประนีประนอมที่ดี ระหว่างการแข่งขันด้านเหล่านี้อย่างน้อยในแนวนอนเทคโนโลยีปัจจุบัน.
การถอดรหัส AES
หากคุณจัดการกับกระบวนการการเข้ารหัสที่อธิบายไว้ข้างต้นแล้วการถอดรหัสนั้นค่อนข้างง่าย หากต้องการเปลี่ยนจาก ciphertext กลับไปเป็นข้อความธรรมดาของข้อความต้นฉบับทุกอย่างจะทำในสิ่งที่ตรงกันข้าม.
ถ้าเราเริ่มต้นด้วยผลลัพธ์ที่เข้ารหัสของเรา “ ok23b8a0i3j 293uivnfqf98vs87a” และ ใช้สิ่งที่ตรงกันข้ามของแต่ละขั้นตอนการเข้ารหัส, มันเริ่มต้นด้วยคีย์รอบผกผันจากนั้นแถวเปลี่ยนผกผันและการแทนไบต์ผกผันก่อนที่จะเข้าสู่ผกผันของ 9, 11 หรือ 13 รอบ. ดูเหมือนว่านี้:
“ ok23b8a0i3j 293uivnfqf98vs87a”
ผกผันเพิ่มคีย์กลม
แถวการเปลี่ยนผกผัน
การแทนค่าไบต์ผกผัน
ผกผันเพิ่มคีย์กลม
คอลัมน์ผสมผกผัน
แถวการเปลี่ยนผกผัน
การแทนค่าไบต์ผกผัน
x 9, 11 หรือ 13 ครั้งขึ้นอยู่กับว่าคีย์เป็น 128,192 หรือ 256 บิต
ผกผันเพิ่มคีย์กลม
หลังจากกระบวนการถอดรหัสนี้เราสิ้นสุดข้อความต้นฉบับของเราอีกครั้ง: “ โปรดซื้อมันฝรั่งทอดให้ฉันหน่อย”
128 กับ 192 เทียบกับ AES 256 บิต
AES มีความยาวคีย์ที่แตกต่างกันสามแบบ ความแตกต่างที่สำคัญคือจำนวนรอบที่ข้อมูลผ่านในกระบวนการเข้ารหัส 10, 12 และ 14 ตามลำดับ ในสาระสำคัญ, 192-bit และ 256 บิต ให้ ความปลอดภัยที่มากขึ้น กว่า 128 บิต.
ในแนวเทคโนโลยีปัจจุบัน, AES 128 บิต ก็เพียงพอสำหรับการใช้งานจริงมากที่สุด ข้อมูลที่มีความอ่อนไหวสูงซึ่งจัดการโดยผู้ที่มีระดับภัยคุกคามที่รุนแรงเช่น เอกสารลับสุดยอด ควบคุมโดยกองทัพก็น่าจะถูกประมวลผลด้วยเช่นกัน 192 หรือ AES 256 บิต.
หากคุณหวาดระแวงคุณอาจชอบใช้ 192 หรือ 256 บิต การเข้ารหัสทุกที่ที่ทำได้ นี่เป็นเรื่องปกติถ้ามันทำให้คุณนอนหลับได้ง่ายขึ้นในเวลากลางคืน แต่ก็ไม่จำเป็นสำหรับสถานการณ์ส่วนใหญ่ ไม่มีค่าใช้จ่ายเช่นกันโดยเพิ่มอีกสี่รอบ การเข้ารหัสแบบ 256 บิต ทำให้มีประสิทธิภาพลดลงประมาณ 40 เปอร์เซ็นต์.
ปัญหาความปลอดภัย AES
Cryptographers กำลังตรวจสอบ AES อย่างต่อเนื่องเพื่อหาจุดอ่อนพยายามหาเทคนิคใหม่ ๆ และควบคุมเทคโนโลยีที่เข้ามา สิ่งนี้เป็นสิ่งจำเป็นเพราะหากยังไม่ได้รับการทดสอบอย่างละเอียดจากนักวิชาการอาชญากรหรือรัฐชาติในที่สุดก็สามารถหาวิธีที่จะแตกมันได้โดยไม่ต้องให้คนทั่วโลกรู้ จนถึงตอนนี้นักวิจัยได้ค้นพบการแตกทางทฤษฎีและการโจมตีช่องทางด้านข้างเท่านั้น.
การโจมตีที่เกี่ยวข้องกับคีย์
ในปี 2009 มีการค้นพบชุดของการโจมตีที่เกี่ยวข้องกับคีย์ เหล่านี้เป็นประเภทของการเข้ารหัสลับที่เกี่ยวข้องกับการสังเกตว่าตัวเลขทำงานอย่างไรภายใต้คีย์ที่แตกต่างกัน การโจมตีที่เกี่ยวข้องกับคีย์ที่นักวิจัยค้นพบไม่ได้เป็นเรื่องที่น่ากังวล เป็นไปได้เฉพาะกับโปรโตคอลที่ไม่ได้ติดตั้งอย่างเหมาะสม.
การโจมตีที่แตกต่างที่รู้จักกันในคีย์
อีกครั้งในปี 2009 มีการโจมตีที่แตกต่างที่รู้จักกันที่สำคัญกับ AES-128 รุ่นแปดรอบ การโจมตีเหล่านี้ใช้คีย์ที่เป็นที่รู้จักกันอยู่แล้วเพื่อที่จะเข้าใจโครงสร้างโดยธรรมชาติของตัวเลข เนื่องจากการโจมตีครั้งนี้มีเฉพาะรุ่นแปดรอบเท่านั้นจึงไม่น่าเป็นห่วงสำหรับผู้ใช้ AES-128 ทุกวัน.
การโจมตีช่องทางด้านข้าง
มีการโจมตีทางทฤษฎีอื่น ๆ อีกหลายครั้ง แต่ภายใต้เทคโนโลยีปัจจุบันพวกเขายังคงใช้เวลาหลายพันล้านปีในการถอดรหัส ซึ่งหมายความว่า AES นั้นไม่สามารถแตกหักได้ในขณะนี้. แม้จะมีสิ่งนี้ AES ก็ยังคงมีช่องโหว่หากยังไม่ได้ใช้งานอย่างถูกต้องในสิ่งที่เรียกว่าการโจมตีช่องทางด้านข้าง.
การโจมตีช่องทางด้านข้าง เกิดขึ้นเมื่อระบบมีการรั่วไหลของข้อมูล ผู้โจมตีจะฟังเสียงข้อมูลเวลาข้อมูลแม่เหล็กไฟฟ้าหรือการใช้พลังงานเพื่อรวบรวมการอนุมานจากอัลกอริทึมซึ่งสามารถนำมาใช้เพื่อทำลายมัน.
หาก AES ถูกนำไปใช้อย่างระมัดระวังการโจมตีเหล่านี้สามารถป้องกันได้โดยการลบแหล่งที่มาของข้อมูลรั่วไหลหรือโดยการทำให้แน่ใจว่าไม่มีความสัมพันธ์ที่ชัดเจนระหว่างข้อมูลที่รั่วไหลออกมาและกระบวนการอัลกอริทึม.
จุดอ่อนสุดท้ายนั้นกว้างกว่า AES เฉพาะเจาะจง แต่ผู้ใช้ต้องระวังว่า AES จะไม่ทำให้ข้อมูลปลอดภัยโดยอัตโนมัติ. แม้แต่ AES-256 ก็ยังมีช่องโหว่หากผู้โจมตีสามารถเข้าถึงรหัสของผู้ใช้ได้. นี่คือสาเหตุที่ AES เป็นเพียงด้านเดียวในการรักษาความปลอดภัยของข้อมูล การจัดการรหัสผ่านที่มีประสิทธิภาพไฟร์วอลล์การตรวจจับไวรัสและการให้ความรู้ต่อการโจมตีทางวิศวกรรมสังคมนั้นมีความสำคัญในแบบของพวกเขาเอง.
AES ก็เพียงพอแล้ว?
ในยุคปัจจุบันเราทุกคนส่งข้อมูลที่ละเอียดอ่อนของเรามากทางออนไลน์, AES ได้กลายเป็นส่วนสำคัญของความปลอดภัยของเรา. แม้ว่าจะมีมาตั้งแต่ปี 2544 แต่เป็นกระบวนการซ้ำ ๆ ของการเพิ่มคีย์การแทนที่ไบต์การเลื่อนแถวและคอลัมน์การผสมได้พิสูจน์แล้วว่าเป็นการทดสอบเวลา.
แม้จะมีการโจมตีทางทฤษฎีในปัจจุบันและการโจมตีช่องทางที่อาจเกิดขึ้น, AES ยังคงปลอดภัย. เป็นมาตรฐานที่ยอดเยี่ยมสำหรับการรักษาความปลอดภัยการสื่อสารทางอิเล็กทรอนิกส์ของเราและสามารถนำไปใช้ในหลาย ๆ สถานการณ์ที่จำเป็นต้องได้รับการปกป้องข้อมูลที่ละเอียดอ่อน ตัดสินจากระดับเทคโนโลยีและเทคนิคการโจมตีในปัจจุบัน, คุณควรรู้สึกมั่นใจในการใช้มัน ในอนาคตอันใกล้.
ทำไมเราต้องเข้ารหัส?
ตอนนี้เราได้อ่านรายละเอียดทางเทคนิคของ AES แล้วสิ่งสำคัญคือการอภิปรายว่าเหตุใดการเข้ารหัสจึงมีความสำคัญ ในระดับพื้นฐานที่สุดการเข้ารหัสช่วยให้เราสามารถเข้ารหัสข้อมูลเพื่อให้เฉพาะผู้ที่สามารถเข้าถึงกุญแจเท่านั้นที่สามารถถอดรหัสข้อมูลได้ ดูเหมือนว่าไม่มีความหมาย ด้วยกุญแจความสับสนของตัวละครแบบสุ่มที่ดูเหมือนจะเปลี่ยนกลับไปเป็นข้อความดั้งเดิม.
รัฐบาลและกองทัพใช้การเข้ารหัสลับมาหลายพันปีแล้ว เพื่อป้องกันไม่ให้ข้อมูลที่ละเอียดอ่อนตกไปอยู่ในมือที่ผิด ในช่วงหลายปีที่ผ่านมามันพุ่งเข้ามาในชีวิตประจำวันมากขึ้นเรื่อย ๆ โดยเฉพาะอย่างยิ่งเมื่อส่วนใหญ่ของการติดต่อส่วนตัวสังคมและการทำงานของเราได้อพยพไปยังโลกออนไลน์.
แค่คิดถึงทุกสิ่ง ข้อมูลที่คุณป้อนลงในอุปกรณ์: รหัสผ่าน, รายละเอียดธนาคาร, ของคุณ ข้อความส่วนตัว และอีกมากมาย หากไม่มีการเข้ารหัสใด ๆ ข้อมูลนี้จะง่ายขึ้นมากสำหรับทุกคนที่จะดักจับไม่ว่าจะเป็นอาชญากร stalkers บ้าหรือรัฐบาล.
มากมาย ข้อมูลของเรามีค่าหรือละเอียดอ่อน, ดังนั้นจึงชัดเจนว่าจะต้องได้รับการปกป้องในทางที่มีเพียงตัวเราและผู้ที่เราอนุญาตเท่านั้นที่สามารถเข้าถึงได้. นั่นเป็นเหตุผลที่เราต้องการการเข้ารหัส. หากไม่มีโลกออนไลน์ก็ไม่สามารถทำงานได้ เราจะถูกปลดออกจากความเป็นส่วนตัวและความปลอดภัยอย่างสมบูรณ์โดยส่งชีวิตออนไลน์ของเราไปสู่ความวุ่นวายอย่างสมบูรณ์.
ดูสิ่งนี้ด้วย:
เครื่องมือสร้างรหัสผ่าน
ทรัพยากรการเข้ารหัส: รายการใหญ่ของเครื่องมือและคำแนะนำ
รหัสที่มีชื่อเสียงและยันต์ผ่านประวัติศาสตร์
สถิติความปลอดภัยทางไซเบอร์ & ข้อเท็จจริง
“ แฮ็คไซเบอร์อาชญากรรม” โดย jaydeep_ ได้รับอนุญาตภายใต้ มอนส์ CC0