데이터베이스에 저장할 때 암호가 암호화된다는 사용자 암호 필드가 있습니다.C# 암호화 된 암호
또한 사용자를 편집하면 암호 필드가 해시됩니다.
그러나 해시 필드는 암호화 길이로 인해 수백 문자 길이입니다.
대신 8자를 표시하는 방법이 있습니까?
저장 후 표시되는 것이 이상적이지 않습니다.
데이터베이스에 저장할 때 암호가 암호화된다는 사용자 암호 필드가 있습니다.C# 암호화 된 암호
또한 사용자를 편집하면 암호 필드가 해시됩니다.
그러나 해시 필드는 암호화 길이로 인해 수백 문자 길이입니다.
대신 8자를 표시하는 방법이 있습니까?
저장 후 표시되는 것이 이상적이지 않습니다.
나를 걱정하는 몇 가지 사항이 있습니다. 그 중 하나는 댓글의 RB 메모에 암호화 및 해싱이라는 용어를 혼용하여 사용한다는 것입니다. 그 차이는 매우 중요합니다. 간단히 말해,
, 나는 그들이 선택하는 암호를 취할 것입니다, 위의에 더 확장하려면 내가 그 암호를 해시 한 후 안전한 곳에 그 암호를 저장하는 것 . 그런 다음 사용자가 실제로 입력 한 암호를 버립니다. 그 사용자가 다음 번에 내 사이트에 왔을 때 암호를 입력하면 다시 해시 할 수 있습니다. 이전에 저장 한 내용과 비교하여 해시 출력을 확인하고 동일한 단어가 항상 동일한 출력을 생성하므로 두 개 일치하는 해시 나는 내 사이트에 대한 액세스 권한을 부여합니다.
약 소금물 암호 (more on which can be found at Wikipedia)에 대해 알아 보시기 바랍니다. 요즘 꽤 필수 아이템입니다.
자, 실제 질문에. 다시 (그리고 RB가 그의 훌륭한 코멘트를 확장하는 것을 꺼리지 않기를 바란다.) 패스워드 필드 (* **)에서 볼 수있는 것은 단지 브라우저가 패스워드를 보지 못하게하는 방법 일 뿐이다. 별처럼 보이는 사실로도 안전하지 않습니다. 또한이 입력 필드에서만 읽어야합니다. 당신은 결코 그것에 쓰면 안됩니다. 암호 필드에 아무 것도 쓰지 않으면 공격자가 사용중인 해시 또는 보안의 종류에 대한 정보를 알 수 있습니다.
가장 좋은 방법은 사용자 편집 화면의 암호 필드를 비워 두는 것입니다.MVC가 자동 채우기를 사용한다면 입력 상자의 이름을 기본 객체와 연결되지 않는 이름으로 변경해야한다고 제안합니다. MVC의 보안에 대한 자세한 내용은 Microsoft's asp.net website에서 확인할 수 있습니다.
비밀번호가 표시됩니까? 사용자에게? –
무엇의 8 문자 만? –
암호 필드를 변경하여 변경할 수 있으며, 단지 8 개의 해시 아이콘 만 표시 할 수 있습니다. –