RC4加密算法在C++中的实现(转)

在一些场合,常需要用到一些简单的加密算法,这里的RC4就可以说是最简单的一种。只要设置一个足够强的密码,就可以适用于一些非常简单的场合了。我是用来加密HTTP传送的数据的。

RC4函数(加密/解密)    其实,RC4只有加密,将密文再加密一次,就是解密了。

GetKey函数   随机字符串产生器,呵呵,为了方便,大多数加密算法都有一个随机密码产生器,我也就附带一个了。

ByteToHex函数   把字节码转为十六进制码,一个字节两个十六进制。研究发现,十六进制字符串非常适合在HTTP中传输,Base64中的某些字符会造成转义,挺麻烦的。

HexToByte函数   把十六进制字符串,转为字节码。服务器也按照十六进制字符串的形式把数据传回来,这里就可以解码啦。同时,使用十六进制字符串传输,避开了传输过程中多国语言的问题。

Encrypt函数    把字符串经RC4加密后,再把密文转为十六进制字符串返回,可直接用于传输。

Decrypt函数    直接密码十六进制字符串密文,再解密,返回字符串明文。

 

源码如下:

Encrypt.h文件:

以下是代码片段:

#ifndef _ENCRYPT_

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值