Functions for encrypting files.

Utility Functions

process_dirs[source]

process_dirs(p:Path, fn=None, invalid_exts='mca')

process_dirs('test_save',lambda x,invalid_exts:print(x))
test_save/level.dat
test_save/level.dat_old
test_save/session.lock
test_save/multipart.dat
test_save/forcedchunks.dat
test_save/advancements/aaa58dde-8e1d-4577-aae3-fff207e8c068.json
test_save/playerdata/aaa58dde-8e1d-4577-aae3-fff207e8c068.dat
test_save/DIM-17/multipart.dat
test_save/DIM-17/forcedchunks.dat
test_save/DIM-17/data/buildcraft_wire_systems.dat
test_save/DIM-17/data/capabilities.dat
test_save/DIM-17/data/villages_wyvern_lair.dat
test_save/DIM-1/multipart.dat
test_save/DIM-1/forcedchunks.dat
test_save/DIM-1/data/buildcraft_wire_systems.dat
test_save/DIM-1/data/villages_nether.dat
test_save/DIM-1/data/capabilities.dat
test_save/minecolonies/colonies.dat
test_save/minecolonies/colonies-2020-12-07_23.04.22.zip
test_save/data/villages.dat
test_save/data/buildcraft_wire_systems.dat
test_save/data/buildcraft_marker_volume.dat
test_save/data/Village.dat
test_save/data/mocreatures.dat
test_save/data/capabilities.dat
test_save/data/buildcraft_marker_path.dat
test_save/data/Mineshaft.dat
test_save/stats/aaa58dde-8e1d-4577-aae3-fff207e8c068.json
test_save/structurize/structurize_linksession.dat
test_save/DIM1/multipart.dat
test_save/DIM1/forcedchunks.dat
test_save/DIM1/data/buildcraft_wire_systems.dat
test_save/DIM1/data/villages_end.dat
test_save/DIM1/data/capabilities.dat
test_save/region/r.0.-1.mca
test_save/region/r.0.0.mca

Crypto Functions

%%writefile test_file.txt
Hello
This is
A file that 
needs to be encrypted
Overwriting test_file.txt

encrypt_file[source]

encrypt_file(p:Path, to_p:Path=None, block_sz=65536, verbose=False, prefix='encrypted', key=None, invalid_exts='')

k=encrypt_file('test_file.txt',block_sz=8,verbose=True);k
b'gAAAAABf1AeT-YBxb0mutyFSHsyRDPkg1ymqmiPs96HNeV8TdQiUErqv29ujqK8Pvd0Eg-DF0qG0fUfHnZhHCG37s6MVEI9vXA=='
b'gAAAAABf1AeTjOKgAo9W6qWmXfYZmEmIpsNh8hUBRv5rlhFVCNtsQN_ac7xs7AJOXRcpfm0fhW5Nyj4-ZbuWXT07ihj9nQCvWQ=='
b'gAAAAABf1AeTLbXmex_EYUJJ75ZwqqZmCxdnvrB99EW6KO46lC19ioIlTWxttZ0A-Ld14-5bkE--pCkkQG4HGppEhvpTG29arw=='
b'gAAAAABf1AeTmd9Xp_HG56EN56dnijcDggswbmg7hjO34BYFCh8CvF09kay0bsUQ4ajIvakiU-HCvOZuVPzdRE2nByixqehQTA=='
b'gAAAAABf1AeTajYSfpV2JMR4MqiZCisfqQZKtf0Nj8aFXEHJPteSyqoFMjmz61SovxhLbWc9cBNPlhxyTFRe65dGaZJ5eya6jA=='
b'gAAAAABf1AeTDCe8FblH-K-tUOFQJVePCf9u4OzoGbC7txeszeC3psHhX7q80GqqvIEPCzxVFqlRne6GlZ8LXo0nIZITsCw4tA=='
b'gAAAAABf1AeTN28N4WaS_cZxMDzXvusIQtwV6yxiFJCe1-RoeottPrRY8JisOruIKAku5B06rz1Memmzpk_z45zAx4NTYytFyw=='
b'8r5mrM7RtDYgJNbWkv62LoXMuj_AROATx_GZdH1WAcs='

decrypt_file[source]

decrypt_file(p:Path, key, to_p:Path=None, block_sz=65536, verbose=False, prefix='decrypted', invalid_exts='')

decrypt_file('encrypted/test_file.txt',k,'test_file_decrypted.txt',verbose=True)
encrypted/test_file.txt
b'8r5mrM7RtDYgJNbWkv62LoXMuj_AROATx_GZdH1WAcs='
k=Fernet.generate_key()
process_dirs('test_save',partial(encrypt_file,key=k,prefix='minecraft_encrypted'))
process_dirs('minecraft_encrypted/test_save',partial(decrypt_file,key=k,verbose=True))
minecraft_encrypted/test_save/level.dat
minecraft_encrypted/test_save/level.dat_old
minecraft_encrypted/test_save/session.lock
minecraft_encrypted/test_save/multipart.dat
minecraft_encrypted/test_save/forcedchunks.dat
minecraft_encrypted/test_save/advancements/aaa58dde-8e1d-4577-aae3-fff207e8c068.json
minecraft_encrypted/test_save/playerdata/aaa58dde-8e1d-4577-aae3-fff207e8c068.dat
minecraft_encrypted/test_save/DIM-17/multipart.dat
minecraft_encrypted/test_save/DIM-17/forcedchunks.dat
minecraft_encrypted/test_save/DIM-17/data/buildcraft_wire_systems.dat
minecraft_encrypted/test_save/DIM-17/data/capabilities.dat
minecraft_encrypted/test_save/DIM-17/data/villages_wyvern_lair.dat
minecraft_encrypted/test_save/DIM-1/multipart.dat
minecraft_encrypted/test_save/DIM-1/forcedchunks.dat
minecraft_encrypted/test_save/DIM-1/data/buildcraft_wire_systems.dat
minecraft_encrypted/test_save/DIM-1/data/villages_nether.dat
minecraft_encrypted/test_save/DIM-1/data/capabilities.dat
minecraft_encrypted/test_save/minecolonies/colonies.dat
minecraft_encrypted/test_save/minecolonies/colonies-2020-12-07_23.04.22.zip
minecraft_encrypted/test_save/data/villages.dat
minecraft_encrypted/test_save/data/buildcraft_wire_systems.dat
minecraft_encrypted/test_save/data/buildcraft_marker_volume.dat
minecraft_encrypted/test_save/data/Village.dat
minecraft_encrypted/test_save/data/mocreatures.dat
minecraft_encrypted/test_save/data/capabilities.dat
minecraft_encrypted/test_save/data/buildcraft_marker_path.dat
minecraft_encrypted/test_save/data/Mineshaft.dat
minecraft_encrypted/test_save/stats/aaa58dde-8e1d-4577-aae3-fff207e8c068.json
minecraft_encrypted/test_save/structurize/structurize_linksession.dat
minecraft_encrypted/test_save/DIM1/multipart.dat
minecraft_encrypted/test_save/DIM1/forcedchunks.dat
minecraft_encrypted/test_save/DIM1/data/buildcraft_wire_systems.dat
minecraft_encrypted/test_save/DIM1/data/villages_end.dat
minecraft_encrypted/test_save/DIM1/data/capabilities.dat
minecraft_encrypted/test_save/region/r.0.-1.mca
minecraft_encrypted/test_save/region/r.0.0.mca