加密的一种思路:

1.  客户端有个初始key,这个key先加密(异或)4个字节内容,生成4个字节的密文

2.  根据4个字节的密文,算法产生新key2, 使用key2解密下一段 4个字节的内容, 以此类推

对应的解密:

1. 服务器本身知道初始key

2. 服务器先根据4个字节的密文,使用客户端相同的算法产生key2

3. 使用key 解密第一段4个字节

4.以此类推, 使用key2解密第二段密文

#include <stdio.h> #define  WORD     unsigned short
#define  DWORD   unsigned intDWORD  g_dwPacketKey = 666;WORD   SeedRandMap(WORD wSeed)
{DWORD dwHold = wSeed;return (WORD)((dwHold = dwHold * 244403L + 2543301L) >> 16);
} int main()
{//原文unsigned char data[8] = { 1,2,3,4,5,6,7,8};//加密一段内容{DWORD * pdw = (DWORD *)data;WORD  *  pSe = (WORD *)data;DWORD  Key = 111; //初始秘钥for (int i = 0; i < 2; i++){//加密四个字节*pdw++ ^= Key;//根据前面四个字节密文 生成新Key2DWORD   Key2 

一种加密,解密的思路相关推荐

  1. PHP的几种加密解密算法

    PHP的几种加密解密算法 一.开发环境 1.Windows+Apache+MySQL+PHP的环境. 2.文本编辑器:Sublime. 二.主要技术 PHP 三.实验内容与结果 本文主要介绍PHP的几 ...

  2. 【H5】两种加密解密方法:

    [H5]两种加密解码方法: encodeURI(): //加密 decodeURI(); //解密 加密成base64编码格式 btoa() 加密 atob() 解密 实现代码如下: <!DOC ...

  3. html前端的几种加密/解密方式

    一.base64加密 前端用base64加密和解密的使用方法,只需要两个函数就可以了.一个是加密:window.btoa(),一个是解密:window.atob(),看例子: var str = &q ...

  4. HTML七种加密解密

    本文一共介绍了七种方法: 一:最简单的加密解密 二:转义字符""的妙用 三:使用Microsoft出品的脚本编码器Script Encoder来进行编码     (自创简单解码) ...

  5. JS七种加密解密方法

    HTML或JS加密解密 本文一共介绍了七种方法:   一:最简单的加密解密   二:转义字符"\"的妙用   三:使用Microsoft出品的脚本编码器Script Encoder ...

  6. 用java实现4种加密解密算法(包括:换位加密解密、替换加密解密、位加密解密、一次一密)

    案例1: 换位加密解密算法 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamR ...

  7. 13种加密与解密算法【一】

    这15种加密解密算法分别是:散列哈希[MD5.SHA1.CRC32],对称[DES,3DES(TDEA.Triple DES),AES.,Blowfish,RC4.RC5,IDEA],Base64.R ...

  8. 加密解密五种算法的实现

    1.  实验目的 通过五种加密解密算法的分析与设计,用高级语言实现加密解密过程.通过实验过程理解系统中加密解密的基本思想和实现方法. 2.  实验基本原理与方法 ①单字母替换加密方法--恺撒密码 加密 ...

  9. Cocos2d-x 资源加密解密实践总结

    本文乃Siliphen原创,转载请注明出处:http://blog.csdn.net/stevenkylelee 本文针对的是cocos2d-x 3.4 版本进行研究. 做加密解密的思路 加密解密算法 ...

  10. java变短加密解密算法_java----加密/解密常用算法

    一.常用的加密/解密算法 1.Base64 严格来说,Base64不是一种加密/解密算法,而是一种编码方式,多用于解决中文乱码中. 常用场景:对文件.URL等进行Base64编码,以字符串方式发送给对 ...

最新文章

  1. LeetCode简单题之旅行终点站
  2. 修改git的远程仓库命令
  3. html项目_学完html+css就可以做的前端项目实战
  4. CSS常用菜单(三)
  5. 基于插件化的企业级开发平台JXADF(开源)
  6. 怎么把rmd改成html,在Rmd中的htmlTable - 转换为Word docx
  7. CodeForces 689B Mike and Shortcuts (bfs or 最短路)
  8. mac命令行ftp操作
  9. MOSN 多协议扩展开发实践
  10. Spring JSR-250 注释
  11. 最实用的18个HTML5 API 教程大全,都在这里了
  12. 递归 尾递归_递归,递归,递归
  13. 苹果应用审核走进中国!
  14. Ubuntu18.04 Azure Kinect ROS Driver配置
  15. marlab中主成分得分怎么求_羡慕神仙权重?主成分与因子分析带你揭开权重的秘密...
  16. Win10预览版之BUG
  17. 如何让阿三 Windows 10、11 的恢复分区(Recovery Partition)恢复到 “盖茨” 模式
  18. java 脚本怎么写_编写java的运行脚本
  19. 低版本内核编译奇怪错误
  20. 【爬虫Practice2】爬取豆瓣高分电影

热门文章

  1. Hot Water Pipe
  2. 利用Java Swing技术设计一个Email邮箱地址注册的图形用户界面应用程序
  3. html绘制三维坐标系,使用html5绘制三维线框图
  4. 【STM32H7】第4章 ThreadX FileX文件系统移植到STM32H7(SD卡)
  5. 宝宝为什么经常拉肚子?
  6. 网站SEO优化的一些知识分享
  7. auto install pkgs
  8. Linux下的截图工具 —— Flameshot
  9. 计算机专业前端实习生的实习经历
  10. oracle 中的pi,Oracle中实现圆周率计算(一)