traits icon indicating copy to clipboard operation
traits copied to clipboard

re-implement AsyncStreamCipher buffering

Open cfal opened this issue 2 years ago • 2 comments

AsyncStreamCipher used to take an &mut self parameter for its encrypt and decrypt functions that would save the iv from the previous block and allow for cfb mode encryption/decryption in a streaming manner: https://docs.rs/cfb-mode/0.7.1/src/cfb_mode/lib.rs.html#79-170

with cfb-mode 0.8.0, encrypt/decrypt now consumes self and no longer supports this.

it would be very helpful for users of cfb-mode 0.7.1 to be able to upgrade to 0.8.0 without having to re-implement this functionality themselves.

thank you!

cfal avatar Mar 13 '22 12:03 cfal

I strongly sympathize with this issue as a user of the cfb8 crate. I'm willing to work on a solution, but I'm unsure of what is preferred. Should the functions within AsyncStreamCipher just change back to &mut self (probably a breaking change)? Should a new trait be created?

saiintbrisson avatar May 29 '22 16:05 saiintbrisson

There have been enough reports of issues I’d be in favor of reverting the change in cipher v0.5

tarcieri avatar May 29 '22 17:05 tarcieri

https://github.com/RustCrypto/block-modes/pull/17 is merged and released, so I think we can close this issue.

newpavlov avatar Sep 15 '22 17:09 newpavlov