SMBA分组密码算法

SMBA分组密码算法

论文摘要

SMBA算法是一个安全性高、实用性强、创新设计的分组密码算法. SMBA算法支持三种版本,当分组长度为128比特时,密钥长度支持128比特和256比特,当分组长度为256比特时,密钥长度支持256比特. SMBA算法采用经典的Feistel结构,加解密过程一致,轮函数采用SP结构,密钥扩展算法使用广义Feistel结构.算法创新设计了非线性部件S0和S1,以及线性部件L64,均具有良好的密码学性质. S0和S1均由代数构造生成,具有较优的差分概率、线性概率和代数次数,且乘法复杂度低,侧信道防护代价小. L64由简单线性变换组合构成,具有较高的差分和线性分支数,关键路径短,延时低. SMBA算法在不同版本中共用主要部件S0、S1和L64,扩展自然. SMBA算法的安全界清晰,可以有效评估抵抗差分攻击、线性攻击、积分攻击等已知攻击的强度,有较大的安全冗余.算法的基本运算为查表、循环移位以及异或等逻辑运算,易于软件和硬件实现.算法实现方式灵活,软硬件速度快,可适用于多种平台(如8/32/64位平台).

论文目录

  • 1算法描述
  •   1.1概述
  •   1.2符号、运算符和约定
  •     1.2.1符号和运算符列表
  •     1.2.2比特、字节和子块顺序约定
  •   1.3加解密过程
  •     1.3.1加密过程
  •     1.3.2解密过程
  •   1.4轮函数及其组件
  •     1.4.1轮函数F[K]
  •     1.4.2白化变换W[K]
  •     1.4.3换位变换P
  •     1.4.4代替变换S
  •     1.4.5线性变换L
  •   1.5密钥扩展
  •     1.5.1变换α、β、γ
  •     1.5.2 SMBA-128-128的子密钥生成
  •     1.5.3 SMBA-128-256的子密钥生成
  •     1.5.4 SMBA-256-256的子密钥生成
  •   1.6 S盒S0和S1
  •     1.6.1 S0构造过程
  •     1.6.2 S1构造过程
  • 2设计原理
  •   2.1加解密过程设计原理
  •   2.2密钥扩展设计原理
  •   2.3 S盒设计原理
  •   2.4线性变换和换位变换设计原理
  • 3安全性分析
  •   3.1整体结构安全性
  •   3.2密码部件安全性
  •     3.2.1非线性部件安全性
  •     3.2.2线性部件安全性
  •   3.3抗攻击安全
  •     3.3.1差分攻击
  •     3.3.2线性攻击
  •     3.3.3代数攻击
  •     3.3.4积分攻击
  •     3.3.5不可能差分攻击
  •     3.3.6相关密钥差分攻击
  •     3.3.7飞去来器攻击
  •     3.3.8滑动攻击
  •     3.3.9密钥扩展安全性
  •   3.4侧信道攻击安全防护
  • 4性能分析
  •   4.1软件性能
  •   4.2硬件性能
  • 5优缺点分析
  •   5.1算法特色
  •   5.2创新点
  •   5.3不足
  • 附录
  • 文章来源

    类型: 期刊论文

    作者: 王克,贾文义,黄念念

    关键词: 算法,线性变换,差分攻击,线性攻击

    来源: 密码学报 2019年06期

    年度: 2019

    分类: 信息科技

    专业: 电信技术

    单位: 兴唐通信科技有限公司

    分类号: TN918.1

    DOI: 10.13868/j.cnki.jcr.000341

    页码: 786-802

    总页数: 17

    文件大小: 545K

    下载量: 38

    相关论文文献

    标签:;  ;  ;  ;  

    SMBA分组密码算法
    下载Doc文档

    猜你喜欢