【问题标题】:How to encrypt id using eloquent orm and slim如何使用 eloquent orm 和 slim 加密 id
【发布时间】:2018-03-22 09:40:07
【问题描述】:

谁能解释如何使用 eloquent 加密 id。现在我正在使用第三方库来加密和解密 id。我想知道如何在 slim 中使用 eloquent orm 加密和解密 id。

【问题讨论】:

  • id是你表中的主键吗?
  • @JonasStaudenmeir 我有主键和外键。我希望在获取或传递时为那些加密
  • 为什么要加密它们?
  • 出于安全目的
  • 你能提供更多细节吗?你的 ids 是整数吗?

标签: eloquent slim-2


【解决方案1】:

加密 id 是一个糟糕的主意。它不提供任何安全性并且不利于性能。

加密仅适用于敏感数据(例如信用卡号)。 ID 只是唯一标识符,不包含任何敏感信息(或者至少不应该包含)。如果您需要私有 URL 的标识符,请生成一个随机令牌并将其存储在单独的列中。

用 Laravel 加密一个整数会给你一个大约 190 个字符的字符串。您不应将其用作主键/外键。

由于 Laravel 的加密器使用CBC Mode,因此每次加密相同的值都会得到不同的结果。因此,您不能使用Model::find($id) 从数据库中检索条目。您必须获取并解密所有 id 才能找到正确的。

【讨论】:

    猜你喜欢
    • 2016-02-04
    • 1970-01-01
    • 2019-03-31
    • 1970-01-01
    • 2017-07-21
    • 2016-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多