Paul Bakker | 37ca75d | 2011-01-06 12:28:03 +0000 | [diff] [blame] | 1 | /** |
| 2 | * @file |
| 3 | * Hashing module documentation file. |
Manuel Pégourié-Gonnard | 8119dad | 2015-08-06 10:59:26 +0200 | [diff] [blame] | 4 | * |
| 5 | * Copyright (C) 2006-2015, ARM Limited, All Rights Reserved |
Manuel Pégourié-Gonnard | 37ff140 | 2015-09-04 14:21:07 +0200 | [diff] [blame] | 6 | * SPDX-License-Identifier: Apache-2.0 |
| 7 | * |
| 8 | * Licensed under the Apache License, Version 2.0 (the "License"); you may |
| 9 | * not use this file except in compliance with the License. |
| 10 | * You may obtain a copy of the License at |
| 11 | * |
| 12 | * http://www.apache.org/licenses/LICENSE-2.0 |
| 13 | * |
| 14 | * Unless required by applicable law or agreed to in writing, software |
| 15 | * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
| 16 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 17 | * See the License for the specific language governing permissions and |
| 18 | * limitations under the License. |
Manuel Pégourié-Gonnard | 8119dad | 2015-08-06 10:59:26 +0200 | [diff] [blame] | 19 | * |
| 20 | * This file is part of mbed TLS (https://tls.mbed.org) |
Paul Bakker | 37ca75d | 2011-01-06 12:28:03 +0000 | [diff] [blame] | 21 | */ |
| 22 | |
| 23 | /** |
| 24 | * @addtogroup hashing_module Hashing module |
Paul Bakker | dcbfdcc | 2013-09-10 16:16:50 +0200 | [diff] [blame] | 25 | * |
Paul Bakker | 37ca75d | 2011-01-06 12:28:03 +0000 | [diff] [blame] | 26 | * The Hashing module provides one-way hashing functions. Such functions can be |
Paul Bakker | dcbfdcc | 2013-09-10 16:16:50 +0200 | [diff] [blame] | 27 | * used for creating a hash message authentication code (HMAC) when sending a |
Paul Bakker | 37ca75d | 2011-01-06 12:28:03 +0000 | [diff] [blame] | 28 | * message. Such a HMAC can be used in combination with a private key |
Paul Bakker | dcbfdcc | 2013-09-10 16:16:50 +0200 | [diff] [blame] | 29 | * for authentication, which is a message integrity control. |
| 30 | * |
| 31 | * All hash algorithms can be accessed via the generic MD layer (see |
Manuel Pégourié-Gonnard | abb6744 | 2015-03-25 16:29:51 +0100 | [diff] [blame] | 32 | * \c md_setup()) |
Paul Bakker | dcbfdcc | 2013-09-10 16:16:50 +0200 | [diff] [blame] | 33 | * |
Paul Bakker | 37ca75d | 2011-01-06 12:28:03 +0000 | [diff] [blame] | 34 | * The following hashing-algorithms are provided: |
Manuel Pégourié-Gonnard | d4b9173 | 2015-03-25 16:25:23 +0100 | [diff] [blame] | 35 | * - MD2, MD4, MD5 128-bit one-way hash functions by Ron Rivest. |
Paul Bakker | dcbfdcc | 2013-09-10 16:16:50 +0200 | [diff] [blame] | 36 | * - SHA-1, SHA-256, SHA-384/512 160-bit or more one-way hash functions by |
Manuel Pégourié-Gonnard | d4b9173 | 2015-03-25 16:25:23 +0100 | [diff] [blame] | 37 | * NIST and NSA. |
Paul Bakker | 37ca75d | 2011-01-06 12:28:03 +0000 | [diff] [blame] | 38 | * |
| 39 | * This module provides one-way hashing which can be used for authentication. |
| 40 | */ |