JS加密/解密之手搓进阶版加密

news2024/9/25 21:19:28

在这里插入图片描述

前言

以前给大家介绍过一个简单的加密原理,是通过将字符串转换储层ascii码进行加密处理,这次介绍一个进阶版。解密难度直接上升了好几倍,加密代码放在下方各位自己尝试,解密代码就不贴了,感兴趣的可以到我的js加密官网联系客服领取。

摘要

在本研究中,我们介绍了一种基于随机偏移量的ASCII字符串加密算法。该算法将字符串转换为ASCII值,并使用随机生成的偏移量进行加密。我们进一步讨论了该算法的实现细节,并提出了相应的解密方法。此外,我们还分析了该算法的安全性以及可能的应用场景和改进方向。

方法

我们的加密算法主要分为两个步骤:首先,我们将待加密字符串转换为ASCII值;然后,我们采用随机生成的偏移量对ASCII值进行加密。具体而言,我们随机生成1到n之间的偏移量,将其与ASCII值相加以得到加密后的ASCII值。在解密过程中,我们使用相同的偏移量对加密后的ASCII值进行减法操作,从而恢复原始的ASCII值,最终将其转换回字符串形式。

代码
function encrypt(str, n) {
    let result = '';
    let rule = {};
    for (let i = 0; i < str.length; i++) {
        let ascii = str.charCodeAt(i);
        let offset = Math.floor(Math.random() * n) + 1; // 生成1到n之间的随机偏移量
        let encryptedAscii = ascii + offset;
        result += String.fromCharCode(encryptedAscii);
        rule[i] = offset;
    }
    return { encryptedString: result, rule: rule };
}

// 测试
let originalString = 'Hello, this is a secret message!';
let n = 5;

let encrypted = encrypt(originalString, n);
console.log('加密后的字符串:', encrypted.encryptedString);
console.log('规则:', encrypted.rule);
结果

经过我们的算法加密后的数据得到了有效的保护,其中随机生成的偏移量增加了破解难度。我们进一步测试了该算法在不同长度和类型的字符串上的表现,并验证了其稳健性和可靠性。此外,我们对该算法的安全性进行了初步分析,发现其能够有效防止一些常见的加密攻击手段。

应用

我们认为该加密算法可以广泛应用于诸如数据传输、信息存储以及安全通信等领域。其简单的实现和较高的安全性使得它成为一种理想的加密选择。未来,我们将进一步研究该算法在大规模数据传输和高安全性要求场景下的应用。

结论

在本文中,我们成功地介绍了一种基于随机偏移量的ASCII字符串加密算法,并提供了相应的加密和解密方法。我们验证了该算法的有效性和可靠性,并讨论了其安全性和应用前景。未来,我们将继续探索该算法的改进空间,并将其应用于更广泛的实际场景中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1133720.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Echarts的legend的特殊图例展示

问题描述 如图的红框中(上图是设计稿)&#xff0c;默认总发行和总到期都是矩形&#xff0c;即默认的情况下图例是25*14的&#xff0c;但是设计稿要求前两世正方形的。 问题复现&#xff1a; 默认的情况下&#xff0c;柱状图的图例是矩形(长方形),不是设计稿中的正方形。 演示…

什么是空运特殊货物_箱讯科技国际物流管理平台

空运货物具有时效快、安全性高等优势特点&#xff0c;但空运也有一定限制性。当然无论任何运输方式&#xff0c;运输对象都有这样的分类&#xff1a;普通货物、特殊货物。 那么在国际空运中&#xff0c;特殊货物是指什么呢&#xff1f; 01空运特殊货物 空运特殊货物是指那些无…

【网络协议】聊聊TCP的三挥四握

上一篇我们说了网络其实是不稳定的&#xff0c;TCP和UDP其实是两个不同的对立者&#xff0c;所以TCP为了保证数据在网络中传输的可靠性&#xff0c;从丢包、乱序、重传、拥塞等场景有自己的一套打法。 TCP格式 源端口和目标端口是不可缺少的&#xff0c;用以区分到达发送给拿…

生产环境元空间内存溢出(OOM)的问题排查

一、现象 2023.10.17下午收到业务反馈&#xff0c;说是接口调用超时&#xff0c;进件系统和核心系统调用外数系统接口时等待过久&#xff0c;引起系统异常。然后我们看了下接口调用的日志&#xff0c;确实接口的响应时间在五十秒左右。我们自己测试了下&#xff0c;发现也是这…

密码学-SHA-1算法

实验七 SHA-1 一、实验目的 熟悉SHA-1算法的运行过程&#xff0c;能够使用C语言编写实现SHA-1算法程序&#xff0c;增 加对摘要函数的理解。 二、实验要求 (1)理解SHA-1轮函数的定义和工作过程。 (2)利用VC语言实现SHA- 1算法。 (3)分析SHA- 1算法运行的性能。 三、实验…

统计文本词频的几种方法(Python)

目录 1. 单句的词频统计 2. 文章的词频统计 方法一&#xff1a;运用集合去重方法 方法二&#xff1a;运用字典统计 方法三&#xff1a;使用计数器 词频统计是自然语言处理的基本任务&#xff0c;针对一段句子、一篇文章或一组文章&#xff0c;统计文章中每个单词出现的次数…

HttpClient远程使用大全

一 HttpClient简介 1.1 概述 HttpClient只能以编程的方式通过其API用于传输和接受HTTP消息。主要实现功能&#xff1a; 实现了所有 HTTP 的方法&#xff08;GET、POST、PUT、HEAD、DELETE、HEAD、OPTIONS 等&#xff09; 支持 HTTPS 协议 支持代理服务器&#xff08;Nginx…

语法复习之C语言与指针

内存是如何存储数据的&#xff1f; 在C语言中定义一个变量后&#xff0c;系统就会为其分配内存空间。这个内存空间包括了地址和长度。将变量赋值后&#xff0c;该值就被写入到了指定的内存空间中。内存空间的大小一般以字节作为基本单位。   普通变量存放的是数据&#xff0c…

75 应急响应-数据库漏洞口令检索应急取证箱

必须知识点 1.第三方应用由于是选择性安装&#xff0c;如何做好信息收集和漏洞探针也是获取攻击者思路的重要操作&#xff0c;除去本身漏洞外&#xff0c;提前预知或口令相关攻击也要进行筛选 2.排除三方应用攻击行为&#xff0c;自查漏洞分析攻击者思路&#xff0c;人工配合工…

Qt 项目实战 | 多界面文本编辑器

Qt 项目实战 | 多界面文本编辑器 Qt 项目实战 | 多界面文本编辑器界面设计创建子窗口类实现菜单的功能更新菜单状态与新建文件操作实现打开文件操作添加子窗口列表实现其他菜单功能 完善程序功能保存窗口设置自定义右键菜单其他功能 小结项目源码 官方博客&#xff1a;https://…

初试Shiro

Shiro是一个用于身份验证、授权和会话管理的Java安全框架。它提供了一套易于使用的API&#xff0c;可以帮助开发人员构建安全性强大的应用程序。 环境准备 添加依赖 <dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-core</ar…

vueDay04——v-if else show

一、v-if的使用 我们可以像c语言一样去使用v-if结构 比如单用v-if&#xff0c;连用v-if v-else&#xff0c;或者是v-if v-else-if v-else 注意&#xff1a; 1.v-if v-else-if需要绑定值,而v-else不需要绑定值 2.if结构可以用在不同的标签类型之间 <div v-if"fir…

【MATLAB源码-第57期】基于matlab的IS95前向链路仿真,输出误码率曲线。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 IS-95&#xff0c;也被称为cdmaOne&#xff0c;是第一代的CDMA&#xff08;Code Division Multiple Access&#xff0c;码分多址&#xff09;数字蜂窝通信标准。IS-95的全称是Interim Standard-95&#xff0c;最初由Qualcomm…

灵活、可用、高扩展,EasyMR 带来全新 Yarn 的队列管理功能及可视化配置

YARN&#xff08;Yet Another Resource Negotiator&#xff09;是 Hadoop 生态系统中的资源调度器&#xff0c;主要用于资源管理和作业调度。YARN 自身具备队列管理功能&#xff0c;通过对 YARN 资源队列进行配置和管理&#xff0c;实现集群资源的分配&#xff0c;以满足不同应…

Doceker-compose——容器群集编排管理工具

目录 Docker-compose 1、Docker-compose 的三大概念 2、YAML文件格式及编写注意事项 1&#xff09;使用 YAML 时需要注意下面事项 2&#xff09;ymal文件格式 3&#xff09;json格式 3、Docker Compose配置常用字段 4、Docker-compose的四种重启策略 5、Docker Compos…

[微服务]Spring Cloud Sleuth全链路追踪

Spring Cloud Sleuth全链路追踪 全链路追踪组件追踪的数据遵循的规则: 1,Span:基本单元; 执行一次服务调用就生成一个span,用于记录当时的情况 ,以一个64位ID作为唯一标识.span还有其他数据标识如摘要,时间戳信息,关键tag等; 2,Trace:一次请求; 以一个64位ID为唯一标识,可以…

各品牌PLC存储器寻址的规则

在PLC编程时&#xff0c;字节或多字节的变量一般支持绝对地址寻址&#xff08;比如&#xff0c;IW0、MD4等&#xff09;。要想正确寻址&#xff0c;则必须要搞清楚寻址的规则。目前常见的规则有两种&#xff1a;字节寻址和字寻址。下图清晰地表达了两种规则的编号情况&#xff…

AI:WEB 1 靶机

1.找ip地址 2.检测端口 3.上文件检索 发现是apache 的组件 4.漏洞扫描攻击 nikto -h 网站 扫描网站漏洞 目录爆破 5.利用发现敏感目录 6.登录 发现 都是403 使用上层发现ok 这是一个查询功能点 7.敏感目录 sql注入 检验 详细信息 检测到注入方式 查看数…

系统架构设计师之RUP软件开发生命周期

系统架构设计师之RUP软件开发生命周期

EasyAR使用

EazyAR后台管理&#xff0c;云定位服务 建模 需要自行拍摄360度视频&#xff0c;后台上传&#xff0c;由EazyAR工作人员完成构建。 标注数据 需要在unity安装EazyAR插件&#xff0c;在unity场景编辑后&#xff0c;上传标注数据。 uinity标注数据 微信小程序中使用&#x…