0

私たちのオフィスでは、ドキュメント管理システム用に定期的に使用する必要があるソフトウェア インストーラーがあり、インストーラーを続行するにはコードが必要です。コードは日付固有のようです。

数学が得意な人が、コードを生成するために使用される方法を理解する方法を知っているのではないかと思っていたので、ヘルプデスクに電話して 6 桁の文字列のために 2 ~ 3 時間待つ必要はありません。

今日 (2013 年 2 月 15 日) のコードは 836959 です。別の日 (2013 年 6 月 2 日) のコードは 450001 でした。

ここに関係はありますか、それともリバースエンジニアリングできますか?

4

1 に答える 1

0

これは厳密には数学の問題ではなく、暗号化の問題であり、関数はおそらく暗号化ハッシュ関数です...数学の観点から、キーの桁数が固定されている場合、これはおそらくSurjective関数です。日付をキーにマップする関数を意味し、同じキーに複数の日付がマッピングされる可能性があります。2つのデータポイントがある場合、それが些細なことでない限り、その関数が何であるかを推測することさえ困難です...ポイントが多いほど、それらが使用する「the」関数を見つけたという確信が高まりますが、決してそうはなりません。必ず。確実にする唯一の方法は、バイナリを分解することです。これは、使用許諾契約により、おそらく実行が禁止されています。

于 2013-02-15T01:29:55.883 に答える