QT使用异或加密算法进行加密解密_F_hawk189_新浪博客

转载自:https://blog.csdn.net/imbegood/article/details/77771273
Xor.h:
#ifndef XOR_H
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  
#include "xor.h"

Xor::Xor(QObject *parent) : QObject(parent) {
}
Xor::~Xor() {
}
QString Xor::XorEncryptDecrypt(const QString &str, const char &key) {
 QString result;
 QByteArray bs = this->qstringToByte(str);
 int i;
 for(i=0; i i++) {
 bs[i] = bs[i] ^ key;
 }
result = byteToQString(bs);
 return result;
}
QString Xor::byteToQString(const QByteArray &byte) {
 QString result;
 if(byte.size() > 0) {
  QTextCodec *codec = QTextCodec::codecForName("utf-8");
   result = codec->toUnicode(byte);
 }
return result;
}
QByteArray Xor::qstringToByte(const QString &strInfo) {
 QByteArray result;
 if(strInfo.length() > 0) {
  QTextCodec *codec = QTextCodec::codecForName("utf-8");
  result = codec->fromUnicode(strInfo);
 }
return result;
}

主函数
QString str = QString("Hello World!");
QString
jiami = getXorEncryptDecrypt(str, 12);
qDebug
() << "str:" << str;
qDebug() << "Encrypto:" << jiami;
QString jiemi = getXorEncryptDecrypt(jiami, 12);
qDebug() << "Decrypto:" << jiemi;
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值