bnlt 最近的时间轴更新
bnlt

bnlt

V2EX 第 37445 号会员,加入于 2013-04-12 17:19:45 +08:00
今日活跃度排名 23215
bnlt 最近回复了
2020-12-18 11:55:27 +08:00
回复了 stone000 创建的主题 程序员 [求助] 怎么随机产生不重复的 18 位序列类似 MD5
雪花算法和 UUID 主要目的是让 ID 在服务器之间也不重复,但是看上去并没有那么随机,人类能从中找出一些规律知道 ID 之间的关系,比如雪花算法前面部分会暴露出两个 ID 之间的先后顺序关系。当然 UUID 也有 UUID v4 整串都是随机生成的,不会被看出规律
2020-12-18 11:33:32 +08:00
回复了 stone000 创建的主题 程序员 [求助] 怎么随机产生不重复的 18 位序列类似 MD5
找到我用的算法的名字了:费斯妥密码
https://zh.wikipedia.org/wiki/%E8%B4%B9%E6%96%AF%E5%A6%A5%E5%AF%86%E7%A0%81
这个算法没有限制加密块的长度,所以你可以产生任意位数的结果,算法可逆保证不会重复,不需要补随机数或截取(随机数和截取理论上还是会导致重复),复合一定条件时,超过 4 轮可以实现强伪随机
2020-12-18 10:34:31 +08:00
回复了 stone000 创建的主题 程序员 [求助] 怎么随机产生不重复的 18 位序列类似 MD5
CREATE OR REPLACE FUNCTION public.hexid(p integer)
RETURNS text
LANGUAGE plcoffee
AS $function$
b = 15

f = (r, k) ->
((r * k) + 51735) & ((1 << b) - 1)

fc = (n, ks) ->
l = n >> b
r = n & ((1 << b) - 1)

for k in ks
t = l
l = r
r = t ^ f(r, k)

(l << b) + r

r = fc(p, [24358, 25934, 52897, 8057])

return ('00000000' + r.toString(16)).slice(-8)
$function$

我找回代码了,但还是不知道里面的算法是什么🥺
入参是 1 2 3 4 这样用数据序列自增产生的,返回值看上去就是随机数,但实际是加密算法算出来,由于加密算法可逆,所以保证了产生的值不会重复。
2020-12-18 08:54:10 +08:00
回复了 stone000 创建的主题 程序员 [求助] 怎么随机产生不重复的 18 位序列类似 MD5
先用自增生成 0001 0002 这样的序列,然后用可逆对称加密算法对其加密,每次都会得到一个看似随机,而且不会重复的值。

类似功能我很早之前写过一个,用来在 PostgreSQL 里面实现类似题主的需求,数据库已经没了,代码有一份放在 runjs 上,今天想去看看,结果网站也已经关了……

当时用的加密算法的名字忘了,但实现很简单,大概 10 行代码左右,秘钥长度和明文长度一样,照着维基百科上面对那个算法的说明写出来的,大致过程是循环替换。

有谁知道是什么加密算法吗,也帮我回忆回忆
2020-12-12 21:57:23 +08:00
回复了 yanqiyu 创建的主题 Linux CentOS 项目开发重点将转向 CentOS Stream
@salmon5 应该是到 2024 年,full RHEL support phase 指的应该是表格里的 Full support ends,这样就和 https://wiki.centos.org/FAQ/CentOSStream 这里能对上,RHEL 9 发布后大约一年。
RHEL 9 Beta 开始,CentOS Stream 就会同时有两个源可以用,用户自己选 8 或 9 Beta,RHEL 9 发布一年后 8 的源就取消了。
我还没升级也是这样的,而且一直是这样,休眠的盒盖就会激活外接显示器。所以我就一直开着盖,或者盖上再用鼠标点休眠
2020-09-03 15:26:27 +08:00
回复了 whenov 创建的主题 macOS 发现一个调节 macOS 充电量阈值的小工具(bclm)
@NeoChen 可能苹果故意设置的?我也差不多,同是 2020 13 寸 Pro,循环 35,健康 89,降低上限让电池不会真的充满
2019-09-26 16:44:54 +08:00
回复了 zjuster 创建的主题 iOS iOS13 暴露了多少偷用蓝牙权限的 App?
微信公众号 jsapi 有接口和周边的 ibeacon 设备交互,那个功能要用蓝牙
2019-06-20 08:45:42 +08:00
回复了 ytterbium 创建的主题 问与答 询问几部小时候的动画片
@mv0x 莱萨魔,莱萨魔,天要掉下来了!
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3495 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 14ms · UTC 11:41 · PVG 19:41 · LAX 03:41 · JFK 06:41
Developed with CodeLauncher
♥ Do have faith in what you're doing.