![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
信息安全
文章平均质量分 93
醉引花眠
没有什么可说的!~
展开
-
密码技术系列文章
在本系列中有以下文章:密码技术学习(1)-初识密码 密码技术学习(2)–密码技术概述 密码技术学习(3)- Java的加密体系 密码技术学习(4.1)-散列函数 密码技术学习(4.2)- 散列函数(消息摘要函数)在Java中的使用 密码技术学习(5.1)-对称加密技术简介 密码技术学习(5.2)-对称加密在Java中的使用 密码技术学习(6.1)-非对称加密技术简介 密码技术学...原创 2018-08-18 19:57:43 · 987 阅读 · 0 评论 -
密码技术学习(6.1)-非对称加密技术简介
目录非对称加密模型常见的非对称加密技术参考书籍和文章本系列其他文章非对称加密模型非对称加密算法需要两个密钥来进行加密和解密,这两个秘钥是公开密钥(public key,简称公钥)和私有密钥(private key,简称私钥)。百度百科非对称加密模型,可以类比为意见箱。公钥可以理解为意见箱,私钥可以理解为意见箱的钥匙,每个人都可以往意见箱中放入信息,但是只有意见箱...原创 2018-08-20 11:49:08 · 454 阅读 · 0 评论 -
密码技术学习(6.2.3)-非对称加密在Java中的使用-ElGamal算法
文章目录ElGamal算法ElGamalCoderElGamalCoderTest参考资料本系列其他文章ElGamal算法ElGamal算法,是一种较为常见的加密算法,它是基于1985年提出的公钥密码体制和椭圆曲线加密体系。百度百科就像之前说的,ElGamal算法也是基于数学难题,不过ElGamal是基于离散对数。它跟RSA算法一样,既能应用于数据加密也能应用于...原创 2018-08-23 10:18:55 · 343 阅读 · 0 评论 -
密码技术学习(6.2.1)-非对称加密在Java中的使用-DH(密钥交换算法)
文章目录DH(密钥交换算法)DHCoder工具类DHTester参考资料本系列其他文章之前介绍了对称加密在Java中使用,现在我们来介绍如何在Java中使用非对称加密。之前的文章中介绍过非对称加密的相关信息,如有疑问可以去阅读之前的相关文章。DH(密钥交换算法)在这里首先介绍一种算法DH(全称Diffie-Hellman,即密钥交换协议/算法),它是由Whit...原创 2018-08-21 09:18:14 · 441 阅读 · 0 评论 -
密码技术学习(7.1)-数字签名简介
文章目录数字签名简介常用的算法参考资料本系列其他文章数字签名简介数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。百度百科数字签名它必须具备 5 个特性。 (1)签名是可信的。 (2)签名是不可伪造的。 (3)签名...原创 2018-08-24 14:47:02 · 793 阅读 · 0 评论 -
密码技术学习(6.3)-对称和非对称加密的对比
文章目录对称加密和非对称加密对比参考书籍和文章本系列其他文章对称加密和非对称加密对比对比 对称加密 非对称加密 算法是否公开 公开 公开 计算量 小 大 加密速度 快 时间长 加密效率 快 速度慢 密钥传输 必须有安全的信道传输密钥 公钥是公开的,私钥保存,不要同步密钥 密钥数量 ...原创 2018-08-24 15:02:56 · 497 阅读 · 0 评论 -
密码技术学习(7.2)-在Java中的使用数字签名算法
文章目录RSA(经典数字签名算法)RSASignCoderRSASignCoderTestDSA(数字签名标准算法)DSACoderDSACoderTestECDSA(椭圆曲线数字签名算法)ECDSACoderECDSACoderTest参考资料本系列其他文章RSA(经典数字签名算法)RSA数字签名算法主要可分为MD系列和SHA系列两大类。MD系...原创 2018-08-24 21:36:46 · 427 阅读 · 0 评论 -
密码技术学习(8.3)-OpenSSL介绍
什么是OpenSSLOpenSSL的使用什么是OpenSSL在之前的文章中我们介绍了JDK自带的keytool工具,现在我来介绍另一个证书管理工具,它就是OpenSSL。 OpenSSL 是一个安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。百度百科OpenSSL的基本用法使用O...原创 2018-09-01 11:04:56 · 689 阅读 · 0 评论 -
密码技术学习(8.4)-在Java中使用证书
准备测试数据测试代码准备测试数据1)准备密钥keytool -genkey -keystore "shaozuo.keystore" -alias shaozuoKey -keyalg RSA -validity 365 -dname "CN=shaozuo, OU=shaozuo, O=shaozuo, L=Beijing, ST=Beijing, C=CN&a原创 2018-09-01 11:50:33 · 318 阅读 · 0 评论 -
密码技术学习(5.2)-对称加密在Java中的使用
文章目录对称加密在Java中的使用DESAES参考文章本系列其他文章对称加密在Java中的使用在之前的文章中,我们已经将要介绍了对称加密(后期链接到前面的文章),现在我们将了解Java对于对称加密的支持。DES我们先介绍Java中DES的使用DESCoder 工具类import java.security.GeneralSecurityExceptio...原创 2018-08-19 23:35:03 · 307 阅读 · 0 评论 -
密码技术学习(8.2)-Java Keytool 介绍
目录keytool 的基本用法1)产生一个密钥对(公钥和私钥)2)生成一个秘密密钥(对称密钥)3)keystore信息的查看4)PKCS12存储格式7)导出证书8)导入证书9)删除证书10)修改keystore密码11)修改证书的密码12)修改证书的别名参考资料本系列其他文章keytool 是个密钥和证书管理工具keytool 是个密钥...原创 2018-08-26 11:04:09 · 652 阅读 · 0 评论 -
密码技术学习(1)-初识密码
文章目录什么是密码为什么要使用密码技术参考书籍和文章本系列其他文章什么是密码不同于我们正常说的登录电脑、网站(CSDN、天猫淘宝)等时输入的“密码”,这里说的密码其实是一整套的体系,是对信息的处理,涉及到信息的机密性、完整性、认证等多个方面。而之前的所谓的“密码”,其实是一种登录口令,所以本文中将这一类信息都统称为口令。密码是一种用来混淆的技术,使用者希望将正常的(可...原创 2018-08-18 19:55:09 · 677 阅读 · 0 评论 -
密码技术学习(2)–密码技术概述
文章目录加密和解密密码技术的分类加密算法和密钥有什么区别?为什么不要使用自制加密算法?理论上无法破解的密码算法参考书籍和文章本系列其他文章加密和解密加密通俗的讲,就是将信息转换成另外一种形式,达到其他人即使获得了加密后的数据,他也看不懂。加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息...原创 2018-08-18 19:59:49 · 2011 阅读 · 0 评论 -
密码技术学习(3)-Java加密体系
目录Java的安全组成Java Provider体系参考书籍和文章本系列其他文章Java的安全组成我的主编程语言是Java,所以我用Java语言来学习这些加密技术。我们先来介绍几个概念JCA (Java Cryptography Architecture)它提供了基础的加密框架,包括”Provider”架构以及一系列Api,比如证书、数字签名、消息摘要、密钥生成器等...原创 2018-08-18 20:04:28 · 806 阅读 · 0 评论 -
密码技术学习(4.1)-消息摘要算法(散列函数)简介
目录消息摘要算法使用举例常见消息摘要算法参考书籍和文章本系列其他文章消息摘要算法散列函数,又称消息摘要函数、哈希函数、杂凑函数或单向函数。 它的主要作用不是用于加密与解密,而是用于验证信息的完整性。使用散列函数,为信息创建“数字指纹”,用于鉴别信息的身份。消息摘要算法也是数字签名的基础。主要特性信息的长度不受限制 对于给定的信息,计算散列值是很容易的 如果...原创 2018-08-18 20:12:56 · 1328 阅读 · 0 评论 -
密码技术学习(4.2)- 消息摘要函数(散列函数)在Java中的使用
文章目录MD算法家族MD5TestSHA算法家族SHACoderSHACoderTestMAC算法家族MACCoderMACCoderTest关于本章内容,参考了一下书籍和文章本系列其他文章MD算法家族MD家族有很多算法,今天我们只认识一下MD5算法。MD5算法最终会产生一个128位(16字节)的散列值。MD5Testimport stat...原创 2018-08-18 20:16:25 · 387 阅读 · 0 评论 -
密码技术学习(5.1)-对称加密技术简介
目录对称加密通信模型简单类比优势需要解决的问题常见的对称加密技术参考书籍和文章本系列其他文章对称加密通信模型对称加密,加密和解密使用同一套密钥。采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。百度百科简单类比对称加密的模型我们可以简单的理解为具有一个锁眼的盒子模型。通信双方拥有同一把...原创 2018-08-18 21:14:01 · 701 阅读 · 0 评论 -
密码技术学习(6.2.2)-非对称加密在Java中的使用-RSA(典型非对称加密算法)
文章目录RSA(典型非对称加密算法)RSACoder工具类RSACoderTest参考资料本系列其他文章RSA(典型非对称加密算法)之前介绍了DH算法,现在我们来介绍RSA算法。在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然解密密钥SK是由公开密钥PK决定的,由于无法计...原创 2018-08-22 11:20:47 · 339 阅读 · 0 评论 -
密码技术学习(8.1)-数字证书简介
文章目录什么是数字证书证书结构CA中心数字证书的签发数字证书的格式参考资料其他本系列其他文章什么是数字证书数字证书,类似于日常生活中使用的身份证,用于标识网络中计算机的身份。 数字证书可以说是多种密码算法的集大成者:自身带有公钥信息,可完成加密解密操作; 带有数字签名,可鉴别消息来源; 具有消息摘要算法,可验证证书的完整性; 本身含有用户身份信息...原创 2018-08-26 10:40:00 · 1090 阅读 · 0 评论 -
密码技术学习(9)-邮件传输算法(Base64)
什么是Base64算法Base64算法的应用Java中使用Base64算法什么是Base64算法 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法.百度百科在早期,Base64编码算法主要是为了解决电子邮件传送问题。在某些很古老的邮件服务器只支持ASCII码字符,对于非ASCII码字符可能...原创 2018-09-01 15:05:37 · 619 阅读 · 0 评论