加密技术是对信息进行编码和解码的技术,编码是把原来可读信息(又称明文)译成代码形式(又称密文),其逆过程就是解码(解密)。加密技术的要点是加密算法,加密算法可以分为对称加密、不对称加密和不可逆加密三类算法。
对称加密算法
对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。不足之处是,交易双方都使用同样钥匙,安全性得不到保证。此外,每对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一钥匙,这会使得发收信双方所拥有的钥匙数量成几何级数增长,密钥管理成为用户的负担。对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。在计算机专网系统中广泛使用的对称加密算法有DES和IDEA等。美国国家标准局倡导的AES即将作为新标准取代DES。
不对称加密算法
不对称加密算法使用两把完全不同但又是完全匹配的一对钥匙—公钥和私钥。在使用不对称加密算法加密文件时,只有使用匹配的一对公钥和私钥,才能完成对明文的加密和解密过程。加密明文时采用公钥加密,解密密文时使用私钥才能完成,而且发信方(加密者)知道收信方的公钥,只有收信方(解密者)才是唯一知道自己私钥的人。不对称加密算法的基本原理是,如果发信方想发送只有收信方才能解读的加密信息,发信方必须首先知道收信方的公钥,然后利用收信方的公钥来加密原文;收信方收到加密密文后,使用自己的私钥才能解密密文。显然,采用不对称加密算法,收发信双方在通信之前,收信方必须将自己早已随机生成的公钥送给发信方,而自己保留私钥。由于不对称算法拥有两个密钥,因而特别适用于分布式系统中的数据加密。广泛应用的不对称加密算法有RSA算法和美国国家标准局提出的DSA。以不对称加密算法为基础的加密技术应用非常广泛。
不可逆加密算法
不可逆加密算法的特征是加密过程中不需要使用密钥,输入明文后由系统直接经过加密算法处理成密文,这种加密后的数据是无法被解密的,只有重新输入明文,并再次经过同样不可逆的加密算法处理,得到相同的加密密文并被系统重新识别后,才能真正解密。显然,在这类加密过程中,加密是自己,解密还得是自己,而所谓解密,实际上就是重新加一次密,所应用的“密码”也就是输入的明文。不可逆加密算法不存在密钥保管和分发问题,非常适合在分布式网络系统上使用,但因加密计算复杂,工作量相当繁重,通常只在数据量有限的情形下使用,如广泛应用在计算机系统中的口令加密,利用的就是不可逆加密算法。近年来,随着计算机系统性能的不断提高,不可逆加密的应用领域正在逐渐增大。在计算机网络中应用较多不可逆加密算法的有RSA公司发明的MD5算法和由美国国家标准局建议的不可逆加密标准SHS(Secure Hash Standard:安全杂乱信息标准)等。
分享到:
相关推荐
RSA 加密算法介绍原理及安全性分析 RSA 加密算法是基于大数分解难题的公钥加密算法,由 Ron Rivest、Adi Shamir 和 Leonard Adleman 三人在 1978 年提出的。RSA 算法的安全性基于两个大素数的乘积难以分解的难题上...
整体来说,Camellia算法的介绍是一份详尽且专业的加密算法规格说明,它不仅为加密算法的研究者和开发者提供了权威的参考资源,也对那些希望通过实例来学习和验证算法正确性的新人提供了宝贵的材料。通过这份文档,...
### DES加密算法详细介绍 #### 一、概述 **数据加密标准**(Data Encryption Standard, DES)是一种广泛使用的对称密钥加密技术,它是由IBM开发并在1977年被美国国家标准局(NBS, 现在的NIST)采纳为官方标准。DES的...
在IT领域,网络基础知识和加密算法是两个至关重要的概念,它们构成了互联网安全和通信的核心。本文将深入探讨这两个主题。 网络基础是理解信息技术如何在全球范围内传播和交换信息的基础。网络可以简单地定义为连接...
下面我们将介绍如何在 OpenSSL 对称加密算法中添加新算法。 一、加载加密算法 在调用加密算法之前,需要加载加密算法函数和单向散列算法函数。OpenSSL 提供了 OpenSSL_add_all_algorithms 函数来加载所有加密算法...
现代密码学已经发展出更为强大的加密算法,如基于数学难题的非对称加密,以及使用哈希函数和数字签名提供数据完整性和不可抵赖性。这些技术广泛应用于互联网通信、金融交易、个人隐私保护等多个领域,确保了信息的...
RSA加密算法是一种非对称加密技术,由Ron Rivest、Adi Shamir和Leonard Adleman在1977年提出,因此得名RSA。它在网络安全领域中广泛应用于数据加密和数字签名,保证了信息传输的安全性。RSA算法基于数论中的两个基本...
本文将深入探讨两个常见的对称加密算法:AES(高级加密标准)和BlowFish,并结合Qt框架介绍如何实现它们的加密和解密功能。同时,我们将讨论如何将这些算法封装成动态库以便于使用。 AES(Advanced Encryption ...
在本文中,我们将详细介绍CSP加密算法的实现,包括加密和解密的过程。 加密过程 在CSP加密算法中,首先需要生成一个密钥对,包括公钥和私钥。公钥用于加密,而私钥用于解密。在加密过程中,需要将明文数据与公钥相...
#### 常见加密算法介绍 ##### 对称加密算法 对称加密算法的特点在于加密和解密使用相同的密钥。这类算法因其高效性而广泛应用于大量数据的加密处理。常见的对称加密算法包括: - **DES(Data Encryption Standard)*...
本实验报告主要介绍了RSA加密算法的实现和原理,包括密钥对的产生、加密和解密过程、数字签名等。下面是该实验报告的详细知识点总结: 一、RSA加密算法的原理 RSA加密算法是基于大数分解问题的安全性,公钥和私钥...
下面我们将详细介绍两种传统加密算法的具体实现原理。 #### 替换加密算法 替换加密算法是一种简单的加密方式,其基本思想是将明文中的每个字符替换成另一个字符。例如,可以通过简单的字母偏移来进行替换。假设...
下面将详细介绍其中可能包含的一些重要加密算法及其原理。 1. **对称加密算法**:这类算法使用同一密钥进行加密和解密,如DES(Data Encryption Standard)、3DES(Triple DES)和AES(Advanced Encryption ...
常用的加密算法名称及介绍 在信息安全领域中,加密算法是保护数据安全的重要手段。常用的加密算法有对称加密算法、非对称加密算法、散列算法和Base64加密算法等。 一、对称加密算法 对称加密算法是指加密和解密...
Java 凯撒加密算法 Java 凯撒加密算法是一种基于凯撒密码的加密算法,它在 Java 环境下实现了凯撒密码的加密过程。下面是该算法的详细介绍: 凯撒密码流程图 凯撒密码流程图是指凯撒密码的加密过程的图形表示。该...
本文将详细介绍标题中提到的"加密算法工具类",包括MD5、DES3、DES、AES、BASE64以及SHA这七种常见的加密算法,并讨论它们在Java环境中的应用。 首先,MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数...
以上是Java加密算法的基本介绍,实际应用中,开发者应根据具体需求选择合适的加密算法,并确保遵循最佳实践,以保障数据的安全。在使用过程中,可以参考Java提供的API文档和示例代码,以便更好地理解和实现这些算法...
本文将介绍散列函数、对称加密算法和公钥密码算法的原理,并对 DES 加密算法进行详细的解释。 散列函数是将任意长度的输入信息变换为固定长度的输出信息的函数,常用于数据完整性验证和身份验证。常见的散列函数有 ...
国际数据加密算法(International Data Encryption Algorithm,简称IDEA),是由瑞士联邦理工学院的Xuejia Lai和James Massey于1990年提出的一种高效、安全的对称加密算法。IDEA以其出色的加密强度和相对较低的计算...