我try 使用AES crate ,它提供三种算法:AES128、AES192和AES256.我正在try 创建一个 struct ,它可以通过检测密钥大小来创建正确的算法,并将其保存到以后使用.
我看到它们都实现了BlockEncrypt(我只需要加密)特性,但当我试图在 struct 中创建一个具有这种类型的字段时,即使提供了大小,我也会得到一个"特性BlockEncrypt
无法生成对象.特性无法生成对象,因为它需要Self: Sized
"错误.
pub struct MyStruct<'a, T: Sized> {
ciph: Box< dyn BlockEncrypt<BlockSize = T>>,
}