c语言 字符串加密和解密算法实现
#include <stdio.h>
#include <string.h>
#define KEY 5 //偏移量/** 加密和解密字符串* 加密规则:字符串每个字符加上其在字符串中的位置再加上偏移量5成为新字符*/
char * encrypt(char []);//加密字符串;*代表返回一个指针类型的变量
char * dencrypt(char []);//解密字符串
int main() {char password[50] = "Hello World!";encrypt(password);printf("%s\n", password);dencrypt(password);printf("%s\n", password);return 0;
}
char * encrypt(char password[]){int length = strlen(password);//不包括'\0'for (int i = 0; i < length; i++) {password[i] += (i+KEY);}return password;
}
char * dencrypt(char password[]){int length = strlen(password);for (int i = 0; i < length; ++i) {password[i] -=(i+KEY);}return password;
}
输出:
c语言 字符串加密和解密算法实现相关推荐
- 字符串加密、解密算法
字符串加密.解密算法包括: MD5.Des.Base64三种方式,详情如下所示:using System; using System.Collections.Generic; using System ...
- C语言加密和解密算法
C语言加密和解密算法 简介:字符串的加密和解密方法一直被广泛应用,最常见的无非是 MD5 散列函数(MD5是信息摘要的一种,可以从任意长度的字符串生成128位的哈希值). 先来看代码:(注意作者代码中 ...
- java加密与解密工具_cat: CAT,全称Cryptographic Algorithm Tool,是一款小巧的Java加密与解密算法调用工具包...
cat 一.介绍 cat:全称Cryptographic Algorithm Tool 主要提供以下加密算法调用: 1.AES 2.DES 3.DSA 4.MD5 5.MersenneTwister( ...
- 常见的加密和解密算法—MD5
转载:https://www.cnblogs.com/maohuidong/p/7967257.html 常见的加密和解密算法-MD5 一.MD5加密概述 Message Digest Algorit ...
- 简单移位密码——凯撒加密、解密算法
简单移位密码--凯撒加密.解密算法 移位密码是简单的替换密码(simple substitution cipher),即将明文的一个字符用相应的一个密文字符替换. 算法描述:设P=C=K=Z26,对k ...
- 27-字符串加密和解密算法
思路 根据题意,思路是比较好想的,但是要注意以下两点 加密时,要注意偏移之后的值(下标 + 5)不能超能ascii码所能表示的范围. 解秘时,要注意偏移之后的值(下标 - 5)不能小于0,所以需要加上 ...
- ecshop 解密index.php,PHP-威盾PHP加密专家解密算法
/*********************************** *威盾PHP加密专家解密算法 By:Neeao *http://Neeao.com *2009-09-10 ********* ...
- C语言实现RC4加解密算法
C语言实现RC4加解密算法 RC4加解密 RC4加解密 #include<stdio.h>/* RC4初始化函数 */ void rc4_init(unsigned char* s, un ...
- java 加密工具包_Java加密和解密算法调用工具包
软件架构及说明 1.本工具包基于纯java编写而成: 2.部分算法密钥对基于bcprov-jdk16的调用生成. 3.部分加密与解密算法来自网上公开的源码,并在此基础上进行整理和优化而来: 4.本加密 ...
最新文章
- Nature子刊:古菌基因组的标准化物种分类方法
- 计算机基础算法棋盘覆盖,分治算法求解棋盘覆盖问题互动教学过程.doc
- 排除瓶颈和加速django项目
- JDK9的新特性:String压缩和字符编码
- 最激动人心的视觉系统其实是最枯燥乏味的
- 回溯的问题合集(Leetcode题解-Python语言)
- java操作文件爱女_Java的IO操作---File类
- 阿里云CDN操控2.0版本正式发布
- 深入实践Spring Boot1.3 使用Spring Boot
- 毕设题目:Matlab优化充电
- matlab 阶乘函数
- GM8827C 多通道LVDS 串行发送器,27位CMOS/TTL信号转化为多路LVDS信号
- 练习时长一年半,算法蒟蒻的成长记录
- clr 80004005
- Android9.0系统源码_编译刷机——从下载到编译
- element-ui的el-table更改筛选值filtered-value后不起作用
- Redis基本应用及Java代码实现
- 图像校正(Image Rectification)——使得在对极线上寻找对应点更加容易
- 数据结构 —— 广义表
- 统计学(3)——数据抽样方法的细节