Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.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# 应用程序身份验证密钥_C#_Asp.net Mvc_Security_Authentication - Fatal编程技术网

C# 应用程序身份验证密钥

C# 应用程序身份验证密钥,c#,asp.net-mvc,security,authentication,C#,Asp.net Mvc,Security,Authentication,我想到了两个为我的应用程序提供加密身份验证密钥的选项,我希望社区提供一些反馈,看看哪个选项可能是最好的 选项1:当他们购买产品时,会给他们一个唯一的ID,他们可以使用该ID激活产品。在激活过程中,我将密钥发送到身份验证服务,并根据订单表进行验证,然后将加密密钥发回。加密密钥将包含其原始身份验证代码以及我将添加的其他部分 选项2:我在客户端进行密钥加密 我将始终需要在客户端解密密钥,因为我希望每次运行应用程序时都能够检查密钥的几个部分。但是我应该在那里进行加密,还是在我的web服务上进行加密并将其

我想到了两个为我的应用程序提供加密身份验证密钥的选项,我希望社区提供一些反馈,看看哪个选项可能是最好的

选项1:当他们购买产品时,会给他们一个唯一的ID,他们可以使用该ID激活产品。在激活过程中,我将密钥发送到身份验证服务,并根据订单表进行验证,然后将加密密钥发回。加密密钥将包含其原始身份验证代码以及我将添加的其他部分

选项2:我在客户端进行密钥加密


我将始终需要在客户端解密密钥,因为我希望每次运行应用程序时都能够检查密钥的几个部分。但是我应该在那里进行加密,还是在我的web服务上进行加密并将其发送回应用程序进行存储

我会选择选项1,因为如果客户想在购买时添加更多功能,他们可能会重新激活并获得包含其他信息的新产品密钥。它还将使您能够在服务器端拥有密钥创建和加密的所有逻辑。

购买该产品的客户是否始终能够从运行该产品的机器上访问internet,以便始终能够访问您的服务?我假设初始身份验证将需要internet连接。