签名登录调用流程(草稿)



  • 用户将私钥保存在签名app中,登录应用A时,由应用A向签名app提出签名登录请求,具体流程如下:

    1. 用户向应用A提出登录请求,注明cid
    2. 应用A查询cid对应地址
    3. 应用A组织好message的内容和地址,发送给签名app
    {
      "message": {
            "requestor":" [cid, sid or url]",
    	"operation": "login",
            "expiredate": "[unix absolute time]",   // 签名授权的有效期
            "timestamp": "[unix time]"
      },
      "address": "[FCH address of the user]"
    }
    
    1. 签名app检查timestamp不超过规定时间,如10秒。
    2. 签名app显示待签名内容给用户确认。
    3. 签名app找到地址对应私钥,对message内容签名,将所有三项内容返回给应用A。
    {
      "message": {
            "requestor": "[cid, sid or url]",
    	"operation": "login",
            "expiredate": "[unix absolute time]",  // 签名授权的有效期
            "timestamp": "[unix time]"
      },
      "address": "[FCH address of the user]",
      "signature": "[signature of message signed by the private key of the address]"
    }
    
    1. 应用A验证:
      1)Timestamp不超过特定时间,如3分钟,
      2)opreation无误,
      3)签名无误。
    2. 应用A准许登录,并在expiredate到期时停止登录状态。

Log in to reply