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

分组密码算法ShengLooog设计原理详解

分组密码算法ShengLooog设计原理详解

ShengLooog(升龙)为基于Feistel结构设计的分组密码算法,分组大小为128比特,密钥长度分别为128,192,256比特,对应的算法轮数分别为32,36,40,其可以分别表示为ShengLooog128/32,ShengLooog192/36,ShengLooog256/40。

第1个S盒S0

第2个S盒S1

ShengLooog算法的密钥扩展算法(KeyExtend)如下图所示:

当|K|=128,密钥扩展算法为KeyExtend128。

当|K|=192,密钥扩展算法为KeyExtend192。

当|K|=256,密钥扩展算法为KeyExtend256。

ShengLooog128算法的加密算法(Encrypt)如下图所示:

ShengLooog128算法的加密算法(Decrypt)如下图所示:

FFFF为ShengLooog算法的轮函数,其可以分为3个步骤(轮密钥加,S盒替换,P置换)。

Z=FFFF(L,RK)=P(SBOX(L⊕RK))

(1)轮密钥加(RKA),如下图所示:

(2)S盒替换(S0,S1) ,如下图所示:

(3)P置换 ,如下图所示:

其中X0,X1,Y0,Y1,Z0,Z1均为32位字,xi和yi(i=0,...,7)均为字节(8比特)。

S0和S1的密码学指标均已达到最佳或接近最佳。LLLL0和LLLL1均为对合线性变换,分支数为4(5为最优),通过LLLL0和LLLL1复合变换设计的线性扩散层P置换的分支数为5,已达到最优值。故P置换与S盒相互配合, ShengLooog算法能够抵抗常见的密码攻击方法(差分分析和线性分析等)。

http://www.xdnf.cn/news/231769.html

相关文章:

  • 如何正确使用日程表
  • 【Java】equals、==、hashcode详解
  • 单片机的各个种类及其详细介绍
  • 复杂度和顺序表(双指针方法)
  • 国标GB28181视频平台EasyGBS在物业视频安防管理服务中的应用方案​
  • 进程地址空间
  • 在柯希霍夫积分法偏移成像中,旅行时计算中振幅和相位信息
  • 兰亭妙微:全流程交互设计和设计前后对比
  • 详细说明c++函数传参常量引用const T传递和值传递的区别
  • 【25软考网工】第四章(4)无线局域网WLAN安全技术、无线个人网WPAN
  • 【Kubernets知识】Secret组件更新大全
  • 设备安全管理:AI赋能的智能守护者
  • 建筑兔零基础python自学记录88|time库文本进度条(下)11
  • x-cmd install | Tewi - 终端里的 Transmission 掌控者,功能全面的 BT 下载管理工具!
  • 适配 AGP8.5,maven 私服发布报错(七)
  • Rust 学习笔记:枚举与模式匹配
  • HTTP 快速解析
  • php+mysql活动报名学生选课产品预定旅游报名系统网站源码
  • Spyglass:官方Hands-on Training(一)
  • 【容器化】Linux环境Docker在线与离线安装手册
  • vscode中设置eslint保存时自动格式化未生效
  • 网易爆米花 1.8.8 | 免费无广告,支持多网盘聚合和智能刮削技术,提供顶级画质和逼真音效的影视管理应用
  • 【大模型系列篇】Qwen3开源全新一代大语言模型来了,深入思考,更快行动
  • Python 用一等函数重新审视“命令”设计模式
  • CMake解析参数用法示例
  • 【模型量化】量化基础
  • 大连理工大学选修课——机器学习笔记(7):集成学习及随机森林
  • 三生原理与中华文明标识体系的关系?
  • vs2019编译occ7.9.0时,出现fatal error C1060: compiler is out of heap space
  • C++(初阶)(十六)——set