Package org.bouncycastle.crypto
Interface SkippingCipher
- All Known Subinterfaces:
CTRModeCipher
,SkippingStreamCipher
- All Known Implementing Classes:
ChaCha7539Engine
,ChaChaEngine
,Salsa20Engine
,SICBlockCipher
,XSalsa20Engine
public interface SkippingCipher
Ciphers producing a key stream which can be reset to particular points in the stream implement this.
-
Method Details
-
skip
long skip(long numberOfBytes) Skip numberOfBytes forwards, or backwards.- Parameters:
numberOfBytes
- the number of bytes to skip (positive forward, negative backwards).- Returns:
- the number of bytes actually skipped.
- Throws:
IllegalArgumentException
- if numberOfBytes is an invalid value.
-
seekTo
long seekTo(long position) Reset the cipher and then skip forward to a given position.- Parameters:
position
- the number of bytes in to set the cipher state to.- Returns:
- the byte position moved to.
-
getPosition
long getPosition()Return the current "position" of the cipher- Returns:
- the current byte position.
-