stthjpv:一款针对JWT Payload的安全保护工具

关于stthjpv

stthjpv是一款针对JWT Payload的安全保护工具,这款工具集多种技术和思想于一身,可以通过不断改变相关参数值来防止Payload被解码,以帮助广大研究人员更好地保护JWT Payload的安全性。

除此之外,该工具还能够确保JWT Payload在被解码之后,输出保持一种难以阅读和理解的状态。值得一提的是,该工具的运行速度非常快,具备高性能和开销小的特点。

JWT令牌是什么?

JSON Web令牌(JWT)是一种在通信双方之间传递JSON消息的URL安全方法,这种方式数据量少,且足够安全。与此同时,它也是一种定义在RFC 7519中的标准规范。JWT是一个长字符串,由点分隔成多个部分,每个部分都是Base64 URL编码。

令牌中的数据由哪些部分,取决于JWT的类型(无论是JWS还是JWE)。如果对令牌进行了签名,它将会由三个部分组成:Header、Payload和签名。如果令牌经过了加密处理,那么它将由五个部分组成:Header、加密密钥、初始化向量、密文(Payload)和身份验证标识。JWT最常用的场景,就是作为OAuth和OpenID Connect流中的访问令牌和ID令牌使用,但它们也可以用于不同的目的。

工具特性

该工具旨在增强解码JWT令牌时Payload部分的安全性。一般来说,当我们对JWT令牌(Base64)进行解码时,Payload部分是以明文形式出现的,该工具可以对Payload值进行加密或混淆,以增加他人在解码或分析Payload时的难度。

工具依赖

PyJWT

工具安装

由于该工具基于Python 3.11开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/password123456/some-tweak-to-hide-jwt-payload-values.git

然后切换到项目目录中,使用pip命令和项目提供的requirements.txt安装该工具所需的其他依赖组件:

cd some-tweak-to-hide-jwt-payload-valuespip3 install -r requirements

工具使用

# python3 main.py- Current Unix Timestamp: 1709160368- Current Unix Timestamp to Human Readable: 2024-02-29 07:46:08- userid: 23243232- XOR Symmetric key: b'generally_user_salt_or_hash_or_random_uuid_this_value_must_be_in_dbms'- JWT Secret key: yes_your_service_jwt_secret_key- Encoded UserID and Timestamp: VVZcUUFTX14FOkdEUUFpEVZfTWwKEGkLUxUKawtHOkAAW1RXDGYWQAo=- Decoded UserID and Hashed Timestamp: 23243232|e27436b7393eb6c2fb4d5e2a508a9c5c- JWT Token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0aW1lc3RhbXAiOiIyMDI0LTAyLTI5IDA3OjQ2OjA4IiwidXNlcmlkIjoiVlZaY1VVRlRYMTRGT2tkRVVVRnBFVlpmVFd3S0VHa0xVeFVLYXd0SE9rQUFXMVJYREdZV1FBbz0ifQ.bM_6cBZHdXhMZjyefr6YO5n5X51SzXjyBUEzFiBaZ7Q- Decoded JWT: {'timestamp': '2024-02-29 07:46:08', 'userid': 'VVZcUUFTX14FOkdEUUFpEVZfTWwKEGkLUxUKawtHOkAAW1RXDGYWQAo='}# run again- Decoded JWT: {'timestamp': '2024-02-29 08:16:36', 'userid': 'VVZcUUFTX14FaRNAVBRpRQcORmtWRGleVUtRZlYXaBZZCgYOWGlDR10='}- Decoded JWT: {'timestamp': '2024-02-29 08:16:51', 'userid': 'VVZcUUFTX14FZxMRVUdnEgJZEmxfRztRVUBabAsRZkdVVlJWWztGQVA='}- Decoded JWT: {'timestamp': '2024-02-29 08:17:01', 'userid': 'VVZcUUFTX14FbxYQUkM8RVRZEmkLRWsNUBYNb1sQPREFDFYKDmYRQV4='}- Decoded JWT: {'timestamp': '2024-02-29 08:17:09', 'userid': 'VVZcUUFTX14FbUNEVEVqEFlaTGoKQjxZBRULOlpGPUtSClALWD5GRAs='}

工具运行截图

许可证协议

本项目的开发与发布遵循GPL-3.0开源许可协议。

项目地址

stthjpv:【GitHub传送门】

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

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

相关文章

如何定制化 ListView 界面

😄作者简介: 小曾同学.com,一个致力于测试开发的博主⛽️,主要职责:测试开发、CI/CD 如果文章知识点有错误的地方,还请大家指正,让我们一起学习,一起进步。 😊 座右铭:不…

代码查重软件-自力更生

为了减轻工作量,自研了简单实用的代码查重工具,可以对若干文件之间进行查重。通过调试,相似度大于80%的没有一个是冤枉的。好用。去掉雷同的,其他的代码再慢慢看。

Java UU跑腿同城跑腿小程序源码快递代取帮买帮送源码小程序+H5+公众号跑腿系统

🚀【同城生活小助手】🚀 🏃‍♂️【同城跑腿,即刻送达的便利生活】🏃‍♀️ 在快节奏的都市生活中,时间成了最宝贵的资源。UU跑腿小程序,作为同城生活的得力助手,让你轻松解决生活…

​如何部署私有化地图服务器(Windows版)

用户希望我们能详细讲讲,如何通过《水经注地图服务》进行私有化部署做一个地图服务器。 现在就来为大家作一个较为详细的分享,希望能在私有化部署地图服务器的工作中,助你一臂之力! 《水经注地图服务》下载与安装 打开以下官方…

从深度学习到音乐创作:AI如何重新定义音乐行业

📑引言 近一个月来,随着几款音乐大模型的轮番上线,AI在音乐产业的角色迅速扩大。这些模型不仅将音乐创作的门槛降至前所未有的低点,还引发了一场关于AI是否会彻底颠覆音乐行业的激烈讨论。从初期的兴奋到现在的理性审视&#xff0…

IO模型与多路复用

前言 在Linux中有一句经典台词:“Linux一切皆文件”。IO操作是与文件进行交流的唯一方式,也就是说这是与Linux系统交流的唯一手段。就如同人与人之间的交流,如果我们连交流的方式都不甚了解,交流的效率就会变得低下。操作系统也是…

机械设备制造企业MES系统解决方案介绍

机械设备制造行业涵盖了各类工业设备、工程机械、农业机械等多个领域,对生产精度、质量控制和效率提出了较高要求。为了提升生产效率、保证产品质量并满足客户需求,越来越多的机械设备制造企业引入了MES系统。本文将详细介绍MES系统在机械设备制造行业的…

CPPTest设计分析

目录 1 概述2 设计3 扩展Output3.1 扩展实例 1 概述 CppTest是一个可移植、功能强大但简单的单元测试框架,用于处理C中的自动化测试。重点在于可用性和可扩展性。支持多种输出格式,并且可以轻松添加新的输出格式。 CppTest下载地址Sourceforge Github地…

Java StringBuffer类和StringBuilder类

在使用 StringBuffer 类时,每次都会对 StringBuffer 对象本身进行操作,而不是生成新的对象,所以如果需要对字符串进行修改推荐使用 StringBuffer。 StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 St…

DataWhale-吃瓜教程学习笔记 (六)

学习视频**:第4章-决策树_哔哩哔哩_bilibili 西瓜书对应章节: 第五章 5.1;5.2;5.3 文章目录 MP 神经元- 感知机模型 (分类模型)-- 损失函数定义--- 感知机学习算法 - 随机梯度下降法 - 神经网络需要解决的问…

WPF引入控件模板

控件模板基础 需求 需求&#xff1a;客户对目前的控件样式不满意&#xff0c;需要修改样式。 每一个控件都有Template属性&#xff0c;可以定制样式。 我下面以Button为例子&#xff1a; <Button Content"Button" Height"30" Width"100"…

docker mysql cpu100% cpu打满排查 mysql cpu爆了 mysql cpu 100%问题排查

1. docker 启动了一个mysql 实例&#xff0c;近期忽然发现cpu100% 如下图所示 命令&#xff1a; top 2.进入容器内排查&#xff1a; docker exec mysql&#xff08;此处可以是docker ps -a 查找出来的image_id&#xff09; -it /bin/bash cd /var/log cat mysqld.log 容器内m…

2024年Stable Diffusion下载+安装+使用教程(超详细版本)收藏这一篇就够了!

本篇咱们要聊的是如何用“整合包”来搞定StabIe Diffusion WebUI的本地安装和使用&#xff0c;别担心&#xff0c;你不需要成为计算机大神&#xff0c;新手也能轻松上手。不过得提醒一下&#xff0c;你的硬盘得留出100G~200G的空间来&#xff0c;才能玩得转。 整合包放这里&am…

网站被浏览器提示“不安全”的解决办法

在互联网时代&#xff0c;网站的安全性直接关系到用户体验和品牌形象。当用户访问网站时&#xff0c;如果浏览器出现“您与此网站之间建立的连接不安全”的警告&#xff0c;这不仅会吓跑潜在客户&#xff0c;还可能对网站的SEO排名造成等负面影响。 浏览器发出的“不安全”警告…

无人机基础知识(模式篇)

姿态模式&#xff1a;姿态模式通常是在GPS模式无法使用的情况下进行操作的模式。通过操作杆对无人机进行操控&#xff0c;姿态模式下无人机只能提供自稳&#xff0c;不提供定点悬停&#xff0c;受外界影响很大&#xff1b; GPS模式&#xff1a;GPS模式通俗一点就是依靠GPS将无…

分页导航DOM更新实践:JavaScript与jQuery的结合使用

分页导航DOM更新实践&#xff1a;JavaScript与jQuery的结合使用 在Web开发中&#xff0c;分页导航是展示大量数据时不可或缺的UI组件。合理的分页不仅可以提高应用性能&#xff0c;还能优化用户体验。本博客将通过一个实际的DOM结构和模拟数据&#xff0c;讲解如何使用JavaScr…

C++ (第二天上午---函数重载和缺省参数和占位参数)

一、函数重载 1、问题的引入 在实际开发中&#xff0c;有时候我们需要实现几个功能类似的函数&#xff0c;只是有些细节不同。例如希望交换两个变量的值&#xff0c;这两个变量有多种类型&#xff0c;可以是 int、float、char、bool 等&#xff0c;我们需要通过参数把变量的地…

计算机系统基础(二)

1.数值数据的表示 为什么采用二进制&#xff1f; 二进制只有两种基本状态&#xff0c;两个物理器件就可以表示0和1二进制的编码、技术、运算规则都很简单0和1与逻辑命题的真假对应&#xff0c;方便通过逻辑门电路实现算术运算 数值数据表示的三要素 进位记数制&#xff08;十…

以太网常用协议——ARP协议

文章目录 一、 ARP协议与MAC层1.TCP/IP协议2. MAC地址3. ARP映射4. ARP请求和ARP应答 二、以太网帧格式三、ARP协议1. 以太网ARP通信测试&#xff1a; 以太网使用的协议很多&#xff0c;常用的有ARP、UDP等。 再介绍具体协议之前需要先知道一些基本的概念&#xff1a; 一、 AR…

COB显示屏与GOB显示屏封装方式有哪些不同?

很多用户因为使用场景的特殊性&#xff0c;所以会选择防护能力更强的COB显示屏或者是GOB显示屏&#xff0c;两种产品从名称上看只是有一个字母的悬殊&#xff0c;其实使用的工艺截然不同&#xff0c;GOB显示屏通常是在SMD显示屏的基础上进行升级&#xff0c;而COB显示屏则是完全…