กลับไปหน้าบทความ

อ่าน 5 นาที

wolfSSL

wolfSSL เป็นไลบรารี SSL/TLS ขนาดเล็ก พกพาได้ และฝังตัวได้ ซึ่งมุ่งเป้าไปที่การใช้งานโดยนักพัฒนาระบบฝังตัว เป็นการใช้งาน TLS แบบโอเพนซอร์ส (SSL 3.0, TLS 1.0, 1.1, 1.2, 1.

wolfSSL

( เรียนรู้วิธีและเวลาในการลบข้อความนี้ )
wolfSSL
นักพัฒนาทอดด์ อูสก้า
ปล่อย19 กุมภาพันธ์ พ.ศ. 2549 [ 1 ] ( 19 กุมภาพันธ์ 2549 )
เวอร์ชันเสถียร
5.9.1 [ 2 ] แก้ไขข้อมูลนี้บนวิกิดาต้า / 8 เมษายน 2569
เขียนเป็นซี
ระบบปฏิบัติการหลายแพลตฟอร์ม
พิมพ์ไลบรารีการเข้ารหัส
ใบอนุญาตGPL-3.0 หรือเวอร์ชันที่ใหม่กว่าหรือกรรมสิทธิ์[ 3 ]
เว็บไซต์www.wolfssl.com
ที่เก็บข้อมูลgithub.com/wolfssl/wolfssl

wolfSSLเป็นไลบรารี SSL/TLS ขนาดเล็ก พกพาได้ และฝังตัวได้ ซึ่งมุ่งเป้าไปที่การใช้งานโดยนักพัฒนาระบบฝังตัว เป็นการใช้งานTLS แบบโอเพนซอร์ส (SSL 3.0, TLS 1.0, 1.1, 1.2, 1.3 และDTLS 1.0, 1.2 และ 1.3) ที่เขียนด้วยภาษาโปรแกรม Cประกอบด้วยไลบรารีไคลเอ็นต์ SSL/TLS และการใช้งานเซิร์ฟเวอร์ SSL/TLS รวมถึงการสนับสนุน API หลายตัว รวมถึง API ที่กำหนดโดยSSLและTLS wolfSSL ยังมี อินเทอร์เฟซความเข้ากันได้ กับ OpenSSLพร้อมฟังก์ชัน OpenSSL ที่ใช้กันทั่วไปมากที่สุด[ 4 ] [ 5 ]

แพลตฟอร์ม

ปัจจุบัน wolfSSL สามารถใช้งานได้กับMicrosoft Windows , Linux , macOS , Solaris , ESP32 , ESP8266 , ThreadX , VxWorks , FreeBSD , NetBSD , OpenBSD , embedded Linux , Yocto Project , OpenEmbedded , WinCE , Haiku , OpenWrt , iPhone , Android , WiiและGameCubeผ่านการสนับสนุน DevKitPro, QNX , MontaVista , Tron variants, NonStop OS , OpenCL , Micrium's MicroC/OS-II , FreeRTOS , SafeRTOS , Freescale MQX , Nucleus , TinyOS , TI-RTOS , HP-UX , uTasker, uT-kernel, embOS, INtime , mbed , RIOT , CMSIS-RTOS, FROSTED, Green Hills INTEGRITY , Keil RTX และ TOPPERS PetaLinux, Apache MynewtและPikeOS [ 6 ] Deos, Azure Sphere OS , Zephyr, AIX และ Cesium

ประวัติศาสตร์

จุดเริ่มต้นของ wolfSSL ย้อนกลับไปในปี 2004 OpenSSLมีให้บริการในขณะนั้น และได้รับอนุญาตแบบคู่ภายใต้OpenSSL LicenseและSSLeay license [ 7 ] ในทางกลับกัน yaSSL ได้รับการพัฒนาและได้รับอนุญาตแบบคู่ภายใต้ทั้งใบอนุญาตเชิงพาณิชย์และ GPL [ 8 ] yaSSL นำเสนอ API ที่ทันสมัยกว่า การสนับสนุนนักพัฒนาแบบเชิงพาณิชย์ และสมบูรณ์ด้วยเลเยอร์ความเข้ากันได้ กับ OpenSSL [ 4 ] ผู้ใช้รายใหญ่รายแรกของ wolfSSL/CyaSSL/yaSSL คือMySQL [ 9 ]ด้วยการรวมเข้ากับ MySQL ทำให้ yaSSL มีปริมาณการแจกจ่ายสูงมากในระดับหลายล้าน

ในเดือนกุมภาพันธ์ พ.ศ. 2562 Daniel Stenbergผู้สร้างcURLได้รับการว่าจ้างจากโครงการ wolfSSL ให้ทำงานเกี่ยวกับ cURL [ 10 ]

โปรโตคอล

ไลบรารี SSL น้ำหนักเบา wolfSSL ใช้โปรโตคอลต่อไปนี้: [ 11 ]

หมายเหตุเกี่ยวกับระเบียบปฏิบัติ:

  • SSL 2.0 – SSL 2.0 ถูกยกเลิกการใช้งาน (ห้ามใช้) ในปี 2011 โดย RFC 6176 wolfSSL ไม่รองรับมาตรฐานนี้
  • SSL 3.0 – SSL 3.0 ถูกยกเลิก (ห้ามใช้) ในปี 2015 โดย RFC 7568 เพื่อตอบสนองต่อการโจมตี POODLE SSL 3.0 จึงถูกปิดใช้งานโดยค่าเริ่มต้นตั้งแต่ wolfSSL 3.6.6 แต่สามารถเปิดใช้งานได้ด้วยตัวเลือกในระหว่างการคอมไพล์[ 12 ]

อัลกอริทึม

wolfSSL ใช้ไลบรารีการเข้ารหัสต่อไปนี้:

wolfCrypt

โดยค่าเริ่มต้น wolfSSL จะใช้บริการเข้ารหัสลับที่ให้บริการโดย wolfCrypt [ 13 ] wolfCrypt รองรับการสร้างเลขสุ่มRSA , DSA , ECC , DSS , Diffie–Hellman , EDH , ECDH-ECDSA, ECDHE-ECDSA, ECDH-RSA, ECDHE-RSA, NTRU (เลิกใช้แล้วและถูกลบออก), DES , Triple DES , AES (CBC, CTR, CCM, GCM, OFB, XTS, GMAC, CMAC), Camellia , IDEA , ARC4 , HC-128 , ChaCha20 , MD2 , MD4 , MD5 , SHA-1 , SHA-2 , SHA-3 , BLAKE2 , RIPEMD-160 , Poly1305 , SM2, SM3 , SM4 , รองรับจำนวนเต็มขนาดใหญ่, การเข้ารหัส/ถอดรหัสฐาน 16/64, HMAC , PBKDF2และ อัลกอริทึมการเข้ารหัสลับหลังควอนตัม: ML-KEM (ได้รับการรับรองภายใต้มาตรฐาน FIPS 203) และ ML-DSA (ได้รับการรับรองภายใต้มาตรฐาน FIPS 204)

  • ประเภทของเส้นโค้ง ECC: SECP, SECPR2, SECPR3, BRAINPOOL, KOBLITZ
  • ความยาวคีย์ ECC: 112, 128, 160, 192, 224, 239, 256, 320, 384, 512, 521

นอกจากนี้ wolfCrypt ยังรองรับ อัลกอริทึม X25519และEd25519รวมถึงอัลกอริทึม X448และEd448 ด้วย

wolfCrypt ทำหน้าที่เป็นการใช้งานการเข้ารหัสแบบแบ็กเอนด์สำหรับแพ็คเกจซอฟต์แวร์และไลบรารีที่เป็นที่นิยมหลายรายการ รวมถึงMIT Kerberos [ 14 ] (ซึ่งสามารถเปิดใช้งานได้โดยใช้ตัวเลือกการสร้าง)

wolfCrypt ได้ รับการตรวจสอบ FIPSและมี ใบรับรอง FIPS 140-2 สองใบ (#2425 [ 15 ]และ #3389 [ 16 ] ) และ ใบรับรอง FIPS 140-3 สองใบ (#4718 [ 17 ]และ #5041 [ 18 ] )

เอ็นทีอาร์ยู

CyaSSL+ ประกอบด้วย การเข้ารหัสคีย์สาธารณะ NTRU [ 19 ]การเพิ่ม NTRU ใน CyaSSL+ เป็นผลมาจากความร่วมมือระหว่าง yaSSL และ Security Innovation [ 19 ] NTRU ทำงานได้ดีในสภาพแวดล้อมมือถือและฝังตัวเนื่องจากขนาดบิตที่ลดลงซึ่งจำเป็นต่อการรักษาความปลอดภัยเช่นเดียวกับระบบคีย์สาธารณะอื่นๆ นอกจากนี้ ยังไม่เป็นที่ทราบกันว่ามีความเสี่ยงต่อการโจมตีควอนตัม ชุดการเข้ารหัสหลายชุดที่ใช้ NTRU มีให้ใช้งานใน CyaSSL+ รวมถึง AES-256, RC4 และ HC-128

หลังควอนตัม

wolfSSL รองรับอัลกอริธึมการเข้ารหัสแบบหลังควอนตัมหลายประเภท รวมถึงกลไกการห่อหุ้มกุญแจไคเบอร์ (KEM) ซึ่งผสมผสานกับเส้นโค้ง ECC ที่แนะนำโดย NIST เพื่อให้เป็นไปตามมาตรฐาน FIPS ระดับ ML-KEM ที่รองรับ ได้แก่ ระดับ 1 (ML-KEM-512), ระดับ 3 (ML-KEM-768) และระดับ 5 (ML-KEM-1024) สำหรับลายเซ็นดิจิทัล wolfSSL ใช้ ML-DSA ที่ระดับ 2, 3 และ 5; FALCON ที่ระดับ 1 และ 5; และ SLH-DSA, LMS/HSS และ XMSS/XMSS^MT ไลบรารีนี้ยังรองรับรูปแบบการแลกเปลี่ยนกุญแจ TLS แบบไฮบริด โดยรวม ECDHE กับ ML-KEM ที่ระดับความปลอดภัยที่สอดคล้องกัน รวมถึงใบรับรองแบบสองอัลกอริธึมและการตรวจสอบสิทธิ์แบบสองอัลกอริธึม TLS 1.3 ด้วย

การบูรณาการฮาร์ดแวร์

การสนับสนุนองค์ประกอบความปลอดภัย

wolfSSL รองรับSecure Elements ต่อไปนี้ :

การสนับสนุนด้านเทคโนโลยี

wolfSSL รองรับเทคโนโลยีฮาร์ดแวร์ต่อไปนี้:

  • Intel SGX ( Software Guard Extensions ) [ 20 ] - Intel SGX อนุญาตให้มีพื้นที่โจมตีที่เล็กลงและได้รับการพิสูจน์แล้วว่าให้ความปลอดภัยในระดับที่สูงขึ้นสำหรับการเรียกใช้โค้ดโดยไม่มีผลกระทบต่อประสิทธิภาพอย่างมีนัยสำคัญ
  • NXP CAAM (Cryptographic Acceleration and Assurance Module) บน i.MX6 (QNX), i.MX8 (QNX/Linux), RT1170 FreeRTOS
  • ARM TrustZone CryptoCell 310
  • MAXQ1065/1080 RNG
  • MAX32665 และ MAX32666 TPU (หน่วยป้องกันความน่าเชื่อถือ)

การออกใบอนุญาต

wolfSSL ได้รับอนุญาตภายใต้สองใบอนุญาต ได้แก่ ใบอนุญาต GPL-3.0 หรือเวอร์ชันที่ใหม่กว่าและใบอนุญาตเชิงพาณิชย์

ดูเพิ่มเติม

  • หน้าหลัก wolfSSL/CyaSSL
  • wolfSSL ตอนนี้รองรับ ChaCha20 และ Poly1305 แล้ว
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=WolfSSL&oldid=1322923684 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ wolfSSL

wolfSSL เป็นไลบรารี SSL/TLS ขนาดเล็ก พกพาได้ และฝังตัวได้ ซึ่งมุ่งเป้าไปที่การใช้งานโดยนักพัฒนาระบบฝังตัว เป็นการใช้งาน TLS แบบโอเพนซอร์ส (SSL 3.0, TLS 1.0, 1.1, 1.2, 1.

แพลตฟอร์ม

ปัจจุบัน wolfSSL สามารถใช้งานได้กับ Microsoft Windows , Linux , macOS , Solaris , ESP32 , ESP8266 , ThreadX , VxWorks , FreeBSD , NetBSD , OpenBSD , embedded Linux , Yocto Project , OpenEmbedded , WinCE , Haiku , OpenWrt , iPhone , Android , Wii และ GameCube...

ประวัติศาสตร์

จุดเริ่มต้นของ wolfSSL ย้อนกลับไปในปี 2004 OpenSSL มีให้บริการในขณะนั้น และได้รับอนุญาตแบบคู่ภายใต้OpenSSL License และ SSLeay license [ 7 ] ในทางกลับกัน yaSSL ได้รับการพัฒนาและได้รับอนุญาตแบบคู่ภายใต้ทั้งใบอนุญาตเชิงพาณิชย์และ GPL [ 8 ] yaSSL นำเสนอ API...

โปรโตคอล

ไลบรารี SSL น้ำหนักเบา wolfSSL ใช้โปรโตคอลต่อไปนี้: [ 11 ]