JavaScript加密/解密与OpenAI的对接:生成加密对话的ChatGPT 4.0应用

2023-11-12

首先,我们来看一个简单的JavaScript加密算法的示例,该算法将输入的字符串每个字符的ASCII值加上1,并返回一个新的字符串。以下是加密函数的代码:

javascriptCopy codefunction encrypt(message) {
  let encryptedMessage = '';
  for (let i = 0; i < message.length; i++) {
    const ascii = message.charCodeAt(i) + 1;
    encryptedMessage += String.fromCharCode(ascii);
  }
  return encryptedMessage;
}

在这个函数中,我们首先创建一个空字符串encryptedMessage,然后遍历输入的字符串中的每个字符,使用charCodeAt函数获取其ASCII值,并将其加上1。然后,我们将新的ASCII值转换回字符,并将其附加到encryptedMessage字符串中。最后,我们返回加密后的字符串encryptedMessage

接下来,我们来看一个简单的JavaScript解密算法的示例,该算法将输入的字符串每个字符的ASCII值减去1,并返回一个新的字符串。以下是解密函数的代码:

javascriptCopy codefunction decrypt(encryptedMessage) {
  let message = '';
  for (let i = 0; i < encryptedMessage.length; i++) {
    const ascii = encryptedMessage.charCodeAt(i) - 1;
    message += String.fromCharCode(ascii);
  }
  return message;
}

在这个函数中,我们首先创建一个空字符串message,然后遍历输入的字符串中的每个字符,使用charCodeAt函数获取其ASCII值,并将其减去1。然后,我们将新的ASCII值转换回字符,并将其附加到message字符串中。最后,我们返回解密后的字符串message

现在,我们可以将上面的加密和解密函数与上面提供的ChatGPT 4.0的对接代码结合使用,以生成加密和解密的对话。以下是示例代码:

javascriptCopy codeconst openai = require('openai');

openai.api_key = "YOUR_API_KEY_HERE";

function encrypt(message) {
  let encryptedMessage = '';
  for (let i = 0; i < message.length; i++) {
    const ascii = message.charCodeAt(i) + 1;
    encryptedMessage += String.fromCharCode(ascii);
  }
  return encryptedMessage;
}

function decrypt(encryptedMessage) {
  let message = '';
  for (let i = 0; i < encryptedMessage.length; i++) {
    const ascii = encryptedMessage.charCodeAt(i) - 1;
    message += String.fromCharCode(ascii);
  }
  return message;
}

async function generate_response(prompt) {
  const response = await openai.Completion.create({
    engine: 'davinci',
    prompt: prompt,
    max_tokens: 1024,
    n: 1,
    stop: null,
    temperature: 0.7
  });
  let message = response.choices[0].text.trim();
  message = decrypt(message);
  return message;
}

// Example Usage
const prompt = encrypt("Hello, how are you doing today?");
generate_response(prompt).then(response => console.log(response));

在这个示例中,我们首先定义了encryptdecrypt函数,这两个函数可以分别用于加密和解密字符串。然后,我们对接了上面提供的ChatGPT 4.0

jsjiami.com

如果您对文章内容有不同看法,或者疑问,欢迎到评论区留言,或者私信我都可以。

也可以到上方网站,底部有我联系方式详谈

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaScript加密/解密与OpenAI的对接:生成加密对话的ChatGPT 4.0应用 的相关文章

随机推荐

  • leetcode刷题(10.22总结)

    1 丢失的数字 题目描述 https leetcode cn problems missing number class Solution def missingNumber self nums List int gt int n len
  • 基于SSM+MySQL在线书城项目

    目录 1 项目简介 2 项目说明 3 项目功能 4 项目展示 5 项目获取 1 项目简介 随着互联网发展 网上商城越来越活跃 线下购物方式逐渐弱化 在线购物越来越获得公众的欢迎 在线书城项目是一款B2C的线上购书系统 用户可以在本网站上购买
  • IDEA导入Web项目的三种方式

    文章目录 前言 一 第一种方式 二 第二种方式 三 第三种方式 前言 无论那种方式 它们都有相同的前提 那就是首先将你想要导入的Web项目放置在你想要导入的工程目录下 例如 举例子 笔者要将一个名为mavenWeb1的Web项目 笔者自己的
  • idm 服务器响应显示您没有权限下载此文件_玩转IDM,你不知道的IDM巧妙使用方法...

    在此前分享过的一系列百度网盘加速下载文章中 IDM Internet Download Manager 是不可或缺的一个环节 IDM 除了可以用来加速下载百度网盘资源外 其本身也是一款非常强大的下载器 它高速 精简 高效 把 一个程序做好一
  • 远程桌面控制台,有标签页可以管理多个远程桌面

    Server 2003系统自带远程桌面控制台 有标签页可以管理多个远程桌面 在windows的其他系统如果要实现可以参照以下操作 1 将server2003系统C WINDOWS system32目录下的mstsmhst dll mstsm
  • Android之 WebView的使用

    一 简介 1 1 WebView是用来展示网页的控件 底层是google的WebKit的引擎 比起苹果的WebView webkit一些不足地方 不能支持word等文件的预览 纯标签加载 并不支持所有标签的加载 不支持文件的下载 图片的放大
  • Elasticsearch 索引增删改

    添加小编微信 372787553 进入程序员技术交流群 本文已被 ElasticSearch从入门到入魔 收录 Elasticsearch 增删改 在前面我们已经安装好了elasticsearch 已经kibana 如果您还没有安装可以参考
  • 区块链倪老师:《区块链思维》第二章——“二维思维”的使用方法

    上回在 区块链思维 第一章中 我们已经从 一维思维 进阶到了 二维思维 今天我们就来讲讲如何使用 二维思维 二维思维 也叫结构化思维 顾名思义是将知识进行结构化的一种思维方式 同样 在区块链系统中 不同的部分分别构成了不同的结构 一般说来
  • 我的Android进阶之旅------>经典的大客推荐(排名不分先后)!!

    今天看到一篇文章 收藏了很多大牛的博客 在这里分享一下 转载于 http blog csdn net wujxiaoz article details 8237096 Android中文Wiki AndroidStudio NDK开发 移动
  • 思维导图系列——数据库

    思维导图系列 数据库 思维导图为博主期末复习亲自整理而成的 知识点覆盖全 可直接看思维导图复习 包含注解 图示等 觉得对你有帮助 不妨一键三连哦 链接见文末 参考书目 数据库系统概论 第5版 王珊 系列文章直达 思维导图系列 操作系统 思维
  • Qt信号与槽机制的本质

    引入 对象与对象之间的通信有多个方式 如果我们要提供一种对象之间的通信机制 这种机制 要能够给两个不同对象中的函数建立映射关系 前者被调用时后者也能被自动调用 再深入一些 两个对象如果都互相不知道对方的存在 仍然可以建立联系 甚至一对一的映
  • 人物故事

    李飞飞 导语 今年9月11日 谷歌云AI部门负责人李飞飞宣布即将离职 回到斯坦福大学任教 外媒 连线 杂志日前刊文 讲述了李飞飞离职背后的故事 以下为文章全文 去年六月有段时间 凌晨一点左右 李飞飞穿着睡衣 坐在华盛顿特区酒店房间里 练习几
  • web页面攻击分为几类?可以提供几种解决方案吗?

    WEB基本攻击大致可以分为三大类 资源枚举 参数操纵 和 其它攻击 资源枚举 遍历站点所有可访问的目录 然后把一些常见的备胎文件名 比如 sql bak index 副本 html 一个个都枚举一下 如果运气好枚举到了就直接下载 参数操纵
  • 嵌入式linux通过systemd自启动一个c代码

    上一篇博文说了嵌入式linux通过systemd自启动一个python代码 这次把python代码改为c代码 再试试 主要有两个文件 etc systemd system autostart service 用于启动 home roor a
  • 【Error】Call requires API level 3 (current min is 1)解决办法

    今天从网上下载了一个程序 本来好好的 后来不知道怎么弄的就不好使了 解决办法 在工程上右键 gt Android Tools gt Clear Lint Markers
  • [leetcode 周赛 148] 1147 段式回文

    目录 1147 Longest Chunked Palindrome Decomposition 段式回文 描述 思路 代码实现 1147 Longest Chunked Palindrome Decomposition 段式回文 描述 段
  • js逆向DES/AES解密篇

    以某网站登录为例 显然参数由三部分构成 用户名 密码和一个十六位的时间戳 显而易见密码被加密了 以password为关键词搜索js 定位到这一行打个断点 重新点击登录按钮 就会进入到加密函数内部 可以确定是由这个函数进行加密的 b encr
  • Oracle提示,严重: testWhileIdle is true, validationQuery not set

    使用Druid连接Oracle数据库时 提示严重 testWhileIdle is true validationQuery not set 上面的是错误 下面的是日志 是没有问题的 修改错误信息参考testWhileIdle is tru
  • js数组高阶函数——includes()方法

    博主 小猫娃来啦 文章核心 js数组高阶函数 includes方法 文章目录 前言 数组的一般化操作 创建数组 获取数组长度 访问 遍历 数组元素 修改数组元素 删除数组元素 数组尾部添加 数组尾部删除 includes 方法 举例说明 关
  • JavaScript加密/解密与OpenAI的对接:生成加密对话的ChatGPT 4.0应用

    首先 我们来看一个简单的JavaScript加密算法的示例 该算法将输入的字符串每个字符的ASCII值加上1 并返回一个新的字符串 以下是加密函数的代码 javascriptCopy codefunction encrypt message