MD2(해시 함수)
MD2 (hash function)장군 | |
---|---|
디자이너 | 로널드 리베스트 |
초판 | 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년 현재[update] 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를 비활성화하는 보안 업데이트가 발행되었습니다.
「 」를 참조해 주세요.
레퍼런스
- ^ 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.
- ^ 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.
- ^ a b Kaliski, Burt (April 1992). The MD2 Message-Digest Algorithm. IETF. p. 3. doi:10.17487/RFC1319. RFC 1319. Retrieved 22 November 2014.
- ^ RFC 6149, MD2에서 이력 상태로
- ^ "How is the MD2 hash function S-table constructed from Pi?". Cryptography Stack Exchange. Stack Exchange. 2 August 2014. Retrieved 23 May 2021.
- ^ 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.
- ^ Thomsen, Søren S. (2008). "An Improved Preimage Attack on MD2" (PDF).
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말) - ^ 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.
- ^ 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.