时间:2023-06-15|浏览:228
一、公钥算法与私钥算法 1、私钥算法 私钥加密算法,也称对称加密算法,因为加密和解密要使用相同的密钥。由于密钥需要保密,因此这种算法不适合公开使用。常见的算法有DES加密算法和AES加密算法。DES算法将原始数据拆分成8字节数据块,对每个数据块都进行加密,使用前一个数据块的加密结果和密钥加密下一个数据块,解密过程反之。Dotnet提供的DES算法实现的DESCryptoServiceProvider(或TripleDESCryptoServiceProvider)类可自动处理这些加密和解密的过程。
对称算法和非对称算法的特点如下: 对称算法: 加密和解密使用相同的密钥,需要传输密钥,密钥保密性具有风险 算法相对简单,加解密速度很快
非对称算法: 加密使用公钥,解密使用私钥 2、公钥算法 公钥加密算法,也称非对称加密算法。加密和解密密码不同,一个是公钥,另一个是私钥。公钥和私钥是一对密钥,公钥可公开,私钥需保密。用公钥加密(或签名)的数据只有对应的私钥可以解密,用私钥加密(或签名)的数据只有对应的公钥可以解密。如果可以用公钥解密,则必然是对应的私钥加的密;如果可以用私钥解密,则必然是对应的公钥加的密。公钥和私钥是相对存在的。
3、钱包地址 公钥可以生成唯一地址,用于验证发送交易的地址是否与公钥生成的地址一致。
二、实现数据安全传输 为了实现数据安全传输,需要进行加密。如果使用对称加密算法,加解密使用同一个密钥,对方也需要知道该密钥才能解密。如果密钥也一起传输,密码保密性会存在风险。因此,我们使用非对称算法: 1.接收方生成一对密钥,即私钥和公钥; 2.接收方将公钥发送给发送方; 3.发送方使用收到的公钥对数据进行加密,然后发送给接收方; 4.接收方使用自己的私钥解密数据。
以下为RSA结合TripleDES算法加密解密过程。
三、数字签名 公钥体系的另一个用途就是对数据进行数字签名,用于验证发送方身份并保护数据完整性。例如,发送者A想要传递资料给大家,用自己的私钥对资料进行加密即签名。所有收到资料的人可以用发送者的公钥验证该资料是否由A发出来的。用公钥可以解密的必然是用对应的私钥加的密,而私钥只有签名者持有。
四、公钥算法的缺点 现实中,公钥机制也有缺点,那就是效率非常低,比常用的私钥算法(如DES和AES)慢上一两个数量级。因此,公钥算法不适合对大量原始信息进行加密。为了同时兼顾安全和效率,我们通常结合使用公钥算法和私钥算法: 1.发送方使用对称算法对原始信息进行加密; 2.接收方通过公钥机制生成一对密钥,一个公钥,一个私钥; 3.接收方将公钥发送给发送方; 4.发送方使用公钥对对称算法的密钥进行加密,并发送给接收方; 5.接收方使用私钥进行解密,得到对称算法的密钥; 6.发送方再将加密的原始信息发送给接收方; 7.接收方使用对称算法的密钥进行解密。
总结: 1.每个用户都有一对私钥和公钥。 a.私钥用于本人解密和签名。 b.公钥用于加密和验证签名,向他人公开。 2.用户发送文件时,用私钥签名,他人用公钥解密,以确保信息由其发送。 即数字签名。 3.用户接收文件时,他人用他的公钥加密,他用私钥解密,以确保信息只能被他看到。即安全传输。
用戶喜愛的交易所
已有账号登陆后会弹出下载