当前位置: 首页 > news >正文

openssl生成加密,公钥实现非对称加密

私钥用于加密,公钥用于解密
私钥用于颁发token,公钥用于验证token,公钥不能颁发token
私钥和公钥是一对,不能单独使用,利用私钥生成公钥,利用公钥进行解密
使用openssl来生成一对私钥和公钥:openssl是git bash自带的

生成方法:
openssl
genrsa -out private.key 2048
rsa -in private.key -pubout -out public.key

非对称加密const privateKey = fs.readFileSync("../src/keys/private.key")
const publicKey = fs.readFileSync("../src/keys/public.key")// 取出用户信息const { id, username } = ctx.userconst payload = { id, username }// 颁发tokenconst token = jwt.sign(payload, privateKey, {expiresIn: 60 ** 60 * 24, // 一天过期// 指定非对称加密算法, secretOrPrivateKey has a minimum key size of 2048 bits for RS256// 所以在生成密钥时要指定2048位algorithm: "RS256",})// 将token返回给前端ctx.body = {code: 0,message: "用户登录成功",data: {user_id: ctx.user.id,username: ctx.user.username,token,},}

相关文章:

openssl生成加密,公钥实现非对称加密

私钥用于加密,公钥用于解密 私钥用于颁发token,公钥用于验证token,公钥不能颁发token 私钥和公钥是一对,不能单独使用,利用私钥生成公钥,利用公钥进行解密 使用openssl来生成一对私钥和公钥:ope…...

[CKS] K8S Admission Set Up

最近准备花一周的时间准备CKS考试,在准备考试中发现有一个题目关于Admission。 Whats Admission Kubernetes Admission是Kubernetes集群中一种机制,用于控制和修改集群中的资源对象。它允许您在Kubernetes资源被创建、更新或删除之前,对资源…...

前端学习Day13 CSS盒子的定位(固定定位篇“附练习”)

一、固定定位 固定定位 (position:fixed)其实是绝对定位的子类别,一个设置了 position:fixed 的元素是相对于视窗固定的,就算页面文档发生了滚动,它也会一直待在相同的地方。 ⚠️:固定定位会脱离文档流。…...

Tomcat 启动卡住,日志显示 At least one JAR was scanned for TLDs yet contained no TLDs.

现象 Tomcat 启动后,控制台输出卡在了: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JA…...

计算机网络:网络层 —— 移动 IP 技术

文章目录 IPv6IPv6 的诞生背景主要优势IPv6引进的主要变化 IPv6数据报的基本首部IPv6数据报首部与IPv4数据报首部的对比 IPv6数据报的拓展首部IPv6地址IPv6地址空间大小IPv6地址的表示方法 IPv6地址的分类从IPv4向IPv6过渡使用双协议栈使用隧道技术 网际控制报文协议 ICMPv6ICM…...

useCrudSchemas

摘要: useCrudSchemas 不是一个标准的JavaScript或数据库操作库函数,也不是一个广泛认知的术语。它可能是某个特定项目或应用程序中定义的一个自定义函数或方法,用于简化CRUD(创建、读取、更新、删除)操作。 在Web开发…...

SpringBoot3集成Junit5

目录 1. 确保项目中包含相关依赖2. 配置JUnit 53. 编写测试类4、Junit5 新增特性4.1 注解4.2 断言4.3 嵌套测试4.4 总结 在Spring Boot 3中集成JUnit 5的步骤相对简单。以下是你可以按照的步骤: 1. 确保项目中包含相关依赖 首先,确保你的pom.xml文件中…...

【EMNLP2024】阿里云人工智能平台 PAI 多篇论文入选 EMNLP2024

近期,阿里云人工智能平台 PAI 的多篇论文在 EMNLP2024 上入选。论文成果是阿里云与华南理工大学金连文教授团队、复旦大学王鹏教授团队共同研发。EMNLP 是人工智能自然语言处理领域的顶级国际会议,聚焦于自然语言处理技术在各个应用场景的学术研究&#…...

Spark的Shuffle过程

一、Shuffle 的作用是什么? Shuffle 操作可以理解为将集群中各个节点上的数据进行重新整理和分类的过程。这一概念源自 Hadoop 的 MapReduce 模型,Shuffle 是连接 Map 阶段和 Reduce 阶段的关键环节。在分布式计算中,每个计算节点通常只处理任…...

Java+Swing可视化图像处理软件

JavaSwing可视化图像处理软件 一、系统介绍二、功能展示1.图片裁剪2.图片缩放3.图片旋转4.图像灰度处理5.图像变形6.图像扭曲7.图像移动 三、系统实现1.ImageProcessing.java 四、其它1.其他系统实现2.获取源码 一、系统介绍 该系统实现了图片裁剪、缩放、旋转、图像灰度处理、…...

RDD转换算子:【mapValues、mapPartitions】

文章目录 1、mapValues算子功能语法举例 2、mapPartitions算子功能语法举例 1、mapValues算子 功能 针对二元组KV类型的RDD,对RDD中每个元素的Value进行map处理,结果放入一个新的RDD中 语法 def mapValues(self: RDD[Tuple[K,V]], f: (V) -> U) -…...

数组和指针的复杂关系

C语言中指针和数组的关系似乎很“纠结”,让人爱恨交织。本文试图帮助读者理清它们之间的复杂关系! 数组名的理解 数组元素在内存中是连续存放的,在C语言中,数组名有特殊的含义,它表示数组首元素的地址。因此&#xf…...

Linux系统I/O调优实例

文章目录 一 、资源限制二、测试硬盘速度: 一 、资源限制 限制用户资源配置文件:/etc/security/limits.conf [rootxuegod63 ~]# vim /etc/security/limits.conf 每行的格式: 用户名/用户组名 类型(软限制/硬限制) 选项 值 通常我们在服务器…...

记录Ubuntu OS的异常

PS: 参加过408改卷的ZJU ghsongzju.edu.cn 开启嘲讽: 你们知道408有多简单吗,操作系统真实水平自己知道就行~~ dmesg dmesg 是一个用于显示内核环形缓冲区消息的命令,主要用于查看系统启动时的消息、驱动程序加载信息、硬件错误…...

Vue 3 单元测试与E2E测试

在Vue 3应用的开发过程中,测试是一个至关重要的环节。它不仅能够确保代码的正确性,还能在后续的代码重构和升级过程中提供安全保障。本文将深入探讨Vue 3的单元测试(Unit Testing)和端到端测试(End-to-End Testing, E2…...

猫用空气净化器哪个牌子好?求除毛好、噪音小的宠物空气净化器!

换毛季家里孩子不省心,疯狂掉落的猫毛和空气中乱飞的浮毛可把我折磨死了。每天下班都要抽出时间来清理,不然这个家就不能要了。猫毛靠我自己可以打扫,浮毛还得借助宠物空气净化器这种专业工具。所以我最近着手做功课,打算入手一台…...

第十九课 Vue组件中的方法

Vue组件中的方法 组件中的方法拓展与实例对象中的方法拓展类似 <div id"app"><test></test> </div> <script>Vue.component(test, {template: <input type"button" value"这是个按钮组件" click"fun()…...

【JavaScript】V8,Nodejs 与浏览器

V8 V8 是一个 JavaScript engine&#xff0c;负责编译并执行 JavaScript 源代码&#xff0c;处理对象的内存分配&#xff0c;并对不再需要的对象进行垃圾收集。 V8 包含两个主要组件&#xff1a; Memory Heap&#xff1a;负责存储分配。 Call Stack&#xff1a;代码执行时&am…...

内存马浅析

之前在jianshu上写了很多博客&#xff0c;但是安全相关的最近很多都被锁了。所以准备陆陆续续转到csdn来。内存马前几年一直是个很热门的漏洞攻击手段&#xff0c;因为相对于落地的木马&#xff0c;无文件攻击的内存马隐蔽性、持久性更强&#xff0c;适用的漏洞场景也更多。 J…...

聊一聊Elasticsearch的基本原理与形成机制

1、搜索引擎的基本原理 通常搜索引擎包括&#xff1a;数据采集、文本分析、索引存储、搜索等模块&#xff0c;它们之间的协作流程如下图&#xff1a; 数据采集模块负责采集需要搜索的数据源。 文本分析模块是将结构化数据中的长文本切分成有实际意义的词&#xff0c;这样用户…...

Exo分布式AI集群架构深度解析:多节点选举与容错机制实现原理

Exo分布式AI集群架构深度解析&#xff1a;多节点选举与容错机制实现原理 【免费下载链接】exo Run your own AI cluster at home with everyday devices &#x1f4f1;&#x1f4bb; &#x1f5a5;️⌚ 项目地址: https://gitcode.com/GitHub_Trending/exo8/exo Exo是一…...

从零部署一个AI对话机器人:实战对比Gradio的Streaming UI与FastAPI的轻量API方案

从零部署一个AI对话机器人&#xff1a;实战对比Gradio的Streaming UI与FastAPI的轻量API方案 在AI应用开发领域&#xff0c;构建一个可交互的对话机器人已成为开发者验证想法、展示成果的标配需求。不同于传统Web开发的复杂架构&#xff0c;现代工具链让开发者能够用极简代码实…...

UMA模型吸附能预测实战指南:从催化剂筛选到工业应用

UMA模型吸附能预测实战指南&#xff1a;从催化剂筛选到工业应用 【免费下载链接】ocp Open Catalyst Projects library of machine learning methods for catalysis 项目地址: https://gitcode.com/GitHub_Trending/oc/ocp 核心价值速览 在催化材料研发领域&#xff0…...

如何修复 n8n Postgres 节点中的“节点未设置任何凭据”错误:一篇真正能照着操作的排障博客

如果你在用 n8n 连 Postgres 的时候&#xff0c;突然看到一句让人有点懵的报错&#xff1a;Node has no credentials set 或者中文界面里类似&#xff1a;节点未设置任何凭据先别慌。这个报错看起来像系统在跟你打哑谜&#xff0c;但它的真实意思其实非常朴素&#xff1a; 这个…...

AtlasOS终极指南:专业解决Windows安装错误2502/2503的完整方案

AtlasOS终极指南&#xff1a;专业解决Windows安装错误2502/2503的完整方案 【免费下载链接】Atlas &#x1f680; An open and lightweight modification to Windows, designed to optimize performance, privacy and security. 项目地址: https://gitcode.com/GitHub_Trendi…...

SmallThinker-3B-Preview惊艳效果:将模糊产品需求转化为PRD+技术方案+风险提示

SmallThinker-3B-Preview惊艳效果&#xff1a;将模糊产品需求转化为PRD技术方案风险提示 你有没有遇到过这样的情况&#xff1f;产品经理或者老板给你一个模糊的想法&#xff0c;比如“我们做个智能助手吧”&#xff0c;或者“开发一个能自动生成周报的工具”。你听完后一头雾…...

深入解析DDR内存训练:从FLY BY布线到信号对齐

1. 为什么DDR内存需要训练&#xff1f; 当你按下电脑开机键的那一刻&#xff0c;主板上的DDR内存就开始了一段奇妙的"热身运动"。这个热身过程专业术语叫做内存训练&#xff08;Memory Training&#xff09;&#xff0c;它是确保内存稳定运行的关键步骤。想象一下&a…...

Token 中文定名词元,国产 AI 工具如何抢占词元红利?

3 月 23 日&#xff0c;中国发展高层论坛 2026 年年会上&#xff0c;国家数据局局长刘烈宏正式官宣&#xff1a;AI 领域核心术语 Token 的中文标准译名确定为“词元”。这一官方定名&#xff0c;结束了之前 “令牌”“代币”“词块” 等译法混用的行业乱象&#xff0c;为中国 A…...

语音识别模型Conformer实战:如何用夹心饼干结构提升ASR效果

Conformer模型实战&#xff1a;用"夹心饼干"架构打造工业级语音识别系统 语音识别技术正在经历从传统DNN-HMM到端到端深度学习的范式转移&#xff0c;而Conformer凭借其创新的"CNNTransformer"混合架构&#xff0c;正在成为新一代ASR系统的标配。这种被开发…...

【ComfyUI】Qwen-Image-Edit-F2P 实战:基于Transformer架构的人脸图像风格迁移

ComfyUI Qwen-Image-Edit-F2P 实战&#xff1a;基于Transformer架构的人脸图像风格迁移 最近在折腾AI图像生成&#xff0c;发现了一个挺有意思的模型——Qwen-Image-Edit-F2P。它不像那些通用的文生图模型&#xff0c;而是专门针对图像编辑&#xff0c;尤其是在人脸风格迁移上…...