เป็นการปฏิบัติที่ไม่ถูกต้องหรือไม่ที่จะเก็บใบรับรองไว้ในหน่วยความจำภายนอก


11

เรากำลังทำงานกับ AWS-IoT โดยใช้ไมโครคอนโทรลเลอร์ STM32

จนถึงวันนี้เรากำลังเขียนใบรับรองไปยังแฟลชและล็อคแฟลชจากการอ่านจากภายนอก เมื่อรหัสแอปพลิเคชันเพิ่มขึ้นเราจะมีพื้นที่ว่างน้อยลงบนแฟลชดังนั้นเราจึงวางแผนที่จะย้ายใบรับรองจากภายนอกบนการ์ด SD / EEPROM และอ่านเมื่อใดก็ตามที่จำเป็นก่อนเชื่อมต่อกับ AWS-IoT

หมายเหตุ:

  • นโยบายที่เขียนขึ้นสำหรับสิ่งนี้จะอนุญาตให้อุปกรณ์ที่มีชื่อเฉพาะเชื่อมต่อกับใบรับรองนั้นเท่านั้น

  • สิ่งที่ได้รับอนุญาตให้เผยแพร่ไปยัง 2 ช่องทางเท่านั้น (ชื่อและช่องฟีดข้อมูล) ซึ่งเชื่อมต่อกับตัวประมวลผลข้อมูลซึ่งจะไม่สนใจแพ็กเก็ตอันธพาลใด ๆ ที่เข้ามา

  • หากสิ่งที่เผยแพร่ / สมัครสมาชิกในหัวข้ออื่น AWS จะยกเลิกการเชื่อมต่อทันที

หากฉันตรวจพบว่าอุปกรณ์ถูกขโมย / โกงเราจะปิดการใช้งานคีย์จากเซิร์ฟเวอร์

ผู้เอาเปรียบสามารถทำอะไรกับใบรับรอง (RootCA, คีย์เซิร์ฟเวอร์, รหัสลูกค้า)

เป็นการปฏิบัติที่ไม่ถูกต้องหรือไม่ที่จะเก็บใบรับรองสำหรับ usecase ดังกล่าวไว้ในที่จัดเก็บข้อมูลภายนอก


คุณใช้การป้องกันการอ่านระดับ 2 (ถาวร) หรือระดับ 1 เพื่อทำให้แฟลชอ่านได้อย่างเดียวหรือไม่
Aurora0001

คุณหมายถึงอะไรโดย "ใบรับรอง" คุณหมายถึงใบรับรองสาธารณะ (เช่นคีย์สาธารณะและลายเซ็นจากรูตที่เชื่อถือได้) หรือไม่ หรือคุณหมายถึงกุญแจส่วนตัวที่เกี่ยวข้อง? โดยปกติแล้วใบรับรองนั้นเป็นที่เข้าใจกันว่าหมายถึงอดีต แต่คำพูดของคุณเกี่ยวกับ "คีย์เซิร์ฟเวอร์รหัสลูกค้า" และคำถามของคุณทำให้ฉันคิดว่าเราควรตรวจสอบสิ่งที่คุณหมายถึง
DW

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

โอ้ใช่ออนบอร์ดแฟลชสำหรับชิปแขนไม่เห็นด้วยกับข้อความก่อนหน้าของฉันซึ่งใช้สำหรับ spi flash ic หรือแฟลชภายนอก
เรือจอมพล

คำตอบ:


7

คุณพูดถึง "ใบรับรอง" แต่จากบริบทฉันคิดว่าคุณหมายถึงสองสิ่งที่แตกต่างกัน

  • อุปกรณ์ของคุณมีรหัสส่วนตัวซึ่งไม่ซ้ำกับอุปกรณ์นี้และไม่รู้จักนอกอุปกรณ์ คีย์นี้ระบุอุปกรณ์ของคุณ ใครก็ตามที่สามารถเข้าถึงคีย์นั้นสามารถเลียนแบบอุปกรณ์ได้ ซึ่งหมายความว่าพวกเขาสามารถทำได้โดยเฉพาะ:

    • เผยแพร่ข้อมูลที่ถูกต้อง แต่ไม่ถูกต้องในช่องที่อุปกรณ์ของคุณได้รับอนุญาตให้เผยแพร่
    • เผยแพร่ข้อมูลที่ไม่ถูกต้องซึ่งจะทำให้อุปกรณ์ถูกกฎหมาย
    • อาจเป็นไปได้ขึ้นอยู่กับกรณีการใช้งานเปิดเผยข้อมูลส่วนตัวของเจ้าของอุปกรณ์

    รหัสส่วนตัวนี้ยังคงเป็นความลับที่ดีกว่า

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

    • พุชอัปเดตเฟิร์มแวร์ไปยังอุปกรณ์
    • พุชอัปเดตการกำหนดค่าไปยังอุปกรณ์
    • ทำให้อุปกรณ์อัปโหลดข้อมูลไปยังตำแหน่งอื่น

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

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

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

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

  • หากมีมากกว่าหนึ่งชิ้นข้อมูลจากนั้นเมื่ออุปกรณ์อ่านกลุ่มข้อมูลกลับมาก็ไม่สามารถแน่ใจได้ว่านี่เป็นกลุ่มข้อมูลที่ถูกต้อง การแก้ไข: รวมตัวระบุที่ไม่ซ้ำกันในเนื้อหาของแต่ละชิ้น (เช่นเริ่มต้นในแต่ละก้อนกับหนึ่ง"AWS-IoT private key.", "configuration CA certificate.", "publishing server CA certificate.", "user personal data.", ... )
  • หากคุณอัปเดตข้อมูลในบางจุดเมื่อคุณอ่านกลับมาคุณจะไม่สามารถแน่ใจได้ว่าคุณได้รับข้อมูลเวอร์ชันล่าสุด หากใครบางคนสามารถปรับเปลี่ยนที่เก็บข้อมูลภายนอกพวกเขาไม่สามารถใส่ข้อมูลปลอมได้เพราะนั่นจะทำให้การตรวจสอบความถูกต้องล้มเหลว แต่พวกเขาสามารถกู้คืนข้อมูลเก่าได้เนื่องจากสิ่งที่เคยเป็นของแท้ยังคงเป็นของแท้ วิธีแก้ไข: ในแต่ละกลุ่มข้อมูลที่จัดเก็บภายนอกให้รวมตัวนับที่คุณเพิ่มขึ้นทุกครั้งที่คุณเขียนเวอร์ชันใหม่ของกลุ่มข้อมูลนั้น เมื่อคุณอ่านกลุ่มข้อมูลกลับให้ตรวจสอบว่าเป็นเวอร์ชันที่คาดหวัง

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


10

บริบทนิดหน่อย

เนื่องจากคุณใช้ MQTT กับ AWS IoT คุณคาดว่าจะใช้ใบรับรอง X.509สำหรับการตรวจสอบสิทธิ์และความปลอดภัย Amazon มีคำแนะนำเล็กน้อยเกี่ยวกับวิธีที่คุณควรรักษาความปลอดภัยใบรับรองของคุณดังนั้นฉันจะเสนอราคาที่นี่:

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

เนื่องจากปัจจุบันคุณกำลังใช้Read Out Protection (RDP) ของ STM32 ทั้งหมด แต่ผู้โจมตีที่ได้รับการกำหนดมากที่สุดจะมีปัญหาในการเข้าถึงใบรับรองของคุณในรูปแบบปัจจุบันของคุณ:

การป้องกันการอ่านออกทั่วโลกช่วยให้รหัสเฟิร์มแวร์ในตัว (โหลดไว้ล่วงหน้าในหน่วยความจำแฟลช) เพื่อป้องกันวิศวกรรมย้อนกลับการทุ่มตลาดโดยใช้เครื่องมือดีบั๊กหรือวิธีการอื่น ๆ ของการโจมตีที่ล่วงล้ำ

  • ระดับ 0 - ไม่มีการป้องกัน (ค่าเริ่มต้น)
  • ระดับ 1 - หน่วยความจำแฟลชได้รับการปกป้องจากการอ่านโดยการดีบักหรือการทิ้งโค้ดโดย RAM ที่โหลดมา
  • ระดับ 2 - คุณสมบัติการดีบักทั้งหมดถูกปิดใช้งาน

ที่เก็บข้อมูลภายนอกจะปลอดภัยหรือไม่

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

บิตใดที่ฉันจำเป็นต้องให้เป็นส่วนตัว?

เมื่อคุณสร้างใบรับรองอุปกรณ์ใน AWS IoT คุณควรเห็นภาพเช่นนี้:

AWS IoT

ภาพจากหน้าสร้างและเปิดใช้งานใบรับรองอุปกรณ์ของเอกสาร AWS IoT

คีย์ส่วนตัวคือสิ่งที่คุณต้องการเก็บรักษา ... เป็นส่วนตัวและควรเก็บไว้ในหน่วยความจำที่มีการป้องกันการอ่านอย่างแน่นอนหากเป็นไปได้ พับลิกคีย์และใบรับรองถูกออกแบบมาเพื่อแชร์ดังนั้นหากคุณไม่มีพื้นที่เหลือเพียงพอคุณสามารถย้ายคีย์เหล่านั้นไปยังที่เก็บข้อมูลภายนอกได้อย่างปลอดภัย คุณสามารถรับบริบทเพิ่มเติมอีกเล็กน้อยบนหน้าSSL / TLS ทำงานอย่างไร ที่ Information Security Stack Exchange และการเข้ารหัสคีย์สาธารณะบน Wikipedia ฉันคิดว่าฉันจะทำให้คุณเป็นความเสียหายถ้าฉันไม่ได้รวมภาพนี้ไว้เพื่ออธิบายว่าทำไมคีย์ส่วนตัวต้องเป็นความลับ:

การเข้ารหัสคีย์สาธารณะ.

ภาพจากWikipediaซึ่งเผยแพร่สู่สาธารณสมบัติ

กุญแจสาธารณะของอุปกรณ์ของคุณคือสิ่งที่ AWS IoT ใช้ในการเซ็นข้อความเพื่อส่งไปยังอุปกรณ์ของคุณ (แต่ไม่ได้พิสูจน์ว่าใครกำลังส่งข้อความ ) ดังนั้นจริงๆแล้วมันไม่ใช่หายนะครั้งใหญ่ถ้ามีคนขโมยกุญแจสาธารณะเพราะมันไม่ได้หมายความว่าเป็นความลับ

คีย์ส่วนตัวคือสิ่งที่ใช้อุปกรณ์ของคุณเพื่อถอดรหัสข้อความจึงเป็นปัญหาที่ใหญ่กว่าเล็กน้อยถ้าโจมตีขโมยนี้

คุณยังถามว่าจะเกิดอะไรขึ้นถ้าผู้โจมตีขโมยใบรับรอง RootCA ถ้ามีคนขโมยกุญแจส่วนตัว AWS IOT ของมันจะร้ายแรง แต่ใบรับรอง RootCA บนอุปกรณ์ของคุณไม่ได้ว่า สิ่งRootCA.crtที่อเมซอนให้แก่คุณนั้นเป็นสาธารณะอย่างสมบูรณ์และมีจุดประสงค์เพื่อให้คุณสามารถตรวจสอบได้ว่าคุณไม่ได้ถูกโจมตี แต่อย่างใด

อุปกรณ์ที่ถูกแฮ็กสามารถทำอะไรได้เสียหาย

อุปกรณ์ที่ถูกขโมยของคุณสามารถดำเนินการตามที่ระบุไว้ในนโยบายเท่านั้น พยายามที่จะปฏิบัติตามหลักการของสิทธิน้อย ; ให้สิทธิ์เฉพาะอุปกรณ์ของคุณที่จำเป็นอย่างยิ่งเท่านั้นดังนั้นหากสิ่งที่เลวร้ายที่สุดเกิดขึ้นมันไม่สามารถทำลายความเสียหายได้มากเกินไป สำหรับกรณีเฉพาะของคุณ:

สิ่งนี้ได้รับอนุญาตให้เผยแพร่ได้เพียง 2 แชนเนล (ชื่อและช่องฟีดข้อมูล) ซึ่งเชื่อมต่อกับตัวประมวลผลข้อมูลซึ่งจะไม่สนใจแพ็กเก็ตอันธพาลใด ๆ ที่เข้ามา

ดีแล้ว. การโจมตีใด ๆ ควรถูกแยกออกเป็นสองหัวข้อ MQTT ที่อุปกรณ์สามารถเผยแพร่ได้ดังนั้นจะไม่ก่อให้เกิดอันตรายในวงกว้าง


9

เป็นการดีที่คุณต้องการให้ระบบโดยรวมของคุณมีการออกแบบที่แยกหน่วยเดียวทำลายหน่วยนั้นเท่านั้นไม่ใช่ระบบโดยทั่วไป

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

หากแยกแต่ละคีย์จากอุปกรณ์เดียวและเริ่มใช้งานในทางที่ผิดหรือแสดงในปริมาณการรับส่งข้อมูลที่ต้องมาจากหลายโคลนที่ไม่ได้รับอนุญาตคุณสามารถแบนคีย์นั้นทางฝั่งเซิร์ฟเวอร์ได้

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


ขอบคุณสำหรับบันทึกย่อของคุณวิธีที่เราได้วางแผนไว้ในตอนท้ายของการรับนายหน้า MQTT คือ 1 หากคุณโพสต์ไปยังช่องทางอื่นที่คุณไม่ได้รับอนุญาตหรือ 2 หากคุณโพสต์ข้อมูลการโกงลงในช่องที่เหมาะสมที่ไม่สม่ำเสมอหรือ 3 เรารู้ว่าอุปกรณ์ถูกไฮแจ็ก (เมื่อเปิดอุปกรณ์: เซ็นเซอร์เอฟเฟกต์ฮอลล์) ชุดคีย์ของ AWS-IoT จะถูกทำลายทำให้ชุดคีย์นั้นไม่มีประโยชน์ ดังนั้นหากคุณแฮ็คอุปกรณ์หนึ่งเครื่อง / รับรหัสของอุปกรณ์หนึ่งชิ้นคุณจะไม่ต้องทำอะไรมากนักเนื่องจากนโยบายนั้นเข้มงวดมากสำหรับหัวข้อที่อุปกรณ์สามารถใช้งานได้ (จำกัด อยู่ที่ 2) และข้อมูลที่คุณส่งผ่าน
user2967920

5

คุณควรพยายามเก็บเป็นความลับของรหัสลูกค้า (แต่เข้าใจความหมายของการสูญเสียมัน (1) ตามที่อธิบายไว้ในคำตอบอื่น ๆ ) รหัสสาธารณะของเซิร์ฟเวอร์และใบรับรองสาธารณะ AWS มีความสำคัญต่อความปลอดภัยที่ปลายอุปกรณ์ไม่ใช่เพราะคุณต้องการเก็บเป็นความลับ แต่เนื่องจากการเปลี่ยนใบรับรอง AWS (บนอุปกรณ์ที่ถูกบุกรุก) ผู้โจมตีสามารถชักชวนให้อุปกรณ์ดำเนินการ แลกเปลี่ยนกับโฮสต์ของผู้โจมตีหรือติดต่อสื่อสารกับ AWS ของคุณโดยตรง

โดยการทำเช่นนี้ (2) ผู้โจมตีสามารถตัดการรักษาความปลอดภัย TLS ซึ่งอาจส่งผลให้การรักษาความปลอดภัยลดลงอย่างเพียงพอซึ่งพวกเขาสามารถย้อนกลับสร้างรหัสลูกค้าได้

ด้วยเหตุผลนี้คีย์เดียวที่ปลอดภัยที่จะเปิดเผยในอุปกรณ์หน่วยความจำภายนอกคือกุญแจสาธารณะของเซิร์ฟเวอร์ การเปลี่ยนแปลงนี้ (3) จะอนุญาตให้อุปกรณ์ของคุณถูกบังคับให้เชื่อมต่อกับบริการอันธพาล AWS ซึ่งเป็นเรื่องยากที่วิศวกรจะเข้าถึง แม้แต่การรั่วไหลเพียงคีย์นี้อาจอนุญาตให้ใครบางคนสอดแนมหรือปลอมแปลงการส่งสัญญาณบางอย่าง (ตัวอย่างเช่นถ้าเลเยอร์ TLS สามารถลดระดับอย่างใด)

ดังนั้นโดยสรุปความเสี่ยงไม่ได้เป็นเพียงการรั่วไหลของข้อมูลมีความเสี่ยงหากสามารถให้เฟิร์มแวร์ (เชื่อถือได้ตามที่คาดการณ์) ไว้พร้อมกับข้อมูลความปลอดภัยที่ไม่น่าเชื่อถือ


1
จุดที่น่าสนใจ แต่สำหรับคุณล่าสุดผู้โจมตีเปลี่ยนรหัสสาธารณะของเซิร์ฟเวอร์บนอุปกรณ์ที่อยู่ในความครอบครองของพวกเขาน่าจะอนุญาตให้เชื่อมต่อผ่านพร็อกซีปลอมตัวที่มีการจับคู่ส่วนตัวของคีย์การเปลี่ยนที่ติดตั้งที่ด้านดาวน์สตรีม จากนั้นสามารถส่งต่อทราฟฟิกไปยังเซิร์ฟเวอร์จริงในขณะที่บันทึกข้อมูลทั้งหมด ณ จุดถ่ายโอนระหว่างเซสชัน crypto ที่ถูกกฎหมายและแอบอ้าง สิ่งนี้จะไม่ได้เป็นเทคโนโลยีดั้งเดิม กล่องดังกล่าวจะถูกขายให้กับโรงงานที่ต้องการอุปกรณ์ต่าง ๆ ในเครือข่ายของพวกเขาเพื่อเชื่อถือใบรับรองการปลอมแปลง
Chris Stratton

ฉันคิดว่าคุณกำลังอธิบายจุดที่ 2 ของฉันที่นี่ คีย์ที่ 3 นี้ไม่ใช้ด้านล่างโปรโตคอล TLS เพื่อเข้ารหัสข้อมูลที่ส่งผ่านลิงก์ที่เชื่อถือได้เพิ่มเติมหรือไม่
Sean Houlihane

โดยปกติแล้วการโจมตี "เชื่อใจใบรับรองปลอมตัวของพร็อกซีของเรา" จะใช้เพื่อทำลาย TLS แต่โดยทั่วไปสามารถใช้กับสิ่งใดก็ตามที่คุณสามารถรับ / แทนที่ข้อมูลได้มากพอที่จะปลอมตัวเป็นจุดสิ้นสุดแต่ละจุด
Chris Stratton

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