2010-12-28 5 views
0

이 질문에 제목을 무엇으로 써야할지 모르겠지만 여기서는 도움을 찾고 있습니다.정품 인증 코드

저는 CORE JAVA 플랫폼에서 데스크톱 기반 응용 프로그램을 만드는 회사에서 일합니다. 우리는 소프트웨어를 활성화하기위한 활성화 코드를 제공합니다. 활성화 개념은 -

사용자는 정품 인증 코드를 입력 -> 소프트웨어가 서버를 명중하고 필요한 모든 파일을 다운로드 -> 활성화 완료.

우리의 소프트웨어는 우리 서버에 접속하여 정품 인증 코드가 만료되었는지 확인합니다.

는 Problem- 우리는 정기적으로 인터넷에 연결되지 않은 새로운 클라이언트를 가지고있다. 어떻게 든 그들이

사용자가 정품 인증 코드를 입력 한 시간 - 인터넷 연결을 제공하기로 합의 -> 소프트웨어가 서버를 명중하고 필요한 모든 파일을 다운로드 -> 활성화 완료.

하지만 이후에는 인터넷에 연결되지 않았습니다. 유효 기간 만료 날짜에 대한 서버 확인을 위해 소프트웨어를 중단 할 수 있습니다. 하지만 문제는 -

1) 정품 인증 코드가 실제로 만료되었는지 어떻게 확인합니까? (정품 인증 코드는 1 년 동안 만 유효합니다.)

2) 만료 후 사용자가 새 정품 인증 코드를 입력하면 유효 기간이 1 년인 유효한 정품 인증 코드인지 어떻게 확인합니까?

답변

1

1) 등록 날짜를 저장하고 시스템 날짜와 비교할 수 있습니다. 물론 사용자는 날짜에 조율 할 수 있습니다. 이전에 보았던 마지막 날짜를 항상 저장 한 소프트웨어가 있었는데, 과거에 날짜를 옮기면 불평하고 만료되었습니다. 이런 식으로 할 수는 있지만 물론 서버와 통신하는 것만 큼 안전하지는 않습니다.

2) 이전 키와 새 키가 포함 된 활성화 키의 형식을 만드십시오. 그래서 첫 번째 열쇠는, 예를 들어 A입니다. 이것은 서버와 대화하고 A가 괜찮은지 확인하는 데 좋습니다. 새로운 키는 "나는 A를 대체하고 활성화의 또 다른 해를 추가하고 B는 B 라 불리우므로 1 년 안에 BC와 같은 키가 필요합니다"라는 의미의 AB로 보일 수 있습니다. 이 코드를 안전하게 인코딩하는 방법에 대해 조금 생각해 봐야 겠지만, 나는 그것이 작동 할 수 있다고 확신한다. (예를 들어, A로 B를 암호화 할 수 있고, B는 활성화 코드 A로만 사용할 수있다.)