java加解密-数字证书

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介:

一、概述

  1、我们了解了对称加密算法、非对称加密算法、数字签名算法应用,他们组合起来使用就是数字证书

  2、对称加密算法用来加解密数据,非对称加密算法常用来做密钥交换、数字签名算法主要用来验证数据的不可否认性

  3、数字证书:对于我们来说最常见的就是银行给我们提供的数字证书,以文件下载的方式保存,或者以u盾的方式保存

  4、数字证书其实就是我们非对称加密算法中存放了相关算法的公钥信息

二、模型分析

    我们要制造数字证书。可以用openssl和java的keytools来获得,openssl开源软件这个比keytools功能强大。

  1、keytools生成数字证书,并创建本地密钥库。

  2、数字证书(客户端)给客户,本地密钥库配合tomcat这些应用服务器使用。开放服务器的安全端口,用https访问服务器的时候,就是进行加密数据交互了。那些对称加密、非对称加密算法 都被隐藏在交互细节中了,对我们使用者来说是透明的

  3、客户将数字证书导入自己的浏览器,和tomcat进行数据传送。通过他们内部实现的协议进行数据加密传输,同时通过签名验证数据的真实性

 

三、实现方式

  1、证书的产生必须用openssl或者keytools来完成

  2、放到外部使用需要用tomcat的ssl/tls配置作为支持

  3、如果需要第三方发放签名证书,可以将证书的csr文件给第三方公正,常见的国际公正三巨头可以帮我们做这些。免费的第三方只有cacert了。电子商务常用的就是verisign这个付费的第三方证书发放机构。如果不用第三方,就是自签名的了。没啥法律效力

 

四、总结

 1、上述模型只是说了单向加密、如果需要双向加密实现方式相同。只不过需要创建客户端证书、服务器端证书等等...

 2、安全的终极装备就是安全协议。这个tomcat的ssl/tls配置是最好的体现

 3、常规的加解密或者数字证书,核心还是用rsa之类的非对称加密算法传递密钥,然后通过对称加密算法进行加密数据传输。用签名算法进行数据校验

目录
相关文章
|
8月前
|
算法 安全 Java
Java 实现 RSA 非对称加密算法-加解密和签名验签
Java 实现 RSA 非对称加密算法-加解密和签名验签
334 0
|
8月前
|
Java 数据安全/隐私保护
Java 中使用 OpenSSL 生成公钥私钥进行数据加解密
Java 中使用 OpenSSL 生成公钥私钥进行数据加解密
149 0
|
8月前
|
存储 算法 安全
java des加解密啊
【2月更文挑战第8天】
|
8月前
|
存储 安全 Java
【网络安全】网络防护之旅 - Java安全机制探秘与数字证书引爆网络防线
【网络安全】网络防护之旅 - Java安全机制探秘与数字证书引爆网络防线
101 1
|
Java Shell Maven
JAVA实现PGP/GPG加解密加验签
JAVA实现PGP/GPG加解密加验签
2480 0
|
算法 Java 数据安全/隐私保护
java密码学-数字证书(超详细)
消息摘要算法用于验证数据完整性服务,对称加密算法和非对称加密算法用于保证数据保密性服务,数字签名算法用于抗否认服务。 数字证书集合了多种密码学算法:自身带有公钥信息,可完成相应的加密/解密操作,同时,还带有数字签名,可鉴别消息来源;且自身带有消息摘要信息,可验证证书的完整性;由于证书本身含有用户身份信息,因而具有认证性。 数字证书有多种文件编码格式,主要包含CER编码(变长模式)、DER编码(定长模式)和PKCS系列等
235 0
|
存储 移动开发 前端开发
前后端RSA互相加解密、加签验签、密钥对生成(Java)
最近有一些安全性要求比较高的场景,我们提供API给第三方商户用于收单,其中有几个功能是绑卡、ATM/POS密码变更。
前后端RSA互相加解密、加签验签、密钥对生成(Java)
|
编解码 前端开发 算法
前端CryptoJS和Java后端数据互相加解密(AES)
最近刚好在做一个简单的保险代理人运营平台,主要是为了方便个人展业,由于有些客户数据比较敏感,所以在用户登录时准备对登录密码进行一波加密后再传输。
前端CryptoJS和Java后端数据互相加解密(AES)
|
算法 Java
java的DES和3DES加解密算法
java的DES和3DES加解密算法
|
算法 Java 数据安全/隐私保护
最新版-Python和Java实现Aes相互加解密
最新版-Python和Java实现Aes相互加解密
313 0

热门文章

最新文章