Browse Prior Art Database

MD4 Message Digest Algorithm (RFC1186)

IP.com Disclosure Number: IPCOM000001999D
Original Publication Date: 1990-Oct-01
Included in the Prior Art Database: 2019-Feb-11
Document File: 18 page(s) / 21K

Publishing Venue

Internet Society Requests For Comment (RFCs)

Related People

R.L. Rivest: AUTHOR

Related Documents

10.17487/RFC1186: DOI

Abstract

This RFC is the specification of the MD4 Digest Algorithm. If you are going to implement MD4, it is suggested you do it this way. This memo is for informational use and does not constitute a standard.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 10% of the total text.

Network Working Group R. Rivest Request for Comments: 1186 MIT Laboratory for Computer Science October 1990

The MD4 Message Digest Algorithm

Status of this Memo

This RFC is the specification of the MD4 Digest Algorithm. If you are going to implement MD4, it is suggested you do it this way. This memo is for informational use and does not constitute a standard. Distribution of this memo is unlimited.

Table of Contents

1. Abstract .................................................... 1 2. Terminology and Notation .................................... 2 3. MD4 Algorithm Description ................................... 2 4. Extensions .................................................. 6 5. Summary ..................................................... 7 6. Acknowledgements ............................................ 7 APPENDIX - Reference Implementation ............................. 7 Security Considerations.......................................... 18 Author’s Address................................................. 18

1. Abstract

This note describes the MD4 message digest algorithm. The algorithm takes as input an input message of arbitrary length and produces as output a 128-bit "fingerprint" or "message digest" of the input. It is conjectured that it is computationally infeasible to produce two messages having the same message digest, or to produce any message having a given prespecified target message digest. The MD4 algorithm is thus ideal for digital signature applications, where a large file must be "compressed" in a secure manner before being signed with the RSA public-key cryptosystem.

The MD4 algorithm is designed to be quite fast on 32-bit machines. On a SUN Sparc station, MD4 runs at 1,450,000 bytes/second. On a DEC MicroVax II, MD4 runs at approximately 70,000 bytes/second. On a 20MHz 80286, MD4 runs at approximately 32,000 bytes/second. In addition, the MD4 algorithm does not require any large substitution tables; the algorithm can be coded quite compactly.

The MD4 algorithm is being placed in the public domain for review and possible adoption as a standard.

Rivest [Page 1]

RFC 1186 MD4 Message Digest Algorithm October 1990

(Note: The document supersedes an earlier draft. The algorithm described here is a slight modification of the one described in the draft.)

2. Terminology and Notation

In this note a "word" is a 32-bit quantity and a byte is an 8-bit quantity. A sequence of bits can be interpreted in a natural manner as a sequence of bytes, where each consecutive group of 8 bits is interpreted as a byte with the high-order (most significant) bit of each byte listed first. Similarly, a sequence of bytes can be interpreted as a sequence of 32-bit words, where each consecutive group of 4 bytes is interpreted as a word with the low-order (least significant) byte given first.

Let x_i denote "x sub i". If the subscript is an expression, we surround it in braces, as in x_{i+1}. Similarly, we use ^ for superscripts (exponentiation), so that...

Processing...
Loading...