密文截获篡改
如果使用的是对称加密,即通常一个算法和一个密钥的情况下,接收方只有使用与加密相同的密钥,才能解出正确的密文,如果使用了不同的密钥,解密出来的明文可能就是一串乱码。假如在确定密钥是与明文加密密钥同一个的情况下,解密出来的明文如果是可读的,明白的,看似就可以确定密文是安全的,完整的,来自发送者发送过来的,其实不然,如果密文信息在发送过程中被别人截获了,然后修改密文信息,再发送给接收方,那么接收方即使使用正确的密钥,解密出来的明文也不是发送方原来的明文。接收方可能在解密后发现明文是杂乱无章的信息,会发现密文被篡改,这种情况还不是最糟糕的,密文在途中被截获后,中间人可以用暴力破解等方式破解密文,导致信息泄露,假设连密钥都被破解了,那么中间人可以使用密钥任意修改密文,重新加密后发送“错误”的密文给接收方。来具体看个例子:
左上角首先用命令对message.txt文件进行加密,并将加密密文和salt,初始化向量iv一起保存到CipherText.txt文件中。从命令中可以看到,使用的是对称加密的标准算法AES算法(AES加密算法中,密钥由口令pass和salt一起生成),密钥长度为256比特,使用的分组方式是CBC密文分组连接方式,所以才会使用