//单个字符异或运算
ENCRYPTDLL_API char MakecodeChar(char c, int key)
{return c = c^key;
}//单个字符解密
ENCRYPTDLL_API char CutcodeChar(char c, int key)
{return c^key;
}//加密
ENCRYPTDLL_API void Makecode(char *pstr, int *pkey)
{int len = strlen(pstr);//获取长度for (int i = 0; i<len; i++)*(pstr + i) = MakecodeChar(*(pstr + i), pkey[i % 5]);
}//解密void Cutecode(char *pstr, int *pkey)
{int len = strlen(pstr);for (int i = 0; i<len; i++)*(pstr + i) = CutcodeChar(*(pstr + i), pkey[i % 5]);
}//加密string Makecode(string &str, int *pkey)
{size_t bufSize = ((str.length()) + 1);char* p = new char[bufSize];memset(p, 0, bufSize);memcpy_s(p, bufSize, str.c_str(), str.length());Makecode(p, pkey);//加密string strResult = string(p);delete p;return strResult;
}//解密string Cutecode(string &str, int *pkey)
{size_t bufSize = ((str.length()) + 1);char* p = new char[bufSize];memset(p, 0, bufSize);memcpy_s(p, bufSize, str.c_str(), str.length());Cutecode(p, pkey);//加密string strResult = string(p);delete p;return strResult;
}int main()
{int key[] = { 1,2,3,4,5 };//加密字符string str = "新华社北京8月15日电(中国证券报记者倪铭娅)国家统计局新闻发言人付凌晖8月14日表示,总的来看,7月国民经济继续稳定恢复。从全年来看,保持经济稳定增长有很多有利条件。\分析人士认为,下阶段消费、投资等主要经济指标有望继续改善,经济复苏将更多地依赖需求回升。宏观政策有望协调发力,重点是扩内需。(小标题)需求恢复提速  付凌晖表示,7月经济运行情况可以概括为两个特点:一是经济稳定恢复,二是向好态势持续。";cout << "加密前:" << str.c_str() << endl;string jmResult = Makecode(str, key);//加密cout << "加密后:" << jmResult.c_str() << endl;string mResult = Cutecode(jmResult, key);//解密cout << "解密后:" << mResult.c_str() << endl;char c;cin >> c;return 0;}

对文本简单加密解密算法相关推荐

  1. 简单的加密/解密算法_/c++

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/qq_36557960/article/details/79299093 关于加密和解密问题,有的加密 ...

  2. 异或加密的java算法_Java使用异或运算实现简单的加密解密算法实例代码

    Java简单的加密解密算法,使用异或运算 实例1: package cn.std.util; import java.nio.charset.Charset; public class DeEnCod ...

  3. Java简单实现DES加密解密算法

    Java简单实现DES加密解密算法 文章目录 Java简单实现DES加密解密算法 DES算法介绍 实现相关java类 代码实现 DES算法介绍 DEC加密算法属于对称加密,即利用指定的密钥,按照密码的 ...

  4. 凯撒密码(Caesar)加密解密算法C/C++实现

    任成风 2018年5月20日星期日 博客首发地址:个人博客网站 http://fairycity.wang,内容以个人博客为主,修正后的博文见个人博客,请点击访问. 本文的框架: 摘要和关键字: 1. ...

  5. 凯撒(Caesar)加密解密算法C/C++实现

    任成风 2018年5月20日星期日 博客首发地址:个人博客网站 http://fairycity.wang,内容以个人博客为主,修正后的博文见个人博客,请点击访问. 本文的框架: 摘要和关键字: 1. ...

  6. RSA、MD5加密解密算法全套解析安装教程

    第一部分介绍加密解密算法, 第二部分介绍我小组成功应用的RSA.MD5两种加密解密算法,以及心得体会. 1.加密解密算法介绍 应用的开发中安全很重要,所以信息加密技术显得尤为重要.我们需要对应用中的多 ...

  7. 基于新唐M0的XXTEA加密解密算法源码

    源:基于新唐M0的XXTEA加密解密算法源码 /*--------------------------------------------------------------------------- ...

  8. DES加密解密算法Java实现

    DES 使用一个 56 位的密钥以及附加的 8 位奇偶校验位,产生最大 64 位的分组大小.这是一个迭代的分组密码,使用称为 Feistel 的技术,其中将加密的文本块分成两半.使用子密钥对其中一半应 ...

  9. 异或(XOR)运算加密/解密算法

    本文将介绍一个简单易用的加密/解密算法:使用异或(XOR)运算.本算法原理简单,旨在使读者对信息的加密/解密有一个更加直观的印象. XOR算法原理 从加密的主要方法看,换位法过于简单,特别是对于数据量 ...

  10. 国密SM9算法C++实现之七:加密解密算法

    SM9算法C++实现系列目录: 基于JPBC的SM9算法的java实现与测试 国密SM9算法C++实现之0:源码下载地址 国密SM9算法C++实现之一:算法简介 国密SM9算法C++实现之二:测试工具 ...

最新文章

  1. Go 学习笔记(30)— Go 语言 make 和 new 的区别
  2. logsoftmax(dim=1)是对批量样本中的每个样本取概率,而不是针对每个特征
  3. LINUX :标准c库
  4. solr源码分析之数据导入DataImporter追溯。
  5. C++ Ouput Exactly 2 Digits After Decimal Point 小数点后保留三位数字
  6. Build 2016: 发布明天的云创新来服务今天的开发者
  7. c语言万年历附加功能,万年历(c语言,多功能).doc
  8. pat 乙级 1056 组合数的和(C++)
  9. Docker安装Redis以及配置Redis环境
  10. 【LeetCode】剑指 Offer 58 - I. 翻转单词顺序
  11. VLD(Visual LeakDetector)内存泄露工具的使用
  12. Mac工具PullTube如何在下载列表中创建重复项
  13. win10局域网文件服务器,win10 局域网文件共享
  14. 基于MATLAB车牌识别算法实现 GUI界面
  15. cups支持的打印机列表_使用CUPS打印管理器管理打印机
  16. Axure8实现最常见的左侧动态导航
  17. Delayed Adversarial Training with Non-Sequential Adversarial Epochs
  18. Java中set.iterator()的用法;
  19. Java是剑客-飘逸;.NET是刀客-霸道 (二)
  20. 导航条样式代码【代码库】

热门文章

  1. 计算机考研 外部排序,2021考研408数据结构基础知识点:外部排序
  2. 计算机网络调试套什么定额,第一章计算机网络系统设备安装工程定额.docx
  3. Ubuntu系统安装教程
  4. DatePicker 设置最小日期是当前时间报错:java.lang.IllegalArgumentException: fromDate:xxx does not preced toDate: xx
  5. C4D怎么将模型保存为预设?如何自定义预置库,如何修改别人的预置库?
  6. 674138《JavaScript框架设计(第2版)》_司徒正美
  7. Java数据结构与算法4-树学习笔记
  8. Linux切换jdk版本
  9. 汽车方向盘转角传感器
  10. 学习电商美工设计毕业以后可以干什么