대부분의 위키 문서는 클라이언트 브라우저가 공개 키 (인증서)를 사용하여 중요한 데이터 (예 : 사용자 이름/암호)를 암호화하고이 암호화 된 데이터를 서버로 보내는 방법을 설명합니다. 서버는 개인 키를 사용하여 암호를 해독합니다. 나는이 부분을 얻는다. 그러나 서버가 데이터를 암호화하고 브라우저로 다시 보내는 방법을 말하는 명확한 정보는 없습니다.SSL은 서버에서 클라이언트로 데이터를 어떻게 암호화합니까?
는 예를 들어 내 온라인 뱅킹을 사용
(0) 나는 이미 내 온라인 뱅킹에서 받아 신뢰할 수있는 인증서 (공개 키). SSL의 URL을 통해
(1), 내 브라우저 방문 https://myonlinebanking.com
(2) 내가 로그인하는 사용자 이름/암호를 입력했습니다. 이 데이터는 암호화되어 있기 때문에 중간자는 무의미한 데이터 만 볼 수 있습니다.
(3) 은행 웹 서버가 암호화 된 데이터를 수신하고 개인 키를 사용하여 개인 데이터를 해독하고 계정을 성공적으로 인증합니다.
내 질문은 다음과 같습니다.
은행에서 데이터를 어떻게 전송합니까? 은행은 응답 데이터를 어떤 키로 암호화합니까? "공개 키"로 암호화 된 뱅크의 경우 중간 사람이 볼 수있는 것처럼 볼 수 있습니다. 그래서 중간자는 내 사용자 이름/비밀번호를 모르지만 여전히 내 계정 잔액을 볼 수 있습니까?
도움 주셔서 감사합니다.
이것은 주제와 관련이 없습니다. 프로그래밍 문제가 있다면 stackoverflow가 완벽합니다. 보안 또는 암호 관련 질문이있는 경우 필요에 따라 stackexchange 사이트가 있습니다. 어떤 위키 기사를 읽었는지는 언급하지 않지만 [TLS에 관한 위키 피 디아 기사] (http://en.wikipedia.org/wiki/Transport_Layer_Security)가 확실히 귀하의 질문에 대답합니다. –
@ 시몬 이것은 내가 물어 보려고했던 완벽한 질문이다. (사실 나는 물었다.) 그러나 당신이 받아 들인 답변이 실제로 "공개 키"로 암호화되어 있다면, 중간자는 내가 볼 수있는 것처럼 그것을 볼 수 있다는 것을 이해합니다. 그래서 중간자는 ' 내 사용자 이름/비밀번호를 알지만 계정 잔액은 계속 볼 수 있습니까? " 네가 맞으면 대답에서 다음 진술을 설명 할 수 있니? "브라우저가 인증서가 정확한 호스트와 연결되어 있는지 확인합니다." – Darshan