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

零基础网站建设视频seo中国官网

零基础网站建设视频,seo中国官网,网站设计的设计方案,怎么做好网站推广接下来我们将讨论目前大多数计算机和硬件基础设施所使用的最重要的加密算法,例如高级加密标准(AES)、里弗斯特-沙米尔-阿德曼算法(RSA)、椭圆曲线加密(ECC)、基于格的加密、(环&…

接下来我们将讨论目前大多数计算机和硬件基础设施所使用的最重要的加密算法,例如高级加密标准(AES)、里弗斯特-沙米尔-阿德曼算法(RSA)、椭圆曲线加密(ECC)、基于格的加密、(环)带错学习、同态加密。

2.2.3.1 高级加密标准 Advanced Encryption Standard(AES)
现代密码学围绕高级加密标准(AES)构建,在数字安全至关重要的时代,它至关重要。AES 旨在取代过时的数据加密标准(DES),如今已成为金融、电信和政府等多个行业数据加密的行业标准。

美国国家标准与技术研究院(NIST)于 2001 年创建了高级加密标准(AES),这是经过全面且竞争激烈的筛选程序的结果。由于数据加密标准(DES)存在弱点,主要是其 56 位的密钥长度相对较小,使其容易受到暴力破解攻击,因此需要一个新的加密标准。1997 年,NIST 发布了新加密标准的征集令,收到了来自世界各地的 15 份响应。比利时密码学家文森特·里杰门(Vincent Rijmen)和琼·达曼(Joan Daemen)创建的 Rijndael 算法经过全面评估后被选中,并被命名为高级加密标准(AES)。

由于 AES 使用对称密钥进行加密,因此加密和解密都需要同一个密钥。它支持 128 位、192 位和 256 位的密钥大小,为抵御可能的入侵提供了强大的保护。AES 的运作基于状态,即一个 4×4 列优先顺序的字节矩阵。该方法通过多轮处理将明文转换为密文,每轮处理都需要若干步骤。


AES 的主要步骤包括:

• 字节替换(SubBytes)。为了使密码具有非线性,使用一个替换盒(S 盒)将状态矩阵中的每个字节替换为不同的字节。

• 行移位(ShiftRows)。通过循环移位状态矩阵的行来实现密码中的扩散。

• 列混合(MixColumns)。为了进一步提高扩散性,通过线性变换将状态矩阵的列组合起来。

• 轮密钥加(AddRoundKey)。使用按位异或将状态矩阵与从主密钥中获得的轮密钥组合起来。

对于 128 位密钥,AES 算法有 10 轮;对于 192 位密钥,有 12 轮;对于 256 位密钥,有 14 轮。轮数随密钥大小而变化。将这两个过程结合起来,保证了 AES 具有强大的安全性和抵御各种加密攻击的能力。

由于其有效性和安全性,AES 经常被用于许多不同的应用中。它是 SSL/TLS 等安全通信协议的组成部分,这些协议保证了互联网上传输的数据的完整性和保密性,并构成了互联网安全的基础。

AES 还用于虚拟专用网络(VPN)中。虚拟专用网络(VPN)用于保护在互联网上远程站点之间传输的数据。高级加密标准(AES)在金融行业中用于保护信用卡处理和网上银行等系统中的敏感数据和交易。

Py示例代码,采用CBC模式和PKCS7填充方案(仅供学习参考):

from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes
from cryptography.hazmat.primitives import padding
from cryptography.hazmat.backends import default_backend
import osdef aes_encrypt(plaintext: bytes, key: bytes) -> tuple:"""AES加密(CBC模式)"""# 生成随机初始化向量(IV)iv = os.urandom(16)# 设置加密器cipher = Cipher(algorithms.AES(key),modes.CBC(iv),backend=default_backend())encryptor = cipher.encryptor()# 应用PKCS7填充padder = padding.PKCS7(128).padder()padded_data = padder.update(plaintext) + padder.finalize()# 加密数据ciphertext = encryptor.update(padded_data) + encryptor.finalize()return ciphertext, ivdef aes_decrypt(ciphertext: bytes, key: bytes, iv: bytes) -> bytes:"""AES解密(CBC模式)"""# 设置解密器cipher = Cipher(algorithms.AES(key),modes.CBC(iv),backend=default_backend())decryptor = cipher.decryptor()# 解密数据padded_plaintext = decryptor.update(ciphertext) + decryptor.finalize()# 移除PKCS7填充unpadder = padding.PKCS7(128).unpadder()plaintext = unpadder.update(padded_plaintext) + unpadder.finalize()return plaintext# 示例用法
if __name__ == "__main__":# 生成32字节(256位)密钥 - 支持128/192/256位secret_key = os.urandom(32)original_message = b"Hello, Advanced Encryption Standard!"print("原始消息:", original_message.decode())# 加密encrypted_data, iv = aes_encrypt(original_message, secret_key)print("加密结果 (HEX):", encrypted_data.hex())# 解密decrypted_data = aes_decrypt(encrypted_data, secret_key, iv)print("解密消息:", decrypted_data.decode())

运行结果:
在这里插入图片描述

关键步骤

1、模逆计算修正:

行列式先转换为正数:det = det % mod

明确验证行列式是否可逆:if np.gcd(det, mod) != 1

正确计算伴随矩阵的符号:[[d, -b], [-c, a]]

2、数据类型强化:

密钥矩阵指定为整数类型:dtype=int

块操作后明确转换为列表:tolist()

3、验证结果:
加密"HELLOWOR"(数字序列:[7,4,11,11,14,22,14,17])

分块加密:

[7,4] × [[7,8],[11,11]] = [77+411, 78+411] = [93, 100] → [93%26=15(H), 100%26=22(W)]

[11,11] → [117+1111, 118+1111] = [198, 209] → [198%26=16(Q), 209%26=1(B)]

正确处理负数和模运算,确保加密/解密过程正确。

http://www.dtcms.com/wzjs/441234.html

相关文章:

  • 室内设计网站官网大全网络营销策划书的范文
  • 好看的网站案例app拉新推广平台有哪些
  • 服装销售网站设计与制作成都网站建设方案优化
  • 对红色网站建设的建议浙江网站推广公司
  • 莱芜搜狗推广推荐优化课程设置
  • 装修公司那家好台州网站优化公司
  • ps做网站首页怎么运用起来seo兼职论坛
  • 网站建设环境配置百度seo排名优化如何
  • 怎样建设邮箱网站樱桃bt官网
  • 专门做旅游的视频网站有哪些友情链接站长平台
  • 原网站开发新功能网络营销包括几个部分
  • 做网站 需要多少钱长沙网站推广工具
  • 网站建设营销推广实训总结seo网络营销是什么意思
  • 古典asp网站源码公众号如何推广引流
  • 建网站需要多少费用模板建站的网站
  • 免费生成图片的网站百度云引擎搜索
  • flash as3 网站模板刷百度指数
  • 赤壁市住房建设委员会网站seo优化排名方法
  • 贸易网站建设案例b站推广网站
  • 百度网址大全 官网首页百度首页排名优化多少钱
  • 做室内效果图网站网络营销推广方式包括哪几种
  • 淘宝网站怎么做特价搜索引擎广告推广
  • 崇信县门户网站留言首页信息流广告投放平台
  • 安阳网站推广免费b站推广网站2023
  • 门户类网站备案百度宣传推广
  • 有什么网站做投标设计soe搜索优化
  • 做网站和做微信小程序页面优化
  • wordpress显示作者墙seo管理系统创作
  • 旅游网站开发实现开题报告手机百度关键词优化
  • o2o网站建设好么如何在百度上做免费推广