WolfSSL
1. 개요
wolfSSL은 yaSSL을 기반으로 2004년에 시작된 임베디드 시스템용 보안 라이브러리이다. SSL/TLS, DTLS, 다양한 암호화 알고리즘 및 하드웨어 가속을 지원하며, 오픈 소스(GPLv2) 및 상용 라이선스로 제공된다. 인텔, NXP, ST마이크로일렉트로닉스 등 다양한 제조사의 하드웨어 및 SGX를 지원하며, FIPS 140-2/3, DO-178C 인증을 획득했다.
| 이름 | wolfSSL |
|---|---|
| 종류 | 암호화 라이브러리 |
| 개발자 | Todd Ouska |
|---|---|
| 발표일 | 2006년 2월 19일 |
| 운영체제 | 멀티 플랫폼 |
|---|---|
| 프로그래밍 언어 | C |
| 라이선스 | GPL-2.0-or-later 또는 사유 |
| 웹사이트 | wolfSSL 공식 웹사이트 |
|---|---|
| 저장소 | wolfSSL GitHub 저장소 |
-
전송 계층 보안 구현 -
OpenSSL
OpenSSL은 1998년에 설립된 암호화 도구 프로젝트로, 다양한 암호화 알고리즘과 프로토콜을 지원하며, 아파치 라이선스를 채택했고, 보안 문제와 API 호환성 문제 등의 비판을 받았다. -
전송 계층 보안 구현 -
LibreSSL
-
암호 소프트웨어 -
OpenSSL
OpenSSL은 1998년에 설립된 암호화 도구 프로젝트로, 다양한 암호화 알고리즘과 프로토콜을 지원하며, 아파치 라이선스를 채택했고, 보안 문제와 API 호환성 문제 등의 비판을 받았다. -
암호 소프트웨어 -
I2P
I2P는 2003년 Freenet에서 분기된 익명 P2P 분산 통신 계층으로, IP 주소 노출을 방지하며 다양한 소프트웨어와 익명성 응용 프로그램을 지원하고, 기부금으로 운영되며 6~8주마다 릴리스를 진행한다. -
C 라이브러리 -
OpenSSL
OpenSSL은 1998년에 설립된 암호화 도구 프로젝트로, 다양한 암호화 알고리즘과 프로토콜을 지원하며, 아파치 라이선스를 채택했고, 보안 문제와 API 호환성 문제 등의 비판을 받았다. -
C 라이브러리 -
SQLite
SQLite는 D. 리처드 히프가 설계한 서버리스 구조의 임베디드 SQL 데이터베이스 엔진으로, 별도의 DBMS 없이 프로그램에 통합되어 작동하며 전체 데이터베이스를 단일 파일로 저장하는 특징이 있고, 다양한 운영체제와 환경에서 널리 사용된다.
2. 역사
yaSSL은 2004년에 개발이 시작되었다. 당시 OpenSSL이 사용 가능했으며, 'OpenSSL 라이선스'와 'SSLeay 라이선스'의 이중 라이선스 하에 배포되었다. yaSSL은 상업용 라이선스와 GPL 두 가지로 이중 라이선스되어 개발되었으며, 더 현대적인 API, 상업적인 스타일의 개발자 지원을 제공했고 OpenSSL 호환 계층을 갖추고 있었다. wolfSSL/CyaSSL/yaSSL의 첫 번째 주요 사용자는 MySQL이었다. MySQL에 번들로 제공되면서, yaSSL은 수백만 건의 매우 많은 배포량을 달성했다.
2019년 2월, cURL의 제작자인 다니엘 스텐버그가 cURL 작업을 위해 wolfSSL 프로젝트에 고용되었다.
3. 지원 프로토콜
wolfSSL은 TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3과 DTLS 1.0, DTLS 1.2를 지원한다. DTLS 1.3 또한 지원한다. SSL 3.0도 지원하지만, POODLE 공격 취약점 때문에 기본적으로는 비활성화되어 있으며, 컴파일 옵션을 통해 활성화해야 한다. SSL 2.0은 지원하지 않는다.
3.1. 보안 관련 참고 사항
wolfSSL 경량 SSL 라이브러리는 다음 프로토콜을 구현한다.
* SSL 3.0, TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3
* DTLS 1.0, DTLS 1.2, DTLS 1.3
* 확장: 서버 이름 표시 (SNI), 최대 프래그먼트 길이, 잘린 HMAC, 응용 계층 프로토콜 협상 (ALPN), 확장된 마스터 시크릿
* 암호화 제품군: TLS 보안 원격 암호, TLS 사전 공유 키
* 양자 후 암호화: ML-DSA가 sigAlgs에 추가됨, ML-KEM이 지원되는 그룹에 추가됨, QSH(사용 중단 및 제거됨)
* 공개 키 암호화 표준:
PKCS #1 - RSA 암호화
PKCS #3 - 디피-헬만 키 협약
PKCS #5 - 패스워드 기반 암호화
PKCS #7 - 암호 메시지 구문 (CMS)
PKCS #8 - 개인 키 정보 구문
PKCS #9 - 선택된 속성 유형
PKCS #10 - 인증서 서명 요청 (CSR)
PKCS #11 - 암호화 토큰 인터페이스
** PKCS #12 - 인증서/개인 정보 교환 구문 표준
프로토콜 참고 사항:
* SSL 2.0 – SSL 2.0은 RFC 6176에 의해 2011년에 사용 중단(금지)되었다. wolfSSL은 이를 지원하지 않는다.
* SSL 3.0 – SSL 3.0은 RFC 7568에 의해 2015년에 사용 중단(금지)되었다. POODLE 공격에 대응하여, SSL 3.0은 wolfSSL 3.6.6부터 기본적으로 비활성화되었지만, 컴파일 시간 옵션으로 활성화할 수 있다.
4. 지원 알고리즘
wolfSSL은 기본적으로 wolfCrypt 암호화 서비스를 사용한다. wolfCrypt는 RSA, ECC, DSS, 디피-헬만, EDH, NTRU (더 이상 사용되지 않으며 제거됨), DES, 트리플 DES, AES (CBC, CTR, CCM, GCM), 카멜리아, IDEA, ARC4, HC-128, ChaCha20, MD2, MD4, MD5, SHA-1, SHA-2, SHA-3, BLAKE2, RIPEMD-160, Poly1305, 난수 생성, 대용량 정수 지원, base 16/64 인코딩/디코딩, ML-KEM (FIPS 203 인증) 및 ML-DSA (FIPS 204 인증) 양자 후 암호화 알고리즘을 제공한다.
wolfCrypt는 X25519 및 Ed25519 알고리즘도 지원한다.
wolfCrypt는 MIT Kerberos(빌드 옵션으로 활성화 가능) 등 여러 소프트웨어 패키지 및 라이브러리의 백엔드 암호화 구현으로 사용된다.
CyaSSL+는 NTRU 공개 키 암호화를 포함한다. CyaSSL+에 NTRU가 추가된 것은 yaSSL과 시큐리티 이노베이션(Security Innovation)의 파트너십 결과이다. NTRU는 다른 공개 키 시스템과 동일한 수준의 보안을 제공하는 데 필요한 비트 수가 적어 모바일 및 임베디드 환경에서 유리하다. 또한 양자 공격에 취약하지 않은 것으로 알려져 있다. CyaSSL+에는 AES-256, RC4, HC-128 등 NTRU를 사용하는 여러 암호화 제품군이 있다.
4.1. wolfCrypt
wolfSSL은 기본적으로 wolfCrypt 암호화 서비스를 사용한다. wolfCrypt는 RSA, 타원 곡선 암호, DSS, Diffie Hellman, EDH, NTRU, DES, Triple DES, AES (CBC, CTR, CCM, GCM), Camellia, IDEA, ARC4, HC-128, ChaCha20, MD2, MD4, MD5, SHA-1, SHA-2, BLAKE2, RIPEMD-160, Poly1305, 난수 생성, 대규모 정수 연산, 베이스 16/64 인코딩/디코딩을 지원한다. 유럽의 eSTREAM 공용 도메인 스트림 암호 Rabbit도 포함되어 있으며, Rabbit은 고성능, 높은 부하 환경에서의 암호화 스트리밍 미디어에 잠재적으로 유용하다. wolfCrypt는 SSL에 필요한 기능에 특화하는 한편, 최대한의 이식성을 고려하여 만들어졌다.
wolfCrypt는 Curve25519와 Ed25519를 지원한다.
wolfCrypt는 MIT Kerberos(빌드 옵션 사용)를 포함하여 몇 가지 소프트웨어 패키지와 라이브러리의 백엔드 암호화 구현으로 사용되고 있다.
4.2. NTRU
CyaSSL+에는 NTRU 공개 키 암호화가 포함되어 있다. CyaSSL+에 NTRU가 추가된 것은 yaSSL과 Security Innovation의 파트너십의 결과였다. NTRU는 다른 공개 키 암호화와 같은 수준의 보안을 더 적은 비트 수로 제공하므로 모바일 및 임베디드 환경에서 잘 작동한다. 게다가 NTRU는 양자 공격(quantum attack)에 대해서도 취약점이 알려져 있지 않다. NTRU를 사용하는 암호화 세트는 CyaSSL+를 비롯하여 AES-256, RC4 또는 HC-128 등에서 사용 가능하다.
5. 하드웨어 가속 지원
wolfSSL은 다양한 하드웨어에서 암호화 연산을 가속화하여 성능을 향상시킬 수 있도록 지원한다. 지원되는 주요 하드웨어 및 관련 기술은 다음과 같다.
| 장치 | AES-GCM | AES-CCM | AES-CBC | AES-ECB | AES-CTR |
|---|---|---|---|---|---|
| 인텔 AES-NI (Xeon 및 Core 프로세서 제품군) | 모두 | 모두 | 모두 | 모두 | 모두 |
| NXP 암호화 가속기 및 보증 모듈(CAAM) | 모두 | 모두 | 모두 | 모두 | |
| NXP Coldfire SEC | 모두 | ||||
| NXP Kinetis MMCAU | 모두 | 모두 | 모두 | 모두 | |
| STM32 | 모두 | 모두 | |||
| Cavium NITROX | 모두 | ||||
| Microchip PIC32 MX/MZ | 모두 | 모두 | 모두 | ||
| 텍사스 인스트루먼트 TM4C1294 | 모두 | 모두 | 모두 | 모두 | 모두 |
| Nordic NRF51 | 128bit | ||||
| ARMv8 | 모두 | 모두 | 모두 | ||
| 인텔 QuickAssist 기술 | 모두 | 모두 | |||
| NXP LTC | 모두 | 모두 | 모두 | 모두 | 모두 |
| 자일링스 Zynq UltraScale+ | 256bit | ||||
| 르네사스 RX65N, RX72N, RX MPU | 모두 | 모두 | |||
| 르네사스 시너지 DK-S7G2 | 128bit |
* "모두"는 128bit, 192bit 및 256bit 블록 크기를 지원함을 의미한다.
| 장치 | RC4 | ChaCha20 |
|---|---|---|
| AVX1/AVX2 (인텔 및 AMD x86) | 지원 | |
| Cavium NITROX | 최대 2048bit |
| 장치 | RSA | ECC | ECC-DHE | X25519 | Ed25519 |
|---|---|---|---|---|---|
| Cavium NITROX | 512bit–4096bit | NIST Prime 192bit, 224bit, 256bit, 384bit, 521bit | |||
| Microchip/Atmel ATECC508A | 256bit (NIST-P256) | ||||
| 인텔 QuickAssist 기술 | 512bit–4096bit | 128bit, 256bit | |||
| NXP LTC | 512bit - 4096bit | 128bit, 256bit | 128bit, 256bit | 256bit | 256bit |
| 자일링스 Zynq UltraScale+ | 2048bit–4096bit |
| 장치 | RNG |
|---|---|
| STM32 | 지원 |
| Cavium NITROX | 지원 |
| Nordic NRF51 | 지원 |
5.1. 지원 기술
wolfSSL은 다음과 같은 하드웨어 기술을 지원한다.
* 인텔 SGX(소프트웨어 가드 확장) - 인텔 SGX는 공격 범위를 줄여 성능에 큰 영향을 미치지 않으면서 코드를 실행하기 위한 더 높은 수준의 보안을 제공하는 것으로 나타났다.
| 암호화 방식 | 비트 |
|---|---|
| ECC | 256 bit (NIST-P256) |
5.2. 제조사별 하드웨어 지원
wolfSSL이 다양한 알고리즘과 함께 다양한 장치의 하드웨어 암호화 사용에 대한 지원을 나열하면 다음과 같다.
| 장치 | AES-GCM | AES-CCM | AES-CBC | AES-ECB | AES-CTR |
|---|---|---|---|---|---|
| [http://www.intel.com/content/www/us/en/architecture-and-technology/advanced-encryption-standard--aes-/data-protection-aes-general-technology.html 인텔 AES-NI] (Xeon 및 Core 프로세서 제품군) | 모두 | 모두 | 모두 | 모두 | 모두 |
| [https://www.nxp.com/ NXP] 암호화 가속기 및 보증 모듈(CAAM) | 모두 | 모두 | 모두 | 모두 | |
| [http://www.nxp.com/assets/documents/data/en/application-notes/AN2788.pdf NXP Coldfire SEC] (NXP MCF547X 및 MCF548X) | 모두 | ||||
| [http://www.nxp.com/assets/documents/data/en/application-notes/AN4307.pdf NXP Kinetis MMCAU] K50, K60, K70 및 K80 (ARM Cortex-M4 코어) | 모두 | 모두 | 모두 | 모두 | |
| STM32 ST마이크로일렉트로닉스 STM32 F1, F2, F4, L1, W 시리즈 (ARM Cortex - M3/M4) | 모두 | 모두 | |||
| [http://cavium.com/processor_security.html Cavium NITROX] (III/V PX 프로세서) | 모두 | ||||
| [http://www.microchip.com/design-centers/32-bit Microchip PIC32 MX/MZ] (임베디드 연결) | 모두 | 모두 | 모두 | ||
| [http://www.ti.com/product/TM4C1294NCPDT 텍사스 인스트루먼트 TM4C1294] (ARM Cortex-M4F) | 모두 | 모두 | 모두 | 모두 | 모두 |
| [https://www.nordicsemi.com/Products/nRF51-Series-SoC Nordic NRF51] (시리즈 SoC 제품군, 32비트 ARM Cortex M0 프로세서 코어) | 128비트 | ||||
| [https://www.arm.com/files/downloads/ARMv8_Architecture.pdf ARMv8] | 모두 | 모두 | 모두 | ||
| [https://www.wolfssl.com/docs/intel-quickassist/ 인텔 QuickAssist 기술] | 모두 | 모두 | |||
| [https://www.wolfssl.com/nxp-kinetis-k8x-ltc-support-for-pki-rsaecc-with-tls13/ NXP LTC] | 모두 | 모두 | 모두 | 모두 | 모두 |
| [https://www.wolfssl.com/wolfssl-xilinx-support/ 자일링스 Zynq UltraScale+] | 256비트 | ||||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ek-ra6m3g-evaluation-kit-ra6m3-mcu-group-graphics-expansion-boards 르네사스 RX65N (R5F565NEHDFB)] | 모두 | 모두 | |||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcus/rx72n-envision-kit-rx72n-envision-kit 르네사스 RX72N (RTK5RX72N0C00000BJ)] | 모두 | 모두 | |||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcus 르네사스 RX MPU (R5F571MLDDFC)] | 모두 | 모두 | |||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/renesas-synergy-platform-mcus/ysdks7g2e40-dk-s7g2-development-kit 르네사스 시너지 DK-S7G2] | 128비트 |
- "모두"는 128비트, 192비트 및 256비트 지원 블록 크기를 나타낸다.
| 장치 | DES-CBC | DES-ECB | 3DES-CBC |
|---|---|---|---|
| [http://www.nxp.com/assets/documents/data/en/application-notes/AN2788.pdf NXP Coldfire SEC] (NXP MCF547X 및 MCF548X) | 64비트 | 192비트 | |
| [http://www.nxp.com/assets/documents/data/en/application-notes/AN4307.pdf NXP Kinetis MMCAU] K50, K60, K70, 및 K80 (ARM Cortex-M4 코어) | 64비트 | 192비트 | |
| STM32 ST마이크로일렉트로닉스 STM32 F1, F2, F4, L1, W 시리즈 (ARM Cortex - M3/M4) | 64비트 | 64비트(암호화) | 192비트 |
| [http://cavium.com/processor_security.html Cavium NITROX] (III/V PX 프로세서) | 192비트 | ||
| [http://www.microchip.com/design-centers/32-bit Microchip PIC32 MX/MZ] (임베디드 연결) | 64비트 | 192비트 | |
| [http://www.ti.com/product/TM4C1294NCPDT 텍사스 인스트루먼트 TM4C1294] (ARM Cortex-M4F) | 64비트 | 192비트 |
| 장치 | RC4 | ChaCha20 |
|---|---|---|
| AVX1/AVX2 (인텔 및 AMD x86) | 지원 | |
| [http://cavium.com/processor_security.html Cavium NITROX] (III/V PX 프로세서) | 최대 2048비트 |
| 장치 | MD5 | SHA1 | SHA2 | SHA-256 | SHA-384 | SHA-512 |
|---|---|---|---|---|---|---|
| AVX1/AVX2 (인텔 및 AMD x86) | 지원 | 지원 | 지원 | |||
| [http://www.nxp.com/assets/documents/data/en/application-notes/AN4307.pdf NXP Kinetis MMCAU] K50, K60, K70, 및 K80 (ARM Cortex-M4 코어) | 지원 | 지원 | 지원 | |||
| STM32 ST마이크로일렉트로닉스 STM32 F1, F2, F4, L1, W 시리즈 (ARM Cortex - M3/M4) | 지원 | 지원 | ||||
| [http://www.microchip.com/design-centers/32-bit Microchip PIC32 MX/MZ] (임베디드 연결) | 지원 | 지원 | 지원 | |||
| [https://www.arm.com/files/downloads/ARMv8_Architecture.pdf ARMv8] | 지원 | |||||
| [https://www.wolfssl.com/docs/intel-quickassist/ 인텔 QuickAssist 기술] | 지원 | 지원 | 지원 | |||
| [https://www.wolfssl.com/nxp-kinetis-k8x-ltc-support-for-pki-rsaecc-with-tls13/ NXP LTC] | 지원 | 지원 | ||||
| [https://www.wolfssl.com/wolfssl-xilinx-support/ 자일링스 Zynq UltraScale+] | 지원 | |||||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/renesas-synergy-platform-mcus/ysdks7g2e40-dk-s7g2-development-kit 르네사스 시너지 DK-S7G2] | 지원 | 지원 | ||||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ek-ra6m3g-evaluation-kit-ra6m3-mcu-group-graphics-expansion-boards 르네사스 RX65N (R5F565NEHDFB)] | 지원 | 지원 | ||||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcus/rx72n-envision-kit-rx72n-envision-kit 르네사스 RX72N (RTK5RX72N0C00000BJ)] | 지원 | 지원 | 지원 | |||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcus 르네사스 RX MPU (R5F571MLDDFC)] | 지원 | 지원 | 지원 |
| 장치 | RSA | ECC | ECC-DHE | X25519 | Ed25519 |
|---|---|---|---|---|---|
| [http://cavium.com/processor_security.html Cavium NITROX] (III/V PX 프로세서) | 512비트–4096비트 | NIST Prime 192비트, 224비트, 256비트, 384비트, 521비트 | |||
| [http://www.microchip.com/wwwproducts/en/ATECC508A Microchip]/[http://www.atmel.com/Images/Atmel-8923S-CryptoAuth-ATECC508A-Datasheet-Summary.pdf Atmel] ATECC508A (Atmel SMART 및 AVR MCU를 포함한 모든 MPU 또는 MCU와 호환) | 256비트 (NIST-P256) | ||||
| [https://www.wolfssl.com/docs/intel-quickassist/ 인텔 QuickAssist 기술] | 512비트–4096비트 | 128비트, 256비트 | |||
| [https://www.wolfssl.com/nxp-kinetis-k8x-ltc-support-for-pki-rsaecc-with-tls13/ NXP LTC] | 512비트 - 4096비트 | 128비트, 256비트 | 128비트, 256비트 | 256비트 | 256비트 |
| [https://www.wolfssl.com/wolfssl-xilinx-support/ 자일링스 Zynq UltraScale+] | 2048비트–4096비트 |
| 장치 | HMAC-MD5 | HMAC-SHA1 | HMAC-SHA2 | HMAC-SHA256 | SHA-3 | Poly1305 |
|---|---|---|---|---|---|---|
| AVX1/AVX2 (인텔 및 AMD x86) | 지원 | |||||
| [http://cavium.com/processor_security.html Cavium NITROX] (III/V PX 프로세서) | 지원 | 지원 | 지원 | 지원 | ||
| [http://www.microchip.com/design-centers/32-bit Microchip PIC32 MX/MZ] (임베디드 연결) | 지원 | 지원 | 지원 | |||
| [https://www.wolfssl.com/docs/intel-quickassist/ 인텔 QuickAssist 기술] | 지원 | 지원 | ||||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/ra-cortex-m-mcus/ek-ra6m3g-evaluation-kit-ra6m3-mcu-group-graphics-expansion-boards 르네사스 RX65N (R5F565NEHDFB)] | 지원 | 지원 | ||||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcus/rx72n-envision-kit-rx72n-envision-kit 르네사스 RX72N (RTK5RX72N0C00000BJ)] | ||||||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcus 르네사스 RX MPU (R5F571MLDDFC)] | 지원 | 지원 | ||||
| [https://www.renesas.com/us/en/products/microcontrollers-microprocessors/renesas-synergy-platform-mcus/ysdks7g2e40-dk-s7g2-development-kit 르네사스 시너지 DK-S7G2] | 지원 |
| 장치 | RNG |
|---|---|
| STM32 ST마이크로일렉트로닉스 STM32 F1, F2, F4, L1, W 시리즈 (ARM Cortex - M3/M4) | 지원 |
| [http://cavium.com/processor_security.html Cavium NITROX] (III/V PX 프로세서) | 지원 |
| [https://www.nordicsemi.com/Products/nRF51-Series-SoC Nordic NRF51] (시리즈 SoC 제품군, 32비트 ARM Cortex M0 프로세서 코어) | 지원 |
5.3. 보안 요소 지원
wolfSSL은 다음과 같은 보안 요소(Secure Element)를 지원한다.
* ST마이크로일렉트로닉스 STSAFE
* 마이크로칩 CryptoAuthentication ATECC508A
* NXP EdgeLock SE050 보안 요소
6. 라이선스
wolfSSL은 오픈 소스로, GPLv2 또는 상용 라이선스로 이용 가능하다. wolfSSL은 이중 라이선스를 사용한다.
* GPL-2.0 이상 라이선스: GPL 오픈 소스 프로젝트 및 평가에 적합하다.
* 상업용 비GPL 라이선스: 추가적인 지원 및 유지 관리 패키지와 함께 제공되며, 2022년 기준으로 제품 또는 SKU당 6000USD로 가격이 책정된다.
wolfSSL은 GNU GPLv2 또는 GPLv3에 따른 오픈 소스와 상용 라이선스 모두에서 이용 가능하다.
7. 인증
wolfSSL은 다음과 같은 인증을 지원한다.
* 연방 정보 처리 표준 (FIPS 140)
* FIPS 140-2 및 FIPS 140-3
* wolfCrypt FIPS 모듈: 3.6.0 ([https://csrc.nist.gov/Projects/cryptographic-module-validation-program/Certificate/2425 NIST certificate #2425]) - 과거
* wolfCrypt FIPS 모듈: 4.0 ([https://csrc.nist.gov/Projects/cryptographic-module-validation-program/Certificate/3389 NIST certificate #3389]) - 과거
* wolfCrypt FIPS 모듈: v5.2.1 ([https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/4718 NIST certificate #4718]) - 활성
* 항공 기술 위원회 (RTCA)
* DO-178C
* wolfCrypt COTS DO-178C 인증 키트 (DAL A)