2013-03-23 3 views
1

나는 SO thread 다른이를 발견OpenId는 어떻게 보안을 유지합니까?

단계 :

  1. 사용자가 오픈 ID를 사용할 웹 사이트에 연결합니다.
  2. 사용자가 자격 증명 정보를 입력합니다.
  3. 포스트는
  4. 웹 사이트는 로그인 할 수있는 업체로 사용자를 리디렉션 (즉 만료를 포함)에 대한 답변이 내장 된 BASE64 (공급자 웹 사이트)
  5. 로 이루어진다.
  6. 사용자가 암호를 입력하고 제출하십시오.
  7. 확인이 완료되었습니다.
  8. 로그인하십시오!

6 단계에서 8 단계까지 보안을 유지하는 방법은 무엇입니까? 내가 보는 방식대로, 클라이언트는 공급자와 인증하고 그 결과를 서버에보고합니다.

클라이언트가 인증 결과를 위장하지 못하게하는 원인은 무엇입니까?

답변

2

주로 인증 결과는 공급자가 암호화하여 서명합니다. 다른 공격으로부터 보호하는 다른 보안 수단도 있습니다. 신뢰 당사자는 양의 주장을 받으면

,이 주장을 수락하기 전에 다음 사항을 확인해야합니다 :

(가) OpenID 2.0 specification, section 11. 인용

  • "된 openid.return_to"의 값은 URL과 일치 현재 요청()
  • 발견 된 정보는 어설 션의 정보와 일치합니다 (Section 11.2)
  • 어설 아직 "openid.response_nonce"에 대해 같은 값이 OP에서 승인되지 않은 (Section 11.3)
  • 주장의 서명이 유효하고 서명하는 데 필요한 모든 필드 (Section 11.4)
  • 을 서명

물론 클라이언트는 위조 된 인증 결과를 보낼 수 있지만 인증을 통과하지 못합니다.

+0

설명에 감사드립니다. – Alwyn

관련 문제