Magnus Nystrom (source code)

= Magnus Nystrom
{c}

<Magnus Nystrom> is a <computer scientist> working in computer security and <cryptography>. An ITU-hosted speaker biography uses the spelling Magnus Nyström and describes his work on security architectures, <cryptographic protocols> and standards at RSA Security. The biography and RFC identify a security specialist of the same name at RSA Security.<Magnus Nyström biography for ITU Cybersecurity Symposium II>[One-page speaker biography, name, research description and contact.]{ref}

<Magnus Nystrom> authored RFC 4231, which supplies identifiers and <cryptographic test vectors> for <HMAC> used with several members of the SHA-2 family. This is a practical contribution to reproducibility and interoperability: two implementations given the same key and message should produce exactly the same authentication value.<Identifiers and Test Vectors for HMAC-SHA-224, HMAC-SHA-256, HMAC-SHA-384, and HMAC-SHA-512 (RFC 4231)>[Abstract, §§3–4.1 and Author’s Address.]{ref}

For a concrete published check, Test Case 1 uses twenty <bytes> of hexadecimal `0b` as the key and the eight <ASCII> characters `Hi There` as data. The <HMAC>-<SHA-256> output starts `b0344c61`. A developer must decode `0b` as one byte rather than submit the two text characters `0` and `b`; confusing those representations changes the input.<Identifiers and Test Vectors for HMAC-SHA-224, HMAC-SHA-256, HMAC-SHA-384, and HMAC-SHA-512 (RFC 4231)>[§4.2, Test Case 1; keys, data and outputs are hexadecimal.]{ref}

A <cryptographic test vector> is an exact check of specified behavior. Passing one example cannot establish the absence of implementation errors for every input, and conformance does not itself prove resistance to every attack. The value of a published collection is that its fixed inputs expose disagreements that informal descriptions of an algorithm can leave hidden.