关于如何安全网络验证的想法

Posted xieyi1393

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于如何安全网络验证的想法相关的知识,希望对你有一定的参考价值。

  现在很对付费软件都是用的他人的网络验证系统,但是很多系统安全性并不高,更有甚者使用HTTP+MD5来做数据验证,下文我们就来谈一谈如何安全地实现网络验证

  

  STEP1.生成注册码

    当软件被购买时生成一个带有签名数字证书并提供给用户

  STEP2.上传到软件验证服务器

    将数字签名上存放的软件序列号,软件激活码,以及机器码,时间戳,随机Nonce,新的公钥和使用私钥签名过的哈希一同上传到软件验证服务器

  STEP3.软件验证服务器下发临时许可证

    软件服务器使用提供的信息签发一个新的数字证书并下发给用户,数字证书的有效日期不要太长,一般1天-1周即可.此证书的过期时间不要超过购买时下发证书的有效期。软件将缓存此秘钥直到过期。如果有未过期的缓存的秘钥将会跳过第2,3步

  STEP4.软件向时间服务器请求当前时间

    软件生成CHALLENGE_CODE并发给时间服务器,时间服务器发回时间,经数字签名过的[CHALLENGE_CODE与当前时间的哈希]发回客户端,客户端验证后即可进入主逻辑

 

以上是关于关于如何安全网络验证的想法的主要内容,如果未能解决你的问题,请参考以下文章

关于 passport.js 安全级别的问题

关于ssh的问题

ejb 关于角色和身份验证的安全问题

关于网络安全防护,以下说法正确的是啥?

关于WEB应用安全的小思考

WCF、安全和证书