CHIXAA file crypter documentation by EddyHawk
---
What
---
CHIXAA is a file encrypter coded by EddyHawk (me).
It is part of PROTAGON File Crypter (PFC) series done by me.
CHIXAA uses XCHICHA cipher, DAZZ-128 & SHA-512 hash functions, and
 HMAC & ScryptA construction, all adapted/taken from WE Pascal sources.
CHIXAA = CHIXA, except that it's using ScryptA instead of EPHS.

---
What is ScryptA
---
Scrypt is a memory-hard KDF by Colin Percival [2009].
ScryptA is my modification to Scrypt:
-it uses SHA512 instead of SHA256
 Larger hash space, lesser speed up by HW brute-force
-it uses (Basm32) Chacha/8 instead of Salsa20/8
ScryptA for CHIXAA uses N-r-p = 65536-1-1 (requires ~8Mb mem)
Why not use 16384-8-1 (~16Mb mem) as recommended, or even more?
 Some say that Scrypt at ~4Mb mem is equal to Bcrypt in resisting GPU attack.
  Thus Scrypt at ~8Mb mem should offer better protection than Bcrypt.
 ~16Mb mem takes ~0.9 sec on my 7th cpu @0.8Ghz (too slow for
  low-end cpu), while 65536-1-1 takes ~0.51 sec.
  My further optimization to ScryptA manages to reduce it to ~0.31 sec.
 There's no need to waste users' mem too much (eventhough just for a moment)
  because Scrypt memory-hardness is still vulnerable to TMTO attacks,
  eventhough still better than PbKDF2-HMAC-SHA512 & Bcrypt in this regard.
  Thus imposing (much) larger memory doesn't ensure that attackers will use
  the same amount. It only ensures that users will be burdened by
  uncomfortable delays and compatibility problems.

End.