收藏
回答

后端如何判断是自家小程序请求,而不是被反编译后盗版小程序?

现在即使代码混淆了, 被别人反编译获取源码慢慢研究还是有被破解的机率

有些核心数据你们是如何加密, 在源码被泄露的情况下,不接云应用的情况下, 你们是如何保护一些核心算法/字段,如密钥等等?

  1. 原生是否提供一些api, 用来验证是不是跑在自己的appid下面?或者说提供api获取应用一些特殊并唯一密钥的字段, 这样我可以作为加密密钥, 源码里面核心内容是加密后的字符,启动后,获取应用特征来作为密钥来解密后再使用
  2. 是否可以通过wx.login 获取到code , 拉起后端,密钥只有自家的后端有。如果是被人反编译后的源码,去调用wx.login 获取的code 访问我们后端,密钥对不上是不是就可以判断出来是不是我们的小程序?
回答关注问题邀请回答
收藏

4 个回答

  • showms
    showms
    07-04

    一般是前端wx.login之后用code到后端去换一个token,一段时间后token失效,这样就可以了,加解密的东西不要放在前端

    07-04
    有用
    回复
  • hello world
    hello world
    07-04

    第二点理论上都应该已经做了吧,就可以完全避免这个了

    07-04
    有用
    回复
  • 0
    0
    07-04
    const accountInfo = wx.getAccountInfoSync();
    console.log(accountInfo.miniProgram.appId) // 小程序 appId
    

    https://developers.weixin.qq.com/miniprogram/dev/api/open-api/account-info/wx.getAccountInfoSync.html

    07-04
    有用
    回复 2
    • 0
      0
      07-04
      拿appId放header头里面,后端校验是否是自己的小程序
      07-04
      回复
    • Itlowly
      Itlowly
      07-04回复0
      appId很容易能获到的(反编译),别人也可以模拟
      07-04
      回复
  • 拾忆
    拾忆
    07-04

    试试这个吧:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.checkSession.html

    07-04
    有用
    回复 1
    • Itlowly
      Itlowly
      07-04
      问题的第二点我们目前在试,理论上是可以,把核心算法,密钥放自己云,通过code返回自身后端的token, 这样盗版小程序是无法获取到我们云端token的
      07-04
      回复
登录 后发表内容