我目前正在编写一种快速的自定义编码方法,在该方法中我用数字标记一个键,以验证它是一个有效的键。
基本上,我从编码中取出任何数字并将其乘以一个键。
然后,我会将这些数字乘以部署到购买密钥的用户/客户。我想简单地使用 (Code % Key == 0) 来验证密钥是否有效,但对于较大的值,mod 函数似乎无法按预期运行。
号码 = 468721387;密钥 = 12345678;代码=数字*键;
使用上面的数字:代码 % 键 == 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)
我究竟做错了什么?