2013-03-13 4 views
0

저는 현재 bCrypt를 사용하여 프로젝트의 미래 사용자의 암호를 암호화하려고합니다.bCrypt로 암호화 된 암호 확인 중 ... 전선을 통해 암호를 보내야합니까?

그것은 매우 강력한 보이지만, 여기 내 관심사입니다 - 웹 사이트에

  • 계정을 만들 수 있습니다. 서버는 암호를 bCrypt하고 해시를 저장합니다. test ->$2a$12$4PhCN62AmALB7e.Sv2w9w.AP/JZ28l.dZldU5iHyupY2w5wPz9o.u
  • 이제 암호를 확인하기 위해 BCrypt.Net.BCrypt.Verify("test", "$2a$12$4PhCN62AmALB7e.Sv2w9w.AP/JZ28l.dZldU5iHyupY2w5wPz9o.u")의 반환을 확인하여 일치하는지 확인하십시오.

이 웹 서버와 동일한 데이터로 작업하기 위해 클라이언트 측 응용 프로그램을 사용하는 경우 서버가 유효 기간과 일치하도록 전선을 통해 암호를 보내야합니까? 클라이언트 요청 해시를 해달라고 서버가 클라이언트에게 보내는 것이 가능합니까? 그러면 클라이언트가 해싱을 수행하고이를 확인할 수 있습니다.

+0

클라이언트가 자신의 암호를 어떻게 확인하게합니까? – Blender

+0

@Blender - 웹 서버가 클라이언트에게 예상되는 해시를 전송하면 클라이언트는 입력 된 암호가 해시와 일치하는지 확인할 수 있습니다. 나는 틀린가? – The1nk

+3

클라이언트가 거짓말을하지 못하게하는 요인은 무엇입니까? – Blender

답변

3

SSL (예 : https)을 사용하여 일반 텍스트 비밀번호가 유선으로 전송되는 것을 방지 할 수 있습니다. 암호는 일반 텍스트이지만 연결은 안전하며 서버와 클라이언트 만 해당 연결의 정보를 디코딩 할 수 있습니다.

+2

SSH 또는 SSL? 큰 차이가 있습니다! – IDWMaster

+0

@ IDWMaster 차이점이 무엇인지 모르겠다. 비슷하게 사용되었다는 것만 알았습니다. – Patashu

+1

큰 차이가 있습니다. SSL은 웹 브라우저에서 "도청 자에 대한 보호"를위한 통신을 "보안"하기 위해 사용되는 기술입니다. 공개 키 - 개인 키 암호화를 사용하고 신뢰할 수있는 루트 기관에 의존하여 사이트의 ID를 확인합니다. 반면에 SSH는 암호화 된 파일 전송, GIT 저장소 보안, Linux 터미널에 대한 원격 액세스 사이의 모든 것에 사용됩니다. – IDWMaster