vb异或加密和解密_AES加密的工作模式ECB、CBC、CFB、OFB及案例

本文介绍了AES加密标准,包括ECB、CBC、CFB和OFB四种工作模式。ECB模式因相同明文产生相同密文而不安全;CBC模式通过初始化向量确保唯一性;CFB将块密文转换为流密文;OFB通过前一组密钥流影响下一组。各模式特点在安全性和应用场景上有差异。
摘要由CSDN通过智能技术生成

3f3e88f5bd4e27517b98c0b520e3464b.png

这次换个玩法,作业先奉上~

作业案例

输入学号后两位数字 n,出生年份后两位数字 m (00后取99年)。

x1 = n mod 64,

x2 = (n + 20) mod 64,

x3 = (n + 40) mod 64,

初始向量 IV = m mod 64,

K = (1 0 0 1 1 0), Ek(z) = z ⊕ k

求四种模式下的y1, y2, y3?

Python版如下:

# ECB模式
def ecb_enc():
    return x1^key, x2^key, x3^key

# CBC模式
def cbc_enc():
    return (iv^x1)^key, (((iv^x1)^key)^x2)^key, (((((iv^x1)^key)^x2)^key)^x3)^key

# OFB模式
def ofb_enc():
    return x1^(iv^key), x2^((iv^key)^key), x3^(((iv^key)^key)^key)

# CFB模式
def cfb_enc():
    return x1^(iv^key), x2^(x1^(iv^key)^key), x3^(x2^(x1^(iv^key)^key)^key)
# 输入学号后两位数字 n,出生
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值