欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 旅游 > 加密与解密算法

加密与解密算法

2025/5/6 10:04:50 来源:https://blog.csdn.net/m0_70691645/article/details/143347311  浏览:    关键词:加密与解密算法

在安全领域,利用密钥加密算法来对通信的过程进行加密是一种常见的安全手段。利用该手段能够保障数据安全通信的三个目标:

1、数据的保密性,防止用户的数据被窃取或泄露
2、保证数据的完整性,防止用户传输的数据被篡改
3、通信双方的身份确认,确保数据来源与合法的用户

而常见的密钥加密算法类型大体可以分为三类:对称加密、非对称加密、单向加密

【三种分类】
1、对称加密:密钥只有一个,解密、解密都是这个密码,加解密速度快,典型的对称加密有DES、AES、RC4等
2、非对称加密:密钥成对出现,分别为公钥和私钥,从公钥无法推知私钥,反之,从私钥也无法推知公钥,加密和解密使用不同的密钥,公钥加密需要私钥解密,反之,私钥加密需要公钥解密。非对称加密速度较慢,典型的非对称算法有:RSA,DSA,DSS.
3、Hash算法,这是一种不可逆的算法,它常用于验证数据的完整性。

1、MD5加密解密

md5加密原理
MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。

import hashlibdef md5_encrypt(text):# 创建md5对象md5 = hashlib.md5()# 更新md5对象的内容md5.update(text.encode('utf-8'))# 返回十六进制的MD5哈希值return md5.hexdigest()text = "Hello, World!"
md5_hash = md5_encrypt(text)
print("MD5哈希值:", md5_hash)

2、Base64加密解密

Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。
Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。采用Base64编码具有不可读性,需要解码后才能阅读。

import base64def base64_encode(text):# 将字符串转换为字节,并进行Base64编码encoded_bytes = base64.b64encode(text.encode("utf-8"))# 将字节结果转换为字符串返回return encoded_bytes.decode("utf-8")def base64_decode(encoded_text):# 将Base64编码的字符串转换为字节,并进行解码decoded_bytes = base64.b64decode(encoded_text.encode("utf-8"))# 将字节结果转换为字符串返回return decoded_bytes.decode("utf-8")text = "Hello, World!"
encoded_text = base64_encode(text)
print("Base64编码:", encoded_text)decoded_text = base64_decode(encoded_text)
print("Base64解码:", decoded_text)

这种编码方式常用于数据传输时,例如在URL、邮件等传输场景中,但它不提供加密安全性。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词