[C#] HMACSHA256 클래스를 이용해서 사용자 비밀번호를 암호화하기

C#에 HMACSHA256 클래스를 사용하면 아주 간단한 코드로 사용자 비밀번호를 암호화된 문자열로 바꿀 수 있습니다.

    public static class CredentialHelper
    {
        public static string GetHMACSHA256Hash(string username, string password)
        {
            var key = Encoding.ASCII.GetBytes(username);
            var data = Encoding.ASCII.GetBytes(password);
            return Convert.ToBase64String(new HMACSHA256(key).ComputeHash(data));
        }
    }

위와같이 static class를 하나 만들어두고 사용자가 입력한 username과 password로 부터 위 함수를 사용해 만들어진 hash 문자열을 저장해두고 로그인시에 사용자가 입력한 username/password 조합으로 생성된 hash와 비교하는 식으로 verify하면 됩니다.