diff options
| author | Stefan Kangas | 2019-09-16 10:45:14 +0200 |
|---|---|---|
| committer | Stefan Kangas | 2019-09-20 20:47:47 +0200 |
| commit | 6d50010b34dbbcb90a7b4512f97e07fd8beceea5 (patch) | |
| tree | cc43618d3626c667c9658c4a69db8cf784563bac /src | |
| parent | b8e9baac9ada62c2ea7437579df4be9d4f437fda (diff) | |
| download | emacs-6d50010b34dbbcb90a7b4512f97e07fd8beceea5.tar.gz emacs-6d50010b34dbbcb90a7b4512f97e07fd8beceea5.zip | |
Recommend against SHA-1 and MD5 for security
* doc/lispref/text.texi (Checksum/Hash):
* src/fns.c (Fmd5, Fsecure_hash):
* lisp/subr.el (sha1): Doc fix to recommend against SHA-1 and MD5 for
security-related applications, since they are not collision
resistant. (Bug#37420)
Diffstat (limited to 'src')
| -rw-r--r-- | src/fns.c | 11 |
1 files changed, 9 insertions, 2 deletions
| @@ -5376,7 +5376,10 @@ If OBJECT is a string, the most preferred coding system (see the | |||
| 5376 | command `prefer-coding-system') is used. | 5376 | command `prefer-coding-system') is used. |
| 5377 | 5377 | ||
| 5378 | If NOERROR is non-nil, silently assume the `raw-text' coding if the | 5378 | If NOERROR is non-nil, silently assume the `raw-text' coding if the |
| 5379 | guesswork fails. Normally, an error is signaled in such case. */) | 5379 | guesswork fails. Normally, an error is signaled in such case. |
| 5380 | |||
| 5381 | Note that MD5 is not collision resistant and should not be used for | ||
| 5382 | anything security-related. See `secure-hash' for alternatives. */) | ||
| 5380 | (Lisp_Object object, Lisp_Object start, Lisp_Object end, Lisp_Object coding_system, Lisp_Object noerror) | 5383 | (Lisp_Object object, Lisp_Object start, Lisp_Object end, Lisp_Object coding_system, Lisp_Object noerror) |
| 5381 | { | 5384 | { |
| 5382 | return secure_hash (Qmd5, object, start, end, coding_system, noerror, Qnil); | 5385 | return secure_hash (Qmd5, object, start, end, coding_system, noerror, Qnil); |
| @@ -5393,7 +5396,11 @@ whole OBJECT. | |||
| 5393 | 5396 | ||
| 5394 | The full list of algorithms can be obtained with `secure-hash-algorithms'. | 5397 | The full list of algorithms can be obtained with `secure-hash-algorithms'. |
| 5395 | 5398 | ||
| 5396 | If BINARY is non-nil, returns a string in binary form. */) | 5399 | If BINARY is non-nil, returns a string in binary form. |
| 5400 | |||
| 5401 | Note that MD5 and SHA-1 are not collision resistant and should not be | ||
| 5402 | used for anything security-related. For these applications, use one | ||
| 5403 | of the other hash types instead, e.g. sha256 or sha512. */) | ||
| 5397 | (Lisp_Object algorithm, Lisp_Object object, Lisp_Object start, Lisp_Object end, Lisp_Object binary) | 5404 | (Lisp_Object algorithm, Lisp_Object object, Lisp_Object start, Lisp_Object end, Lisp_Object binary) |
| 5398 | { | 5405 | { |
| 5399 | return secure_hash (algorithm, object, start, end, Qnil, Qnil, binary); | 5406 | return secure_hash (algorithm, object, start, end, Qnil, Qnil, binary); |