ข้ามไปเนื้อหา

โอเพนเอสเอสแอล

จากวิกิพีเดีย สารานุกรมเสรี
(เปลี่ยนทางจาก OpenSSL)
OpenSSL
นักพัฒนาThe OpenSSL Project
วันที่เปิดตัว1998; 28 ปีที่แล้ว (1998)
รุ่นเสถียร
Stable3.6.0[1] แก้ไขบนวิกิสนเทศ / 1 ตุลาคม 2025
ที่เก็บข้อมูล
ภาษาที่เขียนภาษาซี, Assembly, Perl
ประเภทCryptography library
สัญญาอนุญาต3.0 and later: Apache-2.0[2]
1.x and earlier: OpenSSL[3]
เว็บไซต์www.openssl.org

โอเพนเอสเอสแอล (อังกฤษ: OpenSSL) เป็น ไลบรารี ซอฟต์แวร์สำหรับแอปพลิเคชันที่ให้การสื่อสารที่ปลอดภัยผ่าน เครือข่ายคอมพิวเตอร์ ป้องกันการดักฟัง และระบุบุคคลที่ปลายอีกด้านหนึ่ง เซิร์ฟเวอร์ อินเทอร์เน็ต ใช้กันอย่างแพร่หลาย รวมถึง เว็บไซต์ ที่ใช้ เอชทีทีพีเอส เป็นส่วนใหญ่

โอเพนเอสเอสแอลมีการใช้งานโปรโตคอล SSL และ TLS แบบโอเพ่นซอร์ส ไลบรารี หลัก ซึ่งเขียนด้วย ภาษาซี ใช้ฟังก์ชัน การเข้ารหัส ขั้นพื้นฐานและมีฟังก์ชันยูทิลิตี้ต่างๆ มี Wrappers ที่อนุญาตให้ใช้ไลบรารีโอเพนเอสเอสแอลในภาษาคอมพิวเตอร์ที่หลากหลาย

OpenSSL Software Foundation (OSF) เป็นตัวแทนของโครงการโอเพนเอสเอสแอล ในความสามารถทางกฎหมายส่วนใหญ่ รวมถึงข้อตกลงใบอนุญาตผู้ร่วมให้ข้อมูล การจัดการการบริจาค และอื่นๆ OpenSSL Software Services (OSS) ยังเป็นตัวแทนของโครงการ OpenSSL สำหรับสัญญาการสนับสนุนอีกด้วย

โอเพนเอสเอสแอลพร้อมใช้งานใน ระบบปฏิบัติการ แบบยูนิกซ์ ส่วนใหญ่ (รวมถึง ลินุกซ์, แมคโอเอส และ เบิร์กลีย์ซอฟต์แวร์ดิสทริบิวชัน), ไมโครซอฟท์ วินโดวส์ และ OpenVMS

ประวัติโครงการ

[แก้]

โครงการ OpenSSL ก่อตั้งขึ้นในปี 1998 เพื่อมอบชุดเครื่องมือเข้ารหัสฟรีสำหรับโค้ดที่ใช้บนอินเทอร์เน็ต มีพื้นฐานมาจากการแยก SSLeay โดย Eric Andrew Young และ Tim Hudson ซึ่งยุติการพัฒนาอย่างไม่เป็นทางการเมื่อวันที่ 17 ธันวาคม 1998 เมื่อ Young และ Hudson ทั้งคู่ไปทำงานให้กับ RSA Security สมาชิกผู้ก่อตั้งครั้งแรก ได้แก่ Mark Cox, Ralf Engelschall, Stephen Henson, Ben Laurie และ Paul Sutton

การเปิดตัวเวอร์ชัน

[แก้]
การเปิดตัวเวอร์ชันของ OpenSSL [4][5][6]
เวอร์ชันวันที่เปิดตัวครั้งแรกหมายเหตุเวอร์ชันย่อยสุดท้าย
Unsupported: 0.9.1[7] 23 ธันวาคม ค.ศ. 1998
  • Official start of the OpenSSL project
0.9.1c (23 December 1998)
Unsupported: 0.9.2[7] 22 มีนาคม ค.ศ. 1999
  • Successor of 0.9.1c
0.9.2b (6 April 1999)
Unsupported: 0.9.3[7] 25 พฤษภาคม ค.ศ. 1999
  • Successor of 0.9.2b
0.9.3a (27 May 1999)
Unsupported: 0.9.4[7] 9 สิงหาคม ค.ศ. 1999
  • Successor of 0.9.3a
0.9.4 (9 August 1999)
Unsupported: 0.9.5[7] 28 กุมภาพันธ์ ค.ศ. 2000
  • Successor of 0.9.4
0.9.5a (1 April 2000)
Unsupported: 0.9.6[7] 24 กันยายน ค.ศ. 2000
  • Successor of 0.9.5a
0.9.6m (17 March 2004)
Unsupported: 0.9.7[7] 31 ธันวาคม ค.ศ. 2002
  • Successor of 0.9.6m
0.9.7m (23 February 2007)
Unsupported: 0.9.8[7] 5 กรกฎาคม ค.ศ. 2005
  • Successor of 0.9.7m
0.9.8zh (3 December 2015)
Unsupported: 1.0.0[8] 29 มีนาคม ค.ศ. 2010
  • Successor of 0.9.8n
1.0.0t (3 ธันวาคม ค.ศ. 2015)
Unsupported: 1.0.1[9] 14 มีนาคม ค.ศ. 2012 1.0.1u (22 กันยายน ค.ศ. 2016)
Unsupported: 1.0.2[10] 22 มกราคม ค.ศ. 2015
  • Successor of 1.0.1l
  • Supported until 31 December 2019 (Long Term Support)[11]
  • Suite B support for TLS 1.2 and DTLS 1.2
  • Support for DTLS 1.2
  • TLS automatic elliptic curve (EC) selection
  • API to set TLS supported signature algorithms and curves
  • SSL_CONF configuration API
  • TLS Brainpool support
  • ALPN support
  • CMS support for RSA-PSS, RSA-OAEP, ECDH and X9.42 DH
  • FIPS 140 support
1.0.2u (20 ธันวาคม ค.ศ. 2019)
Unsupported: 1.1.0[12] 25 สิงหาคม ค.ศ. 2016
  • Successor of 1.0.2h
  • Supported until 11 September 2019[11]
  • Support for BLAKE2 (RFC 7693)
  • Support for ChaCha20-Poly1305 (RFC 7539)
  • Support for X25519 (RFC 7748)
  • Support for DANE and Certificate Transparency
  • Support for CCM Ciphersuites
  • Support for extended master secret
  • SSLv2 removed
  • Kerberos ciphersuite support removed
  • RC4 and 3DES removed from DEFAULT ciphersuites in libssl
  • Remove DSS, SEED, IDEA, CAMELLIA, and AES-CCM from the DEFAULT cipherlist
  • 40 and 56 bit cipher support removed from libssl
  • FIPS 140 support removed
1.1.0l (10 กันยายน ค.ศ. 2019)
Unsupported: 1.1.1 LTS[13][14] 11 กันยายน ค.ศ. 2018 1.1.1w (11 September 2023)
Supported: 3.0.0 LTS[16][17][note 1] 7 กันยายน ค.ศ. 2021 Ongoing development.
(EOL 2026-09-07)
Latest version: 3.1.0[19][20] 14 มีนาคม ค.ศ. 2023
  • Supported until 14 March 2025[11]
  • FIPS 140-3 compliance.
  • Performance enhancements.
Ongoing development.
(EOL 2025-03-14)
สัญลักษณ์:
ไม่รองรับ
รองรับ
รุ่นเสถียรล่าสุด

ช่องโหว่ที่เป็นที่รู้จักกันกว้างขวาง

[แก้]

ฮาร์ตบลีด

[แก้]
โลโก้ของบั๊กฮาร์ตบลีด

OpenSSL รุ่น 1.0.1 ไปจนถึง 1.0.1f มีบั๊ก ในระบบของส่วนขยาย Heartbeat Extension ในตัว TLS ช่องโหว่นี้สามารถทำให้เปิดเผยข้อมูลในหน่วยความจำได้มากถึง 64กิบิไบต์ในแต่ละ heartbeat[22][23] (CVE-2014-0160). การอ่านหน่วยความจำของเซิร์ฟเวอร์สามารถเปิดช่องโหว่ให้ผู้ไม่หวังดีกอบโกยข้อมูลละเอียดอ่อน รวมไปถึงกุญแจส่วนตัวด้วย[24]

เชิงอรรถ

[แก้]
  1. The major version 2.0.0 was skipped due to its previous use in the OpenSSL FIPS module.[18]

อ้างอิง

[แก้]
  1. "OpenSSL 3.6.0". 1 ตุลาคม 2025. สืบค้นเมื่อ 1 ตุลาคม 2025.
  2. "/source/license.html". www.openssl.org. สืบค้นเมื่อ 2021-03-03.
  3. "OpenSSL License | Software Package Data Exchange (SPDX)". spdx.org.
  4. "OpenSSL – Changelog". OpenSSL Software Foundation. สืบค้นเมื่อ 2016-09-26.
  5. "OpenSSL – Release Strategy". OpenSSL Software Foundation. คลังข้อมูลเก่าเก็บจากแหล่งเดิมเมื่อ 2016-10-06. สืบค้นเมื่อ 2016-09-26.
  6. "OpenSSL Releases". GitHub. สืบค้นเมื่อ 2022-12-06.
  7. 1 2 3 4 5 6 7 8 "OpenSSL 0.9.x series notes". GitHub. สืบค้นเมื่อ 2022-12-06.
  8. "OpenSSL 1.0.0 series notes". GitHub. สืบค้นเมื่อ 2022-12-06.
  9. "OpenSSL 1.0.1 series notes". GitHub. สืบค้นเมื่อ 2022-12-06.
  10. "OpenSSL 1.0.2 series notes". GitHub. สืบค้นเมื่อ 2022-12-06.
  11. 1 2 3 4 5 "Release Strategy". www.openssl.org (ภาษาอังกฤษ). OpenSSL Foundation. 2020-01-07. คลังข้อมูลเก่าเก็บจากแหล่งเดิมเมื่อ 2016-10-06. สืบค้นเมื่อ 2023-10-14.
  12. "OpenSSL 1.1.0 series notes". GitHub. สืบค้นเมื่อ 2022-12-06.
  13. 1 2 Caswell, Matt (2018-09-11). "OpenSSL 1.1.1 Is Released". www.openssl.org (ภาษาอังกฤษ). OpenSSL Foundation.
  14. "OpenSSL 1.1.1 series notes". GitHub. สืบค้นเมื่อ 2022-12-06.
  15. Caswell, Matt (2018-02-08). "Using TLS1.3 With OpenSSL - OpenSSL Blog". www.openssl.org (ภาษาอังกฤษ). OpenSSL Foundation.
  16. "OpenSSL 3.0 Has Been Released! - OpenSSL Blog". www.openssl.org. คลังข้อมูลเก่าเก็บจากแหล่งเดิมเมื่อ 2021-09-08. สืบค้นเมื่อ 2021-09-08.
  17. "OpenSSL 3.0 series notes". GitHub. สืบค้นเมื่อ 2022-12-06.
  18. 1 2 Matt Caswell (2018-11-28). "The Holy Hand Grenade of Antioch". OpenSSL Blog. คลังข้อมูลเก่าเก็บจากแหล่งเดิมเมื่อ 2021-09-07. สืบค้นเมื่อ 2019-10-07.
  19. "OpenSSL 3.1 Final Release - OpenSSL Blog". www.openssl.org. คลังข้อมูลเก่าเก็บจากแหล่งเดิมเมื่อ 2023-03-14. สืบค้นเมื่อ 2023-03-15.
  20. "OpenSSL 3.1 series notes". GitHub. สืบค้นเมื่อ 2023-03-15.
  21. OpenSSL.org (เมษายน 7, 2014). "OpenSSL Security Advisory [07 Apr 2014]". คลังข้อมูลเก่าเก็บจากแหล่งเดิมเมื่อ เมษายน 8, 2014. สืบค้นเมื่อ เมษายน 9, 2014.
  22. OpenSSL (เมษายน 7, 2014). "TLS heartbeat read overrun (CVE-2014-0160)". คลังข้อมูลเก่าเก็บจากแหล่งเดิมเมื่อ เมษายน 8, 2014. สืบค้นเมื่อ เมษายน 8, 2014.
  23. Codenomicon Ltd (เมษายน 8, 2014). "Heartbleed Bug". สืบค้นเมื่อ เมษายน 8, 2014.