相关疑难解决方法(0)

byte []到十六进制字符串

如何将a转换byte[]string?我每次尝试都会得到

System.Byte []

而不是价值.

另外,我如何获得十六进制而不是十进制的值?

c# string hex

313
推荐指数
11
解决办法
47万
查看次数

"双重哈希"密码是否比仅仅哈希一次更安全?

在存储之前对密码进行两次哈希处理的安全性是否比仅仅哈希一次更安全?

我在说什么是这样做的:

$hashed_password = hash(hash($plaintext_password));
Run Code Online (Sandbox Code Playgroud)

而不仅仅是这个:

$hashed_password = hash($plaintext_password);
Run Code Online (Sandbox Code Playgroud)

如果它不太安全,你能提供一个很好的解释(或链接到一个)吗?

此外,使用的哈希函数是否有所作为?如果混合使用md5和sha1(例如)而不是重复相同的散列函数,它会有什么不同吗?

注1:当我说"双重哈希"时,我正在谈论两次哈希密码以试图使其更加模糊.我不是在谈论解决碰撞技术.

注2:我知道我需要添加一个随机盐来真正使其安全.问题是使用相同算法进行两次散列是否有助于或损害散列.

security passwords hash cryptography password-hash

287
推荐指数
5
解决办法
7万
查看次数

MD5产生碰撞之前有多少随机元素?

我在Amazon S3上有一个图像库.对于每个图像,我md5我的服务器上的源URL加上一个时间戳来获取唯一的文件名.由于S3不能有子目录,我需要将所有这些图像存储在一个平面文件夹中.

我是否需要担心产生的MD5哈希值中的冲突?

额外奖励:在我开始看到MD5产生的哈希值发生冲突之前,我可以拥有多少个文件?

random hash md5

155
推荐指数
6
解决办法
7万
查看次数

bcrypt的.net实现

有谁知道bcrypt的一个很好的实现,我知道这个问题之前已被问过,但它得到的答案很少.我有点不确定只是选择在谷歌中出现的实现,并且我认为我最好在System.Security.Cryptography命名空间中使用sha256,至少我知道它是支持的!你有什么想法?

.net bcrypt bcrypt.net

114
推荐指数
4
解决办法
2万
查看次数

生成v5 UUID.什么是名称和名称空间?

我读过的man页面,但我不已了解了namenamespace是.

对于版本3和版本5 UUID,必须提供附加命令行参数命名空间和名称.命名空间是字符串表示形式的UUID或内部预定义命名空间UUID的标识符(当前已知为"ns:DNS","ns:URL","ns:OID"和"ns:X500").名称是一个任意长度的字符串.

命名空间:

命名空间是字符串表示形式的UUID或

这是否意味着我需要将它(UUID v4)存储在与生成的UUID v5相关的某个地方?在任何一种情况下,为什么这不是自动完成的?

名称是一个任意长度的字符串.

name完全随机的字符串?它的目的是什么呢?可以从UUID v5解码吗?

uuid

101
推荐指数
3
解决办法
6万
查看次数

有一个温和的哈希函数教程吗?

令人尴尬的是,选择哈希函数(例如,对于散列字符串或整数集等)对我来说仍然是神奇的:在这里取一些素数,在那里使用魔法常量,做一些移位,模数和完成.

有关于创建哈希函数的漂亮,温和且平易近人的教程吗?

language-agnostic hash function

29
推荐指数
1
解决办法
1万
查看次数

安全密码哈希

我需要在.Net WinForms应用程序中存储单个密码的哈希值.

什么是最安全的方法?

特别是:

  • 盐,HMAC,还是两者兼而有之?
  • 盐多少钱?
  • 多少次迭代?
  • 什么编码?(密码是纯ASCII)

我假设算法应该是SHA512或HMACSHA512.

.net security passwords hash

17
推荐指数
3
解决办法
7580
查看次数

MD5的安全性是否低于SHA等.人.在实际意义上?

我在SO上看到 一些 问题答案,表明MD5不像SHA这样安全.

我的问题是,这在我的情况下值得担心吗?

这是我如何使用它的一个例子:

  1. 在客户端,我通过附加当前时间和密码然后使用MD5对其进行散列来为消息提供"安全"校验和.所以:MD5(message+time+password).
  2. 在服务器端,我正在使用我发送的时间和客户端密码的知识来检查此哈希.

在这个例子中,我真的更喜欢使用SHA而不是MD5吗?

在什么情况下,散列函数的选择在实际意义上真的很重要?

编辑:

只是为了澄清一下 - 在我的例子中,移植到SHA算法有什么好处吗?

换句话说,在这个例子中,有人在不知道共享密码的情况下发送消息和正确的哈希是否可行?

更多编辑:

为重复编辑道歉 - 我不清楚我在问什么.

security hash md5 sha

9
推荐指数
4
解决办法
1万
查看次数

加密哈希值是否提供了真正独特的结果?

我想知道md5,sha1和anothers是否返回了唯一值.

例如,sha1()对于test返回a94a8fe5ccb19ba61c4c0873d391e987982fbbd3,长度为40个字符.因此,对于大于40个字符的字符串,sha1必须相同(当然它是乱码的,因为给定的输入可能包含空格和特殊字符等).

因此,当我们存储用户的密码时,他们可以输入他们的原始密码或一些超级密码,这是没有人知道的.

这是正确的,还是这些哈希算法提供了真正独特的结果 - 我很确定它几乎不可能.

algorithm hash

8
推荐指数
2
解决办法
1074
查看次数

确定文件标识的算法(优化)

继这个问题:用于确定文件身份的算法

回顾:我正在寻找一种用于确定文件标识的廉价算法,该算法在绝大多数情况下都有效.

我继续实施了一个算法,它为每个文件提供了" 非常独特 "的哈希值.

我的算法的工作方式是:

  • 对于小于特定阈值的文件,我使用标识哈希的完整文件内容.

  • 对于大于阈值的文件,我采用X大小的随机N个样本.

  • 我在散列数据中包含了文件大小.(意味着所有具有不同大小的文件会导致不同的哈希值)

问题:

  • 我应该为N和X选择什么值(我应该选择多少随机样本的大小?)我选择了4个样本,每个样本8K,并且无法算法算法.我发现增加样本量会迅速降低算法的速度(导致搜索非常昂贵)

  • 数学一:我的文件需要多少才能让这个算法爆炸.(2个具有相同长度的不同文件最终具有相同的哈希值)

  • 优化之一:有没有什么方法可以优化我的具体实现来提高吞吐量(我似乎能够在我的系统上每秒做大约100个文件).

  • 这个实现看起来是否合理?你能想到任何真实世界的例子吗?(我的重点是媒体文件)

相关信息:

我实现的算法

谢谢你的帮助!

c# optimization identity

6
推荐指数
1
解决办法
1540
查看次数