У меня есть метод в java, который генерирует серийный код на основе ряда параметров.Проверка правильности серийного кода
Теперь я хотел бы иметь другой метод, который принимает те же параметры + серийный код и сообщает мне, правильно ли этот серийный код. Тем не менее, я не хочу раскрывать метод создания серийного кода, поэтому, если кто-то знает метод проверки правильности, он не сможет построить новый код на основе некоторых других параметров.
Возможно ли это?
Некоторые дополнительные важные сведения. Я не могу изменить метод, который генерирует серийный код. В противном случае я мог бы использовать некоторый алгоритм общедоступного и частного ключей. Я хочу:
Это действительно то, что мне нужно. Проблема в том, что я не могу выбрать свой собственный закрытый ключ, это метод, который я не могу изменить.
methodICannotChange("someinput") returns serialcode
methodICanInvent(serialcode, "someinput") returns true or false
а ведьма «невозможно» генерировать новый серийный код при реализации метода methodananInvent.
См. Также: http: // stackoverflow.com/questions/559163/whats-a-good-approach-for-develop-a-simple-serial-number-generator-verifier – finnw
Спасибо за это. Я думаю, что первый ответ здесь может быть весьма полезным, хотя это не совсем то, на что я надеялся ... – Fortega
Проблема по существу неразрешима при данных ограничениях. Предположим, что алгоритм генерации последовательного кода может выдавать любой код длиной 12 символов, печатный ASCII, причем сумма значений ASCII будет кратной 256. Любой проверочный код либо отклонит действительные коды, примет неверные коды, либо покажет ваш алгоритм. – MSalters