other

X.509 数字证书介绍

X.509 数字证书结构图 简单来说,数字证书就是一张附带了数字签名的信息表。 下图或许可以帮助对本文的理解。 互联网中常见的信息窃取方式 假设客户端「C」想和互联网另一端的服务器「S」进行无保密通信,且客户端「C」没有部署任何服务器身份验证机制。 假冒服务器 假冒的服务器「fake_S」冒充「S」,直接与「C」进行通信。 如果「C」打算将密码之类的敏感信息传递到「S」,那么敏感信息就会被「fake_S」截获。 这时候「

  • 凯文
13 min read
other

常用的加密算法

概述 对称加密算法 非对称加密算法 散列算法 详述 对称加密算法 DES 应该是最早的现代密码学算法之一。它由美国政府提出,密钥长度为 56 位。目前,它暴力破解 56 位密码的时间,已经能控制在 24 小时内了。 DES 实际上是一个过时的密码学算法,目前已经不推荐使用了。关于 DES,还有一点特别有意思。DES 包含一个关键模块:S 盒,其设计的原理一直没有公开。因此,很多人都相信,这个

  • 凯文
5 min read
other

乐观锁与悲观锁

悲观锁 悲观锁是指在用读取锁锁定一块代码的时候,另一个读取锁依然可以进入该代码块,而写锁不可以进入.在用写锁锁定一段代码的时候,读锁和写锁都不能进入该代码块. 乐观锁 乐观锁其实就是写锁优先机制,读锁在锁定某一代码块的时候,如果没有写锁竞争,那么就会获得该锁的权限,如果进行锁定的时候发现有写锁正在竞争,那么就会抛出例外,需要重新操作进行锁定.竞争标志则是 long stamp = lock.tryOptimisticRead();//有竞争返回0 lock.validate(stamp);//有竞争返回true 悲观锁示例 package Test; import java.util.concurrent.locks.ReadWriteLock;

  • 凯文
3 min read