加密安全随机数 - Crypto.getRandomValues
利用浏览器Crypto API生成密码学安全的随机字节序列及对应的整数和十六进制。
UD5工具箱
布隆过滤器(Bloom Filter)是一种空间效率极高的概率性数据结构,由Burton Howard Bloom于1970年提出。它用于判断一个元素"一定不存在"或"可能存在"于一个集合中。
核心特点:
布隆过滤器使用一个长度为m的位数组(初始全为0)和k个独立的哈希函数:
💡 本工具可视化展示了这一完整过程,您可以亲自体验!
假阳性是指布隆过滤器判断一个元素"可能存在",但实际上该元素并未被添加过的情况。
为什么会发生?当多个已添加元素恰好覆盖了某个未添加元素的所有哈希位置时,就会出现假阳性。位数组越满,假阳性概率越高。
假阳性率估算公式:ε ≈ (1 - e-k·n/m)k
其中:m=位数组大小,k=哈希函数数量,n=已添加元素数量
🔍 在本工具中尝试"查找假阳性案例"功能来直观体验!
参数选择取决于预期的元素数量(n)和可接受的假阳性率(ε):
举例:预计存储1000个元素,期望假阳性率1%:
💡 在本工具中调整滑块可以直观感受不同参数的影响!
标准布隆过滤器不支持删除操作。原因很简单:
多个元素可能共享同一个位。如果将某个位从1改回0,可能会影响其他也映射到该位置的元素,导致假阴性(这是布隆过滤器不允许的)。
解决方案:
| 特性 | 布隆过滤器 | 哈希表 |
|---|---|---|
| 空间占用 | 极小(固定大小) | 较大(随元素增长) |
| 准确性 | 概率性(可能假阳性) | 确定性(100%准确) |
| 存储元素 | 不存储元素本身 | 存储完整元素 |
| 删除操作 | 不支持 | 支持 |
| 查询速度 | O(k),k为哈希函数数 | O(1)平均 |
| 适用场景 | 大规模去重、预过滤 | 精确存储和查询 |
布隆过滤器常作为哈希表的"守门员",先用布隆过滤器快速排除不存在的元素,减少对哈希表(或数据库)的访问。
理论假阳性率(假设哈希函数均匀分布):
ε = (1 - (1 - 1/m)k·n)k ≈ (1 - e-k·n/m)k
其中:
实际假阳性率 = 已设置位数/m(即填充比例)的k次方 ≈ (填充比例)k
本工具实时计算并展示估计假阳性率,添加元素即可观察变化!
布隆过滤器的空间效率令人惊叹:
每个元素实际只占用约9.6位(约1.2字节),而非存储完整元素所需的数十到数百字节。
这使得布隆过滤器成为大规模数据处理中不可或缺的工具。
这些案例证明了布隆过滤器在工业级应用中的巨大价值。
利用浏览器Crypto API生成密码学安全的随机字节序列及对应的整数和十六进制。
分解查询参数,高亮可能存在的SQL注入或XSS模式,辅助安全审查。
从内置库随机选取主流浏览器的User-Agent字符串,一键复制用于请求头。
输入字符串并使用 URL.canParse() 判断是否为有效 URL,不抛出异常。
粘贴Shadow DOM代码,直观预览封装组件内部的CSS作用域及其对外界的影响。
定义脱敏规则(如手机号中间4位星号,邮箱部分隐藏),对 JSON 或 CSV 数据执行批量掩码。
从任意分布中抽取样本并绘制均值分布直方图,随着样本量增大趋近正态分布。
输入Base32密钥手动生成6位动态验证码,兼容Google Authenticator,前端算法实现不联网。
输入长链接,生成一个伴随随机短码的完整离线URL(可自定义域名前缀)。
编写正则表达式并指定替换模式(如 '$1-$2'),实时查看文本替换结果,支持命名捕获组。
输入花名或关键词(如“爱”),查找对应花语含义和适用场合。
模拟接收包含一次性密码的短信,展示 navigator.credentials.get({otp}) 如何自动提取 OTP 并填入表单。
以节点图展示链表的插入、删除、反转等操作,直观理解指针变化。
设置目标日期,生成一个精巧的倒计时代码片段,可嵌入任何网页。
随机将行业、技术和目标用户拼接,生成充满槽点的奇葩创业点子,仅供娱乐。
选择表A和表B的样本数据,查看INNER/LEFT/RIGHT/FULL JOIN的韦恩图与实际输出结果。
选择肤质与目标,生成早间晚间护肤步骤,并记录完成情况。
为输入框生成常见格式掩码(如电话、日期、信用卡),输出JS实现代码,规范用户输入。
输入用户名和密码,生成用于基本认证的.htpasswd加密条目。
在 Favicon 上叠加未读消息数量的数字角标,生成相应 JS 代码。
提供每段应该写什么的提示,辅助填写个性化的求职信内容。
输入草坪面积和肥料氮磷钾比例,推荐施肥用量。
对JavaScript代码进行变量重命名、字符串加密等混淆处理,增加阅读难度,保护客户端逻辑。
选择多张图片和一个Logo图,批量将Logo放在角落并调整透明度,并下载打包。
录入亲友生日(支持农历),按日期远近排列并显示倒计天数。
将文本中的手机号、身份证、邮箱等敏感信息中间部分替换为星号,适应演示或日志。
多功能百分比计算工具,计算数值的百分比、增减百分比、占比等常见场景。
生成符合BIP39标准的12或24个英文助记词,前端安全随机,仅供学习。
生成临时密钥对,演示非对称加解密短消息的过程。
输入包含隐私信息的文本,一键将手机号、身份证等部分遮盖。