S-AES加密的例子

密钥为2D55=0010 1101 0101 0101=w0w1
根据密钥扩展算法得到扩展密钥
w2=1011 1100
w3=1110 1001
w4=1010 0011
w5=0100 1010
明文为0110 1011 1010 0011
举例计算W2
现将W1进行g函数转变
①W1=01010101,分成两个半字节N0=0101 N1=0101,将左右进行转换N1=0101 N0=0101,进入S盒子N11=0001 N22=0001,N11和N22和轮常数10000000进行异或运算得到W11=1001 0001
②W2等于W0与W11异或得10111100

下面进行整个算法例子
第一步,
轮密钥加(w0w1)

第二步,
加密半字节代替

第三步,
加密行移位

第四步,
列混淆


查列混淆表得二进制为1000,十六进制为8,查表对应得6

第五步,
轮密钥加(w2w3)

第六步,
第二轮半字节代替

第七步,
第二轮行移位

第八步,
第二轮轮密钥加(w4w5)

最终的密文是0011 1100 0011 1011

S-AES的加密与解密相关推荐

  1. JavaScript实现AES算法加密和解密

    JavaScript的加密和解密用的是google的CryptoJS库.本文以AES/ECB/NoPadding为例展示AES加密和解密的方法. 需要下载CryptoJS库,下载地址如下: https ...

  2. 编写ATL工程实现ActiveX控件调用cryptoAPI接口(三)------------AES对称加密与解密

    注:下面的代码中用了Map,Base64,log,Result等都为自定义类型,太长就不一一贴出. [cpp]  view plain  copy  print ? /* * * * 文件名称:Enc ...

  3. linux下面C 利用openssl的AES库加密,解密

    OpenSSL提供了AES加解密算法的API const char *AES_options(void); AES算法状态,是全部支持或者是部分支持. 返回值:"aes(full)" ...

  4. java gcm_JAVA中的AES GCM加密和解密

    我正在尝试在JAVA中实现AES / GCM / NoPadding加密和解密.使用的密钥是来自接收方的公钥和发送方的私钥(ECDH)的共享密钥.加密效果很好(有无iv).但是,我无法解密...... ...

  5. AES对称加密和解密算法以及Java的AES工具类

    参考资料:百度百科[高级加密标准] AES简介 1.密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法,是美国联邦政府采用的一种区块 ...

  6. aes js加密php解密实例,基于PHP和JS的AES相互加密解密方法详解(CryptoJS)_PHP_JS_AES源码...

    [实例简介] 基于PHP和JS的AES相互加密解密方法详解(CryptoJS)_PHP_JS_AES源码 [实例截图] [核心代码] 基于PHP和JS的AES相互加密解密方法详解(CryptoJS)_ ...

  7. aes前台加密后台解密

    aes加密npm地址:https://www.npmjs.com/package/crypto-js aes加密git地址/下载: https://github.com/brix/crypto-js ...

  8. aes linux加密 windows解密,解决Linux操作系统下DES、AES解密失败的问题

    windows上加解密正常,linux上加密正常,解密时发生如下异常: javax.crypto.BadPaddingException: Given final block not properly ...

  9. Asp.Net C# - AES加密、解密

    Asp.Net C#续上次的DES加密.解密之后,再发一个AES的加密.解密.AES要注意的是32位密匙. private static readonly String strAesKey = &qu ...

  10. JS前端加密和Java后端的AES加密和解密

    先上前端代码 import cryptoJs from 'crypto-js' let keyOne = 'ZHyXgjF7BejeJySh5vX4O6qE'export default {//加密e ...

最新文章

  1. 算法:程序设计之并查集
  2. php递归多维数组为缩进列表,php – 缩进列表到多维数组
  3. sqlite3_colum
  4. 是的,我打败了一个奥特曼。
  5. 分组后分页_SQL(约束、视图、分页、序列、索引、同义词、创建用户,为用户授权、执行计划的使用 数据的导入导出)...
  6. python 神经网络_100行Python代码,轻松搞定神经网络 !
  7. python如何存储numpy数组_python – 如何将numpy数组作为对象存储在pandas数据框中?...
  8. html让时间只展示年月日_JS 如何动态显示当前年月日时分秒-百度经验
  9. 用 Chrome 扩展实现修改
  10. 如何用AI技术增强企业认知智能?超详细架构解读
  11. arg是什么函数_CTF必备技能丨Linux Pwn入门教程——针对函数重定位流程的相关测试(上)...
  12. jdk api官方文档的使用
  13. 蓝桥杯题目——平方回文数
  14. 爱普生L3153打印机如何清洗喷头
  15. 极域电子书包课堂管理系统怎么控屏_极域电子教室控制软件操作手册
  16. 算法快学笔记(十五):贪婪算法与NP完全问题
  17. 前端开发hr面试试题
  18. DCMTK之MPPS服务实现
  19. Python之组合数据类型(列表、元组、集合、字典)
  20. 【软件测试】公司招个测试员,我又面试了100多人,结局......

热门文章

  1. hdu4416[多串后缀自动机]
  2. 版本控制----Git
  3. 微信小程序之多规格选择
  4. 探索R包plyr:脱离R中显式循环
  5. 最大后验估计(Maximum-a-Posteriori (MAP) Estimation) 【转】
  6. 解决微信公众号获取用户信息报48001错误
  7. sql server2012 分页查询语句
  8. 中文键盘 linux,键盘和中文输入 教程
  9. 一条SQL语句查询所有任务分数都在60以上的用户名字
  10. 2020平安科技校招内推