Kaisa加解密
public class Kaisa { /*** * 使用凯撒加密方式加密数据 * @param orignal 原文 * @param key 密钥 * @return 加密后的字符 */ private static String encryptKaisa(String orignal, int key) { //将字符串转换为数组 char[] chars = orignal.toCharArray(); StringBuffer buffer = new StringBuffer(); //遍历数组 for(char aChar : chars) { //获取字符的ASCII编码 int asciiCode = aChar; //偏移数据 asciiCode += key; //将偏移后的数据转为字符 char result = (char)asciiCode; //拼接数据 buffer.append(result); } return buffer.toString(); } /** * 使用凯撒加密方式解密数据 * * @param encryptedData :密文 * @param key :密钥 * @return : 源数据 */ private static String decryptKaiser(String encryptedData, int key) { // 将字符串转为字符数组 char[] chars = encryptedData.toCharArray(); StringBuilder sb = new StringBuilder(); // 遍历数组 for (char aChar : chars) { // 获取字符的ASCII编码 int asciiCode = aChar; // 偏移数据 asciiCode -= key; // 将偏移后的数据转为字符 char result = (char) asciiCode; // 拼接数据 sb.append(result); } return sb.toString(); } public static void main(String[] args) { String str = "open fire"; String encode = encryptKaisa(str, 3); System.out.println("加密后:"+encode); String decode = decryptKaiser(encode, 3); System.out.println("解密后:"+decode); } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?