当前位置: 首页 > news >正文

ps做的网站首页站长工具网站

ps做的网站首页,站长工具网站,免费网站建设怎样,网站制作比较好的公司SHA-256 SHA-2是广泛应用的哈希函数,并且有不同的版本,这篇博客主要介绍SHA-256。 SHA-256算法满足了哈希函数的三个安全属性: 抗第一原像性 - 无法根据哈希函数的输出恢复其对应的输入。抗第二原像性 - 给定一个输入和它的哈希值&#xf…

SHA-256

SHA-2是广泛应用的哈希函数,并且有不同的版本,这篇博客主要介绍SHA-256。

SHA-256算法满足了哈希函数的三个安全属性:

  • 抗第一原像性 - 无法根据哈希函数的输出恢复其对应的输入。
  • 抗第二原像性 - 给定一个输入和它的哈希值,无法找到一个不同于该输入的新输入,使得这两个输入产生一样的哈希值。
  • 抗碰撞性 - 这个性质保证不能够产生哈希值相同的两个不同的输入。

SHA-2是一种采用Merkle–Damgård结构来构造的哈希函数。

密码学学习笔记(十三):哈希函数 - Merkle–Damgård结构_kingofyb的博客-CSDN博客

首先,我们对需要进行哈希运算的输入做填充,然后将填充后的输入划分为等长的分组,每个分组的长度等于压缩函数的输入长度。SHA-256算法输入的分组大小为512比特。

然后,将压缩函数应用于消息的所有分组,在每次迭代过程中,都将上一轮的输出作为压缩函数的第二个输入参数,而将消息的某个分组作为它的第一个输入参数。将压缩函数最终的输出作为消息的摘要。

在第一次调用压缩函数时,它的第二个参数通常是固定的,且标准文件中将其指定为特定的值。具体来说,SHA-256使用第一个素数的平方根来生成这个初始值。

MAC 

什么是MAC消息认证码?

密码学学习笔记(三):MAC - 消息认证码_mac消息认证码_kingofyb的博客-CSDN博客

HMAC(Hash-based MAC)

RFC 2104: HMAC: Keyed-Hashing for Message Authentication (rfc-editor.org)

由于长度扩展攻击,SHA-2不能被直接用来计算秘密消息的哈希值。HMAC可以将哈希函数转换为密钥算法。

  1. 由主密钥生成两个密钥:k1 = k ⊕ ipad,k2 = k ⊕ opad。其中,ipad(内部填充)以及opad(外部填充)是常量,⊕表示异或操作。
  2. 将密钥k1和message串联在一起,计算串联结果的哈希值。
  3. 将密钥k2与第2步的输出串联在一起后,再次计算串联结果的哈希值。
  4. 将第3步输出的哈希值作为最终的认证标签。

HMAC的好处在于,其设计者可以证明嵌入的散列函数的强度与HMAC的强度之间的联系。如果嵌入的散列函数的安全受到威胁,只需要用更安全的散列函数替换嵌入的散列函数,这样仍可以保持HMAC的安全性。

H = 嵌入的散列函数比如SHA。

M = HMAC的消息输入,包括嵌入到散列函数中定义的填充位。

Yi = M的第i个分组, 0≤i≤L-1。

L = M中的分组数。

b = 每一分组中所含的位数。

n = 嵌入的散列函数所产生的散列码长度

K = 秘密密钥。如果密钥的长度大于b,则将密钥作为散列函数的输入来产生一个n位数的密钥。建议密钥长度≥n。

K+ = 为使K为b位长而在K左边填充0后所得的结果。

ipad = 00110110(十六进制36)重复b/8次。

opad = 01011100(十六进制5C)重复b/8次。

HMAC(K,M) = H[(K+ ⊕ opad) || H[(K+ ⊕ ipad) || M]]

NMAC(Nested MAC)

NMAC算法(Nested MAC)类似于之前描述的CBC-MAC算法。它使用稍微不同的伪随机函数F。函数F返回的数字是密钥的正确值。CBC-MAC可以看我之前的博客。

密码学学习笔记(三):MAC - 消息认证码_mac消息认证码_kingofyb的博客-CSDN博客

与CBC-MAC的一样,在对最后的数据块进行加密之后,使用第二秘密加密密钥对结果进行一次附加加密。由于最后一个数据块的先前加密结果由与密钥相同数量的比特组成,因此应附加额外的比特序列,以确保结果与数据块具有相同的大小。NMAC通常用于数据块长度远大于密钥大小的系统。 

如果没有算法的最后一步(没有使用第二个密钥进行加密),入侵者将能够使用正确计算的身份验证码将任意数量的块附加到拦截的消息中。然后,他可以计算一个新的身份验证码,并将其附加到修改后的消息中。作为第一个新添加的函数F的输入,攻击者将使用原始消息的原始身份验证代码。

KMAC(KECCAK MAC)

KMAC使用SHA-3-256(key||message)。KMAC算法使用了CSHAKE来构造消息认证码算法,其中cSHAKE是SHAKE可扩展输出函数的自定义版本。KMAC算法对密钥、输入以及输出的长度进行编码,并将其作为cSHAKE的输入。

KMAC算法只是cSHAKE函数的包装器。

http://www.jinmujx.cn/news/78907.html

相关文章:

  • 盐城网站优化工作室整合营销传播策略
  • 上海外贸公司集中在哪些地方百度seo霸屏软件
  • 网站越来越难做搜索引擎优化包括
  • 南网站建设 首选搜点网络怎么做网站卖产品
  • 设计产品网站seo主要是做什么的
  • 网站里的搜索怎么做的今日头条新闻最新消息
  • 日本樱花云服务器免费网站雅昌最大免费广告发布平台
  • 深圳 网站建设国家中医药管理局
  • 网站改版灵感库淘宝美工培训
  • 重庆网站建设 cqhtwl深圳网络营销的公司哪家好
  • 建设网站公司名称大全巨量算数官方入口
  • 网站分享插件怎么做seo能干一辈子吗
  • 深圳工作服制作滁州网站seo
  • 长宁做网站公司手机制作网站app
  • js 网站制作关键词你们懂的
  • 套餐网站如何做广告宣传与推广
  • 网站改版工作方案bt磁力种子
  • 成品网站管理系统 源码品牌营销策略分析论文
  • 网站建设 前后台目录结构关键词优化怎么优化
  • 白银做网站云南疫情最新情况
  • 烟台汽车租赁网站建设seo网站推广助理招聘
  • 鄂城区人民政府门户网站青岛seo关键词优化公司
  • 网站开发简历推广赚钱的平台有哪些
  • 标准网站建设店铺推广方案怎么写
  • 做调查问卷哪个网站好网络热词
  • wordpress的代码逻辑杭州网站seo公司
  • 做教育导航的网站百度网盘电脑版
  • 青岛网站快速排名提升网站优化要做哪些
  • 常州网站建设最易快手作品免费推广软件
  • 制作单页网站教程视频产品推广活动策划方案