Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
c-utility/inc/azure_c_shared_utility/sha-private.h@0:f7f1f0d76dd6, 2018-08-23 (annotated)
- Committer:
- XinZhangMS
- Date:
- Thu Aug 23 06:52:14 2018 +0000
- Revision:
- 0:f7f1f0d76dd6
azure-c-sdk for mbed os supporting NUCLEO_F767ZI
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
XinZhangMS | 0:f7f1f0d76dd6 | 1 | // Copyright (c) Microsoft. All rights reserved. |
XinZhangMS | 0:f7f1f0d76dd6 | 2 | // Licensed under the MIT license. See LICENSE file in the project root for full license information. |
XinZhangMS | 0:f7f1f0d76dd6 | 3 | |
XinZhangMS | 0:f7f1f0d76dd6 | 4 | /*************************** sha-private.h ***************************/ |
XinZhangMS | 0:f7f1f0d76dd6 | 5 | /********************** See RFC 4634 for details *********************/ |
XinZhangMS | 0:f7f1f0d76dd6 | 6 | #ifndef _SHA_PRIVATE__H |
XinZhangMS | 0:f7f1f0d76dd6 | 7 | #define _SHA_PRIVATE__H |
XinZhangMS | 0:f7f1f0d76dd6 | 8 | /* |
XinZhangMS | 0:f7f1f0d76dd6 | 9 | * These definitions are defined in FIPS-180-2, section 4.1. |
XinZhangMS | 0:f7f1f0d76dd6 | 10 | * Ch() and Maj() are defined identically in sections 4.1.1, |
XinZhangMS | 0:f7f1f0d76dd6 | 11 | * 4.1.2 and 4.1.3. |
XinZhangMS | 0:f7f1f0d76dd6 | 12 | * |
XinZhangMS | 0:f7f1f0d76dd6 | 13 | * The definitions used in FIPS-180-2 are as follows: |
XinZhangMS | 0:f7f1f0d76dd6 | 14 | */ |
XinZhangMS | 0:f7f1f0d76dd6 | 15 | |
XinZhangMS | 0:f7f1f0d76dd6 | 16 | #ifndef USE_MODIFIED_MACROS |
XinZhangMS | 0:f7f1f0d76dd6 | 17 | #define SHA_Ch(x,y,z) (((x) & (y)) ^ ((~(x)) & (z))) |
XinZhangMS | 0:f7f1f0d76dd6 | 18 | #define SHA_Maj(x,y,z) (((x) & (y)) ^ ((x) & (z)) ^ ((y) & (z))) |
XinZhangMS | 0:f7f1f0d76dd6 | 19 | |
XinZhangMS | 0:f7f1f0d76dd6 | 20 | #else /* USE_MODIFIED_MACROS */ |
XinZhangMS | 0:f7f1f0d76dd6 | 21 | /* |
XinZhangMS | 0:f7f1f0d76dd6 | 22 | * The following definitions are equivalent and potentially faster. |
XinZhangMS | 0:f7f1f0d76dd6 | 23 | */ |
XinZhangMS | 0:f7f1f0d76dd6 | 24 | |
XinZhangMS | 0:f7f1f0d76dd6 | 25 | #define SHA_Ch(x, y, z) (((x) & ((y) ^ (z))) ^ (z)) |
XinZhangMS | 0:f7f1f0d76dd6 | 26 | #define SHA_Maj(x, y, z) (((x) & ((y) | (z))) | ((y) & (z))) |
XinZhangMS | 0:f7f1f0d76dd6 | 27 | |
XinZhangMS | 0:f7f1f0d76dd6 | 28 | #endif /* USE_MODIFIED_MACROS */ |
XinZhangMS | 0:f7f1f0d76dd6 | 29 | |
XinZhangMS | 0:f7f1f0d76dd6 | 30 | #define SHA_Parity(x, y, z) ((x) ^ (y) ^ (z)) |
XinZhangMS | 0:f7f1f0d76dd6 | 31 | |
XinZhangMS | 0:f7f1f0d76dd6 | 32 | #endif /* _SHA_PRIVATE__H */ |
XinZhangMS | 0:f7f1f0d76dd6 | 33 |