File

teal-src/util/hashes.d.tl @ 12480:7e9ebdc75ce4

net: isolate LuaSec-specifics For this, various accessor functions are now provided directly on the sockets, which reach down into the LuaSec implementation to obtain the information. While this may seem of little gain at first, it hides the implementation detail of the LuaSec+LuaSocket combination that the actual socket and the TLS layer are separate objects. The net gain here is that an alternative implementation does not have to emulate that specific implementation detail and "only" has to expose LuaSec-compatible data structures on the new functions.
author Jonas Schäfer <jonas@wielicki.name>
date Wed, 27 Apr 2022 17:44:14 +0200
parent 11576:fbd1ebd86369
child 12561:adfb46a3e8a7
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
	hmac_sha1 : hmac
	hmac_sha256 : hmac
	hmac_sha512 : hmac
	hmac_md5 : 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