From b29f4153e83623f24bebe99976e1368ef31bb008 Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Thu, 21 May 2026 17:12:20 +0200 Subject: Add support for custom hash functions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- README | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) (limited to 'README') diff --git a/README b/README index f1f115b..197e6eb 100644 --- a/README +++ b/README @@ -58,7 +58,7 @@ DESCRIPTION Realise asterisk-encoded random salts in a settings string. - Secure application helper functions: + Application helper functions: librecrypt_equal(3) Compare strings in constant time. @@ -71,6 +71,9 @@ DESCRIPTION librecrypt_wipe_str(3) Securely erase a string. + librecrypt_scan_settings(3) (ADVANCED) + Parse and validate a password hash string. + Password hash string decomposition functions (ADVANCED): librecrypt_settings_prefix(3) Get length of settings prefix in a password hash @@ -103,11 +106,34 @@ DESCRIPTION Get encoding alphabet for the last algorithm in a chain. - Library introspection functions (ADVANCED): + Library introspection (ADVANCED): librecrypt_is_enabled(3) Check whenther the library is compiled with support for a specific hash algorithm. + librecrypt_hash_algorithm_end(3) + Number of hash algorithms the linked library knows + about. + + Library tweaking functions (ADVANCED): + librecrypt_create_context(3) + Create a library configuration object. + + librecrypt_free_context(3) + Deallocate a library configuration object. + + librecrypt_set_pepper(3) + Set the pepper to use for a hash algorithm. + + librecrypt_set_custom_algorithms(3) + Set application-provided hash algorithms. + + librecrypt_set_user_data(3) + Set application-defined data. + + librecrypt_get_user_data(3) + Retrieve application-defined data. + NOTES Using librecrypt_add_algorithm(3) to hash existing password hashes should be used as a transitional mitigation strategy -- cgit v1.3.1