salsa2020 -> ChaCha20

This commit is contained in:
Dominik Moritz Roth 2020-06-25 12:15:49 +02:00
parent 09fe532f90
commit 96b1753ac8
2 changed files with 10 additions and 11 deletions

View File

@ -23,15 +23,14 @@ In the Alpha-Layer we take our plaintext and encrypt it using a key and an iv bo
In the Psi-Layer we generate an HMAC of the Alpha-Ciphertext using two keys taken from our key scheduler. In the Psi-Layer we generate an HMAC of the Alpha-Ciphertext using two keys taken from our key scheduler.
### The Omega Layer (salsa2020) ### The Omega Layer (ChaCha20)
In the Omega-Layer we encrypt the Psi-Ciphertext using salsa2020, which we apply in cbc, in order to prevent any In the Omega-Layer we encrypt the Psi-Ciphertext using salsa2020, which we apply in cbc, in order to prevent any
patterns to remain in the final ciphertext. (We also encrypt the HMAC this way; just to be sure). The key for patterns to remain in the final ciphertext. (We also encrypt the HMAC this way; just to be sure). The key and iv for
salsa2020 and the iv for cbc are given to use by our fancy key scheduler. ChaCha20 and the iv for cbc are given to use by our fancy key scheduler.
Optionally a GZIP based compression can be applied. Optionally a GZIP based compression can be applied.
##
The dark secret: ## The dark secret:
Look into bethany.py Look into bethany.py

View File

@ -1,12 +1,12 @@
# In order to break lazarus, you would have to # In order to break lazarus, you would have to
# a) break AES # a) break AES
# b) break ECC # b) break ECC
# c) break salsa2020 # c) break ChaCha20
# d) break prime-factorization # d) break prime-factorization
# e) break cbc (ok, that's quite doable...) # e) break cbc (ok, that's quite doable...)
# #
# And still here we are: # And still here we are:
# This script is able to decrypt any ciphertext encrypted using lazarus # This script is able to decrypt any ciphertext encrypted using lazarus :D
from fastecdsa.curve import P256 from fastecdsa.curve import P256
from fastecdsa.point import Point from fastecdsa.point import Point