<machineKey validation="SHA1" validationKey="<64-byte key>"
validationKey는 정확히 무엇을합니까? SHA1을 사용하여 해시를 생성한다고 가정 해보십시오. validationKey는 어떻게 작동합니까? 오른쪽sha1 해시를 생성 할 때 machineKey validationKey는 어떻게 사용됩니까?
HMACSHA1 hashSha = new HMACSHA1(_validationKey);
byte[] ret = hashSha.ComputeHash(bytes, offSet, count);
return ret;
우리는 새로운 _validationkey을 생성하는 :
이 코드를 생각해? 그런 다음 ComputeHash에서 바이트를 가져 와서 해시합니다. _validationKey의 요점은 무엇입니까? 해쉬의 유효성을 검사 할 때 필요합니까?그리고 프로세스에 어떤 역할도 없다면 다음과 같은 사실입니까?
나는 80 바이트 길이의 바이트 배열을 가지고 있고, SHA1은 지난 20
validationKey의 아무 역할을하지 일치해야합니다 해시 경우 지난 20 바이트, asp.net의 SHA1 해시 후 첫 60 바이트로 구성 그거?
따라서 80 바이트 길이의 바이트 배열이 있고 sha1 해시가 마지막 20 개와 일치해야한다면 마지막 20 바이트는 asp.net sha1 해시로 구성됩니다. validationKey는 그 역할을하지 못합니까? – lynn
msdn에 따르면 validationKey는 enableViewStateMAC가 true 일 때만 사용됩니다. – Nick
다음 질문에 대해서는 enableViewStateMac이 validationKey를 사용하지만 어떻게 월요일에 저장할지 묻습니다. 감사. – lynn