RC4加密详解编程语言

现代计算机的出现改变了通信手段,同时提升了加密的安全性。同时也出现了很多新的,更安全的加密算法

流加密,加密和解密双方使用相同伪随机加密数据流作为密钥,明文数据每次与密钥数据流顺次对应加密,得到密文数据流。这里用一串 0,1 的数据流作为密钥,通过异或运算进行加密,根据异或运算的性质:a XOR b = c,c XOR a = b,解密时使用相同的密钥对密文进行异或运算就能得到明文。

 下面是go语言的实现版本,这里用了go语言内置的包

 1 package main 
 2  
 3 import ( 
 4     "crypto/rc4" 
 5     "fmt" 
 6 ) 
 7  
 8 func main() { 
 9     key := []byte("key") 
10     key1, _ := rc4.NewCipher(key) 
11     str := []byte("sss") 
12     ans := make([]byte, len(str)) 
13     key1.XORKeyStream(ans, str) 
14     strRet := fmt.Sprintf("%x/n", ans) 
15     fmt.Print(strRet) 
16     //fmt.Print("ss") 
17 }

在官方文档中有一句话 RC4 is in common use but has design weaknesses that make it a poor choice for new protocols.

也就是RC4已经被发现漏洞了,不在安全了。

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/20744.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论