History log of /seL4-camkes-master/projects/musllibc/src/crypt/crypt_sha256.c
Revision Date Author Comments
# cf115059 16-Feb-2016 Rich Felker <dalias@aerifal.cx>

in crypt-sha*, reject excessive rounds as error rather than clamping

the reference implementation clamps rounds to [1000,999999999]. we
further limited rounds to at most 9999999 as a defense against extreme
run times, but wrongly clamped instead of treating out-of-bounds
values as an error, thereby producing implementation-specific hash
results. fixing this should not break anything since values of rounds
this high are not useful anyway.


# c5092507 01-Feb-2013 rofl0r <retnyg@gmx.net>

make some arrays const

this way they'll go into .rodata, decreasing memory pressure.


# 30779ee1 13-Jan-2013 Szabolcs Nagy <nsz@port70.net>

crypt: fix the prototype of md5_sum, sha256_sum and sha512_sum

the internal sha2 hash sum functions had incorrect array size
in the prototype for the message digest argument, fixed by
using pointer so it is not misleading


# aeaceb1f 15-Sep-2012 Rich Felker <dalias@aerifal.cx>

revert low rounds-count limits in crypt hashes

it was determined in discussion that these kind of limits are not
sufficient to protect single-threaded servers against denial of
service attacks from maliciously large round counts. the time scales
simply vary too much; many users will want login passwords with rounds
counts on a scale that gives decisecond latency, while highly loaded
webservers will need millisecond latency or shorter.

still some limit is left in place; the idea is not to protect against
attacks, but to avoid the runtime of a single call to crypt being, for
all practical purposes, infinite, so that configuration errors can be
caught and fixed without bringing down whole systems. these limits are
very high, on the order of minute-long runtimes for modest systems.


# b9bb8f67 06-Sep-2012 Rich Felker <dalias@aerifal.cx>

cleanup src/linux and src/misc trees, etc.

previously, it was pretty much random which one of these trees a given
function appeared in. they have now been organized into:

src/linux: non-POSIX linux syscalls (possibly shard with other nixen)
src/legacy: various obsolete/legacy functions, mostly wrappers
src/misc: still mostly uncategorized; some misc POSIX, some nonstd
src/crypt: crypt hash functions

further cleanup will be done later.