2011-08-26 1 views
1

저는 지금 이상한 문제에 직면하고 있습니다. 당신이 동료 인 경우 : Best place to put key or password used for encryption? 나는 데이터를 암호화하는 방법을 찾고있었습니다. RSA를 사용하는 것이 좋은 선택 인 것으로 보입니다. 그러나 우리는 내 요구 사항이 서로 관련되어 있기 때문에 문제가 있습니다 ...파일을 암호화하면 클라이언트 소프트웨어가 활성화되었음을 알 수 있습니까?

  • 소프트웨어가 활성화되었는지 여부를 확인하려면 클라이언트에 파일이 암호화되어 있어야합니다.

실제로 클라이언트가 암호화 된 파일을 읽어야한다는 것을 의미합니다.하지만 문제는 실제로 개인 키가 필요하다는 것입니다. 일부 poeple이 해당 키를 사용하여 라이센스 파일을 만들 수 있기 때문에 실제로 좋은 아이디어가 아닙니다. . 활성화 서버는 클라이언트로 다시 전송 된 데이터 파일을 암호화 한 다음 클라이언트가 해당 파일을 저장합니다.

이 문제를 해결하는 가장 좋은 방법은 무엇입니까?

그래서 내가 정확히 찾고 있어요 것은

  • 클라이언트 소프트웨어가 활성화되어 있는지 확인하기 위해 암호화 된 파일이 있어야합니다 ... 양태에서는 요구 사항에 대한 방법입니다.
  • 클라이언트가 사용자 데이터를 암호화되지 않은/암호화 된 형식으로 등록 서버에 보냈습니다. 그것은 중요하지 않습니다. 물론 지금은 암호화가 더 잘됩니다.
  • 정품 인증 서버는 해당 데이터를 확인한 다음 클라이언트를 정품 인증 할 수 있는지 여부를 결정합니다.
  • 클라이언트가 활성화 될 수 있으면 서버는 라이센스 파일의 암호화 된 형식을 보냅니다. 그러나 문제가 나타납니다. 개인 키가 클라이언트에없는 경우 클라이언트에서 파일을 암호 해독 할 방법이 없습니다. 꽤 불안해!

아이디어가 있으십니까?

답변

1

디지털 서명을 확인해야한다고 생각합니다. http://www.codeproject.com/KB/security/xmldsiglic.aspx은 질문에 대한 좋은 대답 인 것 같습니다.

+0

이미 RSA에서 사용하고 있습니다. 어떤면에서 내 문제를 해결할 수 있을까요? – Rushino

+0

라이센스 데이터에 서명/확인하기 위해 X509 인증서를 사용하고 있습니까? – mmorel

+0

X509 인증서가 무엇인지 알지도 못하므로 안된다고합니다. – Rushino

관련 문제