나는 많은 파라미터를 기반으로 시리얼 코드를 생성하는 자바 메소드를 가지고 있습니다.시리얼 코드의 정확성을 확인하십시오.
이제는 동일한 매개 변수 + 직렬 코드를 허용하는 다른 방법을 사용하고이 직렬 코드의 정확성 여부를 알려줍니다. 그러나 직렬 코드 작성 방법을 드러내고 싶지 않으므로 다른 사람이 정확성을 검사하는 방법을 알고 있으면 다른 매개 변수를 기반으로 새 코드를 작성할 수 없어야합니다.
이것이 가능합니까?
몇 가지 중요한 정보. 직렬 코드를 생성하는 방법을 변경할 수 없습니다. 그렇지 않으면 몇 가지 표준 공개 - 개인 키 알고리즘을 사용할 수 있습니다. 내가 원하는 것은 :
그것은 내가 필요한 것입니다. 문제는 내가 개인 키를 선택할 수 없다는 것입니다. 이것은 변경할 수없는 방법입니다.
methodICannotChange("someinput") returns serialcode
methodICanInvent(serialcode, "someinput") returns true or false
그리고 methodICanInvent의 구현을 할 때 새로운 serialcode를 생성하는 것은 불가능합니다.
참고 : http : // stackoverflow.com/questions/559163/whats-a-good-approach-for-a-simple-serial-number-generator-verifier – finnw
감사합니다. 나는 이것이 정확히 내가 원하는 바가 아니지만 여기에있는 첫 번째 대답은 매우 유용 할 것이라고 생각한다. – Fortega
문제는 주어진 제약 조건 하에서 본질적으로 해결할 수 없다. 직렬 코드 생성 알고리즘은 길이가 12 자이고 인쇄 가능한 ASCII 코드를 생성 할 수 있다고 가정합니다. ASCII 값의 합은 256의 배수입니다. 모든 검사 코드는 유효한 코드를 거부하거나 잘못된 코드를 수락하거나 알고리즘을 표시합니다. – MSalters