OpenSSL 3.0.0 มาพร้อมกับการเปลี่ยนแปลงและการปรับปรุงที่สำคัญมากมาย

หลังจากสามปีของการพัฒนาและ 19 เวอร์ชันทดลอง เปิดตัว OpenSSL 3.0.0 เวอร์ชั่นใหม่เมื่อไม่นานนี้ ที่ มีการเปลี่ยนแปลงมากกว่า 7500 รายการ สนับสนุนโดยนักพัฒนา 350 คนและนั่นแสดงถึงการเปลี่ยนแปลงที่สำคัญในหมายเลขเวอร์ชันและนั่นเป็นเพราะการเปลี่ยนไปใช้การกำหนดหมายเลขแบบเดิม

จากนี้ไป ตัวเลขหลักแรก (หลัก) ในหมายเลขเวอร์ชันจะเปลี่ยนไปก็ต่อเมื่อความเข้ากันได้ถูกละเมิดที่ระดับ API / ABI และตัวที่สอง (รองลงมา) เมื่อฟังก์ชันเพิ่มขึ้นโดยไม่เปลี่ยน API / ABI การอัปเดตแก้ไขจะจัดส่งพร้อมการเปลี่ยนแปลงหลักที่สาม (แพตช์) หมายเลข 3.0.0 ถูกเลือกทันทีหลังจาก 1.1.1 เพื่อหลีกเลี่ยงความขัดแย้งกับโมดูล FIPS ที่อยู่ระหว่างการพัฒนาสำหรับ OpenSSL ซึ่งมีหมายเลข 2.x

การเปลี่ยนแปลงครั้งสำคัญครั้งที่สองสำหรับโครงการคือ การเปลี่ยนจากใบอนุญาตคู่ (OpenSSL และ SSLeay) ไปยังใบอนุญาต Apache 2.0 ใบอนุญาต OpenSSL ดั้งเดิมที่ใช้ก่อนหน้านี้อิงตามใบอนุญาต Apache 1.0 ดั้งเดิม และต้องมีการกล่าวถึง OpenSSL ในสื่อส่งเสริมการขายอย่างชัดเจนเมื่อใช้ไลบรารี OpenSSL และหมายเหตุพิเศษหาก OpenSSL จัดส่งมาพร้อมกับผลิตภัณฑ์

ข้อกำหนดเหล่านี้ทำให้ใบอนุญาตก่อนหน้านี้ไม่เข้ากันกับ GPL ทำให้ยากต่อการใช้ OpenSSL ในโครงการที่ได้รับอนุญาตของ GPL เพื่อหลีกเลี่ยงความไม่ลงรอยกันนี้ โครงการ GPL ถูกบังคับให้บังคับใช้ข้อตกลงใบอนุญาตเฉพาะ ซึ่งข้อความหลักของ GPL ถูกเสริมด้วยประโยคที่อนุญาตให้แอปพลิเคชันเชื่อมโยงไปยังไลบรารี OpenSSL ได้อย่างชัดเจน และกล่าวว่า GPL ไม่ได้มีผลกับการผูกกับ OpenSSL .

มีอะไรใหม่ใน OpenSSL 3.0.0

สำหรับส่วนของความแปลกใหม่ที่นำเสนอใน OpenSSL 3.0.0 เราจะพบว่า มีการเสนอโมดูล FIPS ใหม่ นี้ รวมถึงการใช้อัลกอริธึมการเข้ารหัส ที่เป็นไปตามมาตรฐานความปลอดภัย FIPS 140-2 (กระบวนการรับรองโมดูลมีกำหนดจะเริ่มในเดือนนี้ และคาดว่าจะมีการรับรอง FIPS 140-2 ในปีหน้า) โมดูลใหม่นี้ใช้งานง่ายกว่ามาก และการเชื่อมต่อกับแอปพลิเคชันจำนวนมากจะไม่ยากไปกว่าการเปลี่ยนไฟล์การกำหนดค่า ตามค่าเริ่มต้น FIPS จะถูกปิดใช้งานและจำเป็นต้องเปิดใช้งานตัวเลือก enable-fips

ใน libcrypto แนวคิดของผู้ให้บริการที่เชื่อมต่อถูกนำมาใช้ ซึ่งมาแทนที่แนวคิดของเครื่องยนต์ (ENGINE API เลิกใช้แล้ว) ด้วยความช่วยเหลือของผู้ขาย คุณสามารถเพิ่มการใช้งานอัลกอริทึมของคุณเองสำหรับการดำเนินการต่างๆ เช่น การเข้ารหัส การถอดรหัส การสร้างคีย์ การคำนวณ MAC การสร้างและการตรวจสอบลายเซ็นดิจิทัล

ยังเน้นย้ำว่า เพิ่มการรองรับ CMPที่ สามารถใช้เพื่อขอใบรับรองจากเซิร์ฟเวอร์ CA ต่ออายุใบรับรอง และเพิกถอนใบรับรอง การทำงานกับ CMP ทำได้โดยยูทิลิตี้ใหม่ openssl-cmp ซึ่งรองรับรูปแบบ CRMF และการส่งคำขอผ่าน HTTP / HTTPS

ด้วย มีการเสนออินเทอร์เฟซการเขียนโปรแกรมใหม่สำหรับการสร้างคีย์: EVP_KDF (Key Derivation Function API) ซึ่งช่วยลดความยุ่งยากในการเริ่มต้นใช้งาน KDF และ PRF ใหม่ EVP_PKEY API แบบเก่าซึ่งมีอัลกอริทึม scrypt, TLS1 PRF และ HKDF พร้อมใช้งาน ได้รับการออกแบบใหม่ให้เป็นเลเยอร์ระดับกลางที่ใช้งานบน EVP_KDF และ EVP_MAC API

และในการดำเนินการตามโปรโตคอล TLS มอบความสามารถในการใช้ไคลเอ็นต์ TLS และเซิร์ฟเวอร์ที่สร้างไว้ในเคอร์เนล Linux เพื่อเร่งดำเนินการ หากต้องการเปิดใช้งานการใช้งาน TLS ที่จัดเตรียมโดยเคอร์เนล Linux ต้องเปิดใช้งานตัวเลือก "SSL_OP_ENABLE_KTLS" หรือการตั้งค่า "enable-ktls"

ในทางกลับกันมีการกล่าวถึงว่า ส่วนสำคัญของ API ได้ถูกย้ายไปยังหมวดหมู่ที่เลิกใช้แล้ว- การใช้การเรียกที่เลิกใช้แล้วในโค้ดโครงการจะสร้างคำเตือนในระหว่างการคอมไพล์ NS API ระดับต่ำ เชื่อมโยงกับอัลกอริธึมบางอย่าง ได้รับการประกาศเลิกใช้อย่างเป็นทางการ

การสนับสนุนอย่างเป็นทางการใน OpenSSL 3.0.0 มีให้สำหรับ EVP API ระดับสูงเท่านั้น ซึ่งมาจากอัลกอริทึมบางประเภท (API นี้รวมถึงฟังก์ชัน EVP_EncryptInit_ex, EVP_EncryptUpdate และ EVP_EncryptFinal เป็นต้น) API ที่ล้าสมัยจะถูกลบออกในหนึ่งในรุ่นหลักถัดไป การใช้งานอัลกอริธึมแบบเดิม เช่น MD2 และ DES ที่พร้อมใช้งานผ่าน EVP API ได้ถูกย้ายไปยังโมดูล "ดั้งเดิม" ที่แยกต่างหาก ซึ่งถูกปิดใช้งานโดยค่าเริ่มต้น

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


เนื้อหาของบทความเป็นไปตามหลักการของเรา จรรยาบรรณของบรรณาธิการ. หากต้องการรายงานข้อผิดพลาดให้คลิก ที่นี่.

เป็นคนแรกที่จะแสดงความคิดเห็น

แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา