golang rc4加密算法的使用

前端之家收集整理的这篇文章主要介绍了golang rc4加密算法的使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

package rc4

import "crypto/rc4"

rc4包实现了RC4加密算法,参见Bruce Schneier's Applied Cryptography。

Index

  • type Cipher @H_403_12@
  • func NewCipher(key []byte) (*Cipher,error)
  • func (c *Cipher) Reset()
  • func (c *Cipher) XORKeyStream(dst,src []byte)

  • 具体适应实例
  •      var key []byte = []byte("fd6cde7c2f4913f22297c948dd530c84") //初始化用于加密的KEY 
         rc4obj1, _:=rc4.NewCipher(key) //返回 Cipher
  •      rc4str1[]byte("xiaowangnidayede")  //需要加密的字符串
  • plaintextmake([],128)">len(rc4str1)) //
  •      rc4obj1.XORKeyStream(plaintext, rc4str1)
  •        //XORKeyStream方法将src的数据与秘钥生成的伪随机位流取XOR并写入dst。dst和src可指向同一内存地址;但如果指向不同则其底层内存                不可重叠
  •      plaintext就是你加密的返回过来的结果了,注意:plaintext则为 base-16 编码的字符串,每个字节使用 2 个字符表示 必须格式化成字符串
  •         
         stringinf1 := fmt.Sprintf("%x\n", plaintext) //转换字符串
     fmt.Println(stringinf1)
  • 输出结果:
    6785a51c1495096438bde8408ce051af
    注意:上面的 rc4str1也可以代替 plaintext直接传进去,rc4str1的值就会变化,变成加密后的
                              base-16 编码的字符串的byte数组,则直接格式化一下就行了

    猜你在找的Go相关文章