2012-08-15 13 views
2

이전 버전의 소프트웨어에는 일련 번호와 해당 정품 인증 키가 있습니다. 그것들을 원래부터 설치했기 때문에 많은 활성화 키를 잃어 버렸습니다 (그러나 일련 번호는 여전히 있습니다). 나는 여전히 약 20 개의 키가있는 데이터 세트를 가지고 있으며 심지어 활성화 키를 결정하는 데있어서 광기에 대한 방법이 있다는 것을 알 수있다. 대용량 데이터 세트가 있다면 내가 잃어버린 정보의 활성화 키를 찾아 낼 수있는 방법이 있습니다. 시리얼 #의많은 일련 번호와 정품 인증 키로 정품 인증 키 생성

예 : 14051 정품 인증 키 : E9E9F-9993432-45543

+0

일련 번호가 정확한 정품 인증 키와 연결되어 있는지 확인하셨습니까? –

+0

순차 키가 있습니다. 패턴이 있습니다. – user1601597

답변

0

그것은 계획이 처음에 얼마나 바보에 따라 다르지만 내 생각 엔이 가능성이 아니라고 할 것이다. 고정 방법론은 없지만 일반 도메인은 코드 분할과 같습니다.

+0

꽤 바보. 예를 들어, 모든 키는 활성화 키의 두 번째 섹션의 처음 3 자리 숫자로 999를가집니다. 또한 활성화 키는 이전 활성화 키의 마지막 5와 동일한 처음 5 개의 숫자/문자를 갖습니다. 마지막으로 키의 두 번째 그룹에서 문자/숫자는 abcdef689 – user1601597

+0

의 조합이어야합니다. 두 번째 그룹에 부여한 예에서 [abcdef689]뿐만 아니라 두 번째 그룹에 2, 3 및 4가 있습니다. –

+0

죄송합니다. 귀하가 실제 데이터 세트를 원한다면 법적 문제를 피하기 위해 실제 코드를 기재하고 싶지 않습니다. 귀하에게 설정할 수 있습니다. – user1601597

1

당신이하려는 것은 일련 번호를 활성화 키로 매핑하는 기능입니다. 함수의 본질에 대해 더 많이 알지 못하면 아주 쉽게 (단항이 적은 다항식)부터 매우 어렵습니다 (블록 XOR, 대치 테이블, 복잡한 주요 일정 등을 포함하는 다중 계층 함수).).

당신은 키 검증 루틴에 액세스 할 수있는 경우 (분해에 의해 예 -이다 거의 항상 상용 소프트웨어의 EULA를 상대로), 당신은 주어진 활성화 키가에 대한 정확한인지 여부를 반환하는 루틴을 가지고 주어진 일련 번호. 일련 번호에 대한 활성화 키를 계산하여이 작업을 수행했다면 실제로 완료된 것입니다. 이것이 키에 대한 역함수를 계산하여 수행 되었다면, 당신의 작업은 조금 더 어렵습니다. 키 유도 알고리즘을 검색하기 위해 그 함수를 뒤집을 필요가 있습니다. 그렇게 쉬운 일은 아닙니다. 스키마가 공개 키 암호화에 의존하기 때문에 어려운 수학적 문제 (예 : 이산 로그 문제)를 해결해야하는 경우 처리중인 값이 충분히 작아서 무차별 대입 또는 계산적으로 가능한 시간에 알려진 알고리즘 (예 : Pollard의 ρ 알고리즘)을 사용하십시오.

아무튼 해체 및 디버깅에 익숙해 져야하며 반 디버거 대책이 필요하지 않기를 바랍니다.

그렇지 않으면 문제가 훨씬 더 어려워집니다. 교육받은 추측을하고 (예 : 다항식을 적용하여 시도해보십시오.) 최선을 다해야합니다. 실제로는 소스 코드 크기에 따라 제한적이지만 수학적으로는 계산할 수없는 입력 및 출력 집합에 적합한 매우 다양한 다양한 함수가 있기 때문에 알고리즘 자체에 대한 알려진 일반 텍스트 공격을 시도하면 일반적으로은 실행 불가능합니다 .

관련 문제