GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

No menu could be recovered. Follow the blue links in the page.

This view

  • Original page
  • New address

GeezerVison is showing gitcode.com — openHiTLS/openhitls - AtomGit

旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!

Branch6Tags34
FilesLast commitLast update
.gitcode
ci: require explicit branches filter for pull_request trigger main, openhitls-0.3, openhitls-0.2 Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1801
2 months ago
.github
fix: address security review findings on rsa, bn, sha2, mldsa, cmac and CI - ci: run the riscv64 self-hosted job on push only, so untrusted PR code cannot execute on the self-hosted runner - sha2: gate the multi-buffer SHA256 path on the ARM SHA2 extension at init to avoid SIGILL on cores without it; add missing input checks to the one-shot CRYPT_SHA256_MB - mldsa: decrement the loop counter in the ARMv8 UseHint32/88 routines; the missing decrement emitted a 17th 64-byte chunk store, writing 64 bytes past each w[i] polynomial during signature verification. Add an SDV case with a canary after the last polynomial to guard the bound - rsa: reject inLen < 2 in CRYPT_RSA_VerifyPkcsV15Type2TLS before reading in[0]/in[1] to prevent an out-of-bounds read with a malformed short modulus - bn: BN_GenPrime now retries only on a composite candidate and aborts on real errors, preventing an infinite loop when the rand source fails persistently (aligned with OpenSSL behavior) - cmac: replace NULL + 0 pointer arithmetic on empty updates with an index loop to remove undefined behavior - curve25519: clear the partially duplicated key context on the DupCtx failure path - benchmark: reject -l values beyond the fixed buffer size Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1803
2 months ago
apps
fix: address selected security review findings (pkeyutl/SHA-256/SM4-XTS) Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1995
1 day ago
auth
Enable strict warnings and fix declaration issues Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1980
6 days ago
bsl
fix: harden ASN.1 parsing, Base64 UIO writes, and X.509 CN decoding Signed-off-by: dsy678 <[email protected]> Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1990
1 day ago
cmake
Enable strict warnings and fix declaration issues Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1980
6 days ago
codecs
Enable strict warnings and fix declaration issues Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1980
6 days ago
config
Support Pure cmake build build: Migrate build system from Python/JSON/CMake hybrid to pure CMake The previous build system mixed Python scripts and JSON configuration files with CMake, scattering build logic across multiple languages and formats. This made the system hard to understand and maintain, and required a Python interpreter at configure time. The build system has been rewritten entirely in CMake. Feature flags, dependency resolution, platform detection, compiler options, and config-header generation are now all expressed natively in CMake. For more details, see the "Build and Installation" section in README.md.
7 months ago
crypto
fix: address selected security review findings (pkeyutl/SHA-256/SM4-XTS) Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1995
1 day ago
docs
feat: Printing the certificate purpose is prohibited in X.509 issuance mode. Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1938
30 days ago
include
fix: address selected security review findings (pkeyutl/SHA-256/SM4-XTS) Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1995
1 day ago
pki
fix: harden ASN.1 parsing, Base64 UIO writes, and X.509 CN decoding Signed-off-by: dsy678 <[email protected]> Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1990
1 day ago
testcode
fix: expired certificate alert mapping Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/2000
1 hour ago
tls
fix: expired certificate alert mapping Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/2000
1 hour ago
.clang-format
add .clang-format file # message auto-generated for no-merge-commit merge: merge main into main add .clang-format file Created-by: dumb Author-id: 822999 MR-id: 4358051 Commit-by: Liu-Ermeng Merged-by: tlhcd E2E-issues: Description: add .clang-format file See merge request: openHiTLS/openhitls!49
1 year ago
.gitattributes
normalize: add .gitattributes and convert CRLF to LF across repo Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1667
3 months ago
.gitignore
feat: build system improvements and cross-platform support (macOS) Major Features: - Multi-compiler/linker configuration system with toolchain support - Auto-manage Secure C (libboundscheck) dependency - Dynamic provider library names for CMVP modes (ISO19790, SM) - macOS/Darwin platform support with unified POSIX abstractions - Cross-platform build improvements and optimizations Build System: - Add toolchain management for cross-compilation - Support nested 'common' format in compile config - with _EXTRA/_REMOVE/_OVERRIDE in common flags, we can add remove by per compiler - Unify toolchain naming convention (arch-vendor-os-abi-compiler) Platform Support: - Unify Linux and Darwin sources under POSIX - Add Darwin support for SAL and build flags - Add Darwin support for REC wrapper functions (WIP) - Cross-platform ops count macros for benchmarking - Platform-specific library extension detection (.dylib vs .so) Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/652
1 year ago
.gitmodules
Remove libboundscheck (securec) dependency and harden sensitive data cleansing Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1086
6 months ago
AGENTS.md
Clarify and trim agent guidance Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1945
29 days ago
CMakeLists.txt
Add independent BSL version API Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1623
4 months ago
CONTRIBUTING-zh.md
docs: update CONTRIBUTING-zh.md - Changing the serial number. Signed-off-by: zhoutianli <[email protected]> Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1282
6 months ago
LICENSE
openhitls repo init
2 years ago
README-zh.md
Add OpenSSF best practices badges to READMEs Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1886
1 month ago
README.md
Add OpenSSF best practices badges to READMEs Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1886
1 month ago
SECURITY.md
docs: add security-policy(SECURITY.md) Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1682
3 months ago
SECURITY_zh.md
docs: add security-policy(SECURITY.md) Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/1682
3 months ago
Third_Party_Open_Source_Software_Notice
refactor: remove libsctp Cherry-picked from: https://gitcode.com/openHiTLS/openhitls/merge_requests/307
1 year ago

简体中文 | English

openHiTLS

OpenSSF Best Practices

Welcome to visit the openHiTLS Code Repository, which is under the openHiTLS community: https://openhitls.net. openHiTLS aims to provide highly efficient and agile open-source SDKs for Cryptography and Transport Layer Security in all scenarios. openHiTLS is developing and supports some common standard cryptographic algorithms, (D)TLS, (D)TLCP protocols currently. More features are to be planned.

Overview

The architecture of openHiTLS is highly modular, and openHiTLS can be configured in modules and features. The RAM/ROM footprint depends on the features selected. It provides the optimal performance optimization for cryptographic algorithms. Currently, 5 components and cryptographic algorithms are configured, ISO19790 certified, and the performance optimization of ShangMi cryptographic algorithms on ARM, x86 is ready. More architectures and features are to be planned.

Feature Introduction

Functional Features

  • Protocols:
    • TLS: Support TLS1.3, DTLS1.3, TLS1.3-Hybrid-Key-Exchange, TLS-Provider, TLS-Multi-KeyShare, TLS-Custom-Extension, TLCP, DTLCP, TLS1.2, DTLS1.2.
    • Authentication: Support Privacy Pass token, HOTP, TOTP, SPAKE2+.
  • Algorithms:
    • Post-quantum algorithms: ML-DSA, ML-KEM, SLH-DSA, XMSS, Classic McEliece, FrodoKEM.
    • Symmetric algorithms: AES, SM4, Chacha20, and various symmetric encryption modes.
    • Traditional asymmetric algorithms: RSA, RSA-Bind, DSA, ECDSA, EDDSA, ECDH, DH, SM2, SM9, Paillier, ElGamal.
    • Random: DRBG, DRBG-GM.
    • Key derivation: HKDF, SCRYPT, PBKDF2.
    • Hash: SHA series, MD5, SM3.
    • Message authentication code: HMAC, CMAC.
    • Others: HPKE.
  • PKI:
    • Post-quantum capabilities: Support XMSS, ML-DSA, ML-KEM, SLH-DSA certificate capabilities, ML-DSA CMS SignedData capability.
    • Traditional certificate capabilities: Support X509 parsing and verification, CRL parsing and verification, CSR request generation, certificate chain generation, partial/full certificate chain validation
    • PKCS7, PKCS8, PKCS12, etc.
  • Command line: Support basic commands, random numbers, encryption and decryption, key and parameter management, certificates and so on.

DFX Features

  • Highly modular features, support trimming features as required.
  • Algorithm performance optimization based on ARMv8, ARMv7, x86_64 CPU.
  • Support for maintainability and testability based on logging and error stack functionality.

Component Introduction

Currently, openHiTLS has 5 components. The BSL component will be used with other components.

  • BSL is short for Base Support Layer, which provides the base C standard enhanced functions and OS adapter. It will be used with other modules.
  • Crypto provides the full cryptographic functions with high performance. It will be used by tls, and can also be used with bsl.
  • TLS is short for Transport Layer Security, which covers TLS1.3, DTLS1.3, TLS1.2, and DTLS1.2. It will be used with crypto, bsl and other third-party cryptographic components or PKI libraries.
  • PKI component provides functions such as certificate and CRL parsing, certificate and CRL validation, as well as certificate request and generation.
  • Auth authentication component provides authentication functions. Currently, it provides Privacy Pass token, TOTP/HOTP, SPAKE2+.

Development

Quick Start

git clone https://gitcode.com/openhitls/openhitls.git
cd openhitls
mkdir -p build && cd build
cmake .. && make && make install

For Application Developers

Source code mirroring of the official releases is pending for planning.

The official source code repository is located at https://gitcode.com/openhitls. A local copy of the git repository can be obtained by cloning it using:

git clone https://gitcode.com/openhitls/openhitls.git

If you are going to contribute, you need to fork the openhitls repository on gitcode and clone your public fork instead:

git clone https://gitcode.com/"your gitcode name"/openhitls.git

Document

This document is designed to improve the learning efficiency of developers and contributors on openHiTLS. Refer to the docs.

Build and Installation

The major steps in Linux are as follows. Refer to build & install The major steps in Linux:

Step 1 (Prepare the build directory):

cd openhitls && mkdir -p ./build && cd ./build

Step 2 (Configure, choose as needed):

  • Default build (all features enabled, builds static libraries and shared libraries):
cmake ..
  • Full build using preset:
cmake .. -DHITLS_BUILD_PROFILE=full
  • Manual feature selection:
cmake .. -DHITLS_BUILD_PROFILE=none -DHITLS_CRYPTO_SHA256=ON
  • Enable assembly optimizations (auto-detect platform type):
cmake .. -DHITLS_ASM=ON
  • Full build with x86_64 assembly optimizations:
cmake .. -DHITLS_BUILD_PROFILE=full -DHITLS_ASM_X8664=ON
  • Build the command line tool:
cmake .. -DHITLS_BUILD_EXE=ON
  • Bundle all modules into a single library:
cmake .. -DHITLS_BUNDLE_LIB=ON

More options are described in Build Installation Guide

Step 3 (Build and install):

make && make install

Contribution

If you plan to contribute to the openHiTLS community, please visit the link CLA Signing to complete CLA signing.

Introduction

旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!

MulanPSL-2.0 C1.24 KCommits
Customize your domain
README
Rulesets
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.