将唯一的 ID 号加密为唯一的数字固定长度表示形式

问题描述 投票:0回答:1

我有一个预订系统,每个订单都有自己的 id(postgres 自动递增 int)。
用户付款后,我想以 10 或 13 长度数字的形式向客户发送订单号。

我想做的是使用记录 ID 的唯一性,以确保生成唯一的数字表示形式。为此,我假设我需要像 Feistel 这样的密码机制。

例如:

db id  |  order number (for client)
---------------------------------
  1    |   4627208375
  2    |   9563725223

我考虑过使用 Feistel 密码来实现此目的,但不知道以这种方式实现它是否可能或明智。
我需要用 Java 或 Kotlin 来实现它。

java kotlin encryption unique probability
1个回答
0
投票

为什么不能使用连续数字?每次只加1吗?每次都会是独一无二的。

订单号:000000001、000000002、...

© www.soinside.com 2019 - 2024. All rights reserved.