MD5 클래스

정의

해시 알고리즘의 모든 구현이 상속되는 추상 클래스를 MD5 나타냅니다.

public ref class MD5 abstract : System::Security::Cryptography::HashAlgorithm
public abstract class MD5 : System.Security.Cryptography.HashAlgorithm
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public abstract class MD5 : System.Security.Cryptography.HashAlgorithm
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class MD5 : System.Security.Cryptography.HashAlgorithm
type MD5 = class
    inherit HashAlgorithm
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type MD5 = class
    inherit HashAlgorithm
[<System.Runtime.InteropServices.ComVisible(true)>]
type MD5 = class
    inherit HashAlgorithm
Public MustInherit Class MD5
Inherits HashAlgorithm
상속
파생
특성

설명

해시 함수는 임의의 길이의 이진 문자열을 고정 길이의 작은 이진 문자열에 매핑합니다. 암호화 해시 함수에는 동일한 값에 해시된 두 개의 고유 입력을 찾기 위해 계산할 수 없는 속성이 있습니다. 즉, 해당 데이터도 일치하는 경우 두 데이터 집합의 해시가 일치해야 합니다. 데이터가 약간 변경되면 해시에서 예측할 수 없는 큰 변경이 발생합니다.

알고리즘의 MD5 해시 크기는 128비트입니다.

클래스의 ComputeHash 메서드는 MD5 해시를 16바이트의 배열로 반환합니다. 일부 MD5 구현은 32자, 16진수 형식의 해시를 생성합니다. 이러한 구현과 상호 운용하려면 메서드의 반환 값 형식을 ComputeHash 16진수 값으로 지정합니다.

메모

MD5/SHA-1의 충돌 문제로 인해 Microsoft SHA-256 또는 SHA-512를 권장합니다. 다른 SHA256 클래스를 사용하는 대신 SHA512 클래스나 MD5 클래스를 사용하는 것이 좋습니다. 레거시 애플리케이션 및 데이터와의 호환성에만 사용합니다 MD5 .

생성자

Name Description
MD5()

MD5의 새 인스턴스를 초기화합니다.

필드

Name Description
HashSizeInBits

MD5 알고리즘에서 생성된 해시 크기(비트)입니다.

HashSizeInBytes

MD5 알고리즘에서 생성된 해시 크기(바이트)입니다.

HashSizeValue

계산된 해시 코드의 크기를 비트 단위로 나타냅니다.

(다음에서 상속됨 HashAlgorithm)
HashValue

계산된 해시 코드의 값을 나타냅니다.

(다음에서 상속됨 HashAlgorithm)
State

해시 계산의 상태를 나타냅니다.

(다음에서 상속됨 HashAlgorithm)

속성

Name Description
CanReuseTransform

현재 변환을 다시 사용할 수 있는지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 HashAlgorithm)
CanTransformMultipleBlocks

파생 클래스에서 재정의되는 경우 여러 블록을 변환할 수 있는지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 HashAlgorithm)
Hash

계산된 해시 코드의 값을 가져옵니다.

(다음에서 상속됨 HashAlgorithm)
HashSize

계산된 해시 코드의 크기를 비트 단위로 가져옵니다.

(다음에서 상속됨 HashAlgorithm)
InputBlockSize

파생 클래스에서 재정의되는 경우 입력 블록 크기를 가져옵니다.

(다음에서 상속됨 HashAlgorithm)
OutputBlockSize

파생 클래스에서 재정의되는 경우 출력 블록 크기를 가져옵니다.

(다음에서 상속됨 HashAlgorithm)

메서드

Name Description
Clear()

클래스에서 사용하는 모든 리소스를 해제합니다 HashAlgorithm .

(다음에서 상속됨 HashAlgorithm)
ComputeHash(Byte[], Int32, Int32)

지정된 바이트 배열의 지정된 영역에 대한 해시 값을 계산합니다.

(다음에서 상속됨 HashAlgorithm)
ComputeHash(Byte[])

지정된 바이트 배열의 해시 값을 계산합니다.

(다음에서 상속됨 HashAlgorithm)
ComputeHash(Stream)

지정된 Stream 개체의 해시 값을 계산합니다.

(다음에서 상속됨 HashAlgorithm)
ComputeHashAsync(Stream, CancellationToken)

지정된 Stream 개체의 해시 값을 비동기적으로 계산합니다.

(다음에서 상속됨 HashAlgorithm)
Create()

해시 알고리즘의 기본 구현 인스턴스를 MD5 만듭니다.

Create(String)
사용되지 않음.

해시 알고리즘의 지정된 구현 인스턴스를 MD5 만듭니다.

Dispose()

HashAlgorithm 클래스의 현재 인스턴스에서 사용하는 모든 리소스를 해제합니다.

(다음에서 상속됨 HashAlgorithm)
Dispose(Boolean)

관리되지 않는 리소스를 HashAlgorithm 해제하고 관리되는 리소스를 선택적으로 해제합니다.

(다음에서 상속됨 HashAlgorithm)
Equals(Object)

지정된 개체가 현재 개체와 같은지 여부를 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 사용됩니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type 가져옵니다.

(다음에서 상속됨 Object)
HashCore(Byte[], Int32, Int32)

파생 클래스에서 재정의되는 경우 해시를 계산하기 위해 개체에 기록된 데이터를 해시 알고리즘으로 라우팅합니다.

(다음에서 상속됨 HashAlgorithm)
HashCore(ReadOnlySpan<Byte>)

해시를 계산하기 위해 개체에 기록된 데이터를 해시 알고리즘으로 라우팅합니다.

(다음에서 상속됨 HashAlgorithm)
HashData(Byte[])

MD5 알고리즘을 사용하여 데이터의 해시를 계산합니다.

HashData(ReadOnlySpan<Byte>, Span<Byte>)

MD5 알고리즘을 사용하여 데이터의 해시를 계산합니다.

HashData(ReadOnlySpan<Byte>)

MD5 알고리즘을 사용하여 데이터의 해시를 계산합니다.

HashData(Stream, Span<Byte>)

MD5 알고리즘을 사용하여 스트림의 해시를 계산합니다.

HashData(Stream)

MD5 알고리즘을 사용하여 스트림의 해시를 계산합니다.

HashDataAsync(Stream, CancellationToken)

MD5 알고리즘을 사용하여 스트림의 해시를 비동기적으로 계산합니다.

HashDataAsync(Stream, Memory<Byte>, CancellationToken)

MD5 알고리즘을 사용하여 스트림의 해시를 비동기적으로 계산합니다.

HashFinal()

파생 클래스에서 재정의된 경우 암호화 해시 알고리즘에서 마지막 데이터를 처리한 후 해시 계산을 완료합니다.

(다음에서 상속됨 HashAlgorithm)
Initialize()

해시 알고리즘을 초기 상태로 다시 설정합니다.

(다음에서 상속됨 HashAlgorithm)
MemberwiseClone()

현재 Object단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
TransformBlock(Byte[], Int32, Int32, Byte[], Int32)

입력 바이트 배열의 지정된 영역에 대한 해시 값을 계산하고 입력 바이트 배열의 지정된 영역을 출력 바이트 배열의 지정된 영역에 복사합니다.

(다음에서 상속됨 HashAlgorithm)
TransformFinalBlock(Byte[], Int32, Int32)

지정된 바이트 배열의 지정된 영역에 대한 해시 값을 계산합니다.

(다음에서 상속됨 HashAlgorithm)
TryComputeHash(ReadOnlySpan<Byte>, Span<Byte>, Int32)

지정된 바이트 배열의 해시 값을 계산하려고 시도합니다.

(다음에서 상속됨 HashAlgorithm)
TryHashData(ReadOnlySpan<Byte>, Span<Byte>, Int32)

MD5 알고리즘을 사용하여 데이터의 해시를 계산하려고 시도합니다.

TryHashFinal(Span<Byte>, Int32)

해시 알고리즘에서 마지막 데이터를 처리한 후 해시 계산을 완료하려고 시도합니다.

(다음에서 상속됨 HashAlgorithm)

명시적 인터페이스 구현

Name Description
IDisposable.Dispose()

관리되지 않는 리소스를 HashAlgorithm 해제하고 관리되는 리소스를 선택적으로 해제합니다.

(다음에서 상속됨 HashAlgorithm)

적용 대상

추가 정보