今天跟大家来聊一下最近一周做的一些事情。上周我们提到就是我们写了一个配置中心的一个服务,部署到我们服务器之后,然后我们服务器的芒果 db 没有安装成功。第一个问题就是怎么将芒果 db 安装到另一个死服务器, 经过测试发现六的版本然后比四的版本要麻烦很多,而且六的版本他的需要工具,然后需要单独去下载一个 mango 系这样一个需要 像四点零的版本,他就是可以直接使用这个 mongo 这样一个命令。然后我看了一下腾讯云的那个,嗯,云数据库的 mongodb, 他也是四点多的一个版本,所以说我这里选择了四个一个版本。在部署到 linux 之前,我先在我的 windows 电脑上面,然后 也部署了一个猫狗 db, 然后通过希尔的方式,然后去打开,嗯,通过一些操作命令连接,然后进入这个希尔这里,操作完成之后,然后就登录到另一个服务器,然后通过下面的命令然后去安装。 另外这个启动芒果 db 的服务还是很重要的,如果你的机器重启,呃,或者是你一个你一台新的服务,然后你就需要启动芒果 db 的一个服务, 他的安装路径也比较重要,当你的环境变量没有配置成功的时候,你就需要进入到这个病的目录来执行这个芒狗这个命令来进入笑。 进入系好之后,我们就可以 use 你的数据库,然后再通过 d b 点,然后创建集合 create a collection, 这里的 connect action 就类似于买 收口里面的表,这样就可以操作你的芒果 db 的一个数据,下面是总结了一些芒果 db 呃真商查改的命令,这个命令我是没有记得,所以说做了一个笔记, 后面如果忘了就直接来这里看。下面一个问题是当你的芒果 db 然后部署到服务器,但是部署没有成功的时候,这个时候如果你的后台服务去连接这个芒果 db 的话,就会报这个错,然后我这里就通过 pm two logs, 然后查了一下我这个 log 服务的一个 log, 然后看到他是连接拒绝,然后后面想起来就是你的服务在安装完成之后没有重启,然后于是就重启了一下嗯后台的接口服务,这样就可以正常的使用了。我们现在打开的就是线上的一个配置中心,相比上一个星期我们增加了分页查询,然后还有模糊匹配, 还有就是暴露对应的接口给外部,然后这样我们这个配置就可以直接使用起来。另外还有就是登录健全后面会讲,我们下面再来看下一个问题,这里是我在 linux 上面进行操作过后发现,然后我的 visit 的一个服务 呃有点异常,于是像之前一样查了 pmq 了一个 log, 然后发现是嗯买 circle 的一个问题, 因为我云斗士上面的 mcco 跟我 linux 服务站 macco 他的呃环境是不一样的,导致两边的配置不一样,然后在网上查了一下,然后通过修改这个配置文件,增加一个这个 sqlmod 就可以。 另外还有就是我们在写这个配置中心的后台服务时候,然后我们最开始是指引入了嗯 core, 然后以及 呃芒果 d b, 但是发现它的呃 e s 零的加 plate 没有加,然后导致每次修改代码你都要去手动去格式化,就在这里面, 特别是这种画行的这种,如果你写逻辑写多了,他嗯,你要手动去控制画行会比较麻烦,所以说还是要安装一个 esnint 加 pract 来进行格式化,就是你保存的时候自动会给你格式化号代码,这里的话有一个链接就是, 嗯,对于 note 的项目,你怎么去引入一个 yes lint 加 practy, 这个 note 项目是没有嗯脚手架的,所以说需要自己一步一步去安装,这是对应的安装步骤,然后安装完了之后发现这一个呃,这一个没有声 效,然后最后查了这个嗯 esnint 这个 log, 然后发现这个 jaster 有点问题,这是个单元测试,但是我们这里并没有用到这个单元测试,然后最后把它去掉就可以了。另外还有一个拼写错误也导致他会识别异常, 当我们 e s inter 加 protect 配置的时候,你没有生效,你就要在这个 output 里面,然后查看 e s inter 的一个 log, 看他报了什么错。 再来看下一个问题,下一个问题是这个配置中心的前端在自动化部署的时候构建的时候有问题,这里主要是因为我是把代码克隆到我的嗯服务器上面去, 然后在每次更新的时候都是 get poor, 但是我的服务器跟我本地的 note 的版本是不一致的,然后导致两边生 package, 点 log 点接审它是不一样的。这种情况在部署的流程里面加一个删除这个文件,然后再继续执行就可以。 后面在部署的时候又发现一个新的问题,就是 wait n p m run b 五的时候,他的历史的文件生成的有点问题,他只生成了这个图标,但是他的俄赛斯文件都没有, 然后这种情况的话,我是把整个项目直接删除,然后再重新克隆,然后再呃重新 n p m 输,然后再 n p m b 的这种虽然慢一点,但是他可以保证百分之百是可以部署成功的。再来看一个买 circle 的一个问题, 这个问题是因为我在 visit 时进行调试的时候,就是我排查数据库的问题,嗯,然后在直播的时候连接了一个 myself, 然后那时候我没有 注密码,所以说我在直播的时候公开了密码,在下播之后,然后我就想把这个密码改回来,于是就查了一下买 circle 的一些命令,比如说开服务,停止服务,还有重启以及查看他的一个运行状态。 另外就是他的修改密码,这里修改密码需要注意的就是八点零的版本跟之前的版本修改方式是不一样的,然后修改了之后又发现一个问题,然后就是这个摆放号的一个问题, 然后发现摆放号的问题,重启一下接口服务就正常了。这个摆放号跟这个 local house 了是怎么回事呢? local house 的话就是只能本地,本地机器可以连,然后百万号的话就可以允许远程连接,这里有一个链接,大家可以去看一下。再来看一个图片的问题,我们知道 在网页里面像图片有两种显示方式,一种是通过因密集标签显示,另一种是通过配置 background 因密集来显示。这两种方式各有各的好处, 像比如说英密集标签的话,他可能更利于 su 嗯, css 设置图片的好处,他就是可以在媒体查询的时候,他可以根据不同的分辨率设置不同的嗯,图片的一个尺寸大小, 在做自适应的时候是比较有优势的。再来看一个前端动效的一个问题, 向下滚动的时候可以切换手机颜色,这个是我在 vivo 官网看到的这个效果,然后我就很好奇他到底是怎么实现的,于是我就研究了一下具体是怎么实现的,然后写了一个 demo。 做这个 demo 的时候,然后我新开了 一个仓库,就是 nice 点左幺幺点 com, 然后我把它命名为 nice 方线。然后这个仓库的话主要用于收集一些前端一些特效,然后就比如说一些有趣的功能,他到底是怎么实现的,后面会做一些更新,这个是第一个, 如果后面有新增的话会在这里面添加,然后这里面可以在线预览他的一个效果。然后右上角的话就是 github 的一个链接,就是他代码的位置。 另外你也可以通过呃右键查看网页原代码,因为它是纯静态的,所以说你就算访问不了 github, 你也可以直接看它的原码。 下一个问题,用不同的前端开发框架开发同一个功能十次,嗯,框架入门练手小项目。这个问题的话是我在宾利,宾利上面看到了一个嗯 嗯,这个视频,他这个视频就讲了,嗯,用一个用十个框架去开发同一个功能,他只是一个 tutor list, 这样比较简单。 然后我的想法是,我这次不是正好做了一个配置中心吗?然后我就想着把配置中心的这个他有基本的增酸改查,然后还有 uy 以及请求接口以及这个菜单,然后顶部这样的一个路由切换,然后这是一个基本的一个功能。 我就想着,嗯,按照这个思路来的话,我创建了一个新的仓库叫 f e freework study, 后面当我想学新的框架的时候,然后我可以来通过来实现这样一个功能,然后来练习。 比如说我后面想学习新的前端框架,然后我用新的前端框架把这一个功能实现,然后基本上就入门了。你对基本的正常改查一般是没有问题的。 这里的话我专门打了一个 top, 就是最简单的一个正常改插前端后端对应的接口就是四个,就是正常改插 这个仓库。我特意截了一些图片,他的这个练手的小项目就是这样一个简单的页面,包含,嗯,新增,然后修改以及删除,然后有接口请求,有 ui 框架,然后对于上手一个新的框架是比较有有用的。 这里的话现在只是用 vu 三加 t s 加 animal plus, 然后这个实现了。呃呃,一次这个功能 后面我会增加其他框架的一个实现,比如 react, 嗯,或者是其他的一些全能框架。下面这个问题的话是接口请求的一个问题,就是我们在配置中心我发现调试接口的时候,这个接口同一个接口哈,他都每次 每次都请求了两次,然后 windows 里面会有这种情况,好像麦克里面好像就不会有,麦克好像就不会显示两次。这种情况是因为他有一个嗯请求预见, 请求预检的话,他会,比如说对于跨域,然后有一些特殊的请求头被设置的时候,他出于安全考虑会先发一个请求预检,看一下是否允许跨域,如果不允许跨域的话,前端会直接把他拦截。就是通过先发 发一个 oppo 显示的一个请求,给后端按后端去嗯,去通知,然后填嗯浏览器看是否需要拦截,然后呃,这个 oppo 显示请求拿到他的信息之后,如果说是允许跨越的话,就会发真实的 post 请求, 所以说就会有两次。关于这个请求遇见啊,可以看一下我这里,我之前总结的一篇文章里面有讲什么情况下会触发请求遇见,以及就是这个跨越允许请求遇见,这种情况要怎么做? 就比如说你前端的功能是在嗯,五幺七三这种这个端口,但是你后端的接口是在五千接口,这样就涉及到一个跨越的问题,然后我们一般项目里面可能会使用前端,里面可能会使用 deviso 来进行一个跨越的一个 代理。还有一种方法呢,就是后端直接允许跨越,因为接口是自己写的吗?所以说我们自己可以控制,这是一个科二的一个中间键,然后会设置允许跨越。有一个特殊处理,就是这个请求遇见, 当发送 oppo 显示的请求的时候,然后都返回正常。嗯,下面一个问题就是在部署 nice 点左幺幺点 com 的时候,发现直接访问这个路径的时候,他并不能嗯,直接跳转到 index 点 html, 如此需要你访问全路径才能访问, 因为在 o s s 里面就是它的前端项目,你要设置它的静态页面,不然的话它是不会去自动匹配它目录下的 index 来看下一个问题,嗯,就是 vu 三加 note g s 登录健全的一个流程,使用 g w t 呃, g w t 的全称叫机身外部 token, 这里有贴软硬封的 一个入门教程,他讲的很清楚,包括他的一些格式以及为什么需要这个,大家可以了解一下,然后我这里只讲他是怎么实现的。当前端将多个硬请求发送到后端的时候, 后端叫验用户名密码是否正确,如果验证正确的话,然后通过 j w t 点散,然后去生成一个 token 给到前端,这个 token 里面会包含用户的一个 id, 因为后面用户每次请求的话,他会传一个 token 给到 后端,后端再拿这个偷啃解析,就可以判断到底是哪一个用户来登录了。这里没有用筛选哈,所以说服务端是无状态的,这个状态保存在前端,所以说偷啃里面会有一些嗯,用户 id 名称这些信息, 然后前端 login 的接口请求成功之后,然后后端会把 token 然后返回给前端,然后前端拿到这个 token 之后,然后把它存到这个 local storage 里面。 最开始的话,我是存到这个状态管理里面,发现这个状态管理里面一刷新,状态管理的词就全没了,所以说这里用了一个 local story 级,然后存这个 token, 然后当请求的时候,我们在请求的全局拦截里面加一个处理,就是你每次发起请求之前,我都会在你的请求头里面加一个 token, 这个 token 也是从 local storage 里面取的。 下面还有一个就是服务端的一个健全的一个拦截,他是一个全局的一个中间键,就是当你有请求的时候,你先经过这个中间键来判断他是 否需要健全,如果需要健全的话,我就会呢验证你的 token 是否正确。验证这个 token 的话,呃,主要是两个部分,一是这个 token 是否是有效的,另外还有一个就是验证这个 token 的有效期是否有效。 然后把 token 解析出来之后,我们会拿到它的一个嗯, user id, 然后把它存到这个 user in for 里面,后面就可以直接使用。当你验证失败的时候,我会返回一个负一的错误码,然后前端去处理,然后跳到 logo 应界面。 对于一些比如说不需要健全的,我们可以在这里加一个白名单,或者加一个特殊的一个判断。嗯,前端关于未登录的拦截,我们也做了一个 xu 的一个响应拦截,就是我们拦截到负一的错误码的时候,我们就跳转到录音的一个界面,这就是一个 完整的前后端 g w t 登录建成的一个全流程,这也是在做 config 点,主要要点看我们这个配置中心健全时候使用的一个方式。最后一个问题就是当我们把这个配置中心做好之后,我们要使用这个配置, 就比如说我现在,我现在这个是额的命,额的命的话属于一个测试的一个账号,我们现在把 local story 里面的这个把它删掉,然后我们再刷一下, 这个时候他应该是没有权限了,然后我们访问我们的代左,就是我自己私人的一个账号, 登录进去之后我们可以看到这里的配置,你配置 成功之后,你可以通过这个接口来获取你的这个配置,然后你就可以在你的项目之中使用了,我们可以访问一下,可以看到这里就是一些数据,就是你在那里配置的数据,也是我们下面这个要讲的内容, 就是短链接服务, s 点左幺二点 com, 首先这个短链接服务其实就是一个静态的 h t m l, 它会先从我们刚才说的那个接口里面去拿到这个配置,拿到配置之后把它转成 jason, 然后再 把它存成见值对的一个形式,这个见值对的话是在这里配置的,这个是 k, 这个是值。当我匹配到我的我的页面的路径是这个的时候,那我就进行跳转,有这个对应的 redirect, 然后我就 直接用 location off 直接跳过去,如果没有的话就提示不存在,我们可以访问的试一下 s 点左幺幺点 com, 二零二二, 我们可以看到他可以直接跳到我的这个二零二二年的一个总结,这个是羽雀上面的。然后我们再来看一下 s 点左幺零 com, 二零二二三零一, 我们就可以看到我们这个音乐的一个总结啊,这就是我们配置中心这个短链接,嗯,这个功能的一个实际的一个使用。今天的内容就到这里了,我们下个视频再见。
粉丝1587获赞6267


我们的接口你用的健全方式是什么方式?脱啃这种有脱啃这种接口怎么去做这个测试呢?我们会使用那个接粉提取器做关联,像这个的话你就可以这样子解释一下,因为我们是一个这样的脱啃的这种接口的健全,所以的话如果说后面的接口需要用到这个接口的一个脱啃的话,我们会去接啊 到这个最后的返回值,然后的话用后置主联系里面的这个提取器,然后这个里面的提取器是有两座吗?一种是监测,一种是正德。那么我们的接口的返回程是接线格式的,所以的话我们都会用接线提取器来进行一个数据的提取,然后把它提取出来之后复制一个变量,再把这个变量传遍下一个接口去去做一个使用就可以了,所以这样说会更加的清楚一点。

呃,提到系统的健全认证啊,很多小伙伴应该都不陌生,比较常见的就是登录模块对吧?输入账号,输入密码,传到后台进行登录验证,通过啊,就跳转主页,一般呢都是这个逻辑, 传统的模式呢是基于 c 审的对吧?登录之后呢,后台结果就会返回一个 ccid, 然后呢前端去保存在啊 q k 里面访问页面的时候呢,就会带上 q k 里面的这个 c 神到服务团去做交易, 教员成功呢就允许访问啊,教员失败呢就拒绝访问啊,这个是传统的基于 c 审的这个处理方案 啊,我已经差不多有六七年没有做相关的这个脚印了,用 ccsid 一般呢也都是在单体架构里面才会用,那么随着系统的 扩展啊,到了风波式系统下面,整个服务就会分割成了很多小模块,对吧?又叫做这个微服,那比如说像用户中心啊,课程中心,商场中心啊,通知中心,物流中心等等好多模块,那么每一个模块呢,可能都需要做健全啊,都要做认证, 都实践一遍呢,太浪费了,而且呢也不现实。而且现在很多的认证需要同时支持啊,账号密码,短信验证码,呃,号码一键登录对吧,还有微信登录, 而且还要支持 appiq 五啊,小程序啊, pc 端啊,很多类型中端的这个访问,所以呢就迫切需要有一套统一的啊,对外健全的认证的中心。 那么新生的模式呢,很明很明显啊,他不太适合啊,主要呢是基于 ok 的,那么在 abc 端啊,他是不能用的, 而且呢服务端的村储同步啊,也是个问题,因为涉及到啊多个端对吧,他需要啊,满足一块登陆啊,然后所有的地方都能去啊,同步使用啊,这块在呃整个服务端的村住方面也是个问题, 那么目前呢,绝大部分的情况啊,都是基于这个 token 的方式啊,来对外提供这个健全和认证服务的。那么实现的原理呢,其实也很简单啊,用户登录的时候啊,抖音验证码或者是账号密码啊,认证通过啊,接口呢,就会生成一个 token, 那么其实呢就是啊,支付串,对吧?然后呢服务端要把这个头坑存起来,那么一般呢也都是放在啊,像我们的蜂木石缓存这个 release 里面,对吧,那么有一定的这个有效期啊,有效期内啊,所有的这 模块的健全访问啊,都可以从 reds 里面来获取到 token, 如果存在啊,就说明认证成功,如果不存在就说明他已经失效了,是一个非法请求。那么对于前端呢啊,需要把认证返回的 token 保存在本地 啊,其他接口起牛的时候呢,会带上这个头啃,当然也可以啊,塞到这个黑袋里面啊,效果都是一样的。 那么基于督客模式呢,一般也都是采用这个 springwatch tool 的这个竞选方案,那么除了账号密码还有验证码,微信一键登录啊啊,一个人可能会有三四种这个认证方式,他是不管哪一种啊,认证之后呢,也都会生成一个啊,全局的这个 took。 呃,另外偷啃的生长方式呢,也有几种,比较常见的就是接 wt 啊,接送外部偷啃对吧,里面存储了一大堆的用户的基本信息啊,加密存储好处 故事啊,不需要再去查数据库了,对吧?我们可以直接从这个图坑里面就可能解析出用户的信息,不好的地方呢,就是这个字母串太长了,传来传去呢,也影响我们的这个网络 io 啊,我们一般用的呢,其实都是采用这个 uid 来生产的啊,然后呢,存在我们的微历史里面啊,做一些基础信息的存储好了,本期的视频呢,就是这些了,如果您对本期的内容呢,有任何疑问,欢迎大家在评论区给我留言,谢谢大家!

登录健全这么重要,这么核心的功能,你们居然使用第三方框架?我看到很多人在开发登录健全的时候啊,要么是使用的 swing civility, 要么使用的是 cylo, 要么使用的是洒脱。看, 首先 special lady 很难满足我们的业务场景,而且太重了,我曾经想让他满足我的业务,我必须得重写十几个类息肉虽然没有使用过,但是我觉得也是半斤八两。最后说一下这个洒脱肯,其他的我先不看,首先他商业版都出来了, 也就是说免费版的可以满足一些简单的一些功能需求,对吧?你要是一些复杂的场景和一些性能,你必须得付费,付费版也不一定能满足你的需求。为什么不能像八个一样,自己手写一个登录健全框架呢?特别简单,无论是从需求还是性能方面,我都能轻松驾驭。所以 想做一个真实靠谱的项目,就跟着八哥学习,八哥手把手教你从零到一进行项目实战。现在下单教程,电子文档原码通通给到你们,还有答疑群。

需要健全的接口是怎么处理的呢?健全是什么呀?还有这玩意吗?从来没有听说过。首先先分析一下接口采用的是什么样的健全方式,是 cookie, seed 呢?还是 token? 那如果是 topic 的方式的话,我们只需要利用 request, 互动的 c 等类将它实力化。之后在我们每次请求的时候呢,通过它去传递,它自动会记录顾客的信息。那如果是 topic 的方式呢?那么你先要知道 topic 它是怎么返回回来的,然后我们去提取 topic 的值,在下一次请求当中带向 topic 就可以了。

跨平台开发的时候,我们如果是小程序的健全,需要获取一个扣的,然后调用我们后台借口就可以了,这个都封装好的,不需要重复的去开发,否则的话你光开发这个东西需要花很多很多时间, 而且只要涉及到和其他的第三方平台相关的东西,都是很耗时间的啊。上次有一个 朋友圈里边的一个人,他们搞支付都是一个很困难的事情,然后坑坑坑搞半天,搞了好几周,然后把那个微信支付搞定了,但是还没有搞定支付宝,所以这些东西我们都是封装好的,不需要重复到轮子啊。

好,那么我们接下来呢,来学习 l t 当中的健全和加密的一个过程。 健全跟加密在 lt 里面呢,健全和加密呢,其实加密的话分了 nars 的加密,还有一个呢是空口的 a s 的加密就接入成了加密。 对于这个 nars 过程,因为是 ue 跟核心网之间的交互,包括呢健全加密识别以及这个 a p n 的过程。那么我们健全它的 作用呢?是派生出一套新的秘药,也就是说我们通过健权,只要优异通过健权以后,健权的结果呢,他还会给出一套秘药, 这一套密药呢,这个密药主要就是用于我们的纳斯加密,还有我们的空口的 as 加密都会用到这个密药,安全模式 就是根据这个秘药进行加密,对吧?进行加密,其中呢还有个识别的过程,这个识别呢,其实就是说核心网 根据用户单前的一些标识无法区分用户,那么他需要发起一个识别过程,是吧?让用户呢把你的 emc 啊给报上来啊, emc 给报上来,那么这里重点 我们来学习有关健全,其实健全这个过程呢,他的网源不仅仅是 m m e 参与,其实健全它肯定是需要用户的开户信息的,所以呢必须要呢 h s s 来参与,因为用户的开户信息是存在 hss 里面的。那么怎么进行健全呢?健全指的是刚才我们 rc 连接建立好以后, se 连接也建立好以后, 这里有个初始的 ue 消息啊,初始的 ue 消息,这个初始的 ue 消息 发到 m m e m m e 呢,它就会触发 发一个健全的过程,那么这个健全的过程需要从这个初始的优异消息里面,他把这个古体,这里有古体啊,用户的标识古体取到 m m e, m m e 呢,再发给 h s s, 他会把 emacy 对应的 emacy 发给 hss, 那么 hss 呢?通过这 emacy 去查找用户的开户信息, 通过相应的开户信息,他会生成一套健全的项链。 这个项链呢,在 lt 里面是四元组啊,四元组的项链,这四元组里面分别有一个是 autn, 还有呢就是 x, r, e, s, 还有 k, a, m, s, m e, 还有一个呢就是我们的随机数,那么这四个项量分比有什么作用呢?首先我们来 看一下啊进权,现在 l t 呢,进权是双向进权,也就是说除了网络对手机进权之外,其实手机呢,他也要需要对网络进行进权,那么手机如何对网络进权? 那么刚才 h s s 生成这四元组以后,其中一个 a u t n, 这个 a u t n 是健全的向量, 这个 a o t a 是通过用户的开户信息 emc 对应的一些 k 值, 再结合相应的些算法得出来这个健全的项量。 a u t n, 这个 a u t n, 我需要发给手机,手机内部呢,它也会产生一个健全的项量, 然后去核对这两个,如果核对三的话,那么就是手机也完成了对 基站啊,对网络的健全。那么这个健全项链 aotn 怎么生成?除了用户的开户信息当中的 innocy 对应的 k 值以外呢?它还需要一个随机数, i, n, d 啊,随机数,随机数呢,是我们随机产生的 h s, s 里面啊随机产生的,随机产生呢,在结合相应的用户 开户信息,可以生成这个健全的项量,所以呢,手机册他也要生成一个健全项量,看两个是不是一样的,那么这个健全项量怎么生成啊?手机自己当然知道,他的 emc 也知道,自己 emc 对应的 case 相应的健全算法,手机也知道,但是呢,这个随机数不知道,所以随机数是核心网产生的,所以 h s s 呢,需要把这个随机数也通过这个心令呢,也发给 手机,也发给手机,所以手机啊,他自己根据随机数,再结合其他的一些跟 inmates 相关的开悟信息,可以得出一个健全向量,在和网络 发的这个进权项链,进权项链进行对比,如果一致的话,那么就说明手机对网络也通过进权。 所以呢,这条信令啊,下行的 nars 传送,下行的消息传送,这些都属于 nars 消息,因为是 nars 消息,所以呢,基站则不需要处理。这个 nars 消息呢,是 mme 直接发给手机的。那么哪些发给手机呢? 经过我们刚才分析啊, mme 需要把两个东西发给手机,一个是 autn 健全限量,另外一个呢就是我们产生健全限量的这个随机数 autn, 因为 au 这个 i n d 啊, i n d i n d 呢,和 a u t n 一起发给 优异。我们来把实际的信念打开看一下啊,大家看一下,这个就是我们第一条的下行的 not 消息,也就是说是这条 not 消息啊,这条 not 的消息, 这里面携带什么呢?携带了我们的,再看下面这两条,一个是 r a n d 随机数对吧?另外一个就 a u t n 健全项链, 那么把这两个参数发给 u e, 其中这个 a u t n 呢?随机数,你发给 u e 的目的就是说 u e 通过的学技术,再结合自己相应的 emc 对应的 k 词,再结合一些算法,它可以 算出来一个健全项量,和这个 a u t n 里面携带的健全项量进行对比,一致的话,那么网络就通过了手机对它的健全, 这个是手机对网络健全啊,这是第一步啊,第一步。而且呢在这个第一个下行的 nars 消息里面啊,还有什么信息呢?他还有这两个标识啊,这两个标识大家应该记得,这两个标识分别是我们 s e 接口标识,用户的 s e 接口。我们有两个 id 啊,第一个是基站车的 id, 一个呢是 mm me 的 id, 那么 mm me 的 id 它就通过我们第一条下行的 nars 传送这条消息里面携带的好,这个是第一个部 手机通过对网络进权,那么好我们再回来看啊,通过手机对网络进权了,那么接下来网络得对手机进权, 对网络怎么对手机进权呢?我们前面说了四个项链, 其中还有有一个是 x i s, 这个是一个期望的响应值,这个期望的响应值呢,就是说他会存在我们的 mm 这边,然后呢手机不是有这个 imd 的吗?这个谁那个期望的响应 是跟 imd 还有 k 值有关系的,那么我 imd 告诉你了,手机呢也会根据自己的算法生成一个响应,这个响应呢 直接的通过这个扇形的消息纳斯消息,通过这个扇形纳斯消息呢发到 mme, 然后 mme 呢就会去对比 我自己之前 hss 给的这个响应值七万的响应值,和现在通过这个 nars 消息里面收到的这个响应值它进行对比。 如果通过,那么网络册也完成了对手机的健全,从而呢也就完成了我们的双向健全。 那么健全通过以后到这里健全通过以后呢,接下来又是两条 nars 消息,那么这两条呢,主要是用于我们的 纳斯城的加密,纳斯城的加密他肯定用到密药,这个密药哪里来呢?其实就是我们健全四元组里面还有个 k a s m e 这个更密药,这个更密药他就会生成我们纳斯加密用到的密药, 从我那完成这两步啊,加密的过程,加密的过程,健全完成加密完成,他都是以我们的,那是消息的形式啊,所以我们在呃表面上去看的话,你是看不出来这是健全,这是加密,你只有把这个消息打开, 而且这个消息呢,你在空口还看不出来它是 nice 消息啊,需要在 se 接口才能知道啊。这个呢,就是我们的 健全健全加密以后会有一个初始的上下文建立请求,你看健全加密以后,健全加密以后呢,接下来意味着 m m e 这边 我控制面经历好了,健全加密也经历好了,也搞定了,对吧?所以 m m 呢,他就希望开始建立用户面, 当然这个用户面建立的话,这条消息它是为了去建立这个 e i b 建立 e i b e i b 建立请求就通过初始的上下文建立请求来发发给基站,基站需要建立什么呢?基站需要把 空口的我们的承载用户面的承载建立起来,空口用户面承载就叫 drb, 需要把 drb 建立起来, drb 建立好以后呢,就会回一个初始上下文建立完成,对吧?就是响应,对吧?响应这两条呢,说明我们是建立这个 eib 啊,建立 eib, 那么这条建立好以后,等于说我们建立好了 承载,这个就是默认承载,这就是默认承载,这个默认承载会一直存在,是吧? 我们把这个承载就称为默认承载。如果说建立好默认承载以后,你还要建立其他的承载,那么其他的承载呢? 我们就称之为专用承载啊,因为默认承载的 u 星级呢比较低啊,需要其他专用承载来实现 u 星级比较高的一些业务。 除了初始上下文建立里面它有消息呢,主要就是有关你要建立的这个 eib 啊,要建立这个 eib 的信息,有关这个 eib 的信息, 主要是一些我们的 e i a b 上面它的速率,就是说你可以建立好这个承载,那么你这个承载里面 最大的它的一个输率。除此之外还有一些这个承载相应的 q s 的一些 函数,比如说 q c i 呀,啊,比如说一些优先级啊,优先级都在这些地方啊,都在这个地方,还有呢还会告诉一个秘药,这个秘药呢就是给基站, 基站接下来要进行空口的加密用的啊,就说在这条消息里面啊,还会有一个安全密要,这个安全密要就是接下来空口做安全模式的时候需要的, 因为空口它是我们初始上下文建立请求,这个消息发给基站以后呢,基站收到这个初始的上下文建立请求啊,说明我要去建立这个 e i a b, 但是 e 加 a b 要建立,需要在空口建立用户面,那么空口要建立用户面之前就需要先进行空口加密啊,进行空口加密。所以呢这条消息 建立请求是我希望去建立 erib, 建立 erib 呢,你要把空口建立起来,空口用封面,你需要先进行加密啊,所以这条消息 是建立 erib, 然后呢,请求发到基站以后,基站需要建立一个 as 的安全模式流程, a s 就是接入层的,指的呢就是空口的安全模式,空口的安全模式,它的目的你看用于接入层的加密和完整性的保 保护啊。呃,完整性保护的话,它是针对于我们控制面来说的啊,用户面的话呢,只有加密啊,只有加密。那么加密这里提到的接入层的加密跟完整性保护,他和我们刚才说的纳斯层的是两个独立的, 没有什么联系,只不过呢,他们用的秘药都是通过我们健全生成的啊。那么什么时候启动这个加密空口加密呢? srbe 进利以后, s r b 二进利之前,对吧?然后完整性保护的话呢,只针对控制面来说,加密的话,加密就是针对于用户面,控制面都要进行 加密,那么加密呢,安全模式过程当中的话,马上就开始启动这个加密,马上启动加密。好,那么我们这节课呢,主要就学习了健全和加密,健全呢, 主要是在 h s s 跟 m m e 核心网生成了我们的竞权项量以后跟手续之间进行的双向竞权,然后加密的话呢,一个是 nars 层的加密,一个呢是 a s 层的加密, 一个是空口的,对吧?一个呢是我们核心网纳斯层的加密。这里这个问题竞选算法涉及到了四元组,是哪四元组啊?这个四元组呢,一个是 a u t 跟健全的令牌,这个是要进行手机对网络健全用的。第二个 i n d, 这是随机数,随机数呢是我们手机也好, h s s 也好,来生成一些我们的健全向量。 还有这个 k a s m e 啊,这是更密药用于加密用的是吧? x r e s 呢?这是我们一个期望的响应值,就是 m m e, 它要希望对手机进行健全的话,就要通过这个 x r e s。 好,那么我们这节课呢,就讲到这里,谢谢大家。