美文网首页
使用加密锁实现身份验证方案

使用加密锁实现身份验证方案

作者: George_Antonio | 来源:发表于2018-05-03 16:44 被阅读0次

    制备锁

    • 生成RSA密钥对文件(可通过工具),Privatekey.Rsapri和Publickey.Rsapub,用于制备管理员锁和服务器锁。
      1. 密钥对文件保存好,任何人都可以通过密钥对文件制作管理员锁和服务器锁,从而签发用户锁。
      2. 同样,如果丢失管理员所,也可以通过密钥文件制作。
    • 将密钥文件写入到加密锁①中,制作管理员锁。
      1. 加密锁①不要是空锁,否则丢失不安全,空锁有默认密码。
    • 将公钥文件写入到加密锁②中,制作服务器锁。公钥文件也可以放到程序中,通过代码操作,不一定非得需要一把锁.
    • 把标识用户唯一身份的信息写入到加密锁③……中,生成RSA密钥对文件,使用管理员锁中的私钥对用户信息和用户公钥进行数字签名,将签名结果写入到用户锁。

    登陆验证

    • 用户插上加密锁输入用户名和用户PIN发送登陆请求。

    • 服务器返回随机数R。

    • 客户端调用用户锁私钥对随机数进行签名,将签名结果连同用户信息发送给服务器。

    • 服务器从用户信息中取出用户锁公钥,对随机数签名验签。

    • 验签通过, 使用服务器锁公钥对用户信息和用户公钥验签, 确保是管理员签发的用户锁。

    • 验证通过登陆成功。

    创建用户

    • 向user表中添加用户的基本信息。
    • 将标识用户唯一身份的信息告知管理员,制作用户锁。

    密钥对文件解释:

    比如A向B发送邮件,A需要有一个公钥和一个私钥,将公钥暴露给B(不暴露给其他人),A使用私钥对发送的邮件进行加密,B通过A的公钥进行解密,从而实现邮件的加密传输。
    同样, A也可以使用公钥对邮件加密, 将私钥暴露给B,B使用私钥解密。
    也可以理解为,A使用私钥对邮件进行数字签名,将公钥暴露给B, B使用公钥验证签名,确定是A发送的。

    相关文章

      网友评论

          本文标题:使用加密锁实现身份验证方案

          本文链接:https://www.haomeiwen.com/subject/hwflrftx.html