当前位置: 代码迷 >> .NET Framework >> 关与RSA公钥 私钥 一级 SHA的一些疑惑,该如何解决
  详细解决方案

关与RSA公钥 私钥 一级 SHA的一些疑惑,该如何解决

热度:251   发布时间:2016-05-02 00:31:33.0
关与RSA公钥 私钥 一级 SHA的一些疑惑
我先说我的理解

SHA可以对文件活字符串进行计算求出 散列值 似MD5加密一样, RSA做数字签名的时候对这个刚刚求出的 散列值进行加密(公钥加密)。

现在开始提问了:
1 公钥和私钥都是系统生成的吗?可以自己去定义吗?
2 公钥加密后只有私钥可以解密这个对吗?
3 私钥加密 公钥可以解密吗?
4 公钥和私钥怎么区分呢。是想对的吗?
5 在做数字签名的时候 ,是怎么个过程。是先加密还是先技术散列值。给个相关的流程。
6 暂时就这几个问题 每题 5分(穷呀)

------解决方案--------------------
1、公钥和私钥不是系统生成的,有专门的生成工具依照给定的密钥生成算法生成公钥和私钥。公钥和私钥是有一定联系的,一般你不太可能自己去定义私钥和公钥。当把私钥和公钥保存到文件中时,目前有专门的文件格式。

2、公钥加密后只有私钥可以解密。

3 私钥加密公钥也可以解密

4、公钥和私钥是相对的,一般需要公开的称为公钥,需要自己秘密保存的称为私钥

5、做数字签名的时候是先做散列值,一般是128bit,然后对得到的128bit散列值用私钥进行加密得到数字签名。
先散列再加密的原因是一般源数据比较大,先加密需要耗费大量的时间,而对128bit的数据加密一般不会需要很长时间。

回答完毕记得给分
  相关解决方案