in app (Java) crypt "file store"/ media cache ?

Zenaan Harkness zen at
Sun Jul 5 07:38:21 PDT 2020

In app media cache ought be in a crypt by default.  Has anyone done this before and can give hints?

Platforms: initially android, but should be compilable for others including Linux

Object types: avatars, tweets, associated media including images and even vids - whatever is in a standard social media 'stream'.

Obviously cache needs to be parameterizable as to size, eviction policy, but it's not going to be unencrypted.

Come to think of it, FreeNet's code might be good, at the very least as a tutorial - but experience is always valuable, so if you have some experience you can share, please do.

To simplify eviction, objects should be separate files, compressed prior to saving, with one or more indices (also encrypted) for the application to do it's thing efficiently, including store, lookup, read and re-enrypt when an object is to be on-forwarded.

Content addressed in some way of course - git has lead the way on this principle - we just must make sure that if the user does not give up his password, anything lying around must meet some minimum "hiddenness" standard.

Possible libs:

# Tuweni

# Ancient Nacl-Java
# looks like a one man band, not updated for 5yrs

# Libsodium
# "complete security audit"
# Seems to be used by Tuweni


# Java Cryptography Architecture (JCA) Reference Guide

# simple block encryption

# Java - Asymmetric Cryptography example -

Encrypting and Decrypting Files in Java | Baeldung

How to easily encrypt and decrypt text in Java

Encrypt and Decrypt file/stream in Java

More information about the cypherpunks mailing list