MD2(해시 함수)

MD2 (hash function)
MD2
장군
디자이너로널드 리베스트
초판1989년 8월[1]
시리즈MD2, MD4, MD5, MD6
세부 사항
다이제스트 사이즈128비트
라운드18

MD2 Message-Digest Algorithm은 [2]Ronald Rivest가 1989년에 개발한 암호화 해시 함수입니다.알고리즘은 8비트 컴퓨터에 최적화되어 있습니다.MD2는 IETF RFC 1319에 [3]규정되어 있습니다.MD2의 "MD"는 "Message Digest"를 나타냅니다.

MD2는 아직 완전히 타협되지 않았지만 IETF는 2011년 MD2를 "약점 징후"를 들어 "역사적" 상태로 폐기했습니다.SHA-256 및 기타 강력한 해시 알고리즘에서는 [4]권장되지 않습니다.

그럼에도 불구하고 2014년 현재 MD2 RSA에서 생성된 인증서의 일부로 공개인프라에서 계속 사용되고 있습니다.

묘사

임의의 메시지의 128비트 해시 값은 블록 길이의 배수(128비트 또는 16바이트)에 메시지를 패딩하고 16바이트 체크섬을 추가하여 형성됩니다.실제 계산에서는 48바이트의 보조 블록과 256바이트의 S-테이블이 사용됩니다.정수 0 ~ 255는 Durstenfeld 알고리즘의 배리언트를 사용하여 10진수 µ([3][5][unreliable source]pi)에 기초한 의사난수 생성기와 혼합하여 생성됩니다(슬리브 번호에 대해서는 아무것도 참조).알고리즘은 16개의 입력 바이트가 처리될 때마다 보조 블록의 각 바이트를 18회 허용하는 루프를 통과합니다.(lengthened) 메시지의 모든 블록이 처리되면 보조 블록의 첫 번째 부분 블록이 메시지의 해시 값이 됩니다.

16 진수의 S 테이블 값은 다음과 같습니다.

{ 0x29, 0x2E, 0x43, 0xC9, 0xA2, 0xD8, 0x7C, 0x01, 0x3D, 0x36, 0x54, 0xA1, 0xEC, 0xF0, 0x06, 0x13, 0x62, 0xF7, 0xF80, 0xFB, 0xF5, 0x8E, 0xBB, 0x2F, 0xE, 0x7A, 0xA9, 0x68, 0x79, 0x91, 0x15, 0xB2, 0x07, 0x3F, 0x94, 0xC2, 0x2100xB8, 0x38, 0xD2, 0x96, 0xA4, 0x7D, 0xB6, 0x76, 0xFC, 0x6B, 0xE2, 0x9C, 0x74, 0x04, 0xF1, 0x45, 0x964, 0x59, 0x74, 0x50xF9, 0xCE, 0xBA, 0xC5, 0xEA, 0x26, 0x2C, 0x53, 0x0D, 0x6E, 0x85, 0x28, 0x84, 0x09, 0xD3, 0xDF3, 0xF81, 0x41, 0x41, 0x6ExB7, 0x0E, 0x66, 0x58, 0xD0, 0xE4, 0xA6, 0x77, 0x72, 0xF8, 0xEB, 0x75, 0x4B, 0x0A, 0x31, 0x44, 0x50, 0xB4, 0xF8

MD2 해시

128비트(16바이트) MD2 해시(메시지 다이제스트라고도 불립니다)는, 통상은 32 자리수의 16 진수로 표시됩니다.다음으로 43바이트의 ASCII 입력과 대응하는 MD2 해시를 나타냅니다.

MD2("빠른 갈색 여우가 게으른 개를 뛰어넘는다") = 03d85a0d629d2c442e987525319fc471

MD2의 눈사태 효과의 결과, 입력 메시지의 작은 변화라도(매우 높은 확률로) 전혀 다른 해시가 됩니다.예를 들어, 문자 변경메시지의 d에서 c는 다음과 같은 결과가 됩니다.

MD2("빠른 갈색 여우가 게으른 톱니바퀴를 뛰어넘는다") = 6b890c9292668cdbbbfda00a4ebf31f05

제로렝스 문자열의 해시는 다음과 같습니다.

MD2("") = 8350e5a3e24c (df2275c9f80692773)

보안.

Rogier와 Chauvaud(1997)는 MD2의 압축함수 충돌을 설명했지만 공격을 MD2 전체로 확장하지는 못했습니다.

2004년에 MD2는 압축함수의 [6]2개의 애플리케이션에 상당하는104 시간 복잡성으로 프리이미지 공격에 취약한 것으로 나타났습니다.저자는 "MD2는 더 이상 안전한 단방향 해시함수로 간주할 수 없다"고 결론지었다.

2008년 MD2에서는 프리이미지 공격이 더욱 개선되어 2개의 압축함수 평가와73 2개의 메시지 [7]블록의 메모리73 요건이 복잡해졌습니다.

2009년에 MD2는 2개의 압축함수 평가63.3 시간 복잡도와 2개의 해시값의 메모리52 요구 사항으로 충돌 공격에 취약한 것으로 나타났습니다.이는 2번의 압축함수 [8]평가가 필요할65.5 것으로 예상되는 생일 공격보다 약간 나은 수치입니다.

2009년에는 OpenSSL, GnuTLS Network Security [9]Services에서 MD2를 비활성화하는 보안 업데이트가 발행되었습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Linn, John (August 1989). "RSA-MD2 Message Digest Algorithm". Privacy Enhancement for Internet Electronic Mail: Part III — Algorithms, Modes, and Identifiers. Rivest, Ron. IETF. sec. 4.2. doi:10.17487/RFC1115. RFC 1115. Retrieved 26 April 2021.
  2. ^ RSA Laboratories. "What are MD2, MD4, and MD5?". Public-Key Cryptography Standards (PKCS): PKCS #7: Cryptographic Message Syntax Standard. RSA Laboratories. Archived from the original on 16 January 2017.
  3. ^ a b Kaliski, Burt (April 1992). The MD2 Message-Digest Algorithm. IETF. p. 3. doi:10.17487/RFC1319. RFC 1319. Retrieved 22 November 2014.
  4. ^ RFC 6149, MD2에서 이력 상태로
  5. ^ "How is the MD2 hash function S-table constructed from Pi?". Cryptography Stack Exchange. Stack Exchange. 2 August 2014. Retrieved 23 May 2021.
  6. ^ Muller, Frédéric (2004). The MD2 Hash Function is Not One-Way (PDF). ASIACRYPT 2004. pp. 214–229. doi:10.1007/978-3-540-30539-2_16. Retrieved 26 April 2021 – via International Association for Cryptologic Research.
  7. ^ Thomsen, Søren S. (2008). "An Improved Preimage Attack on MD2" (PDF). {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  8. ^ Knudsen, Lars R.; Mathiassen, John Erik; Muller, Frédéric; Thomsen, Søren S. (2009). "Cryptanalysis of MD2". Journal of Cryptology. 23: 72–90. doi:10.1007/s00145-009-9054-1. S2CID 2443076.
  9. ^ CVE-2009-2409

추가 정보

  • Knudsen, Lars R.; Mathiassen, John Erik (21–23 February 2005). Preimage and Collision Attacks on MD2 (PDF). Fast Software Encryption (FSE) 2005. Retrieved 26 April 2021.
  • Rogier, N.; Chauvaud, Pascal (18–19 May 1995). The Compression Function of MD2 is not Collision Free. Selected Areas in Cryptography (SAC) 1995, Ottawa, Canada (workshop record).
  • Rogier, N.; Chauvaud, Pascal (1997). "MD2 is not Secure without the Checksum Byte". Designs, Codes and Cryptography. 12 (3): 245–251. doi:10.1023/A:1008220711840. S2CID 21613457.

외부 링크