다음을 통해 공유


MachineKeyValidation 열거형

정의

ASP.NET 양식 인증 및 뷰 상태 데이터의 유효성 검사 및 Out-of-process 세션 상태 식별에 사용하는 해시 알고리즘을 지정합니다.

public enum class MachineKeyValidation
public enum MachineKeyValidation
type MachineKeyValidation = 
Public Enum MachineKeyValidation
상속
MachineKeyValidation

필드

Name Description
MD5 0

ASP.NET 128비트 해시 값을 생성하는 해시 알고리즘인 메시지 다이제스트 5(MD5) 해시 알고리즘을 사용한다고 지정합니다. 이전 버전의 ASP.NET 호환성이 필요한 경우에만 선택해야 하는 레거시 값입니다.

SHA1 1

ASP.NET 160비트 해시 값을 생성하는 해시 알고리즘인 해시 알고리즘을 사용 HMACSHA1 한다고 지정합니다. 이전 버전의 ASP.NET 호환성이 필요한 경우에만 선택해야 하는 레거시 값입니다.

TripleDES 2

ASP.NET 뷰 상태가 암호화되도록 지정하는 경우에만 사용되는 암호화 알고리즘인 TripleDES(3DES) 암호화 알고리즘을 사용하게 지정합니다. 이전 버전의 ASP.NET 호환성이 필요한 경우에만 선택해야 하는 레거시 값입니다.

AES 3

ASP.NET 암호화 알고리즘을 AES 사용한다고 지정합니다. 웹 애플리케이션에서 보기 상태를 암호화하려면 이 옵션을 선택합니다.

이 옵션을 선택하면 속성이 DecryptionKey 암호화 및 암호 해독 HMACSHA1 에 사용되고 해시 알고리즘이 유효성 검사를 위해 속성과 함께 ValidationKey 사용됩니다.

HMACSHA256 4

ASP.NET 256비트 해시 코드를 생성하는 SHA2 해시 알고리즘인 해시 알고리즘을 사용 HMACSHA256 한다고 지정합니다. 기본값입니다.

HMACSHA384 5

ASP.NET 384비트 해시 코드를 생성하는 SHA2 해시 알고리즘인 해시 알고리즘을 사용 HMACSHA384 한다고 지정합니다. 이 옵션은 알고리즘에서 제공하는 것보다 더 강력한 보안이 필요한 애플리케이션에 HMACSHA256 사용할 수 있습니다.

HMACSHA512 6

ASP.NET 512비트 해시 코드를 생성하는 SHA2 해시 알고리즘인 해시 알고리즘을 사용 HMACSHA512 한다고 지정합니다. 이 옵션은 알고리즘에서 제공하는 것보다 더 강력한 보안이 필요한 애플리케이션에 >HMACSHA384 사용할 수 있습니다.

Custom 7

ASP.NET 사용자 지정 해시 알고리즘을 사용한다고 지정합니다. 사용자 지정 해시 알고리즘은 에서 파생되는 모든 클래스에서 KeyedHashAlgorithm구현할 수 있습니다.

사용자 지정 알고리즘은 일반적으로 machineKey 요소의 특성에 validation 선언적으로 형식alg:`*algorithm_name*으로 지정됩니다. 코드에서 사용자 지정 알고리즘을 지정하는 방법에 대한 자세한 내용은 속성을 참조하세요 ValidationAlgorithm .

예제

다음 코드 예제에서는 열거형을 MachineKeyValidation 사용하는 방법을 보여줍니다. 이 예제 configSection 에서는 .의 MachineKeySection인스턴스입니다. 이 코드 예제는 클래스에 제공된 더 큰 예제의 MachineKeySection 일부입니다.

// Set Validation property.
configSection.Validation = MachineKeyValidation.HMACSHA256;
' Set Validation value.
configSection.Validation = MachineKeyValidation.HMACSHA256

설명

ASP.NET HMAC(해시 기반 메시지 인증 코드)를 사용하여 양식 인증 또는 뷰 상태에 사용되는 데이터가 변조되었는지 여부를 감지합니다. 뷰 상태 콘텐츠를 만들 때 HMAC가 생성되고 후속 요청에서 HMAC가 확인됩니다. HMAC는 ASP.NET 서버와 클라이언트 간에 전송되는 데이터를 변경했는지 여부를 확인하는 데 도움이 되지만, 암호화되지 않는 한 인터넷을 통해 이동할 때 누구나 데이터를 읽을 수 있습니다. 기본적으로 뷰 상태는 유효성이 검사되지만 암호화되지는 않습니다. 자세한 내용은 ViewStateEncryptionModeRegisterRequiresViewStateEncryption를 참조하세요.

MachineKeyValidation 이 열거형을 사용하면 ASP.NET HMAC를 만드는 데 사용하는 알고리즘을 지정할 수 있습니다. 기본값은 HMACSHA256입니다. ASP.NET 선택한 알고리즘과 ValidationKey 함께 속성 값을 사용하여 HMAC를 생성합니다.

적용 대상

추가 정보