一般认为,较典型的面向对象语言有: simula 67,支持单继承和一定含义的多态和部分动态绑定; Smalltalk支持单继承、多态和动态绑定; EIFFEL,支持多继承、多态和动态绑定; C++,支持多继承、多态和部分动态绑定。 Java,支持单继承、多态和部分动态绑定。 五种语言涉及概念的含义虽然基本相同,但所用术语有别。 C#,也支持单继承,与Java和C++等有很多类似之处
区块链教程区块链背后的信息安全2DES、3DES加密算法原理一,2018年下半年,区块链行业正逐渐褪去发展之初的浮躁、回归理性,表面上看相关人才需求与身价似乎正在回落。但事实上,正是初期泡沫的渐退,让人们更多的关注点放在了区块链真正的技术之上。 # DES、3DES加密算法原理及其GO语言实现 DES加密算法,为对称加密算法中的一种。70年代初由IBM研发
1. 信息安全 1.1 CIA 原则 数据保密性(confidentiality)窃听加密(encrypt)数据完整性(integrity)篡改损坏数据可用性(availability)冗余故障转移RAID高可用集群 1.2 加密与解密 密码学 明文(plaintext)密文(ciphertext)加密(encrypt)解密(decrypt) 如果直接传输明文(比如 HTTP 协议)
上篇了解了《非对称加密》后 今天我来继续了解下加密技术中对称加密。 对称加密 对称加密是最传统的加密方式,比上非对称加密,缺少安全性,可是它依然是用的比較多的加密方法。 对称加密採用单密钥加密方式,不论是加密还是解密都是用同一个密钥,即“一把钥匙开一把锁”。 对称加密的优点在于操作简单、管理方便、速度快。它的缺点在于密钥在 网络传输中easy被窃听,每一个密钥仅仅能应用一次
异或加密是密码学中一种简单的加密算法,常作为更为复杂的加密算法的组成部分。 原理 异或运算:首先异或表示当两个数用二进制表示,进行异或运算时,当前位的两个二进制不同则为1相同则为0。 A ⊕ 0 = A A ⊕ A = 0 A ⊕ B ⊕ B = A 文本的每个字符可以通过与给定的密钥进行按位异或运算来加密。如果要解密,只需要将加密后的结果与密钥再次进行按位异或运算即可。 代码实践 golang
“非对称加密也叫公钥密码: 使用公钥加密, 使用私钥解密” 下面我们来看一看使用公钥密码的通信流程。假设Alice要给Bob发送一条消息,Alice是发送者,Bob是接收者,而窃听者Eve能够窃所到他们之间的通信内容。 在公非对称加密通信中,通信过程是由接收者Bob来启动的。 Bob生成一个包含公钥和私钥的密钥对。 私钥由Bob自行妥善保管。 Bob将自己的公钥发送给Alicea
在web项目中,无状态的token较为通用的是jwt。对他了解了一番之后,发现在普通的web应用中,似乎 也不是那么的好: jwt token 非常的长性能一般 个人认为除了无状态的优势以外,选择它的理由就是它业界通用,对于目前各种授权登录的方式有好处。 想了一圈,还是决定放弃他,自己实现一个自己的token。 我设计的token包含三部分内容: token创建的时间,放在最开头
在对称密码中,由于加密和解密的密钥是相同的,因此必须向接收者配送密钥。用于解密的密钥必须被配送给接收者,这一问题称为密钥配送问题。如果使用非对称加密也可以称为公钥密码,则无需向接收者配送用于解密的密钥,这样就解决了密钥配送问题。可以说非对称加密是密码学历史上最伟大的发明。 非对称加密中,密钥分为加密密钥和解密密钥两种。发送者用加密密钥对消息进行加密,接收者用解密密钥对密文进行解密
概念理解 cypto/des 模式 由于分组密码算法只能加密固定长度的分组,所以当加密的明文超过分组密码的长度时,就需要对分组密码算法进行迭代,而迭代的方法就称为分组密码的模式。模式主要有ECB(电子密码本)、CBC(密码分组链接模式)、CTR(计数器模式)、OFB(输出反馈模式)、CFB(密码反馈模式)五种。下面简单介绍下前两种: ECB(electronic code
var wg sync.WaitGroup func test(num int) { defer wg.Done() for i := 0; i <= 5; i++ { fmt.Printf("协程(%v)第%v条数据\n", num, i) } } func main() { for i := 1; i <= 5; i++ { wg.Add(1) go test(i) }