Rijndael加密/解密工具 - 在线Rijndael加密和解密文本

Rijndael加密/解密工具,用于在线Rijndael加密文本和Rijndael解密文本,支持设置多种Rijndael工作模式、填充模式和密钥长度。

场景一:使用Rijndael加密文本。
1.1、请设置Rijndael加密参数,可选多种工作模式、填充模式和密钥长度等。
1.2、请上传或输入要加密的原始文本:
场景二:使用Rijndael解密文本。
2.1、请设置Rijndael解密参数,可选多种工作模式、填充模式和密钥长度等。
2.2、请上传或输入解密文本:
  操作文档

一、Rijndael加密算法介绍

  • Rijndael加密算法是一种可逆的对称加密算法,这类算法在加密和解密时使用相同的密钥,或是使用两个可以简单地相互推算的密钥,一般用于服务端对服务端之间对数据进行加密/解密。该算法为比利时密码学家Joan Daemen和Vincent Rijmen所设计,结合两位作者的名字,以Rijndael命名。


1.1、Rijndael算法与AES算法区别

严格地说,Rijndael加密算法和AES算法并不完全一样(虽然在实际应用中两者可以互换),因为Rijndael加密算法可以支持更大范围的区块长度和密钥长度,下面为具体的说明:

  • AES的区块长度固定为128比特,密钥长度则可以是128、192和256比特;
  • Rijndael使用的密钥和区块长度均可以是128、160、192、224、256比特。


二、Rijndael加密/解密工具操作方式

  • 首先,设置Rijndael加密参数,然后,上传或输入要加密的原始文本,最后,点击开始Rijndael加密即可。
  • Rijndael加密/解密工具,主要用于在线Rijndael加密文本和Rijndael解密文本,支持设置多种Rijndael工作模式、Rijndael填充模式和Rijndael密钥长度。Rijndael加密和Rijndael解密参数需要完全一致才能成功,该在线工具加密解密文本使用Base64编码的字符串。


2.1、Rijndael的工作模式

  • Rijndael加密算法常见的工作模式为:ECB,CBC,OFB,CFB,CFB8,CTR,GCM,除了ECB无须设置初始化向量IV而不安全之外,其它Rijndael工作模式都必须设置向量IV。


2.2、Rijndael填充模式

块密码只能对确定长度的数据块进行处理,而消息的长度通常是可变的,因此需要选择填充模式。当您选择NONE不填充时,则要保证加密文本长度为8的倍数,否则出现Rijndael解密/加密异常。

  • 填充区别:在 ECB、CBC工作模式下最后一块要在加密前进行填充,其它不用选择填充模式;
  • 填充模式:Rijndael支持的填充模式为PKCS7和NONE不填充。其中PKCS7标准是主流加密算法都遵循的数据填充算法,因此推荐PKCS7。


2.3、Rijndael加密密钥和密钥长度

  • Rijndael密钥长度只有五个值,128Bit、160Bit、192Bit、224Bit、256Bit,对应的字节长度为16位、20位、24位、28位和32位。Rijndael加密密钥KEY用于加密解密数据,不能公开传输,例如16位的加密密钥KEY:1234567812345678。


2.4、Rijndael加密向量

  • Rijndael加密向量可以公开,用于将加密随机化,同样的明文被多次加密也会产生不同的密文。
  • 在实际的使用场景中,它不能像加密密钥那样直接保存在配置文件中,一般在加密端将向量IV设置为对应区块长度的随机值,然后和加密文本一起返给解密端。


2.5、Rijndael附加消息

Rijndael附加消息为GCM工作模式下的专用参数,由Rijndael加密解密双端共同使用,可以为空。

  • 初始向量IV:参数向量IV的值相当于GCM工作模式使用的Nonce;
  • 消息认证码:GCM加密后生成的消息认证码TAG,GCM工作模式下专用。