问题描述
请从公钥、私钥、数字证书的角度,银行向客户发送数据的时候,银行使用什么加密,客户如何解密,密钥都存储在哪里?密钥分别是什么介质形式存在的?客户向用户发送数据的时候呢?多谢!还有那个公钥的概念没搞明白,即用户的公钥是什么,怎么传送到银行服务器上去的?银行的公钥又是什么存储载体,怎么下推并保存到用户本地机器的?
解决方案
解决方案二:
数字证书中包含了公钥,把公钥与用户身份信息封装一起,由CA签发后成为数字证书;银行向客户发送数据的时候,银行使用会话密钥加密数据,然后再使用证书中的公钥加密会话密钥;用户收到数据后,先使用证书公钥对应的私钥解密会话密钥,再使用会话密钥解密出数据。证书一般是由CA签发出来,证书、公钥、私钥一般是存放在IC卡或者USBKey中,也有放在文件证书中。银行的后台一般会有一个证书签发机构(CA),用户申请证书时,会在自己的USBKey中生成密钥对,通过证书请求PKCS#10的方式,把用户信息与公钥发给CA,CA签发证书给用户。用户把自己的证书传给银行,证书中包含了用户的身份信息;银行的公钥与私钥存放在密码机中;银行的证书,以根证书的方式安装到用户的计算机中(如常见的CFCA证书链)。
解决方案三:
楼主你想做什么?
解决方案四:
引用1楼boise的回复:
数字证书中包含了公钥,把公钥与用户身份信息封装一起,由CA签发后成为数字证书;银行向客户发送数据的时候,银行使用会话密钥加密数据,然后再使用证书中的公钥加密会话密钥;用户收到数据后,先使用证书公钥对应的私钥解密会话密钥,再使用会话密钥解密出数据。证书一般是由CA签发出来,证书、公钥、私钥一般是存放在IC卡或者USBKey中,也有放在文件证书中。银行的后台一般会有一个证书签发机构(CA),用户申请证书时,会在自己的USBKey中生成密钥对,通过证书请求PKCS#10的方式,把用户信息与公钥发给CA,CA签发证书给用户。用户把自己的证书传给银行,证书中包含了用户的身份信息;银行的公钥与私钥存放在密码机中;银行的证书,以根证书的方式安装到用户的计算机中(如常见的CFCA证书链)。
简单讲,公钥是锁,私钥是钥匙。证书是存锁(钥匙)和身份的东西。证书被放在USBKey里交给用户,用户就保有了锁,钥匙和自己的身份标识。银行存有用户的锁,要向用户发东西的时候,都用户的锁加密东西,再发送给用户。一般先发送对称会话密钥,后期都用会话密钥加密数据(换一个快锁)。
解决方案五:
引用1楼boise的回复:
数字证书中包含了公钥,把公钥与用户身份信息封装一起,由CA签发后成为数字证书;银行向客户发送数据的时候,银行使用会话密钥加密数据,然后再使用证书中的公钥加密会话密钥;用户收到数据后,先使用证书公钥对应的私钥解密会话密钥,再使用会话密钥解密出数据。证书一般是由CA签发出来,证书、公钥、私钥一般是存放在IC卡或者USBKey中,也有放在文件证书中。银行的后台一般会有一个证书签发机构(CA),用户申请证书时,会在自己的USBKey中生成密钥对,通过证书请求PKCS#10的方式,把用户信息与公钥发给CA,CA签发证书给用户。用户把自己的证书传给银行,证书中包含了用户的身份信息;银行的公钥与私钥存放在密码机中;银行的证书,以根证书的方式安装到用户的计算机中(如常见的CFCA证书链)。
能不能讲下,私钥在本地怎样存储才能安全?存在文件系统中怎样确保安全?
解决方案六:
这里的私钥是存储在usbkey当中,usbkey中有cpu,数据传进来在usb中进行加解密usbkey中的私钥无法从电脑上读取
解决方案七:
私钥一般是放在加密机芯片上的,加密机有个主密钥,要加密私钥的。主密钥任何时候都看不到,主密钥以多个分量的形式保存在多张ic卡上面的,银行几个人每个人保管一张IC卡,每张IC卡都有密码。几个人同时在场的时候各自输入各自持有IC卡的密码可以把住密钥合成到加密机里面。