cloud encryption: cryptomator

Here is a great solution for anyone who wants to encrypt their data before putting it onto the cloud.

https://cryptomator.org/

It’s an open-source encryption software for PC, MAC, Linux, Android, and iOS. So every common plattform is supported.

How is it encrypted?

In short:
You get a realtime de-/encrypted container.

the password: scrypt
the files: AES-GCM (256 Bit)
(the filenames are also encrypted beforehand)

See the full documentation on that here: https://docs.cryptomator.org/en/latest/security/architecture/

pc windows example

Note

There are multiple files generated. good for cloud sync.
The structure looks for similar to the files and folders created with ENC DataVault by ENC Security
You get a “light” Version (which enables AES 256 bit) of that software with buying a Sandisk Cruzer USB Stick. I’ve bought the pro version allowing multiple, military-grade AES 512 and also AES 1024 bit containers.
=> cryptomator has a better usability

Use cases

In my case, I use it to safely share and access data between my windows pc, linux (ubuntu) and android smartphone.

On mobile, you get the option to sync your taken pictures encrypted into one container. for convenience, there is the option of entering your credentials to encrypted containers via fingerprint.

It would be possible to share cloud storage with other family members and keep private data protected.

You could also just encrypt your files locally on an external disk.

About the company: Skymatic GmbH

It’s born as a german startup with the idea: there are a few cloud encryption tools available… but no one has made their code open source to be transparent and also more secure.

They also provide company licenses for implementing their technology into your own software or you can get an enterprise solution for encrypted file storing and sharing: cryptomator server https://server.cryptomator.org/

Pricing

Nov 2019:
PC / Linux / Mac: Pay what you want

0 EUR, 9 EUR, 15 EUR, 25 EUR or what you want

Android and iOS:

iOS 5,99 EUR – 4,99 USD
Android 9,99 EUR
right now there is a discount for 5,99 EUR

Secure E-Mail with Gpg4win

On the 07.05.2019 the BSI (Federal Office for Information Security) has released a press article that federal institutions may use Gpg4win ( https://www.gpg4win.de/ ) to send VS-NfD / restricted data via mail.
which means for us..
-> if it’s safe for restricted federal data…
-> it’s safe to use for everyone’s emails as well 🙂

https://www.bsi.bund.de/DE/Presse/Pressemitteilungen/Presse2019/Gpg4win-mit-VS-NfD-070519.html

A note on why you should encrypt and what the software does, can be found here

https://www.bsi.bund.de/DE/Themen/Kryptografie_Kryptotechnologie/Kryptotechnologie/Gpg4win/gpg4win_node.html

Basically.. if you send private messages… in the realworld, you wouldn’t want to send several things readable to everyone on the way either, like on a postcard.

=> On the web.. sending emails is like sending postcards…

Of course, TLS/SSL helps that the way your message is transferred safely.. but on the servers, your emails are still readable in clear text.
Oh.. wait.. there is the patriot act, which allows national agencies to access to those on demand. but not only the USA has such laws..

The thing is, that federal security agencies like the NSA might copy your emails and make profiles from it.
Even your metadata 😉 speaks a lot about you
who you are friend with.. what topics you talk to them.. when you are awake, if you are in vacations, from which location/computer you send your email from… and many more

The goal here is: END to END
private/public key encryption (RSA)

How does RSA work?

You can encrypt with a public key but only decrypt with a private key.
https://www.tutorialspoint.com/cryptography/public_key_encryption.htm

You generate a password-protected private key, which you don’t share.
With this one, you generate a public key.

Now you send your public key to the other person.
The other person encrypts the message with your public key and sends it to you.
You can decrypt the message with your private key.

I’ll make a tutorial on how actually to use Gpg4win

Nvidia Graphics Driver – Virtual Memory Bug

I’ve faced a really nasty bug.

My Environment:
– Windows 10, Intel i7 CPU, Nvidia GTX 1070 TI, newest drivers, 8 GB RAM
– Windows 10, 2x Intel Xeon, Nvidia GTX 980, newest drivers, 92 GB RAM

The symptoms ..
…in Firefox:
After some time browsing or even faster caused on youtube.. firefox flickers black/white.. if you minimize it.. its fine again.. if you reopen it.. the browser crashes.. eventually the graphics driver crashes.. you end up in a 800×600 resolution or a black screen where you only can press the reset/power button.

…in Photoshop or Lightroom:
you watch some photos… the application stops reacting.. the graphics driver crashes.. you end up in a 800×600 resolution

 

What happened here?

First question was.. has something changed on my system?
I have lost access to a data harddisk where my Virtual Memory was on.
After the D:\ drive has gone.. windows didn’t set it back to auto.

I’ve experienced the same problem with a rendering pc which has 192 GB RAM.. I’ve set the virtual memory manually to disabled.. since RAM is faster than SSD.. so why use virtual memory here?

Problem:

Several Applications seem to need Virutal Memory!
eg. Photoshop, Lightroom, Firefox, Nvidia Graphics drivers

The nasty thing is.. you applications don’t say anything about Memory issues.

Photoshop doesn’t work if you set VRAM to 0 MB.. it tells you, without VRAM it won’t work. But in this case: Windows had somehow set the value to 4 MB.. so there was no Memory error.

Steps I took, which didn’t help:

 

The one and only solution:

Give Windows that damn Virtual Memory.

 

TL;DR:

Windows10 Applications and Graphics drivers crash because the want Virtual Memory no matter how much Physical Memory you have or if you have enough reserve.

=> Set in you system performance settings a Virtual RAM

Optimize the Paging File in Windows 7/8/8.1
HowTo set the Virtual Memory

LaTex Ressources

LaTex is a very good academic or professional content publishing solution.

Sometimes you just wish to have a good template to start with instead of starting each time from scratch.

\documentclass{article}
\title{Cartesian closed categories and the price of eggs}
\author{John Smith}
\date{September 1994}
\begin{document}
   \maketitle
   Hello world!
\end{document}

Here is a good site where you can get those:

http://www.latextemplates.com/

They offer the following categories:
Academic Journals, Articles, Assignments, Books, Calendars, Conference Posters, Cover Letters, Curricula Vitae/Résumés, Essays, Formal, Letters, Laboratory Books, Laboratory Reports, Miscellaneous, Newsletters, Presentations, Theses, Title Pages

You get to see a preview to decide from, and can get directly to the tex-code.


Some other good resources are

http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/
"Text processing using LaTex" by University of Cambridge
Here you can find lots of tutorials, bibliography guides, software, …

http://nitens.org/taraborelli/latex
Here you can get some ideas to use typesettings better.

https://www.latex-project.org/
These guys are pushing LaTex forward.. some good areticles are to find here.

https://github.com/cmichi/latex-template-collection
A little template collection



Multi-threaded 7-Zip with Zstandard, Brotli, Lz4, Lz5 and Lizard Compression support

Great compression performance now available for use in windows and more
https://github.com/mcmilk/7-Zip-zstd

You can also get there the multithreading c library for Brotli, Lizard, LZ4, LZ5 and ZStandard used in it
https://github.com/mcmilk/zstdmt


Python LZ4 lib

I've also found a good python multi-threaded lib for LZ4
https://github.com/Iotic-Labs/py-lz4framed

Easy to use

import lz4framed

compressed = lz4framed.compress(b'my normal text')

uncompressed = lz4framed.decompress(compressed)

file compression

with open('somefile.csv', 'wb') as f:
    # Context automatically finalises frame on completion, unless an exception occurs
    with Compressor(f) as c:
        try:
            while (...):
               c.update(moreData)
        except Lz4FramedNoDataError:
            pass

file decompression

with open('somefile.csv.lz4', 'rb') as f:
    try:
        for chunk in Decompressor(f):
           decoded.append(chunk)
    except Lz4FramedNoDataError:
        # Compress frame data incomplete - error case

command line utility

python3 -mlz4framed
USAGE: lz4framed (compress|decompress) (INFILE|-) [OUTFILE]

(De)compresses an lz4 frame. Input is read from INFILE unless set to '-', in
which case stdin is used. If OUTFILE is not specified, output goes to stdout.

Some benchmarks

Quick Benchmark: Gzip vs Bzip2 vs LZMA vs XZ vs LZ4 vs LZO

Tested were: Compression ratio, Compression time, Decompression time, Memory requirements on compression, Memory requirements on decompression, Time to compress, Time to decompress, Memory used, Compression ratio

https://catchchallenger.first-world.info/wiki/QuickBenchmark:GzipvsBzip2vsLZMAvsXZvsLZ4vsLZO