Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从OOB Silverlight应用程序返回机器唯一密钥_C#_.net_Silverlight_Silverlight 4.0 - Fatal编程技术网

C# 从OOB Silverlight应用程序返回机器唯一密钥

C# 从OOB Silverlight应用程序返回机器唯一密钥,c#,.net,silverlight,silverlight-4.0,C#,.net,Silverlight,Silverlight 4.0,是否仍然可以从浏览器外的SilverLight 4应用程序返回特定于机器的标识符?这是为了阻止人们使用一个许可证密钥安装我的产品,然后将文件复制到其他人的机器上。通常情况下,MAC地址是最好的选择,但我认为您不能从SilverLight这样做。据我所知,没有办法 但是,您可以做的是根据许可证文件和密钥生成密钥。虽然并非完全万无一失,但您可以发送它,并在服务器上使用它来猜测人们是否也在将密钥/GUID复制到多台计算机。由于本地存储的路径“模糊”,而且是按用户/每台机器设计的,用户也很难复制 与此类

是否仍然可以从浏览器外的SilverLight 4应用程序返回特定于机器的标识符?这是为了阻止人们使用一个许可证密钥安装我的产品,然后将文件复制到其他人的机器上。通常情况下,MAC地址是最好的选择,但我认为您不能从SilverLight这样做。

据我所知,没有办法

但是,您可以做的是根据许可证文件和密钥生成密钥。虽然并非完全万无一失,但您可以发送它,并在服务器上使用它来猜测人们是否也在将密钥/GUID复制到多台计算机。由于本地存储的路径“模糊”,而且是按用户/每台机器设计的,用户也很难复制


与此类似,silverlight论坛上也有一个关于的讨论。有人在连接时向隔离存储写入数据,并让应用程序验证存储在其中的加密密钥-释放或移动许可证需要重新连接到web。

谢谢@Phillip,这正是我所怀疑的。你所说的许可证文件是什么意思?我的解决方案是将PersonalFolder路径的散列存储在独立存储文件夹中的文件中。这很好-所谓“许可证文件”,我指的是您用于许可应用程序的任何常规内容-密钥、下载的文件、秘密颜色,等等:)。关键是将一些东西存储在单独的存储中,上面写着“我在这里获得许可证”