什么是密码哈希? [关闭]

2024-03-09

哈希密码是什么意思?


定义:
Hashing http://en.wikipedia.org/wiki/Hash_function是函数的应用f()到可变大小的输入以产生恒定大小的输出。

A => f() => X
B => f() => Y
C => f() => Z

哈希也是一种单向函数,这意味着没有函数可以反转或撤消哈希。以及重新应用哈希f(f(x))不会生产x again.

细节:

哈希函数可以像“将 13 添加到输入”一样简单,也可以像“将 13 添加到输入”一样复杂加密哈希 http://en.wikipedia.org/wiki/Cryptographic_hash_function例如MD5 http://en.wikipedia.org/wiki/MD5 or SHA1 http://en.wikipedia.org/wiki/SHA1。构成良好哈希函数的因素有很多,例如:

  • Low Cost http://en.wikipedia.org/wiki/Hash_function#Low_cost:易于计算
  • 确定性 http://en.wikipedia.org/wiki/Hash_function#Determinism:如果我对输入进行哈希处理a多次,我每次都会得到相同的输出
  • 均匀度 http://en.wikipedia.org/wiki/Hash_function#Uniformity:输入将均匀分布在可能的输出中。这符合所谓的鸽巢原理 http://en.wikipedia.org/wiki/Pigeonhole_principle。由于我们想要的输出数量有限f()将这些输出均匀地放置而不是放在同一个桶中。当两个输入计算出相同的输出时,这称为冲突。哈希函数产生较少的冲突是一件好事。

哈希应用于密码:

密码的散列与上述过程相同,但有一些特殊的注意事项。构成良好哈希函数的许多属性对于密码来说并没有什么好处。

举个例子决定论,因为当两个人使用相同的密码时,哈希会产生确定性结果,因此哈希在密码存储中看起来会相同。这是一件坏事!然而,这可以通过一种称为salt http://en.wikipedia.org/wiki/Salt_(cryptography).

均匀度另一方面是有益的,因为希望算法能够限制冲突。

因为哈希是One-Way意味着无法从输出确定输入,这就是散列对于密码非常有用的原因!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是密码哈希? [关闭] 的相关文章

  • 如何提高洪水填充例程的性能?

    我正在我的应用程序中实现四路洪水填充 伪代码如下 Flood fill node target color replacement color 1 If the color of node is not equal to target co
  • 如何检测图像是否像素化

    之前有人在 SO 上提出过这样的问题 在Python中检测像素化图像 https stackoverflow com questions 12942365 detecting a pixelated image in python还有关于q
  • 寻找局部最小值

    下面的代码正确地找到了数组的局部最大值 但未能找到局部最小值 我已经进行了网络搜索 以找到找到最小值的最佳方法 并且根据这些搜索 我认为我正在使用下面的正确方法 但是 在几天的时间里多次检查每一行之后 下面的代码中有一些我仍然没有看到的错误
  • 生成 2D 中的非简并点集 - C++

    我想在 2D 平面中创建一大组非退化的随机点云 整个集合中没有 3 个点在一条直线上 我有一个简单的解决方案 它生成一个随机浮点对 P new x y 并检查到目前为止生成的每对点 P1 P2 是否位于同一行 这需要 O n 2 检查添加到
  • 分组符号最大长度平衡子序列

    将 B 视为分组符号 和 的序列 如果 B 的长度为 0 或 B 具有以下形式之一 则称 B 为平衡序列 X Y 或 X Y 或 X Y 其中 X 和 Y 本身是平衡的 平衡示例 现在的问题是找到一种有效的算法来找到给定输入的最大长度平衡子
  • 根据哈希值确认文件内容

    我需要 检查完整性 content文件数量 文件将写入 CD DVD 可能会被复制多次 这个想法是识别正确复制的副本 在从 Nero 等中删除它们之后 我对此很陌生 但快速搜索表明Arrays hashCode byte http down
  • c# AudioFingerprinting 和局部敏感哈希

    我之前发现过类似的帖子 但没有真正回答这个问题 在我的指纹识别中 我生成了一个包含 5 个整数的记录集 例如 33 42 88 121 194 这些对应于特定音乐样本的最高幅度的频率 例如 对于 30ms 的音频样本 我有以下频率的桶 0
  • O(n^2) 与 O (n(logn)^2)

    时间复杂度是O n 2 or O n logn 2 better 我知道当我们简化它时 它就变成了 O n vs O logn 2 and logn lt n 但是关于logn 2 n is only less than log n 2 f
  • 合法管理员如何获取 Active Directory 中的用户密码?

    如果密码以可逆加密方式存储在 Active Directory 中 管理员 开发人员如何提取和解密该密码 具体来说 我指的是this http technet microsoft com en us library cc784581 WS
  • 对列表中的相邻元素进行分组

    假设我想编写一个函数来执行此操作 输入 1 1 3 3 4 2 2 5 6 6 输出 1 1 3 3 4 2 2 5 6 6 它将相同的相邻元素分组 这个方法的名称应该是什么 此操作有标准名称吗 In 1 1 3 3 4 2 2 5 6 6
  • 使用 stl sort 对表进行排序

    我有一个巨大的表 约 50Gb 格式为 i j k 来自稀疏矩阵 存储为 uint32 t idx1 idx2 float vals uint32 t tablesize 我想使用给定的比较函数 即 idx1 和 idx2 的函数 对其进行
  • NodeJS“加密”哈希似乎产生与 Crypto-JS javascript 库不同的输出

    我正在使用 NodeJS 的捆绑包crypto http nodejs org api crypto html crypto class hash服务器端 SHA256 哈希模块 在客户端 我使用一个名为的 javascript 库Cryp
  • 查找两个大小为 n 的数组中第 n 大数的算法

    我有这个问题 给定两个大小为 n 的排序列表 存储在数组中 找到 O log n 计算并集中第 n 大元素的算法 两个列表 我可以看到这里可能有一个技巧 因为它需要第 n 个最大的元素 并且数组的大小也是 n 但我不知道它是什么 我在想我可
  • 算法 - 树中所有节点的最大距离

    所以 找到树中两个节点之间的最长路径相当容易 但我想要的是找到从节点出发的最长路径x到树中的另一个节点 对于所有x 这个问题也可以用以下方式表达 计算从给定的树中可以生成的所有有根树的高度 One way of course is to j
  • 与 6 位随机字母数字代码发生冲突的概率是多少?

    我使用以下 Perl 代码生成随机字母数字字符串 仅限大写字母和数字 用作 MySQL 数据库中记录的唯一标识符 数据库的行数可能会保持在 1 000 000 行以下 但实际的绝对最大值约为 3 000 000 行 我是否有 2 条记录具有
  • n的渐近增长选择下限(n/2)

    如何找到 n select Floor n 2 的渐近增长 我试过 使用扩展并得到它等于 n n 1 floor n 2 1 n floor n 2 知道我该如何从那里去吗 感谢任何帮助 更喜欢提示而不是答案 我同意上面的答案 但想提供更多
  • 如何在大空间尺度上加速A*算法?

    From http ccl northwestern edu netlogo models community Astardemo http ccl northwestern edu netlogo models community Ast
  • RNG 技术的可移植性和可重复性

    我可以使用两种方法之一来创建一个伪随机数序列 该序列具有两个重要特征 1 它可以在不同的机器上重现 2 该序列永远不会重复范围内的数字 直到所有数字都被发出 我的问题是 这两种方法在可移植性 操作系统 Python 版本等 方面是否存在潜在
  • Haar级联正例图像大小调整

    我正在迈出第一步 为自定义对象识别创建 haar 级联 我花了时间获取大量数据并编写了一些预处理脚本以将视频转换为帧 我的下一步是裁剪感兴趣的对象 以创建一些积极的训练示例 我有几个问题 我确实在网上寻找答案 我有点困惑 我读到我应该致力于
  • 模式识别算法

    过去我必须开发一个充当规则评估器的程序 你有一个先行词和一些后续词 动作 所以如果先行词评估为真 则执行的动作 当时我用的是修改版RETE算法 http en wikipedia org wiki Rete algorithm RETE 有

随机推荐

  • 我可以使用 AJAX“POST”将数据发布到服务器上的 JSON 文件吗?

    我只想要最简单 最简单的方法 使用 POST 用户在我的服务器上输入的数据从 AJAX 表单获取数据 因此 如果用户在页面的输入表单中留下他们的姓名 则 AJAX POST 会将数据发送到我的服务器上的 JSON 文件中 这可能吗 这是获取
  • unixodbc 驱动程序管理器无法在安装时打开指定的库

    我正在使用 ArchLinux 并且正在尝试安装 OpenEdge 进度驱动程序 以便我可以通过 PHP 访问它 我已经安装了 unixodbc 软件包和驱动程序 但是当我通过 isql 或 PHP 测试连接时 出现相同的错误 isql 3
  • AngularJS ng-src 图像路径

    关于使用ng src为了显示图像 此代码在运行时起作用 但在初始页面加载时不起作用 div class imageHolder img div class caption Click to configure div div 在我的初始页面
  • Rest JAX-RS异常,未找到MessageBodyWriter

    我正在使用泽西岛2 13 当我尝试通过浏览器中的 url 访问资源时 出现 MessageBoddyWriter not found 异常 例外 MessageBodyWriter not found for media type appl
  • Julia:如何在宏中使用 kwargs...?

    说我想要 fn a b c sort true 扩展到 gn a b c sort true 目前 我将其写为 macro fn x args kwargs esc gn x args kwargs end 这似乎不起作用 我如何扩展kwa
  • 打开街道地图 (osmdroid) 在 PC 中显示灰色瓷砖而不是地图

    我正在使用 osmdroid 在我的应用程序中获取开放的街道地图 我已经使用所需的 jar osmdroid 构建了我的项目 并在清单中添加了所有需要的权限 但是当我尝试在 android 模拟器 adt eclipse 中调试我的应用程序
  • mysqli_select_db() 期望参数 1 为 mysqli,给定字符串

    我是 Mysqli 新手 收到以下错误 警告 mysqli select db 期望参数 1 为 mysqli 字符串 在 D Hosting 9864230 html includes connection php 第 11 行给出 警告
  • 使用 IMAGE_FILE_LARGE_ADDRESS_AWARE 32 位 - 64 位

    我昨天了解到在 DelphiXE 中使用编译器指令 SetPEFlags IMAGE FILE LARGE ADDRESS AWARE 即使 DelphiXE 编译器生成 32 位代码 您也可以在 64 位计算机上访问 使用 4GB 地址空
  • 在 netbeans 7.0.1 中找不到 web.xml

    我想将文件上传到服务器 为此我正在编写一个 servlet 程序 上传文档的目录位置应从 web xml 中的参数获取 我以前没有使用过 web xml 只知道它为每个 servlet 生成条目 我无法在我在 netbeans 中制作的 W
  • SQLite 插入或替换位置

    我有一个包含 3 列的表 ID 描述和键 其中 ID 不是主键 我想要的是插入或更新 替换当前记录 例子 解密密钥 ID 描述 密钥 999 生日 1988 年 12 月 24 日 我尝试了这个 但它不起作用 INSERT OR REPLA
  • 如何从 JavaPairRDD 中选择前 N 个元素? -阿帕奇火花

    我已经获得了一个键 值对 并将其排序到一个新的JavaPairRDD中 现在 我需要从中选择前 5 个元素 即获取一个新的 JavaPairRDD 其中包含前 5 个元素 我该怎么做呢 有没有比使用 flatMap 更简单的方法 因为它似乎
  • 一起识别长按和平移手势识别器

    我有一个视图 其中添加了平移和长按 UIGestureRecognizer 平移用于移动视图 我想做的是还要注意触摸已停止移动 同时保持活动状态 并触发长按 我发现平底锅开始后长按永远不会被触发 我尝试设置委托并实施 BOOL gestur
  • 回显到标准输出并附加到文件

    我有这个 echo all done creating tables gt gt SUMAN DEBUG LOG PATH 但这应该只附加到文件 而不是写入标准输出 如何写入 stdout 并附加到同一 bash 行中的文件 像这样的东西吗
  • 在R中打印小数逗号而不是小数点

    我正在用 R 进行统计分析 我需要将结果粘贴到用法语编写的报告中 在法语中 浮点数是使用小数逗号而不是小数点来书写的 手动用逗号替换点有点乏味 1 我如何让 R 打印所有浮点数并用逗号分隔整数和小数部分 非常感谢 rmuc8 非常快速有效地
  • 在 Lucene 中正确索引纬度和经度值

    我正在使用 Lucene API 开发 给定半径内基于 美国的最近城市搜索 功能 我在 Lucene 中索引城市的纬度和经度值 如下所示 doc Add new Field latitude paddedLatitude Field Sto
  • Leveled Compaction 策略如何确保 90% 的读取来自一个 sstable

    我试图理解如何分级压实策略在 Cassandra 中 保证 90 的读取都可以通过单个 sstable 得到满足 来自 DataStax 文档 新的 sstables 添加到第一级 L0 并立即与 L1 中的 sstables 进行压缩 当
  • 为什么编译器选择 bool 而不是 string 来进行 L"" 的隐式类型转换?

    最近引入了方法的重载 应用程序开始失败 最终追踪到它 新方法正在我意想不到的地方被调用 We had setValue const std wstring name const std wstring value std wstring a
  • 以编程方式在 R 中查找股票代码

    我有一个包含公司名称的数据字段 例如 company lt c Microsoft Apple Cloudera Ford gt company Company 1 Microsoft 2 Apple 3 Cloudera 4 Ford 等
  • java.io.FileNotFoundException: com/google/inject/internal/util/$Finalizer.class 在 android 应用程序的开头

    我正在开发 Android 倒计时应用程序 在应用程序中 您可以根据需要添加或删除任意数量的倒计时 所有倒计时都保存在 ArrayList 中 我不能将它们保存在数据库或共享首选项中 因为即使您离开应用程序 倒计时也必须继续运行 我使用 r
  • 什么是密码哈希? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 哈希密码是什么意思 定义 Hashing http en wikipedia org wiki Hash function是函数的应用f