网站金币兑换码如何设计才简洁且安全?

现在有个需求是,用户输入活动中拿到的代金券码,可以在网站中领到相应数额的金币。
代金券码的设计中,要求不能绑定用户,也就是说后台先生成一批代金券码,再发放给用户使用,用户只要拿到了这个码就能兑换成网站金币。
这个码如何设计才能安全?

阅读 2.8k
4 个回答

将id对称加密,秘钥存在服务端环境。客户端不知道秘钥也无法解密,对于客户端来说,拿到加密后的id,仅仅只是一个标志而已。

代金券码,一定不要有规律,可以使用 hashid 算法来生成. 鉴于 hashid 计算方法是可逆的,你可以直接用代金券码的自增 id 来 hashid 出最终的券码来.

用md5或者uuid之类的都行吧

最简单的,6位随机字符+分隔符+自增id
例如:2A36D9-100

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题