结合实际讲NR系列2—— SIB1
这是在基站抓取的sib1的一条信令
L3MessageContent
BCCH-DL-SCH-Messagemessagec1systemInformationBlockType1cellSelectionInfoq-RxLevMin: -64q-QualMin: -19cellAccessRelatedInfoplmn-IdentityListPLMN-IdentityInfoplmn-IdentityListPLMN-IdentitymccMCC-MNC-Digit: 4MCC-MNC-Digit: 6MCC-MNC-Digit: 0mncMCC-MNC-Digit: 0MCC-MNC-Digit: 1trackingAreaCode: 101111000110010111111110ranac: 0cellIdentity: 101111001100111110110010000100000001cellReservedForOperatorUse: notReservedPLMN-IdentityInfoplmn-IdentityListPLMN-IdentitymccMCC-MNC-Digit: 4MCC-MNC-Digit: 6MCC-MNC-Digit: 0mncMCC-MNC-Digit: 1MCC-MNC-Digit: 1trackingAreaCode: 101111000110010111111110ranac: 0cellIdentity: 101111001100111110110010000100000001cellReservedForOperatorUse: notReservedsi-SchedulingInfoschedulingInfoListSchedulingInfosi-BroadcastStatus: broadcastingsi-Periodicity: rf64sib-MappingInfoSIB-TypeInfotype: sibType2valueTag: 11SIB-TypeInfotype: sibType3valueTag: 15SIB-TypeInfotype: sibType4valueTag: 11SIB-TypeInfotype: sibType5valueTag: 29si-WindowLength: s160servingCellConfigCommondownlinkConfigCommonfrequencyInfoDLfrequencyBandListNR-MultiBandInfofreqBandIndicatorNR: 78offsetToPointA: 28scs-SpecificCarrierListSCS-SpecificCarrieroffsetToCarrier: 0subcarrierSpacing: kHz30carrierBandwidth: 273initialDownlinkBWPgenericParameterslocationAndBandwidth: 1099subcarrierSpacing: kHz30pdcch-ConfigCommonsetupcontrolResourceSetZero: 14commonSearchSpaceListSearchSpacesearchSpaceId: 1controlResourceSetId: 0monitoringSlotPeriodicityAndOffset: sl1monitoringSymbolsWithinSlot: 10000000000000nrofCandidatesaggregationLevel1: n0aggregationLevel2: n0aggregationLevel4: n4aggregationLevel8: n2aggregationLevel16: n1searchSpaceTypecommon: dci-Format0-0-AndFormat1-0searchSpaceSIB1: 0searchSpaceOtherSystemInformation: 0pagingSearchSpace: 0ra-SearchSpace: 1pdsch-ConfigCommonsetuppdsch-TimeDomainAllocationListPDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 53PDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 67PDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 95PDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 100PDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 86PDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 72PDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 53PDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 67PDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 95PDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 100PDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 86PDSCH-TimeDomainResourceAllocationk0: 0mappingType: typeAstartSymbolAndLength: 72bcch-ConfigmodificationPeriodCoeff: n4pcch-ConfigdefaultPagingCycle: rf128nAndPagingFrameOffsetoneEighthT: 2ns: oneuplinkConfigCommonfrequencyInfoULscs-SpecificCarrierListSCS-SpecificCarrieroffsetToCarrier: 0subcarrierSpacing: kHz30carrierBandwidth: 273p-Max: 26initialUplinkBWPgenericParameterslocationAndBandwidth: 1099subcarrierSpacing: kHz30rach-ConfigCommonsetuprach-ConfigGenericprach-ConfigurationIndex: 17msg1-FDM: onemsg1-FrequencyStart: 2zeroCorrelationZoneConfig: 6preambleReceivedTargetPower: -100preambleTransMax: n10powerRampingStep: dB2ra-ResponseWindow: sl20ssb-perRACH-OccasionAndCB-PreamblesPerSSBfour: 8groupBconfiguredra-Msg3SizeGroupA: b480messagePowerOffsetGroupB: dB0numberOfRA-PreamblesGroupA: 4ra-ContentionResolutionTimer: sf64rsrp-ThresholdSSB: 36prach-RootSequenceIndexl839: 525restrictedSetConfig: unrestrictedSetpusch-ConfigCommonsetuppusch-TimeDomainAllocationListPUSCH-TimeDomainResourceAllocationk2: 1mappingType: typeAstartSymbolAndLength: 27PUSCH-TimeDomainResourceAllocationk2: 2mappingType: typeAstartSymbolAndLength: 27PUSCH-TimeDomainResourceAllocationk2: 3mappingType: typeAstartSymbolAndLength: 27PUSCH-TimeDomainResourceAllocationk2: 4mappingType: typeAstartSymbolAndLength: 27PUSCH-TimeDomainResourceAllocationk2: 5mappingType: typeAstartSymbolAndLength: 27PUSCH-TimeDomainResourceAllocationk2: 6mappingType: typeAstartSymbolAndLength: 27PUSCH-TimeDomainResourceAllocationk2: 7mappingType: typeAstartSymbolAndLength: 27PUSCH-TimeDomainResourceAllocationk2: 2mappingType: typeAstartSymbolAndLength: 55PUSCH-TimeDomainResourceAllocationk2: 3mappingType: typeAstartSymbolAndLength: 55PUSCH-TimeDomainResourceAllocationk2: 4mappingType: typeAstartSymbolAndLength: 55PUSCH-TimeDomainResourceAllocationk2: 5mappingType: typeAstartSymbolAndLength: 55PUSCH-TimeDomainResourceAllocationk2: 9mappingType: typeAstartSymbolAndLength: 27msg3-DeltaPreamble: 4p0-NominalWithGrant: -76pucch-ConfigCommonsetuppucch-ResourceCommon: 12pucch-GroupHopping: neitherhoppingId: 97p0-nominal: -100timeAlignmentTimerCommon: infinityn-TimingAdvanceOffset: n25600ssb-PositionsInBurstinOneGroup: 11111110ssb-PeriodicityServingCell: ms20tdd-UL-DL-ConfigurationCommonreferenceSubcarrierSpacing: kHz30pattern1dl-UL-TransmissionPeriodicity: ms2p5nrofDownlinkSlots: 3nrofDownlinkSymbols: 10nrofUplinkSlots: 1nrofUplinkSymbols: 2pattern2dl-UL-TransmissionPeriodicity: ms2p5nrofDownlinkSlots: 2nrofDownlinkSymbols: 10nrofUplinkSlots: 2nrofUplinkSymbols: 2ss-PBCH-BlockPower: 16ue-TimersAndConstantst300: ms2000t301: ms2000t310: ms1000n310: n20t311: ms5000n311: n1t319: ms2000"
具体字段的含义
- 小区选择信息(cellSelectionInfo)
q - RxLevMin: -64:
表示小区接收电平的最小质量要求,单位通常是 dBm。UE(用户设备)在选择小区时,会将测量到的接收电平与该值比较,只有当接收电平大于等于此值时,才会考虑选择该小区。
q - QualMin: -19:
小区质量的最小要求,单位可能是 dB。用于衡量小区的整体质量,如信号干扰比等,UE 会结合接收电平和质量来评估小区是否适合接入。 - 小区接入相关信息(cellAccessRelatedInfo)
PLMN 标识列表(plmn - IdentityList)
MCC(移动国家码)和 MNC(移动网络码):
mcc 部分,MCC - MNC - Digit 依次为 4、6、0,表示移动国家码为 460,在中国常见;mnc 部分,有不同组合,如 0、1 或 1、1,用于区分不同的移动网络运营商。
跟踪区域码(trackingAreaCode):
101111000110010111111110 是一个二进制表示的跟踪区域码,用于标识 UE 所在的跟踪区域,便于网络对 UE 进行位置管理和寻呼。
RANC(RAT 区域码):
ranac: 0 表示该区域码的值为 0,RANC 用于在特定的无线接入技术(RAT)下划分区域。
小区标识(cellIdentity):
101111001100111110110010000100000001 是一个二进制表示的小区唯一标识,用于区分不同的小区。
小区预留状态(cellReservedForOperatorUse):
notReserved 表示该小区不被运营商预留,普通 UE 可以正常接入。 - 系统信息调度信息(si - SchedulingInfo)
调度信息列表(schedulingInfoList)
SIB 广播状态(si - BroadcastStatus):
broadcasting 表示系统信息块(SIB)正在广播。
SIB 周期性(si - Periodicity):
rf64 表示 SIB 广播的周期为 64 无线帧(radio frames),UE 可以根据该周期来接收 SIB 信息。
SIB 映射信息(sib - MappingInfo):
列出了不同类型的 SIB 及其对应的 valueTag,如 sibType2 对应 valueTag: 11,UE 可以根据 valueTag 来识别和接收特定的 SIB。
SIB 窗口长度(si - WindowLength):
s160 表示 SIB 广播的窗口长度为 160 个时隙(slots),UE 需要在这个窗口内接收 SIB 信息。 - 服务小区公共配置(servingCellConfigCommon)
下行配置(downlinkConfigCommon)
频率信息(frequencyInfoDL):
频段列表(frequencyBandList):
freqBandIndicatorNR: 78 表示该小区使用的 NR(新空口)频段指示为 78,对应特定的频率范围。
偏移量(offsetToPointA):
28 是相对于参考点 A 的频域偏移量。
子载波间隔特定载波列表(scs - SpecificCarrierList):
子载波间隔为 kHz30,载波带宽为 273,offsetToCarrier 为 0,表示载波相对于某个参考的偏移为 0。
初始下行带宽部分(initialDownlinkBWP):
通用参数(genericParameters):
locationAndBandwidth: 1099 表示初始下行 BWP 的位置和带宽信息;子载波间隔为 kHz30。
PDCCH 公共配置(pdcch - ConfigCommon):
控制资源集 0(controlResourceSetZero):
14 是控制资源集 0 的索引,用于定义 PDCCH(物理下行控制信道)的资源集合。
公共搜索空间列表(commonSearchSpaceList):
包含搜索空间的详细配置,如 searchSpaceId、controlResourceSetId、监测周期、监测符号等,以及不同聚合等级下的候选集数量。
PDSCH 公共配置(pdsch - ConfigCommon):
包含多个 PDSCH(物理下行共享信道)时域资源分配的配置,如 k0(表示从 PDCCH 到 PDSCH 的时隙偏移)、映射类型和起始符号及长度等。
BCCH 配置(bcch - Config):
modificationPeriodCoeff: n4 表示 BCCH(广播控制信道)的修改周期系数为 4,用于确定系统信息修改的周期。
PCCH 配置(pcch - Config):
默认寻呼周期(defaultPagingCycle):
rf128 表示默认寻呼周期为 128 无线帧。
寻呼帧偏移(nAndPagingFrameOffset):
oneEighthT: 2 表示寻呼帧偏移为 2/8 个周期;ns: one 表示相关的参数设置。
上行配置(uplinkConfigCommon)
频率信息(frequencyInfoUL):
子载波间隔为 kHz30,载波带宽为 273,p - Max: 26 表示最大发射功率为 26dBm。
初始上行带宽部分(initialUplinkBWP):
通用参数(genericParameters):
locationAndBandwidth: 1099 表示初始上行 BWP 的位置和带宽信息;子载波间隔为 kHz30。
RACH 公共配置(rach - ConfigCommon):
包含随机接入信道(RACH)的详细配置,如 PRACH(物理随机接入信道)的配置索引、消息 1 的频分复用方式、起始频率等。
PUSCH 公共配置(pusch - ConfigCommon):
包含多个 PUSCH(物理上行共享信道)时域资源分配的配置,如 k2(表示从 PUSCH 到 HARQ - ACK 的时隙偏移)、映射类型和起始符号及长度等,以及消息 3 的功率偏移和标称功率等参数。
PUCCH 公共配置(pucch - ConfigCommon):
包含 PUCCH(物理上行控制信道)的资源配置、组跳频设置、跳频 ID 和标称功率等参数。
时间对齐定时器(timeAlignmentTimerCommon):
infinity 表示时间对齐定时器设置为无穷大,意味着 UE 在该配置下不需要频繁进行时间对齐调整。
其他配置
定时提前量偏移(n - TimingAdvanceOffset):
n25600 表示定时提前量的偏移值。
SSB 位置(ssb - PositionsInBurst):
inOneGroup: 11111110 表示同步信号块(SSB)在一个组内的位置分布。
SSB 周期(ssb - PeriodicityServingCell):
ms20 表示服务小区中 SSB 的广播周期为 20ms。
TDD 上下行配置(tdd - UL - DL - ConfigurationCommon):
包含两个 TDD 模式的上下行传输周期、下行时隙和符号数、上行时隙和符号数等配置信息。
SS - PBCH 块功率(ss - PBCH - BlockPower):
16 表示 SS - PBCH(同步信号和物理广播信道)块的发射功率。 - UE 定时器和常量(ue - TimersAndConstants)
包含多个定时器和计数器的值,如 t300、t301、t310 等定时器的时长,以及 n310、n311 等计数器的值,用于控制 UE 在不同状态下的行为,如连接建立、重建立、失步等过程。
这些配置信息对于 UE 接入小区、进行上下行数据传输、接收系统信息和进行寻呼等操作至关重要,UE 会根据这些配置与网络进行交互。
相关文章:
结合实际讲NR系列2—— SIB1
这是在基站抓取的sib1的一条信令 L3MessageContent BCCH-DL-SCH-Messagemessagec1systemInformationBlockType1cellSelectionInfoq-RxLevMin: -64q-QualMin: -19cellAccessRelatedInfoplmn-IdentityListPLMN-IdentityInfoplmn-IdentityListPLMN-IdentitymccMCC-MNC-Digit: 4MC…...
绿虫仿真软件如何预测组件衰减对收益的影响?
绿虫仿真软件通过其精细化的算法模型,能够有效预测组件衰减对光伏电站收益的影响,主要体现在以下几个方面: 1. 数据基础与模型构建 历史数据分析:绿虫软件整合了长达20年的历史数据,涵盖气象、地理、组件型号、逆变器…...
本地部署DeepSeek集成VSCode创建自己的AI助手
文章目录 安装Ollama和CodeGPT安装Ollama安装CodeGPT 下载并配置DeepSeek模型下载聊天模型(deepseek-r1:1.5b)下载自动补全模型(deepseek-coder:1.3b) 使用DeepSeek进行编程辅助配置CodeGPT使用DeepSeek模型开始使用AI助手 ✍️相…...
07贪心 + 动态规划(D1_基础学习)
目录 讲解一:贪心算法 一、什么是贪心算法? 二、贪心算法的应用场景 三、使用Java代码实现贪心算法 四、知识小结 -------------------------------- 讲解二:动态规划算法 一、什么是动态规划算法 二、动态规划算法求解问题需要具备的…...
redis之数据库
文章目录 服务器中的数据库切换数据库数据库键空间读写键空间时的维护操作 设置键的生存时间或过期时间保存过期时间过期键的判定过期键删除策略清性删除策略的实现定期删除策略的实现 总结 服务器中的数据库 Redis服务器将所有数据库都保存在服务器状态redis.h/redisServer结…...
【竞技宝】电竞世界杯:无畏契约首次入选正式项目!
北京时间2月12日,电竞世界杯基金会(EWCF)与知名游戏开发商拳头游戏(Riot Games)在近日共同宣布达成三年合作伙伴关系。同时,三大顶级电竞项目——《英雄联盟》《英雄联盟:云顶之弈》(…...
Golang GORM系列:GORM 高级查询教程
有效的数据检索是任何程序功能的基础。健壮的Go对象关系映射包(称为GORM)除了标准的CRUD操作之外,还提供了复杂的查询功能。这是学习如何使用GORM进行高级查询的综合资源。我们将涵盖WHERE条件、连接、关联、预加载相关数据,甚至涉…...
智能GUI Agent是什么,有什么应用领域
智能GUI Agent是什么 研究背景与目的:GUI长期主导人机交互,LLM特别是多模态模型的出现,为GUI自动化带来变革,催生了基于LLM的GUI智能体。这些智能体可理解自然语言指令,处理复杂GUI元素并执行操作,改变了用户与软件交互方式。论文旨在梳理该领域发展脉络,剖析关键要素,…...
k8s优雅操作pod容器组
k8s优雅操作pod容器组 回退备份 kubectl get deploy deployName -o yaml>>deployName-bak-date "%Y-%m-%d".yaml获取副本数 replicasecho | kubectl get -o template deploy/deployName --template{{.spec.replicas}}停止容器组 kubectl scale deployment …...
在 Mac ARM 架构上使用 nvm 安装 Node.js 版本 16.20.2
文章目录 1. 安装 nvm(如果还没有安装的话)2. 加载 nvm 配置3. 列出特定系列的 Node.js 版本(远程):4. 安装 Node.js 16.20.25. 使用指定版本的 Node.js6. 验证安装 在 Mac ARM 架构上使用 nvm 安装 Node.js 版本 16.…...
MySQL创建存储过程和存储函数
【图书推荐】《MySQL 9从入门到性能优化(视频教学版)》-CSDN博客 《MySQL 9从入门到性能优化(视频教学版)(数据库技术丛书)》(王英英)【摘要 书评 试读】- 京东图书 (jd.com) MySQL9数据库技术_夏天又到了…...
PyQt学习记录03——批量设置水印
0. 目录 PyQt学习记录01——加法计算器 PyQt学习记录02——串口助手 1. 前言 本次主要是为了学习Qt中的 QFileDialog 函数, QFileDialog.getExistingDirectory:用于选择文件夹,返回的是一个文件夹路径。 QFileDialog.getOpenFileName&…...
vivo手机和Windows电脑连接同一个WiFi即可投屏!
虽然现在很多人喜欢刷手机,但是对于长时间需要使用手机办公的人来说,手机屏幕还是太小了,当人一天二十四小时中要花费近十个小时摆弄手机,就会渴望手机屏幕能够大一点,至少看的时候,眼睛舒服一点。 因为嫌弃…...
芯盾时代数据安全产品体系,筑牢数据安全防线
芯盾时代数据安全治理(DSG)框架,以国家法律法规、行业监管标准、行业最佳实践为依据,从数据安全战略出发,以数据分类分级为支撑,构数据安全管理体系、数据安全技术体系、数据安全运营体系与数据安全监督评价…...
异位妊娠唯一相关的是年龄(U型曲线)
异位妊娠唯一相关的是年龄(U型曲线) 简介 异位妊娠,俗称宫外孕,是指受精卵在子宫体腔以外着床发育的异常妊娠过程 。正常情况下,受精卵会在子宫内着床并发育成胎儿,但在异位妊娠中,受精卵却在…...
CTF-WEB: 利用Web消息造成DOM XSS
如果索引中有类似如下代码 <!-- Ads to be inserted here --> <div idads> </div> <script>window.addEventListener(message, function(e) {document.getElementById(ads).innerHTML e.data;}); </script>这行代码的作用是将接收到的消息内容…...
【通俗易懂说模型】一篇弄懂几个经典CNN图像模型(AlexNet、VGGNet、ResNet)
🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀深度学习_十二月的猫的博客-CSDN博客 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 1. 前言 2. …...
Unity世界坐标转成UI坐标
Unity世界坐标转成UI坐标 介绍转换代码合并方法总结 介绍 在Unity中官方提供了很多坐标转换的API,但是还没有一个API是将世界坐标系转换成UI的坐标系,世界坐标系在屏幕中的位置是不固定的所以有时候需要转换成UI坐标系**(注意这里不是转换成…...
自制游戏——斗罗大陆
很简陋,没有图,请见谅 // mine[0] 级数 // mine[1] 战力 //mine[2] 1 白虎 //mine[2] 2 昊天锤 //mine[2] 3 蓝银草 #include <bits/stdc.h> using namespace std; int mine[100],live3, dou 1, luo 1, da 1, bag[1000], huan 0, lia…...
MindStudio制作MindSpore TBE算子(四)算子测试(ST测试-Ascend910B/ModelArts)--失败尝试
上一节,MindStudio制作MindSpore TBE算子(三)算子测试(ST测试),因此缺乏对应的硬件环境导致无法进行ST测试,导致难以自安,今天搞来Ascend910B服务器来填坑,看看是否是硬件…...
STM32L4 RTC唤醒中断实战:用CubeIDE配置30秒低功耗定时,实测两种模式差异
STM32L4 RTC唤醒中断实战:用CubeIDE配置30秒低功耗定时,实测两种模式差异 在电池供电的嵌入式设备开发中,精准的周期性任务调度与极致的功耗控制往往是一对需要权衡的技术矛盾。STM32L4系列凭借其出色的低功耗特性与灵活的RTC模块,…...
基于MCP协议构建地方财政智能体:开源项目实践与开发指南
1. 项目概述:当MCP遇上地方财政,一个开源智能体的诞生最近在开源社区里,一个名为apifyforge/municipal-fiscal-intelligence-mcp的项目引起了我的注意。这个项目名听起来有点“学术”,但拆解开来,其实指向了一个非常具…...
安全生产隐患识别太难?实测实在Agent:AI模型语义分析能力测评详解与信创落地指南
摘要: 步入2026年,安全生产已进入“全量数字化”与“法制化”深度融合的高压期。随着《安全生产法》的持续深化执行,企业面临着海量隐患识别、跨系统数据流转及信创环境适配的三重挑战。传统的人工排查与基于API的自动化手段,在面…...
Hermes Agent 框架对接 Taotoken 自定义提供方的配置要点与排错
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Hermes Agent 框架对接 Taotoken 自定义提供方的配置要点与排错 基础教程类,针对希望将 Hermes Agent 连接到 Taotoken…...
终极指南:Shoelace如何利用Shadow DOM实现完美样式隔离
终极指南:Shoelace如何利用Shadow DOM实现完美样式隔离 【免费下载链接】shoelace Shoelace is now Web Awesome. Come see what’s new! 项目地址: https://gitcode.com/gh_mirrors/sh/shoelace Shoelace(现已更名为Web Awesome)作为…...
教育科技产品集成AI答疑功能的技术方案与接入实践
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 教育科技产品集成AI答疑功能的技术方案与接入实践 在在线教育领域,为学生提供即时、准确的答疑服务是提升学习体验和效…...
IoT产品创新方法论:构建“场景 × 技术 × 数据 × 商业”的系统创新能力
目录 一、 问题与背景 二、 本文将系统讲解 三、 什么是IoT产品创新 3.1 核心定义 3.2 IoT创新的核心变化 3.3 创新的三种层级(阶梯论) 四、 IoT产品创新结构模型(核心框架) 4.1 四维创新模型(核心体系) 4.2 创新演进路径 五、 五大IoT创新方法论(核心武器库)…...
3步解锁Cursor AI编程助手完整功能:多账户管理与设备重置终极方案
3步解锁Cursor AI编程助手完整功能:多账户管理与设备重置终极方案 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reach…...
5分钟搞定B站视频数据分析:让数据采集变得像点外卖一样简单
5分钟搞定B站视频数据分析:让数据采集变得像点外卖一样简单 【免费下载链接】Bilivideoinfo Bilibili视频数据爬虫 精确爬取完整的b站视频数据,包括标题、up主、up主id、精确播放数、历史累计弹幕数、点赞数、投硬币枚数、收藏人数、转发人数、发布时间、…...
【JWT】JWS与JWE实战解析:从结构差异到安全选型指南
1. JWT、JWS与JWE的核心概念解析 第一次接触JWT相关技术时,我也曾被各种缩写搞得晕头转向。直到在真实项目中踩过几次坑,才真正理解它们之间的关系。简单来说,JWT就像是一个快递包裹,而JWS和JWE则是两种不同的包装方式——前者像…...
