Added ref for lz-string

This commit is contained in:
jude 2023-05-02 14:41:26 +01:00
parent e53a4405bc
commit e3340cd5b5
3 changed files with 10 additions and 1 deletions

View File

@ -267,6 +267,15 @@ howpublished = {\url{https://zcash.readthedocs.io/en/latest/rtd_pages/basics.htm
howpublished = {\url{https://github.com/tc39/proposal-bigint}},
}
@misc{lzstring,
author = {Pieroxy},
title = {lz-string: LZ-based compression algorithm for JavaScript},
year = {2013},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/pieroxy/lz-string}},
}
@misc{ipfs,
author = {IPFS},
title = {IPFS Specifications},

Binary file not shown.

View File

@ -1099,7 +1099,7 @@ This could be overcome by reducing the number of rounds, which comes at the cost
Each of these calculations is in an ideal situation without compression or signatures: in the implementation presented, the serialisation of a ciphertext is larger than this, since it serialises to a string of the hexadecimal representation and includes a digital signature for authenticity. In JavaScript, encoding a byte string as hexadecimal should yield approximately a four times increase in size, as one byte uses two hexadecimal characters, which are encoded as UTF-16. Results for the actual sizes of each proof are given in \hyperref[table3]{Table~\ref*{table3}}. Some potential solutions are discussed here.
\textbf{Compression.} One solution is to use string compression. String compression can reduce the size considerably, as despite the ciphertexts being random, the hex digits only account for a small amount of the UTF-8 character space. LZ-String, a popular JavaScript string compression library, can reduce the size of a single hex-encoded ciphertext to about 35\% of its original size. This will result in some slowdown due to compression time. However, this is somewhat negligible in the face of the time taken to produce and verify proofs in the first place.
\textbf{Compression.} One solution is to use string compression. String compression can reduce the size considerably, as despite the ciphertexts being random, the hex digits only account for a small amount of the UTF-8 character space. LZ-String, a popular JavaScript string compression library \cite{lzstring}, can reduce the size of a single hex-encoded ciphertext to about 35\% of its original size. This will result in some slowdown due to compression time. However, this is somewhat negligible in the face of the time taken to produce and verify proofs in the first place.
\textbf{Message format.} Another solution is to use a more compact message format, for example msgpack \cite{msgpack} (which also has native support for binary literals).