사용자가 Google 사이트에 등록하면 주소 확인 서비스로 주소를 확인합니다. 이 서비스는 입력 된 주소가 있지만 오류가있는 경우 주소 제안을 반환 할 수 있습니다. 이 sugggestion은 사용자에게 반환됩니다.사용자가 데이터를 변경했는지 확인
사용자는 제안을 수락하고 신뢰할 수 있습니다. 그가 주소를 변경하면 그는 신뢰할 수 없습니다.
사용자에게 표시되는 데이터가 게시 한 데이터와 동일한 지 확인하는 좋은 방법이 있습니까? 주소 데이터의 해시가있는 숨겨진 필드가 필요하다고 생각합니다. 그러나 나는 알고리즘을 받아야한다. 가능한 경우 알고리즘은 대소 문자를 구분하지 않아야합니다.
알고리즘은 변경 방지 일 웨이 해시를 만들어야합니다.
편집 :
이것은 꽤 잘되었습니다. 나는 여전히 umlaute (ä, ü)로 테스트해야한다.
StringBuilder addressData = new StringBuilder();
addressData.Append(FirstName);
addressData.Append(LastName);
addressData.Append(StreetNumber);
addressData.Append(StreetName);
addressData.Append(City);
addressData.Append(CountryISO);
addressData.Append(Zip);
string stringVal = addressData.ToString().ToLower();
System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();
byte[] keyByte = encoding.GetBytes(ApplicationConfiguration.ShaKey);
byte[] messageBytes = encoding.GetBytes(stringVal);
HMACSHA256 hmacsha256 = new HMACSHA256(keyByte);
byte[] hashmessage = hmacsha256.ComputeHash(messageBytes);
string hash = ByteToString(hashmessage);
return hash
CRC32는 변조 될 수 있습니다. 안전한 원 웨이 해시가 필요합니다. –
@Mathias Fritsch : MD5를 고려하십시오. – Dor