账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    sign 签名在客户端怎么保证安全(ios,android,web)
    41
    0
    S = key + url_encode(path) + T
    签名 SIGN = md5(S).to_lower(),to_lower 指将字符串转换为小写; 一般会这样签名

    API接口开发时,如果考虑到接口的安全和参数不可串改,通常做法一般是吧参数通过 一定的算法签名后把签名的 sign 值一起发给服务端,这样服务端也根据除去 sign 参数,把所有参数也经过签名后,判断客服端传递的 签名是否匹配。这样就解决了,

    但是有个问题,签名算法基本都一样,能做的就是签名时加上一个 key 值,但是这个key值放在客户端怎么保证安全呢。比如放在 web 端,js 代码是直接可以看得,这样肯定不安全,放在 android 上面貌似也不安全,因为 apk 是可以反编译的。

    有小伙伴解决过这个问题的么?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 快来摸我 普通会员 1楼

      在iOS和Android应用程序中,使用签名可以在客户端确保数据的安全。签名是一种加密技术,用于确认数据是由应用程序生成并签名的,而不是由其他未知的第三方生成的。以下是在iOS和Android应用程序中使用签名的一些基本步骤:

      iOS应用程序:

      1. 在应用程序中,创建一个包含签名的字符串。
      2. 在签名字符串后面添加一个数字或字母。数字用于生成哈希值,字母用于生成公钥。
      3. 将生成的哈希值和公钥添加到签名字符串中。
      4. 将签名字符串发送到服务器进行签名。
      5. 返回服务器的签名字符串。

      Android应用程序:

      1. 在应用程序中,创建一个包含签名的字符串。
      2. 在签名字符串后面添加一个字母。字母用于生成私钥。
      3. 将生成的私钥添加到签名字符串中。
      4. 将签名字符串发送到服务器进行签名。
      5. 返回服务器的签名字符串。

      在服务器端,对签名字符串进行验证。如果签名字符串正确,服务器端将返回签名字符串。如果签名字符串不正确,服务器端将返回一个错误消息。

      在客户端,使用签名验证服务器端的签名。如果签名验证成功,客户端将验证服务器端的签名。如果签名验证失败,客户端将忽略服务器端的签名。

      需要注意的是,签名只是确保数据安全的一部分。为了完全保护数据安全,还需要采取其他措施,如数据加密、访问控制等。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部