私は現在、それが有効なキーであることを確認するために数字でキーをスタンプする簡単なカスタム エンコーディング メソッドを書いています。
基本的に、エンコーディングから出てくる数字をキーで乗算していました。
次に、これらの数値を乗算して、キーを購入したユーザー/顧客に展開します。(Code % Key == 0) を使用してキーが有効であることを確認したかったのですが、値が大きい場合、mod 関数は期待どおりに機能していないようです。
番号 = 468721387; キー = 12345678; コード = 番号 * キー;
上記の数値を使用: Code % Key == 11418772
小さい数値の場合は正しく 0 を返します。.NET で long の割り切れる可能性を確認する信頼できる方法はありますか?
ありがとう!
編集:わかりました、私が特別で、何かが足りないかどうか教えてください...
long a = DateTime.Now.Ticks;
long b = 12345;
long c = a * b;
long d = c % b;
d == 10001 (Bad)
と
long a = DateTime.Now.Ticks;
long b = 12;
long c = a * b;
long d = c % b;
d == 0 (Good)
私は何を間違っていますか?