瞎玩 - 字符串加密解密
来源:互联网 发布:网络优化工程师 怎么样 编辑:程序博客网 时间:2024/04/28 00:29
今天有位群里的兄弟想给自己的程序员女朋友表白,但是不知道怎么样弄?于是起哄的同学们就提出字符串加密,然后给她密文和方法,让妹子自己来解密!
下面是自己百无聊赖做的一个扯咸蛋的方法,供大家瞎玩。由于ASCII只能到127,超出之后就会显示一些类似于中文的乱码,我想妹子看到肯定会讨厌,所以大伙在改动的时候注意了,可惜俺还是单身啊!……>>_<<……
#include <stdio.h>#include <stdlib.h>#include <string.h>#define MAXLEN 256#define _DEBUG_#ifdef _DEBUG_#define DBG(fmt, args) fprintf(stdout,"DBG: "fmt, ## args)#else#define DBG(fmt, args) #endif#define ERR(fmt, args) fprintf(stderr,"ERR: "fmt, ## args)void exchage(char *src, int len, int mode){ int i=0; char ch; switch(mode) { case 0: for(i=0;i<len/2;i++) { ch = src[i]; src[i] = src[len-1-i]; src[len-1-i] = ch; } break; case 1: for(i=0;i<len-1;i+=2) { ch = src[i]; src[i] = src[i+1]; src[i+1] = ch; } break; default: break; }}int main(int argc, char* argv[]){ int i=0,j=0; char s[MAXLEN]={0}; char *src = NULL; char *cipher=NULL; char ch = 0; while(1) { if(ch == '1') { printf("encode string:"); fflush(stdin); memset(s,0,MAXLEN); /* 最后的换行符0x0a一起接收进来算在len中 */ fgets(s,MAXLEN,stdin); int len = strlen(s)-1; src = (char *)malloc((len+1)*sizeof(char)); cipher = (char *)malloc((len+1)*sizeof(char)); strncpy(src,s,len); src[len] = '\0'; i=0; while(src[i]) { cipher[i] = src[i]+i; i++; } cipher[len] = '\0'; exchage(cipher,len,1); exchage(cipher,len,0); printf("%s\n",cipher); free(src); } else if(ch == '2') { printf("decode string:"); fflush(stdin); memset(s,0,MAXLEN); fgets(s,MAXLEN,stdin); int len = strlen(s)-1; src = (char *)malloc((len+1)*sizeof(char)); cipher = (char *)malloc((len+1)*sizeof(char)); strncpy(src,s,len); src[len] = '\0'; exchage(src,len,0); exchage(src,len,1); i=0; while(src[i]) { cipher[i] = src[i]-i; i++; } cipher[len] = '\0'; printf("%s\n",cipher); free(src); } else if(ch == '3') break; printf("\n1:encode 2:decode 3:exit\nInput: "); ch = getchar(); } free(cipher); printf("GameOver!\n"); return 0;}
代码太简单,就不解释了,看一下测试结果:
0 0
- 瞎玩 - 字符串加密解密
- 加密解密字符串
- 字符串加密解密函数
- 字符串加密解密
- .net字符串加密解密
- JavaScript字符串加密解密
- 字符串加密解密类
- 字符串加密解密函数
- 字符串 密码加密解密
- js字符串加密解密
- 字符串加密解密
- 字符串加密解密技术
- Delphi字符串加密解密
- C# 字符串加密 解密
- 字符串加密解密类
- 字符串加密解密
- UCHome字符串加密,解密
- 字符串加密解密
- vb.net 操作Access数据库帮助类
- nodejs 安装 express 遇到的问题及解决方法
- Java线程(一):线程安全与不安全
- 专访李林锋:我与Netty那些不得不说的事
- google protocol buffer的原理和使用(一)
- 瞎玩 - 字符串加密解密
- Java线程(二):线程同步synchronized和volatile
- 关于hibernate4用mysql问题
- 进度条实例
- Scala 基础语法
- 如何切换eclipse中svn用户
- JSVM中配置文件介绍以及如何配出各种可分级
- PHP框架
- Socket原理与编程基础 Windows平台