OpenSSL

Json web token (JWT)原理

风流意气都作罢 提交于 2020-08-18 14:36:40
JWT 01、什么是JWT: 02、JWT作用: 02-1、3个特性 02-2、多点登陆 03、JWT实现原理 03-1、jwt令牌(token值)其实就是一个字符串 03-2、三段组成 03-2.1 第一段字符串,称之为**头信息(header)** 03-2.2 第二段字符串,称之为**载荷(payload)** 03-2.3 第三段字符串,称之为**签名(signature)** 04、结语: 01、什么是JWT: Json web token (JWT) , 是为了在网络应用环境间 传递声明 而执行的一种基于JSON的开放标准((RFC 7519)。 该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。 02、JWT作用: 保证数据的完整性! 02-1、3个特性 JWT就相当于一个 令牌 ,这个令牌具备以下3个特性: 0、令牌是 后端 签发给 用户 的 1、记录用户身份信息 2、可以被验证真伪 02-2、多点登陆 使用JWT这项技术,就可以实现 多点登陆 ; 多点登陆 :客户端在 任意一台服务端完成登陆 之后,服务端签发 令牌(token) ;之后

1分钟 aes

谁说我不能喝 提交于 2020-08-18 14:36:28
能帮到你的话,就给个赞吧 😘 我们先熟悉aes流程。 首先 aes 会把明文等分为128位一组(也就是16字节),接着分组加密,也就是对每个分组进行组加密,之后再将所有组密文按顺序拼接,生成密文。 如何进行连接呢 也就是所谓的cbc模式。如图 每个分组的密钥是相同的,都是同一个,而cbc多了初始向量IV并把之后的每个密文块都作为下个的初始向量,这样比单纯的分别密钥加密再连接安全许多。 接着我们再详细介绍组加密。 我们先熟悉组加密流程。 首先我们需要知道的是,每次轮密钥加都需要一个新的密钥,第一次就是初始化的那个,后面十次也就都是重新生成的,我们把生成轮密钥的过程叫做密钥扩展,这也是图中唯一没画出的过程,因为不知道怎么画在哪里比较好~~我们可以认为每次轮密钥加操作都需要调用密钥扩展来生成一个新密钥,至于为什么要叫做密钥扩展,等介绍到便知。 那么我们一一了解过程即可。 轮密钥加: ————在aes中,加’+‘,这个符号指的都是异或操作。那么轮密钥加,顾名思义,也就是一个异或操作,会和轮密钥异或得到输出。我们可以认为轮密钥加的输入为两个,一个是轮密钥,另一个随意,反正就是异或而已。则第一个轮密钥加的输入分别为初始化的密钥和明文矩阵。 s盒置换: ————s盒是一张16x16表,对矩阵中的每个字节进行查表替换,一个字节有8位嘛,所以4位对行,4位对列,便可查,查完替换。 行移位: ———

每个团队都应知道的API安全威胁

天大地大妈咪最大 提交于 2020-08-18 14:33:40
原文发表于 kubernetes中文社区 ,为作者原创翻译 , 原文地址 更多kubernetes文章,请多关注 kubernetes中文社区 目录 每个团队都应知道的API安全威胁 分页和资源限制不安全 如何防止分页攻击 API密钥生成不安全 如何保护API密钥池 密钥暴露 如何防止密钥暴露 DDoS攻击 防止DDoS攻击 服务器没有设置正确的SSL 如何设置正确的SSL 缓存头设置不正确 如何设置正确的缓存头 记录和监控不足 如何正确添加API日志记录 没有保护内部端点 没有处理授权 如何修正授权 每个团队都应知道的API安全威胁 随着越来越多的数据以API方式暴露,API的安全性变得越来越重要。由于 API提供了对大量数据的直接访问,绕过了浏览器的预防措施 ,因此常会有SQL注入和XSS等问题。 API安全性的第一件事是,对你的API进行检测,以检测和阻止常见攻击以及未知的对象。在 OWASP安全API列表 中,你可以看到常见的API 漏洞和安全风险 。 分页和资源限制不安全 大多数API提供对作为实体列表(例如 /users 或 /widgets )的资源的访问。诸如浏览器之类的客户端,通常会过滤并分页浏览此列表,以限制返回给客户端的数量,如下所示: First Call: GET /items?skip=0&take=10 Second Call: GET /items

新攻击使黑客可以解密VoLTE加密以监视电话

我是研究僧i 提交于 2020-08-18 14:27:49
据国内网络安全组织东方联盟研究人员透露,于今年早些时候揭露4G LTE和5G网络中严重安全问题的报告,今天再次提出了一种名为“ ReVoLTE ” 的新攻击,该攻击可能使远程攻击者破坏VoLTE语音通话所使用的加密并监视目标电话。 该攻击并未利用LTE语音(VoLTE)协议​​中的任何漏洞;相反,它实际上利用了大多数电信提供商对LTE移动网络的弱实施,从而使攻击者能够窃听目标受害者拨打的加密电话。 VoLTE或长期演进语音协议是用于移动电话和数据终端(包括物联网(IoT)设备和可穿戴设备)的标准高速无线通信,其部署了4G LTE无线电接入技术。 网络安全问题的症结在于,大多数移动运营商经常在一个无线电连接中为两个后续呼叫使用相同的密钥流,以对电话和同一基站(即移动电话塔)之间的语音数据进行加密。 因此,新的ReVoLTE攻击利用了易受攻击的基站对相同密钥流的重用,从而使攻击者可以在以下情况下解密VoLTE供电的语音呼叫的内容。 但是,重用可预测的密钥流并不是什么新鲜事,它最初是由Raza&Lu指出的,但是ReVoLTE攻击将其转变为实际攻击。 ReVoLTE攻击如何工作? 东方联盟创始人郭盛华透露:“要发起此攻击,攻击者必须与受害人连接到同一基站,并放置下行链路嗅探器,以监视和记录受害人对以后需要解密的其他人的“定向呼叫”,这是攻击的一部分。 ReVoLTE攻击的第一阶段。”

GitHub 的 Action 如何禁用

徘徊边缘 提交于 2020-08-18 13:13:30
我 Fork 了小伙伴的 ant-design-blazor 仓库,这个仓库设置了每天自动同步样式,这个 Action 用到了源仓库的密钥,在我 Fork 的仓库一定跑不通过,于是每天我就收到一次构建不通过的信息。本文告诉大家如何禁用自己 Fork 的某个仓库的 Action 的执行 这是我 Fork 的 ant-design-blazor 仓库,每天都告诉我构建失败 解决方法是禁用这个 Fork 仓库的 Action 构建,毕竟需要自动构建的都是将代码推送到源仓库,此时源仓库的 Action 都能触发,也就是我的仓库的 Action 其实没啥用 点击仓库的设置,进入 Actions 页面,点击禁用 如果我表示不让所有 Fork 我的仓库的小伙伴都需要做这个设置,我想要让我的代码仅仅只是在我的仓库运行,可以如何做?简单的方法是添加一个判断 if: github.repository == 'lindexi/doubi' 别的小伙伴 Fork 仓库的时候,拿到 repository 的值就是 小伙伴的名字/doubi 也就是判断不等于我的仓库,代码就不执行 上面的 lindexi/doubi 的意思就是 用户名或组织名/项目名 这就会跟随用户的 Fork 仓库修改值 那么这个 if 判断可以写在哪里?可以放在具体的构建步骤里面,如下面代码 - name: Build with

QUIC协议详解之Initial包的处理

大兔子大兔子 提交于 2020-08-18 12:53:12
从服务器发起请求开始追踪,细说数据包在 QUIC 协议中经历的每一步。大量实例代码展示,简明易懂了解 QUIC。 前言 本文介绍了在 QUIC 服务器在收到 QUIC 客户端发起的第一个 UDP 请求— Initial 数据包的分析、处理和解密过程,涉及Initial数据包的格式,数据包头部保护的去除, Packet Number 的计算,负载数据的解密,client hello 的解析,等等。本文的 C 实现采用 OpenSSL,并基于 IETFQUIC Draft-27。 术语 **PacketNumber :**数据包序号 **Initial Packet:**初始数据包 **Variable-length Integer Encode:**可变长度整型编码 **HMAC:**Hash-based messageauthencation code,基于 Hash 的验证信息码 **HKDF: **HMAC-based Extract-and-Expand KeyDerivation Function,基于 HMAC 的提取扩展密钥衍生函数 AEAD: authenticated encryption withassociated data, 带有关联数据的认证加密 ECB: Electronic codebook,电子密码本 GCM: Galois/Counter Mode

企业ssl证书配置的原因

随声附和 提交于 2020-08-18 12:52:07
企业ssl证书是一种配置在网站服务器当中的证书,这是一种安全证书,主要的作用是保护网站信息安全。因此很多企业都给自己的网站配置了这种证书。但是,配置ssl证书一般有哪些原因呢? 为什么需要配置企业ssl证书: 认证网站身份,让网站更加专业:一个专业的网站才能够吸引更多的用户,浏览量也会大。企业ssl证书配置到网站服务器当中去之后,就能够实现网站HTTPS加密,然后验证网站的真实性,树立可信赖企业形象。 提升网站信任度:一般情况下,网站如果需要使用个人信息来进行登录,就需要安装ssl证书。因为安装了该证书,访问者的个人信息是可以被很好的保护,然后就可以让用户更加信任网站,网站的信任度也就会大大提高。 增加销售业绩:在网络发达的今天,利用网站进行销售是很好的。但是,网站的安全性很重要,安全性高就可以吸引更多的顾客,销售量也会提高。这种情况下,需要安装ssl证书,因为这种证书就能够让网站的支付环境更加安全,保护顾客信息安全。 企业在发展的过程中如果给网站配置了ssl证书,企业的形象就会更好,这种情况下实际的销售额就会提高,企业的收入也就会增多。 来源: oschina 链接: https://my.oschina.net/u/4278795/blog/4278308

如何使用沙箱环境来测试微信支付

僤鯓⒐⒋嵵緔 提交于 2020-08-18 12:44:04
本文是【浅析微信支付】系列文章的第十篇,主要讲解如何使用沙箱环境来测试微信支付。 浅析微信支付系列已经更新十篇了哟~,没有看过的朋友们可以看一下。 浅析微信支付:下载对账单和资金账单 浅析微信支付:申请退款、退款回调接口、查询退款 浅析微信支付:查询订单和关闭订单 浅析微信支付:支付结果通知 在实际开发中,通常我们都是在开发环境中开发,本地环境也有很多限制,比如:微信支付无法调起、H5链接需要鉴权、支付结果通知需要外网等。 面对以上的问题,微信官方给出了解决的方法,就是咋们这篇文章的 沙箱环境 ,也就是微信支付的官方测试环境,这个环境能做些什么呢?我觉得最重要的一点就是我们可以实时根据官方的例子调用对应的接口,并且接口会马上返回结果,拿微信支付预支付单接口来说,调用以后会实时返回我们支付的相关信息,这样就免于开发时不知道返回结果而苦恼。 仿真测试系统 为降低商户测试门槛,微信支付团队开发了一套独立的仿真测试系统。该系统根据验收用例金额的不同返回不同的响应报文,以满足商户正常功能测试、安全/异常测试及性能测试的需求。 图1为微信支付仿真测试系统(后简称仿真系统)的简化原理图。仿真系统的API协议与正式API完全相同(API接口文档)。商户开发者只需将正式API的调用URL增加一层 sandboxnew 路径,即可对接到仿真系统。 例如,刷卡支付URL: api.mch.weixin

https加密是什么?SSL证书适用于哪些场景

孤者浪人 提交于 2020-08-18 12:25:29
相比于普通的http网址,https加密优势就在于能够确保网址的安全性能,很好额保护客户的数据信息,也可以给网站树立一个很好的信誉形象。不仅仅是企业网站需要进行https加密,个人单位的网站对用户隐私的保护也是很重要的,因此给自己的网站进行https加密也是十分必要的。 https加密主要得益于SSL证书的保障,使得网站的安全等级得到提高。那么SSL证书适用于哪些场景呢? 1)企业应用安全加密 越来越多的企业将OA、CRM、进销存、ERP、HRM等企业应用系统部署与云端,享受云计算的高效和便捷性。而升级为https安全加密,可进一步提升系统安全性,确保敏感信息不被劫持。 2)政务信息安全加密 公信力是政务平台要打造的重要特性。而越来越多的钓鱼网站和信息劫持等,对政务平台的信息安全带来严重威胁。启用权威认证的SSL证书能最大化保障信息安全和网站公信力。 3)支付体系安全加密 支付环节是用户最敏感也最容易受到安全威胁的部分,极易成为不法用户信息劫持和伪装的重要目标。因此,实现网站支付环节的https信息传输加密,已经成为各大网站的标配。 4)API接口安全加密 API接口是第三方网站进行信息交互的重要形式,因为大多涉及敏感信息或重要操作指令的传输,因此其安全性至关重要。使用SSL证书进行信息传输的高强度加密,可有效杜绝信息劫持。 5)企业网站安全加密 启用企业网站全站https安全加密

Azure Data Box

随声附和 提交于 2020-08-18 08:59:17
一,引言   最近博主又要面临考试了,随笔又再次缓慢更新,说起考试,之前在微软的 ms learn的课程上有接触到一个叫 Azure Data Box的,刚好今天也花了一个多小时看了一下相关文档,下面就正式开始介绍今天的主要内容 ----- Azure Data Box ---------我是分割线-------   如果我们做云迁移的项目,在进行数据迁移的时候,往往会面临将本地的大量数据迁移到 azure 云端上,但是又因为网络的限制,或者网络的不稳定,会导致数据上传缓慢或者中断,如果企业数据中心的数据达到一定规模后,传统的迁移方式就不是一个很好的选择方式。 二,正文 2.1,什么是 Azure Data Box? 其实它是个硬件,如下图所示,提供主存储、管理与云存储通信的物理设备,并有助于确保存储在设备上的所有数据的安全性和机密性。   Azure Data Box是微软新推出的一种数据导入导出服务,可以通过快速、经济、可靠的方式将TB量级的数据发送到Azure。通过向你发送专有的Data Box存储设备来加速安全数据传输。每个存储设备的最大可用存储容量为80 TB,并通过区域运营商传送到数据中心。该设备具有坚固的外壳,可在运输过程中保护数据。   这个时候就有疑问了,那怎么采购?其实我们可以通过Azure的门户进行订购,登录 Azure Portal (国际版),