Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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
Security 从激活密钥中删除特殊字符是否安全_Security_User Interface - Fatal编程技术网

Security 从激活密钥中删除特殊字符是否安全

Security 从激活密钥中删除特殊字符是否安全,security,user-interface,Security,User Interface,在我的应用程序中,我创建了一个64个字符的激活密钥。 它有一些特殊的特征,比如 + = 在构建url时,我们正在进行url编码。但是,如果用户从他的电子邮件客户端复制url,在某些客户端中url会被解码 一些建议是删除这些不需要url编码的特殊字符。 由于字符集将受到限制,它会在安全性方面产生任何问题吗?如果只使用字母数字字符,并且不区分大小写,则可能有36个字符。由于密钥长度为64个字符,因此最终会得到一个相当大的密钥空间(大于GUID) 根据您试图防止这种情况发生的原因(我假设暴力强制合

在我的应用程序中,我创建了一个64个字符的激活密钥。 它有一些特殊的特征,比如

+ = 
在构建url时,我们正在进行url编码。但是,如果用户从他的电子邮件客户端复制url,在某些客户端中url会被解码

一些建议是删除这些不需要url编码的特殊字符。
由于字符集将受到限制,它会在安全性方面产生任何问题吗?

如果只使用字母数字字符,并且不区分大小写,则可能有36个字符。由于密钥长度为64个字符,因此最终会得到一个相当大的密钥空间(大于GUID)


根据您试图防止这种情况发生的原因(我假设暴力强制合法密钥),只要生成它们的算法足够,您就不会有生成容易猜测的密钥的风险。

如果您使用64个字符,并且只执行a-z 0-9,则您的密钥大小应该可以。这将为您提供36^64个可能的键。不少:)