jwt加密和解密

JWT加密以及解密工具类(生成盐值,根据密码和盐值生成密文) 1.pom依赖 <!-- JSON Web Token (JWT) 生成token --> <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactId> ... 阅读详情

首先需要导入jjwt.jar jackson-annotations jackson-core jackson-databind四个jar
public class JWTUtil extends ActionSupport{

private static final long serialVersionUID = 1L;
private static final String SECRET_KEY = "123456789";

public void jwtTest() throws InterruptedException {
    // 设置3秒后过期
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    long time = System.currentTimeMillis() + 30 * 60 * 1000;
    String jwt = this.buildJwt(new Date(time));
    System.out.println("jwt = " + jwt);
    // 验证token是否可用
    boolean isOk = this.isJwtValid(jwt);
    System.out.println(isOk);
}

public String buildJwt(Date exp) {
    String jwt = Jwts
            .builder()
            //SECRET_KEY是加密算法对应的密钥,这里使用额是HS256加密算法
            .signWith(SignatureAlgorithm.HS256, SECRET_KEY)
            //expTime是过期时间
            .setExpiration(exp)
            .claim("name", "hahah")
            .claim("age", "18")
            //该方法是在JWT中加入值为vaule的key字段
            .claim("key", "256431556855256655265")
            .compact();
    return jwt;
}

public boolean isJwtValid(String jwt) {
    try {
        //解析JWT字符串中的数据,并进行最基础的验证
        Claims claims = Jwts.parser()
                //SECRET_KEY是加密算法对应的密钥,jjwt可以自动判断机密算法
                .setSigningKey(SECRET_KEY)
                //jwt是JWT字符串
                .parseClaimsJws(jwt)
                .getBody();
        System.out.println(claims);
        //获取自定义字段key
        String vaule = claims.get("key", String.class);
        //判断自定义字段是否正确
        if ("vaule".equals(vaule)) {
            return true;
        } else {
            return false;
        }
        //在解析JWT字符串时,如果密钥不正确,将会解析失败,抛出SignatureException异常,说明该JWT字符串是伪造的
        //在解析JWT字符串时,如果‘过期时间字段’已经早于当前时间,将会抛出ExpiredJwtException异常,说明本次请求已经失效
    } catch (Exception e) {
        return false;
    }
}

}

完事。

生成JWT公钥私钥 # 生成jwt公钥私钥 $ keytool -genkeypair -alias mytest -keyalg RSA \ -keypass mypass -keystore mytest.jks -storepass mypass # -alias 别名 # -keyalg 算法 # -keypass 私钥的密码 # -keystore 存储公钥和私钥的文件名 # -storepas... 阅读详情

相关推荐

JWT浅析

文章目录一、概念二、背景分析1.传统基于`session`的会话管理/认证a. `session`基本认知b. `session`的认证方式暴露的问题2. 基于token的会话管理/认证三、主角`JWT`1. jwt基本结构A .头部 headerB. 负载 payloadC. 签证/签名 signature2.使用3. jwt优缺点分析4. jwt的引申扩展 一、概念 Json web tok...

AggressionStorm的博客 46万+

JWT(简介)

JWT工具类/*** JWT验证过滤器:配置顺序 CorsFilte->JwtUtilsr-->StrutsPrepareAndExecuteFilter**//*** JWT_WEB_TTL:WEBAPP应用中token的有效时间,默认30分钟*//*** 将jwt令牌保存到header中的key*/// 指定签名的时候使用的签名算法,也就是header那部分,jjwt已经将这部分内容封装好了。// JWT密匙// 使用JWT密匙生成的加密key。

qq_65345936的博客 2538

【项目实战】Sa-Token 配置中 jwt-secret-key 的前端修改说明

是服务端的核心安全配置,前端完全不需要感知或修改该密钥。前端只需按约定的 token 名称(如)发送 token,所有与密钥相关的逻辑均应在服务端处理。若发现前端代码中包含该密钥,需立即移除并强化服务端密钥的安全管理。

奶爸的编程之路,也就一周冷个三天 341

跨域认证解决方案-JSON WEB TOKEN讲解与实战

1. JSON WEB TOKEN 1.1 什么是JWT ​ JSON Web Token(JWT)是一个非常轻巧的规范。这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息。 ​ 简称JWT,在HTTP通信过程中,进行身份认证。 ​ 我们知道HTTP通信是无状态的,因此客户端的请求到了服务端处理完之后是无法返回给原来的客户端。因此需要对访问的客户端进行识别,常用的做法是通过sessio...

weixin_33860722的博客 1928

高德地图与CAD图叠加显示方法汇总及优缺点分析

高德地图应用在许多领域,平常我们用的地图导航,除过正常的地图导航指引功能之外,其实还有很多实用的功能。如高德影像地图应用在包括地理、土地测量、水文学、生态学、气象学以及海洋学等方面。AutoCAD在行业中常用于城市规划、平面设计、建筑师等,这其中也要用到高德地图。最常见的是CAD图与高德地图叠加使用,通过两者叠加直观显示,助力行业提高工作效率。那如何将高德地图与CAD图叠加显示呢?下面听小编把方法一一介绍下以及各种方法的优缺点。

vjmap的博客 2723

【C++】 详解 lower_bound 和 upper_bound 函数(看不懂来捶我!!!)

这两个函数是我在 LeetCode 上做题见到,看到不熟悉的函数 lower_bound 和 upper_bound让我感觉很难受,于是在C++ 官网去学习,例子就一个是最基础的,我看明白了。虽然是两个函数的接口就两个,但是有时候看别人使用的时候,里面参数还可以放不同的仿函数,我懵逼了。就去网上搜,但是大家讲解的都是它的第一个接口。我只能再把文档一遍一遍过,代码一遍遍的尝试,调试。最终通过查阅资料将其总结如下。

weixin_45031801的博客 9万+

C# JWT加密和解密

C# JWT加密和解密 一、管理NuGet程序包: 二、新建一个Winform项目: using JWT; using JWT.Algorithms; using JWT.Exceptions; using JWT.Serializers; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Lin

韬光养晦 1万+

AWSIM模拟器 新增多相机

本文介绍了基于Unity6引擎对AWSIM自动驾驶模拟器的优化方案,主要针对多相机系统的扩展实现。作者通过修改EgoVehicle.cs和AutowareSimulationDemo.cs核心代码,将原单相机系统升级为5相机配置。关键技术点包括:1)使用List容器管理多个CameraSensor组件;2)完善相机初始化流程;3)配置5个相机UI显示窗口;4)修改ROS话题设置。优化后的系统可支持BEVFusion等多传感器融合算法的测试验证,为Autoware.universe 0.45.0及以上版本提供

W805698955的博客 831

jwt加密,和解密

第一步,定义一个秘钥 #秘钥 jwt.secret= 76bd425b6f29f7fcc2e0bfc286043df1 //引入秘钥 @Value("${jwt.secret}") private String secret; 第二步,加密 //生成tonken //把id加成秘钥 Map<String,Object> claims=new HashMap<>(); claims.put("id",use

djdjjdjdj的博客 1585

激光雷达测距方式全解析:ToF、三角测距和FMCW到底怎么选?

本文深度解析激光雷达三种主流测距方式(ToF、三角测距和FMCW)的技术原理、环境适应性和成本模型,提供场景化选型决策指南。通过对比各技术在精度、抗干扰能力和维护成本等方面的表现,帮助工程师在自动驾驶、工业检测和消费电子等领域做出最优选择。

qqq44的博客 719

树莓派5搭建ROS1开发环境:从系统安装到环境变量配置

本文详细指导如何在树莓派5上搭建ROS1开发环境。针对树莓派OS非标准安装路径导致的常见CMake报错问题,提供了从系统烧录、一键安装ROS到关键环境变量配置的完整解决方案,确保工作空间能成功编译,助力机器人项目开发。

weixin_29159127的博客 385

C# JWT加密和解密,JWT跨域身份验证

JSON Web Token(JWT)是目前最流行的跨域身份验证解决方案。为了网络应用环境间传递声明而执行的一种基于JSON的开发标准(RFC 7519), 该token被设计为紧凑且安全的,特别适用于分布式站点的单点登陆(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,该token也可直接被用于认证,也可被加密。......

AI的博客 1万+

5步搞定ABB机器人RobotStudio与S7-1500PLC的Profinet通讯(附PLCSIM调试技巧)

本文详细介绍了如何利用RobotStudio与TIA Portal软件,结合PLCSIM Advanced仿真器,在零硬件条件下实现ABB机器人与西门子S7-1500 PLC之间的Profinet通讯虚拟调试。通过五个核心步骤,从环境搭建、网络配置、信号映射到联合仿真与高级调试,帮助工程师在项目前期高效验证逻辑、压缩现场调试周期,并掌握实用的PLCSIM调试技巧。

weixin_29188043的博客 505

Jwt 初识以及加密和解密

Jwt 的加密和解密

A乐神的博客 1524

QT+Halcon实现螺纹检测

工业上要检测螺丝的内外直径、内外牙距、内外角度,现在比较好用的图像处理库,开源的opencv,收费的有halcon。为了实现螺纹检测,和对比螺纹检测拿个库比较好。分别用opencv和halcon实现了螺纹检测,通过对比发现用halcon实现的效果比较。现在用博客把实现过程记录下来: 1、需要检测的螺纹数据如下: 2、为了实现检测螺丝以上数据,螺纹内径、螺纹外径、螺纹外牙距、螺纹...

专注现代C++实战,从核心语法到高性能编程,助力开发者深入掌握系统级编程精髓。 7051

前程无忧Python岗位数据采集:基于API直连的高效招聘信息爬取实战

本文介绍了一个基于Python requests库的前程无忧招聘数据采集系统。项目通过分析API接口结构,配置完整的请求头和身份验证参数,实现了高效稳定的数据采集。系统支持多页数据批量获取,包含工作名称、薪资范围等关键字段的结构化解析,并将结果存储为Excel文件。技术实现涉及API分析、身份验证、请求头配置、数据清洗等关键步骤,同时强调遵守法律和道德规范。该系统可为求职者、HR和市场分析师提供有价值的行业数据支持,适用于市场分析、职业规划等场景。

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 1552

JWT(数据结构、认证流程、加密、解密过程)、对称加密和非对称加密

JWT是JSON Web Token的缩写。是为了网络应用环境间传递声明而执行的一种基于JSON的开发标准(RFC 7519),该token被设计为紧凑且安全的,特别适用于**分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被,以便从资源服务器获取资源,也可以增加一些额外的其他业务逻辑所必须的是个声明信息。该token可直接被用于认证,也可被加密。简单来说,JWT是一种基于JSON的用于身份验证和传递信息的开发标准。

codekingo的博客 1823

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

安全篇 ━━ JWT的用途和安全探讨,编码解码=\=加密解密

什么是JWT?JSON WEB TOKEN,json格式的网络令牌,所以JWT只是一种token形式,可用来解决传统session的一些弊端。它本身和数据安全没有关系

暂时先用这个名字 4011

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

JWT加密和解密的使用

JWT加密和解密的使用

牧小七的博客 1338

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

利用JWT生成Token的原理及公钥和私钥加密和解密的原则

开篇: 实现Token的方式有很多,本篇介绍的是利用Json Web Token(JWT)生成的Token.JWT生成的Token有什么好处呢? 安全性比较高,加上密匙加密而且支持多种算法。 携带的信息是自定义的,而且可以做到验证token是否过期。 验证信息可以由前端保存,后端不需要为保存token消耗内存。 小知识:Base64是一种编码,也就是说,它是可以被翻译回原来的样子来的。它并不是一...

weixin_42030357的博客 3万+

php-jwt 使用算法RS256和HS256加密解密

本文介绍了使用PHP-JWT库实现RS256和HS256算法的JWT加密解密方法。

qq_39303936的博客 565

基于JWT实现Token的加密和解密

本文章实现了token的加密和解密算法,不包含任何业务逻辑。第一步 下载相应的jar,如下图所示: 第二步 看代码,一个加密的方法getToken,一个解密的方法parseTokenpublic class test { static String TTP_SECRET = "bfb82ec324d34a9d"; public static String getT

江湖人称小程的博客 1万+

php+rs256,JWT 使用加密算法RS256 非对称加密解密

这里将告诉您JWT 使用加密算法RS256 非对称加密解密,教程操作步骤:参考文档:https://gist.github.com/ssippe/8fc11c4d7e766e66f06db0431dba3f0ahttps://github.com/dvsekhvalnov/jose-jwthttps://mac-blog.org.ua/dotnet-core-firebase-jwt/需要引用如...

weixin_42516178的博客 2041

苍穹外卖Day06笔记(复习了jwt的加密解密和传递)

疯玩了一个月,效率好低,今天开始捡起来苍穹外卖~

weixin_45791946的博客 643

thinkphp 使用jwt生成token加密解密

thinkphp6 使用jwt 加密解密的方法

munchmills的博客 2189
下一篇: 微信小程序登录
ch168321
博客等级 码龄10年 0粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值