Hash-based Message Authentication Code
E832816
Hash-based Message Authentication Code (HMAC) is a cryptographic mechanism that uses a hash function and a secret key to verify both the integrity and authenticity of a message.
Observed surface forms (1)
| Surface form | Occurrences |
|---|---|
| Keyed-Hash Message Authentication Code | 1 |
Statements (50)
| Predicate | Object |
|---|---|
| instanceOf |
cryptographic primitive
ⓘ
message authentication code ⓘ |
| abbreviation | HMAC ⓘ |
| alternativeTo |
CBC-MAC
NERFINISHED
ⓘ
CMAC NERFINISHED ⓘ |
| basedOn | iterated hash function construction ⓘ |
| belongsTo | symmetric cryptography ⓘ |
| canBeTruncatedTo | shorter tag length ⓘ |
| commonlyUses |
MD5
NERFINISHED
ⓘ
SHA-1 ⓘ SHA-256 NERFINISHED ⓘ SHA-512 NERFINISHED ⓘ |
| definedIn | RFC 2104 NERFINISHED ⓘ |
| formalSecurityModel | PRF-based security model ⓘ |
| hasProperty |
collision resistance inherited from hash function
ⓘ
computationally infeasible to forge without key ⓘ deterministic output for given key and message ⓘ keyed construction ⓘ |
| hasPurpose |
data origin authentication
ⓘ
message authentication ⓘ message integrity verification ⓘ |
| introducedBy |
Hugo Krawczyk
NERFINISHED
ⓘ
Mihir Bellare NERFINISHED ⓘ Ran Canetti NERFINISHED ⓘ |
| introducedInYear | 1996 ⓘ |
| isResistantTo | length extension attacks ⓘ |
| notProvides | non-repudiation ⓘ |
| outputDependsOn |
message
ⓘ
secret key ⓘ underlying hash function ⓘ |
| provides |
authentication
ⓘ
integrity protection ⓘ tamper detection ⓘ |
| recommendedKeyLengthAtLeast | 128 bits ⓘ |
| requires | shared secret key between sender and receiver ⓘ |
| securityReliesOn |
pseudorandomness of the underlying hash function
ⓘ
secrecy of the key ⓘ |
| standardizedBy |
Internet Engineering Task Force
ⓘ
surface form:
IETF
NIST NERFINISHED ⓘ |
| standardizedIn | FIPS 198-1 NERFINISHED ⓘ |
| tagLengthLimitedBy | output size of underlying hash function ⓘ |
| usedIn |
API authentication
ⓘ
IPsec NERFINISHED ⓘ JSON Web Tokens NERFINISHED ⓘ OAuth NERFINISHED ⓘ SSH NERFINISHED ⓘ TLS ⓘ digital signature schemes as building block ⓘ |
| uses |
cryptographic hash function
ⓘ
secret key ⓘ |
Referenced by (2)
Full triples — surface form annotated when it differs from this entity's canonical label.