File

teal-src/util/hashes.d.tl @ 12630:781772c8b6d9

mod_mam: Store archives with sub-second precision timestamps Changes sub-second part of example timestamp to .5 in order to avoid floating point issues. Some clients use timestamps when ordering messages which can lead to messages having the same timestamp ending up in the wrong order. It would be better to preserve the order messages are sent in, which is the order they were stored in.
author Kim Alvefur <zash@zash.se>
date Sun, 14 Aug 2022 17:28:31 +0200
parent 12564:36e769c64054
line wrap: on
line source

local type hash = function (msg : string, hex : boolean) : string
local type hmac = function (key : string, msg : string, hex : boolean) : string
local type kdf = function (pass : string, salt : string, i : integer) : string

local record lib
	sha1 : hash
	sha256 : hash
	sha224 : hash
	sha384 : hash
	sha512 : hash
	md5 : hash
	sha3_256 : hash
	sha3_512 : hash
	blake2s256 : hash
	blake2b512 : hash
	hmac_sha1 : hmac
	hmac_sha256 : hmac
	hmac_sha224 : hmac
	hmac_sha384  :hmac
	hmac_sha512 : hmac
	hmac_md5 : hmac
	hmac_sha3_256 : hmac
	hmac_sha3_512 : hmac
	scram_Hi_sha1 : kdf
	pbkdf2_hmac_sha1 : kdf
	pbkdf2_hmac_sha256 : kdf
	equals : function (string, string) : boolean
	version : string
	_LIBCRYPTO_VERSION : string
end
return lib