HMAC的JAVA实现和应用
摘要:1、简介: HMACSHA1 是从SHA1 哈希函数构造的一种键控哈希算法,被用作 HMAC(基于哈希的消息验证代码)。 此 HMAC 进程将密钥与消息数据混合,使用哈希函数对混合结果进行哈希计算,将所得哈希值与该密钥混合,然后再次应用哈希函数。 输出的哈希值长度为 160 位。 在发送方和接收方共
阅读全文
BASE64、MD5、SHA、HMAC几种加密算法
摘要:本篇内容简要介绍BASE64、MD5、SHA、HMAC几种加密算法。 BASE64编码算法不算是真正的加密算法。 MD5、SHA、HMAC这三种加密算法,可谓是非可逆加密,就是不可解密的加密方法,我们称之为单向加密算法。我们通常只把他们作为加密的基础。单纯的以上三种的加密并不可靠。 BASE64 按
阅读全文
MD5 SHA1 HMAC HMAC_SHA1区别
摘要:什么是MD5,什么是SHA-1,让我们先来了解一些基本知识,了解hash。 Hash,一般翻译做“散列”,也有直接音译为”哈希”的,就是把任意长度的输入(又叫做预映射,pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输
阅读全文
java.security.MessageDigest (2) 生成安全令牌!
摘要:时候,我们需要产生一个数据,这个数据保存了用户的信息,但加密后仍然有可能被人使用,即便他人不确切的了解详细信息... 好比,我们在上网的时候,很多网页都会有一个信息,是否保存登录信息,以便下次可以直接登录而不必再次输入账户,密码等...而通常这样需要Cookie保存用户信息,当然,这个信息是加密信息
阅读全文
java.security.MessageDigest (1)
摘要:我们知道,编程中数据的传输,保存,为了考虑安全性的问题,需要将数据进行加密.我们拿数据库做例子.如果一个用户注册系统的数据库,没有对用户的信息进行保存,如,我去页面注册,输入"Vicky","123456".注册.web服务器未对数据进行加密而直接写入数据库,那么数据库中的用户信息,便是一个直接可用
阅读全文
解决https证书验证不通过的问题
摘要:1、报错信息 原因:在调用api.weibo.com的时候,我们使用的是https的方式,正常情况下应该是使用api.weibo.com的证书,但由于某些原因,我们只能使用自己的证书,导致在验证证书的时候,就报了这个错误。 解决的办法:忽略服务端和客户端的证书校验即可。java 提供的相关的类。 2
阅读全文
SSL/TLS
摘要:在前文中,我们通过实例了解了使用java加密的一些技术,它们各自具有一些优缺点,由于它们的一些局限性,在网络传输中,需要综合使用这些技术来保证高强度的传输安全性。本单元将讨论SSL/TLS,并用jdk中的JSSE(Java Secure Socket Extension)包编写一些简单实例,最后会用
阅读全文
openssl数字证书常见格式 协议
摘要:证书主要的文件类型和协议有: PEM、DER、PFX、JKS、KDB、CER、KEY、CSR、CRT、CRL 、OCSP、SCEP等。 PEM – Openssl使用 PEM(Privacy Enhanced Mail)格式来存放各种信息,它是 openssl 默认采用的信息存放方式。Openssl
阅读全文
SSL与TLS的区别以及介绍
摘要:SSL:(Secure Socket Layer,安全套接字层),位于可靠的面向连接的网络层协议和应用层协议之间的一种协议层。SSL通过互相认证、使用数字签名确保完整性、使用加密确保私密性,以实现客户端和服务器之间的安全通讯。该协议由两层组成:SSL记录协议和SSL握手协议。 TLS:(Transp
阅读全文
java.security
摘要:Java.security KeyStore PrivateKey Signature java.security.cert X509Certificate java.security.KeyStore 概述 public class KeyStore extends Object 此类表示密钥和证
阅读全文
PKCS 15 个标准
摘要:PKCS 全称是 Public-Key Cryptography Standards ,是由 RSA 实验室与其它安全系统开发商为促进公钥密码的发展而制订的一系列标准。 可以到官网上看看 What is PKCS PKCS 目前共发布过 15 个标准:(1)PKCS#1:RSA加密标准。PKCS#1
阅读全文
openssl生成RSA公钥和私钥对
摘要:在ubuntu上要使用openssl的话需要先进行安装,命令如下: sudo apt-get install openssl 安装完成就可以使用openssl了。 首先需要进入openssl的交互界面,在命令行了输入openssl即可; 1)生成RSA私钥: genrsa -out rsa_priv
阅读全文
rsa 公钥 私钥
摘要:如果用于加密解密,那就是用公钥加密私钥解密(仅你可读但别人不可读,任何人都可写)如果用于证书验证,那就是用私钥加密公钥解密(仅你可写但别人不可写,任何人都可读) 最后,RSA的公钥、私钥是互相对应的。RSA会生成两个密钥,你可以把任何一个用于公钥,然后另一个就是你必须保护好的私钥了。 如果用于加密解
阅读全文
Java RSA 生成公钥 私钥
摘要:目前为止,RSA是应用最多的公钥加密算法,能够抵抗已知的绝大多数密码攻击,已被ISO推荐为公钥数据加密标准。 RSA算法中,每个通信主体都有两个钥匙,一个公钥(Public Key)用来对数据进行加密; 一个私钥(Private Key)用来对数据进行解密。 下面来看下Java中是如何使用KeyPa
阅读全文
Java对称与非对称加密解密,AES与RSA
摘要:加密技术可以分为对称与非对称两种. 对称加密,解密,即加密与解密用的是同一把秘钥,常用的对称加密技术有DES,AES等 而非对称技术,加密与解密用的是不同的秘钥,常用的非对称加密技术有RSA等 为什么要有非对称加密,解密技术呢 假设这样一种场景A要发送一段消息给B,但是又不想以明文发送,所以就需要对
阅读全文
DES_3DES_AES_IDES_RSA密码算法比较
摘要:对称加密算法(也叫共享密钥) 类型 定义:发送接收使用相同的对称密钥 密钥 长度 分组长度 循环次数 安全性 DES 数据加密标准,速度较快,适用于加密大量数据的场合; 56 64 16 依赖密钥受穷举搜索法攻击 3DES 是基于DES的对称算法,对一块数据用三个不同的密钥进行三次加密,强度更高;
阅读全文
数字证书原理 二
摘要:1、基础知识 这部分内容主要解释一些概念和术语,最好是先理解这部分内容。 1.1、公钥密码体制(public-key cryptography) 公钥密码体制分为三个部分,公钥、私钥、加密解密算法,它的加密解密过程如下: 加密:通过加密算法和公钥对内容(或者说明文)进行加密,得到密文。加密过程需要用
阅读全文
数字证书原理 一
摘要:作者:三一斜狩链接:https://www.zhihu.com/question/24294477/answer/74783418来源:知乎著作权归作者所有,转载请联系作者获得授权。 先说加密。明文P,加上密码W一混淆之后,变成密文M如果不知道W,则无法从M反推回P。也就是无法进行解密。类似这种加密
阅读全文