Class RydeEncoder

  • All Implemented Interfaces:,, java.lang.AutoCloseable

    public final class RydeEncoder
    Stream that performs the full RyDE encryption.

    The RyDE format has 2 files:

    • the "data" file, encoded in data -> tar -> PgpFile -> compression -> encryption
    • the signature of the resulting file

    Hence, the encoder needs to receive 2 OutputStreams - one for the data and one for the signature.

    Because of the external tar file encoding - the encoder must know the total length of the data from the start. This is a bit annoying, but necessary.

    • Field Summary

      • Fields inherited from class

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()  
      void write​(byte[] b, int off, int len)
      Call the underlying 3 input write.
      • Methods inherited from class

        flush, write, write
      • Methods inherited from class

      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • write

        public void write​(byte[] b,
                          int off,
                          int len)
        Call the underlying 3 input write.

        FilterInputStream implements the 3 input write using a for loop over the single-byte write. For efficiency reasons, we want it to use the 3 input write instead.

        write in class
      • close

        public void close()
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface
        close in class