如何在C#中生成SHA256加密字符串?

时间:2016-07-27 18:08:02

标签: c# sha256

对于项目,我需要在C#中生成SHA256加密字符串。 要求是关键:今天日期和价值:" exampleString"。

我怎样才能在C#中意识到这一点?据我所知,SHA256-Class不包含C#中键的属性。

3 个答案:

答案 0 :(得分:3)

SHA256不是加密算法,而是hash algorithm。换句话说,它是一个单向函数,其作用是获取任意长度的输入并产生固定长度的输出,其中低冲突对于相同的输入始终是相同的。因此,它没有接收密钥作为输入,因为散列的性质与加密的性质完全不同。

如果您想使用密钥加密某些内容,然后使用相同的密钥对其进行解密,请查看AES之类的对称加密(例如,使用the AesManaged class)。

答案 1 :(得分:1)

你应该做自己的功课。如果我们为你做,你什么都不学。

另外,正如Theodoros所提到的,SHA256是哈希,而不是加密。哈希是一种加密校验和,用于验证或比较数据。它不能反转为原始明文,这是加密的要求。

  

我怎样才能在C#中意识到这一点?据我所知,SHA256-Class不包含C#中键的属性。

你或给你作业的人都不明白被问到的是什么。

SHA256没有密钥或值,只有数据进入并且散列出来。无论你运行多少数据,哈希的大小都不会改变,尽管它的价值确实如此。您可以将哈希视为特定数据集的指纹。

答案 2 :(得分:-1)

也许是这样的:

NgChanges