A very tiny, very simple, and very secure file encryption tool.

Overview



Picocrypt



Picocrypt is a very tiny (hence "Pico"), very simple, yet very secure file encryption tool. It uses the modern ChaCha20-Poly1305 cipher suite as well as Argon2, making it about as secure and modern of an encryption tool as you'll ever get your hands on. It's very simple to use, which allows anyone to start encrypting private files, no matter what level of experience they have with computers. Picocrypt's focus is security, so it might be slightly slower and less attractive visually than others. Remember: your privacy and security is in your hands. Take good care of it and encrypt your files with Picocrypt.

Screenshot

Download

Windows

Picocrypt for Windows is as easy as it gets. To download the latest, standalone, and portable executable, click here. You can also download a specific release from the Releases tab.

MacOS

Picocrypt for MacOS is also very easy to use. Download the latest, standalone, and portable executable for MacOS here. Older releases are available under Releases. MacOS might show a notice that Picocrypt is malware (it isn't) and disable opening it. To fix this, open Finder, Ctrl and right click on Picocrypt, and hit "Open". You might have to do this two times to open Picocrypt. After opening Picocrypt, be patient while Picocrypt loads. It might a couple seconds.

Linux

Since the Linux kernel bundles Python along with the system, all you have to do is go to the src/ directory in the files above and download Picocrypt.py or copy it into a Python file. Run it, and dependecies, etc. will be automatically installed. When dependencies are installed, Picocrypt will fire up. The src/ directory has more info.


Note: For some reason, there's an outdated and useless tool called PicoCrypt on the Internet, which was last updated in 2005. PicoCrypt is not related to Picocrypt (this project). Make sure you only download Picocrypt from this Github repository to ensure that you download the correct, authentic, and backdoor-free software.

Why Picocrypt?

Why should you use Picocrypt, instead of Bitlocker, NordLocker, VeraCrypt, or 7-Zip? Here are some reasons why you should switch to Picocrypt:

  • The only safe encryption is the one you do yourself. Don't trust cloud providers to "encrypt" your data, because you'll never know if they do it or not. Picocrypt is meant to be the simplest tool to allow you to take control over your confidential data and protect it with the most secure modern standards available.
  • Unlike NordLocker, Bitlocker, and many cloud storage providers, Picocrypt and its dependencies are FOSS (free open-source software) and can be audited. You can verify for yourself that there aren't any backdoors or flaws.
  • Picocrypt is portable and tiny (just 3MB!). It's much lighter than NordLocker (>100MB) and VeraCrypt (>30MB). The raw Python file can run any machine and the standalone .exe can run on any Windows PC from 7 and up. Picocrypt floats your boat without any bloat.
  • It's infinitely easier to use than VeraCrypt (no need to create volumes) and a 5-year-old could probably use Picocrypt. All you need to do is select a file and enter a password.
  • Picocrypt is built for security, using modern standards and secure settings. See Security below for more info.
  • It supports file integrity checking through Poly1305, which means that you would know if a hacker has maliciously modified your data. This is useful for transfering sensitive data where authenticity is crucial.
  • Picocrypt supports anti-corruption through Reed-Solomon. Unlike other encryption tools, Picocrypt actively protects your files by adding extra Reed-Solomon bytes, so if your file gets corrupted (ie. hard drive failure), Picocrypt can still fix the errors and decrypt your files. None of Bitlocker, NordLocker, VeraCrypt, or 7-Zip has this ability.

Instructions

Picocrypt is about as simple as it gets. Just select a file, enter a password, and start. If you want to encrypt multiple files, add them to an archive or zip file and select it. There are some additional options that you can use for more control:

  • File metadata (editable for encryption, readonly for decryption): Use this to store notes, information, and text along with the file (it won't be encrypted). For example, you can put a description of the file before sending it to someone. When the person you sent it to selects the file in Picocrypt, your description will be shown to that person.
  • Keep decrypted output even if it's corrupted or modified (decryption only): Picocrypt automatically checks for integrity upon decryption. If the file has been modified or is corrupted, Picocrypt will delete the output. If you want to keep the corrupted or modified data after decryption, check this option. Also, if this option is checked and the Reed-Solomon feature was used on the encrypted file, Picocrypt will attempt to recover as much of the file as possible during decryption, if it is corrupted.
  • Securely erase and delete original file (encryption only): If checked, Picocrypt will generate pseudo-random data and write it to the original file while encrypting, effectively wiping the original file. The file will be deleted once encryption is complete. This method is better than just deleting the original file, because the original file can still be recovered by hackers using special software. Picocrypt overwrites the original file making sure that it's impossibe to retrieve the original file after deletion.
  • Prevent corruption using Reed-Solomon (encryption only): This feature is very useful if you are planning on archiving important data on a cloud provider or external hard drive for a long time. If checked, Picocrypt will use the Reed-Solomon error correction code to add 13 extra bytes for every 128 bytes to prevent file corruption. This means that up to ~5% (13/128/2) of your file can corrupt, and Picocrypt will still be able to correct it and decrypt your files with no corruption. Obviously, if your file corrupts very badly (ie. you dropped your hard drive ), Picocrypt won't be able to fully recover your files, but it will try its best to recover what it can. Note that decryption is very slow because Picocrypt is reassembling and (if necessary) correcting broken bytes. The output will also be ~10% larger.

Security

I have a solid understanding of cryptography and security is Picocrypt's primary focus. I was in need of a secure, reliable, and future-proof encryption tool that didn't require bloatware and containers, but I couldn't find one. That's why I created Picocrypt, which uses XChaCha20-Poly1305, which is a revision of the eSTREAM winner, Salsa20. XChaCha20-Poly1305 has been through a significant amount of cryptanalysis and was selected by security engineers at Google to be used in modern TLS suites. It's considered to be the future of symmetric encryption, and makes Picocrypt more secure than Bitlocker, NordLocker, and 7-Zip. It's used by Cloudflare, Google, and many other forward-thinking companies.

For key derivation, Picocrypt uses Argon2(id), winner of the PHC (Password Hashing Competition), which was completed in 2015. Argon2 is even slower than Scrypt and Bcrypt (for those that don't understand crypto, this is a good thing), making GPU, ASIC, and FPGA attacks impractical due to the huge amount of RAM that is used and written to during the key derivation.

For key checking and corruption checks, SHA3-512 (Keccak) is used. Before decrypting, Picocrypt checks whether the password is correct by comparing the derived key to a SHA3-512 hash stored in the encrypted file. SHA3 is the latest standard for hashing recommended by the NIST. It's a modern and well-designed hash function that's open-source, unpatented, and royalty-free.

XChaCha20-Poly1305, Argon2, and SHA3 are well recognized within the cryptography community and are all considered to be mature and future-proof. You can rely on these ciphers and algorithms to protect your data, as they are all modern and have undergone a large amount of cryptanalysis.

I did not write the crypto for Picocrypt. Picocrypt uses two Python libraries, argon2-cffi and pycryptodome, both of which are well known and popular within the Python community. Picocrypt also uses Python's standard hashlib for SHA3-512. For people who want to know how Picocrypt handles the crypto, or for the paranoid, here is a breakdown of how Picocrypt protects your data:

  1. A 16-byte salt (for Argon2) and a 24-byte nonce (for XChaCha20) is generated using a CSPRNG (Python's os.urandom())
  2. The encryption/decryption key is generated through Argon2id using the salt above and the following parameters:
    • Time cost: 8
    • Memory cost: 2^30 (1GiB)
    • Parallelism: 8
  3. If decrypting, compare the derived key with the SHA3-512 hash of the correct key stored in the ciphertext. If encrypting, compute the SHA3-512 of the derived key and add to ciphertext.
  4. Encryption/decryption start, reading in 1MB chunks at a time. For each chunk, it is first encrypted by XChaCha20, and then a CRC (using SHA3-512) is updated.
  5. If anti-corruption is checked, the 1MB chunk will be split into 128 byte chunks and 13 additional Reed-Solomon (parity) bytes will be added. If decrypting, decode the encoded 1MB chunk to get the raw data.
  6. If 'Secure wipe' is enabled, CSPRNG data is written over the original file in chunks of 1MB to securely wipe the file.
  7. When encryption/decryption is finished, the MAC tag (Poly1305) will be added to the ciphertext or verified, depending on if you're encrypting or decrypting. If 'Secure wipe' is enabled, the original file is deleted.
  8. Similar to above, the CRC is either checked or added to the ciphertext depending on the operation.
  9. If decrypting, both the CRC and the MAC tag are verified. If either don't match, decryption is unsuccessful and an error message will be displayed. Otherwise, decryption is considered successful and the process is done.

Note: the list above is greatly simplified. A lot more is actually happening.

Roadmap

See Roadmap.md for a list of new features and improvements that I'm working on.

Limitations

  • Max file size is 256GB, due to ChaCha20 cipher itself. The reason for this is that the counter for ChaCha20 will overflow out of the 32-bit range at 256GB. You can split files into chunks for files larger than 256GB.
  • Argon2 may take a while to derive, but realize that this is all for security. Security and speed were never friends and there is always a trade-off between security and speed.
  • Encryption/decryption is a little slower than other tools. Picocrypt average speeds ~50MB/s on a medium-class CPU, because a digest is constantly being updated with every chunk. Same as above, security and reliability comes at a slight decrease in speed.
  • The portable .exe can be detected as a virus, because it uses 7-Zip's self-extracting archive format to bundle Python along with Picocrypt. I've done my best and submitted it as a false positive to a couple antivirus companies to deal with this. If your antivirus is detecting it as a virus, please help the community and submit it as a false positive to your antivirus provider.

Contribution

If you manage to find a bug or security issue, please create an Issue. If the security problem is severe or critical and could potentially be exploited by hackers if published, please contact me privately through the contacts section in my website: https://evansu.cc. If one of Picocrypt's dependencies gets a critical security patch, let me know and I'll update the code (if necessary) and recompile the .exe for Windows. I'm also open to suggestions and features (you can leave an Issue for that).

Donations

If you find Picocrypt useful, please consider donating. I've spent countless hours on Picocrypt and I'd love to get Picocrypt along with its dependencies audited by a cybersecurity firm such as Cure53. Audits typically cost thousands of dollars, so I'm asking for your support. If every person who saw this message or uses Picocrypt donated a dollar or too, I'd have enough funds to get Picocrypt audited. For more information about donating, see here.

Comments
  • Add Localization Support

    Add Localization Support

    Not just for graphical user interface but also for encoding/characterset. As you may see in the screenshot below some letters (Turkish ones in my case) becomes to question marks. Also, I want to conribute as a translator, so waiting for it.

    Adsız

    opened by umitseyhan75 26
  • Add a Password Generator

    Add a Password Generator

    A button right side of password entered area named "generate" would be pretty usefull. Ideally I would suggest implement Bitwarden's generator. And some optional checkboxes like "copy the generated password to the clipboard" or "remove the password from the clipboard after x time passed" or "save the generated password to a text file where the encrypted files will be located".

    enhancement 
    opened by umitseyhan75 22
  • Update the executable icon with high definiton ones

    Update the executable icon with high definiton ones

    Support at least 256x256 size for the .ico file which is todays standart. Preferably under PNG container for better quality. Also provide lower sizes for ensuring compability. Sample Icon group size chart: 16x16 32x32 48x48 64x64 96x96 128x128 256x256

    enhancement 
    opened by umitseyhan75 21
  • [Suggestion] Comparison Table between other encryption software

    [Suggestion] Comparison Table between other encryption software

    It would be interesting a comparison table like this https://www.cryfs.org/comparison It is at the end of the page.

    Some of the possible software to compare: cryfs (can be used with sirikali GUI), finalcrypt, cryptomator, veracrypt and zulucrypt.

    opened by bambirombi 12
  • pcv file comments get cut off

    pcv file comments get cut off

    When making an encrypted file, the option to put a comment (read-only) can be written without a length limit. but when you drag the pvc file to the picocrypt window, it gets cut-off. For example, the comment "this message is going to be cut off because of the window" will only be readable to "~of the w" image Im on Windows, Picocrypt version 1.26

    opened by DavedZrod 11
  • Picocrypt don't start

    Picocrypt don't start

    Hello, in xUbuntu 20.04 Picocrypt show error:

    $ picocrypt
    panic: failed to create window: VersionUnavailable: GLX: Failed to create context: GLXBadFBConfig
    
    goroutine 1 [running, locked to thread]:
    github.com/HACKERALERT/giu.NewMasterWindow({0x8b4d1d, 0x9}, 0x13e, 0x1df, 0xa0?)
    	/root/go/pkg/mod/github.com/!h!a!c!k!e!r!a!l!e!r!t/[email protected]/MasterWindow.go:73 +0x626
    main.main()
    	/root/parts/picocrypt/build/Picocrypt.go:1719 +0x38
    

    As i understand problem with openGL version. How correct it? Thank!

    opened by JackJeisly 11
  • Text not fully readable in GUI / App does not adjust to Windows scaling

    Text not fully readable in GUI / App does not adjust to Windows scaling

    2021-09-26 14_51_11-Picocrypt

    Text is overlapping at the “Advanced” section, and the window size is fixed, so I can't make it readable. (See screenshot)

    Windows 10, 1920×1080 screen resolution, scaling is at 125%. (So the app should/must adjust for the selected scaling of the Windows resolution.)

    bug 
    opened by BigPanda97 10
  • Encryption crashes with large files

    Encryption crashes with large files

    Hi,

    Picocrypt sounds great to encrypt backup files prior to uploading them on storage platforms such as Azure Storage / AWS S3, etc.

    However, while I can encrypt my 1 or 2TB files with 7z, Picocrypt cannot.

    Is there a way to allow large file encryption with Picocrypt? I guess the limitation comes from my system disk (1TB SSD) but there should be a way since 7z has no issue.

    opened by Ozwel 8
  • Extremely slow decrypt ?

    Extremely slow decrypt ?

    Hello,

    I was trying out Picocrypt, so I took a folder (2.3GB) and encrypted it with Picocrypt. I used the Reed Solomon feature since my goal is long term cloud storage. Encryption was kinda slow, but I suppose that's normal considering that the tooltip on reed solomon warns you "slow). Anyway, this is not an issue, it took about 10min to encrypt which is fine for me.

    However, when I tried to decrypt said file (2.6GB after encryption with RS) it was very very very slow. The ETA was of 5 hours! Immagine

    What's going on here? I don' think this behavior is normal/working as intended

    Some info about me:

    OS: Windows 10 Home 21H2 Build 19044.1586 CPU Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz 1.19 GHz RAM 8,00 GB Picocrypt version 1.25

    Even if in the screenshot you see the force decrypt option ticked, I first tried with the simple decrypt, but it was slow in the same way. So, before opening this, I tried with the "force decrypt" option ticked hoping it would have speed up things. However, no success.

    opened by Minibus93 8
  • [UI] Unable to see long paths in

    [UI] Unable to see long paths in "Output" section of the UI

    Hello,

    If output file is long enough you are not able to see it completely Maybe making that box horizontally scrollable could be a fix, but any solution would be fine

    Below an highlighted graphical explaination of the issue: Immagine

    opened by Minibus93 7
  • Official Flatpak either along with or a replacement for snap

    Official Flatpak either along with or a replacement for snap

    Having an official Flatpak would be better than having a snap package.

    Flatpaks work everywhere. Snaps only work on distros with systemd and app images require glibc.

    Secondly, snaps don't really provide better security than Flatpaks. Many security researchers who have criticized Flatpaks have also criticized snaps. At least flatpak have put effort into fixing these issues.

    https://theevilskeleton.gitlab.io/2021/02/11/response-to-flatkill-org.html

    Flatpak still has issues, but they are constantly improving and are much better at being a universal package manager than snap.

    opened by onymaticc 7
  • Türkçe translation update

    Türkçe translation update

    This pull request does not include the latest changes that been made 4 days ago, specifically the commit 229861020f435bef58aa34d5e09078311eba06f5

    Those changes will be updated as well.

    opened by umitseyhan75 1
Releases(1.31)
  • 1.31(Nov 18, 2022)

    This release contains a few minor improvements. Notably, Picocrypt now uses X11's native clipboard API instead of requiring xclip, and uses macOS's native Cocoa instead of pbcopy/pbpaste. Also, the macOS app bundle now uses software OpenGL rendering, which should increase compatibility with older versions of macOS. Finally, the Windows executable goes back to using OpenGL as it seems that not many people have DirectX 12 support. All executables in this release are compiled with the latest version of Go and should be highly stable. Enjoy!

    Windows: Picocrypt.exe macOS: Picocrypt.app.zip Linux: Picocrypt.AppImage Paranoid Pack: Paranoid.zip Signatures: Signatures.zip

    Source code(tar.gz)
    Source code(zip)
    Paranoid.zip(11.02 MB)
    Picocrypt.app.zip(3.04 MB)
    Picocrypt.AppImage(3.10 MB)
    Picocrypt.exe(2.34 MB)
    Signatures.zip(954 bytes)
  • 1.30(Sep 25, 2022)

    This release brings a few fixes for edge cases and some overall performance improvements. One notable change is that there is only one executable for Windows and only an AppImage for Linux. This is to simplify and prevent any confusion. The new Windows executable is a compromise of the hybrid approach used in previous versions. It automatically translates OpenGL calls to DirectX 12, which future-proofs Picocrypt as DirectX 12 support is a requirement for Windows 11 (so it is always present). Also, since DirectX 12 is the only officially supported graphics layer for Windows on ARM, using it ensures that Picocrypt will run on it properly now and into the future. If future graphics drivers don't include OpenGL, that's okay because Picocrypt will be using DirectX 12. In short, Picocrypt is guaranteed to run on Windows 11 x64 and Windows 11 on ARM, now and into the future. For Linux, only an AppImage is provided in an effort to be consistent with Picocrypt's goals: small and portable. Finally, the Paranoid Pack has been slightly revised. Instead of including every version, it just includes this release. Additionally, the source and dependencies are now bundled in the pack, so you can compile Picocrypt offline with files from the pack if anything happens in the future. That's it, enjoy!

    Note: This will probably be the last release before the audit (please donate!) unless bugs are found.

    Windows: Picocrypt.exe macOS: Picocrypt.app.zip Linux: Picocrypt.AppImage Paranoid Pack: Paranoid.zip Signatures: Signatures.zip

    Source code(tar.gz)
    Source code(zip)
    Paranoid.zip(12.96 MB)
    Picocrypt.app.zip(2.48 MB)
    Picocrypt.AppImage(3.32 MB)
    Picocrypt.exe(4.83 MB)
    Signatures.zip(954 bytes)
  • 1.29(May 24, 2022)

    This release has some important bug fixes and overall stability improvements. One significant improvement is that Picocrypt now checks for insufficient disk space during encryption/decryption, so if there are any issues, Picocrypt will catch them. By putting error handlers on reading files and writing to files, Picocrypt is almost guaranteed to catch any IO issues, thus greatly improving stability and reliability. All size units now show KiB, MiB, etc. to prevent any confusion. The compression option is now available for single-file encryption.

    This release is highly stable and probably doesn't contain any significant bugs, so please enjoy!

    Windows: Picocrypt.exe or Picocrypt-NoGL.exe macOS: Picocrypt.app.zip Linux: Picocrypt.deb or Picocrypt.AppImage Signatures: Signatures.zip Paranoid Pack: Paranoid.7z

    Source code(tar.gz)
    Source code(zip)
    Paranoid.7z(384.53 MB)
    Picocrypt-NoGL.exe(10.63 MB)
    Picocrypt.app.zip(2.41 MB)
    Picocrypt.AppImage(3.02 MB)
    Picocrypt.deb(2.26 MB)
    Picocrypt.exe(2.32 MB)
    Signatures.zip(1.38 KB)
  • 1.28(May 17, 2022)

    There are so many improvements, so I won't list them all. Some noticeable ones are that Picocrypt will show "Scanning files..." when it is loading a lot of dropped files and that Picocrypt now shows stats (progress, speed, ETA) for compression, recombining, and splitting. File permission handling is much better as well, so if you try to save to a read-only location or drop a restricted file, Picocrypt will let you know. The cancel button also works more consistently now, and Reed-Solomon decoding performance is as fast as if it wasn't encoded. Only if corruption is detected will Picocrypt actually slow down to rebuild the broken data. This release also has a new executable for Windows (Picocrypt-NoGL.exe) which bundles Mesa3d's software renderer so that it can run on any Windows machine regardless of drivers or OpenGL support (works in VirtualBox as well). Finally, this release is signed with PGP, as requested by many. You can find the fingerprint and public key under the Security section of the homepage.

    Enjoy this phenomenal release! Picocrypt is at a point where all known bugs have been fixed and all features I plan to implement have been implemented. So you can truly rely on Picocrypt now because there won't be any major changes anymore (no major incompatibilities) and it will be bug fixes and improvements all the way. Please donate so we can get Picocrypt audited!

    Note: There is a slight incompatibility but it only applies to volumes larger than 60 GiB. So if you have volumes larger than 60 GiB, you should use v1.27 to decrypt it. Other than that, v1.28 is fully compatible with v1.27.

    Windows: Picocrypt.exe or Picocrypt-NoGL.exe macOS: Picocrypt.app.zip Linux: Picocrypt.deb or Picocrypt.AppImage Paranoid Pack: Attached Signatures: Attached

    Source code(tar.gz)
    Source code(zip)
    Picocrypt-NoGL.exe(10.63 MB)
    Picocrypt.app.zip(2.41 MB)
    Picocrypt.AppImage(3.02 MB)
    Picocrypt.deb(2.26 MB)
    Picocrypt.exe(2.32 MB)
    Signatures.zip(1.63 KB)
    _Paranoid.Pack.7z(373.95 MB)
    _Paranoid.Pack.zip(827.18 MB)
  • 1.27(May 2, 2022)

    Mostly minor fixes and improvements. On Linux however, there is a big change: a .deb is finally available! So you can finally get rid of Snapcraft and use the .deb instead. Even better, the .deb uses software OpenGL rendering, so Picocrypt doesn't require hardware OpenGL support at all. This in turn means that Picocrypt will run on any Linux system regardless of drivers or hardware! Also, an AppImage has also been added thanks to [ REDACTED ]'s amazing help.

    Windows: Picocrypt.exe macOS: Picocrypt.app.zip Linux: Picocrypt.deb or Picocrypt.AppImage Paranoid Packs: Attached

    Source code(tar.gz)
    Source code(zip)
    Picocrypt.app.zip(2.40 MB)
    Picocrypt.AppImage(3.01 MB)
    Picocrypt.deb(2.26 MB)
    Picocrypt.exe(2.31 MB)
    _Paranoid.Pack.7z(354.35 MB)
    _Paranoid.Pack.zip(806.68 MB)
  • 1.26(Apr 19, 2022)

    The 256 GiB max size limit has been removed, so Picocrypt can now encrypt files of any size! Also, stability has been improved by updating to GLFW 3.3.6 and an invalid pointer bug that caused a crash has been fixed. Minor UI tweaks and improvements are included as well. Enjoy!

    A special shoutout to YellowNight for donating $818! We're making significant progress toward the much-wanted audit.

    Windows: Picocrypt.exe macOS: Picocrypt.app.zip Linux: snap install picocrypt Paranoid Pack: Attached

    Source code(tar.gz)
    Source code(zip)
    Picocrypt.app.zip(2.40 MB)
    Picocrypt.exe(2.31 MB)
    _Paranoid.Pack.zip(796.80 MB)
  • 1.25(Apr 14, 2022)

  • 1.24(Apr 2, 2022)

  • 1.23(Mar 19, 2022)

    Minor improvements and changes, the most notable being the removal of the checksum tab. I believe Picocrypt has drifted off course from the original ideology, so to keep the focus back on core encryption, I've removed the checksum generator. Doing so cleans up the code, removes some dependencies, and reduces the file sizes. For Windows, this release is compiled with GCC 11 (via MinGW) instead of TDM-GCC, and Go 1.18 instead of Go 1.17, so there should be a significant performance improvement, not to mention a significant decrease in size. Also, Picocrypt doesn't check for new versions anymore because it is stable and each release from now on is production-ready. Finally, this version is fully backward and forward compatible with v1.22, so you may use either version.

    Windows: Picocrypt.exe macOS: Picocrypt.app.zip Linux: snap install picocrypt Paranoid Packs are attached.

    Source code(tar.gz)
    Source code(zip)
    Picocrypt.app.zip(2.41 MB)
    Picocrypt.exe(2.34 MB)
    _Paranoid.Pack.7z(309.24 MB)
    _Paranoid.Pack.zip(665.13 MB)
  • 1.22(Dec 22, 2021)

  • 1.21(Nov 20, 2021)

  • 1.20(Nov 13, 2021)

  • 1.19(Sep 26, 2021)

  • 1.18(Sep 25, 2021)

  • 1.17(Sep 4, 2021)

    Picocrypt 1.17 introduces support for multiple keyfiles, as well as a unique "Require correct order" feature for keyfiles. The UI is not the best but stick with it while I rewrite Picocrypt from scratch to incorporate a better UI. This release is stable, although it is not compatible with v1.16. Enjoy!

    Windows: Picocrypt.exe macOS: Picocrypt.app.zip Linux: snap install picocrypt

    Source code(tar.gz)
    Source code(zip)
    Picocrypt.app.zip(3.57 MB)
    Picocrypt.exe(3.82 MB)
  • 1.16(Aug 12, 2021)

  • 1.15(Aug 10, 2021)

  • 1.14(Aug 7, 2021)

    v1.14 contains a plethora of bug fixes, improvements, and new features. This release uses Go's embed feature to manage resources, so the need for IExpress is eliminated. This means that Picocrypt should no longer be flagged by antiviruses. v1.14 is not compatible with v1.13, due to a multitude of changes, but if you drop a v1.13 volume into Picocrypt, it will let you know that you should use v1.13 to decrypt it. Reed-Solomon now works, although it is a little slow at the moment. Enjoy!

    Edit: There's a known bug that prevents you from decrypting a splitted file. This will be fixed in the next release.

    Windows: Picocrypt.exe macOS: Picocrypt.app.zip Linux: Coming shortly...

    Source code(tar.gz)
    Source code(zip)
    Picocrypt.app.zip(3.54 MB)
    Picocrypt.exe(3.78 MB)
  • 1.13(May 29, 2021)

    v1.13 is completely rewritten in Go instead of Python, and since I've also added many new features, there will (obviously) be a couple of bugs. Thus, don't use it for production. On Windows, Picocrypt can be detected as a virus. Please do your part and submit it as a false positive to your antivirus provider. Other than that, I hope you enjoy this release!

    Edit: There is a known bug on Windows where when decrypting folders, you may end up with a file with no extension, or an invalid .zip file. Don't panic! If you don't have a .zip extension, add it. If Windows says the .zip is invalid, open it with 7-Zip and everything will work. This issue will be fixed in the next release. Also, keyfile support seems to be a little buggy.

    Windows: Picocrypt.exe macOS: Work in progress Linux: See here

    Source code(tar.gz)
    Source code(zip)
    Picocrypt.exe(3.07 MB)
  • 1.12.1(Apr 12, 2021)

    Mostly the same as v1.12, but with a major bug fix in the secure delete feature and some minor aesthetic fixes. The bug didn't have any security impact. Also, an installable version for Windows is available. Compatible with v1.12.

    Windows: Picocrypt.exe Windows with WSH disabled: Picocrypt-NoWSH.zip Windows installer: Picocrypt-Installer.exe MacOS: Picocrypt.app.zip Linux: Not currently supported....

    Source code(tar.gz)
    Source code(zip)
    Picocrypt-Installer.exe(5.69 MB)
    Picocrypt-NoWSH.zip(15.40 MB)
    Picocrypt.app.zip(13.32 MB)
    Picocrypt.exe(4.34 MB)
  • 1.12(Apr 7, 2021)

    Picocrypt 1.12 is completely rewritten from scratch to implement a better UI and better stability. The UI is beautiful and user-friendly. Executables are upgraded from Python 3.8.8 to Python 3.8.9, which I've built from source and optimized beyond imagination. v1.12 is a little larger than v1.11, simply because of the new UI and required assets. Also, Picocrypt is now over x2 faster than previous releases, because I swapped out SHA3-512 with BLAKE3 for corruption checks. There are quite a few bug fixes and stability has improved greatly. Overall, Picocrypt 1.12 is better than all the previous releases in just about every way. As always, hope you enjoy Picocrypt and consider donating to get Picocrypt audited! Edit: The secure delete feature works, but it will show "Unknown error" at the end. This is an unexpected error and I'll fix it in v1.13

    Important: v1.12 is not compatible with previous releases due to a redefined header format and minor changes in the cryptography of Picocrypt.

    Windows: Picocrypt.exe Windows with WSH disabled: Picocrypt-NoScript.zip MacOS: Picocrypt.app.zip Linux (Debian-based): Not supported currently...

    Source code(tar.gz)
    Source code(zip)
    Picocrypt-NoScript.zip(15.44 MB)
    Picocrypt.app.zip(13.32 MB)
    Picocrypt.exe(4.34 MB)
  • 1.11(Mar 23, 2021)

    Picocrypt 1.11 includes a major design change, and now allows you to easily drag and drop files. You can drag one file, multiple files, one folder, multiple folders, two files and two folders, and any other combination you can think of. This should make bulk encryption much simpler. Also, v1.11 includes much a much more secure wiping feature, which uses system internals for securely wiping sensitive files. The UI on MacOS looks a lot better than v1.10.

    As always, hope you enjoy!

    Windows: Picocrypt.exe MacOS: Picocrypt.app.zip (or Picocrypt-update.app.zip if Picocrypt.app.zip doesn't work) Linux: Not supported yet

    If your machine has WSH (Windows Script Host) disabled, use Picocrypt-NoScript.exe instead of Picocrypt.exe.

    Source code(tar.gz)
    Source code(zip)
    Picocrypt-NoScript.exe(11.43 MB)
    Picocrypt-update.app.zip(10.82 MB)
    Picocrypt.app.zip(10.81 MB)
    Picocrypt.exe(3.37 MB)
  • 1.10(Mar 19, 2021)

    Picocrypt 1.10 introduces Reed-Solomon-encoded headers by default, ensuring that the header file won't corrupt (which would be a disaster). As well, there are many bug fixes and Picocrypt now uses Pycryptodome's SHA3-512 for better portability, since hashlib requires OpenSSL. I've tested pretty much every possible scenario that Picocrypt would ever go through, so this release should be very stable and reliable.

    Note: This version is INCOMPATIBLE with all versions below, because the header file format has changed due to the Reed-Solomon encoding. If anything, choose this release or any release higher than 1.10. Versions below 1.10 are kept for people who have encrypted files with an older version of Picocrypt and need the older version to decrypt files.

    .exe is for Windows, .app.zip is for MacOS.

    Hope you enjoy!

    Source code(tar.gz)
    Source code(zip)
    Picocrypt.app.zip(10.82 MB)
    Picocrypt.exe(3.18 MB)
  • 1.9(Mar 17, 2021)

    Optimized and fixed issue with Reed-Solomon that was present in v1.8 (which I deleted due to compatibility issues). If user chooses, Reed-Solomon now also encodes and protects the header file, which is critical because it contains the nonce for encryption, which if corrupted, would be a very bad disaster (like losing a key to a lock). There are no breaks in compatibility for v1.9.

    Known issues: - UI is disabled after selecting "No" for overwriting (will be fixed in v1.10)

    Source code(tar.gz)
    Source code(zip)
    Picocrypt.exe(3.17 MB)
  • 1.7(Mar 15, 2021)

    Updated the bundled Python runtime from 3.7.9 to 3.8.8. Picocrypt is slightly larger (30KB more), because Python 3.8 has a larger code base than 3.7. I also built Python from source this time, to ensure that I bundle the latest security updates. I've done extensive optimizations (probably an overkill).

    Enjoy!

    Source code(tar.gz)
    Source code(zip)
    Picocrypt.exe(3.04 MB)
  • 1.6(Mar 13, 2021)

  • 1.5(Feb 25, 2021)

  • 1.4(Feb 25, 2021)

    Added bulletproof error handling and reliability. I recompiled Picocrypt's dependencies and spent hours optimizing, minifying, and deleting unneeded files. After hours of hard work, I've optimized Picocrypt to make it even smaller - just 3MB (exactly)! Good luck finding an encryption tool smaller than this :D 🥇

    Compatible with v1.3.6.4 and up.

    Source code(tar.gz)
    Source code(zip)
    Picocrypt.exe(3.00 MB)
  • 1.3.6.4(Feb 21, 2021)

    NOTE: THIS RELEASE IS NOT COMPATIBLE WITH PREVIOUS RELEASES DUE TO ADJUSTED ARGON2 PARAMETERS. ALL FUTURE v1.x RELEASES WILL BE COMPATIBLE WITH THIS.

    Changelog:

    • Added confirmation asking user whether to overwrite an existing output.
    • Adjusted Argon2 parameters
    • Minor tweaks
    Source code(tar.gz)
    Source code(zip)
    Picocrypt.exe(4.35 MB)
Owner
Evan Su
In cryptography we trust.
Evan Su
This tool converts a Nondeterministic Finite Automata (NFA) into a Deterministic Finite Automata (DFA)

This tool converts a Nondeterministic Finite Automata (NFA) into a Deterministic Finite Automata (DFA)

Quinn Herden 1 Feb 04, 2022
Neural Message Passing for Computer Vision

Neural Message Passing for Quantum Chemistry Implementation of different models of Neural Networks on graphs as explained in the article proposed by G

Pau Riba 310 Nov 07, 2022
Lipschitz-constrained Unsupervised Skill Discovery

Lipschitz-constrained Unsupervised Skill Discovery This repository is the official implementation of Seohong Park, Jongwook Choi*, Jaekyeom Kim*, Hong

Seohong Park 17 Dec 18, 2022
Learning Intents behind Interactions with Knowledge Graph for Recommendation, WWW2021

Learning Intents behind Interactions with Knowledge Graph for Recommendation This is our PyTorch implementation for the paper: Xiang Wang, Tinglin Hua

158 Dec 15, 2022
Pytorch codes for Feature Transfer Learning for Face Recognition with Under-Represented Data

FTLNet_Pytorch Pytorch codes for Feature Transfer Learning for Face Recognition with Under-Represented Data 1. Introduction This repo is an unofficial

1 Nov 04, 2020
Workshop Materials Delivered on 28/02/2022

intro-to-cnn-p1 Repo for hosting workshop materials delivered on 28/02/2022 Questions you will answer in this workshop Learning Objectives What are co

Beginners Machine Learning 5 Feb 28, 2022
Repo for "TableParser: Automatic Table Parsing with Weak Supervision from Spreadsheets" at [email protected]

TableParser Repo for "TableParser: Automatic Table Parsing with Weak Supervision from Spreadsheets" at DS3 Lab 11 Dec 13, 2022

Codes to calculate solar-sensor zenith and azimuth angles directly from hyperspectral images collected by UAV. Works only for UAVs that have high resolution GNSS/IMU unit.

UAV Solar-Sensor Angle Calculation Table of Contents About The Project Built With Getting Started Prerequisites Installation Datasets Contributing Lic

Sourav Bhadra 1 Jan 15, 2022
A Demo server serving Bert through ONNX with GPU written in Rust with <3

Demo BERT ONNX server written in rust This demo showcase the use of onnxruntime-rs on BERT with a GPU on CUDA 11 served by actix-web and tokenized wit

Xavier Tao 28 Jan 01, 2023
Code for "Learning From Multiple Experts: Self-paced Knowledge Distillation for Long-tailed Classification", ECCV 2020 Spotlight

Learning From Multiple Experts: Self-paced Knowledge Distillation for Long-tailed Classification Implementation of "Learning From Multiple Experts: Se

27 Nov 05, 2022
A minimal TPU compatible Jax implementation of NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis

NeRF Minimal Jax implementation of NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis. Result of Tiny-NeRF RGB Depth

Soumik Rakshit 11 Jul 24, 2022
AOT-GAN for High-Resolution Image Inpainting (codebase for image inpainting)

AOT-GAN for High-Resolution Image Inpainting Arxiv Paper | AOT-GAN: Aggregated Contextual Transformations for High-Resolution Image Inpainting Yanhong

Multimedia Research 214 Jan 03, 2023
Unifying Global-Local Representations in Salient Object Detection with Transformer

GLSTR (Global-Local Saliency Transformer) This is the official implementation of paper "Unifying Global-Local Representations in Salient Object Detect

11 Aug 24, 2022
A tool to estimate time varying instantaneous reproduction number during epidemics

EpiEstim A tool to estimate time varying instantaneous reproduction number during epidemics. It is described in the following paper: @article{Cori2013

MRC Centre for Global Infectious Disease Analysis 78 Dec 19, 2022
AdamW optimizer for bfloat16 models in pytorch.

Image source AdamW optimizer for bfloat16 models in pytorch. Bfloat16 is currently an optimal tradeoff between range and relative error for deep netwo

Alex Rogozhnikov 8 Nov 20, 2022
Course about deep learning for computer vision and graphics co-developed by YSDA and Skoltech.

Deep Vision and Graphics This repo supplements course "Deep Vision and Graphics" taught at YSDA @fall'21. The course is the successor of "Deep Learnin

Yandex School of Data Analysis 160 Jan 02, 2023
Baselines for TrajNet++

TrajNet++ : The Trajectory Forecasting Framework PyTorch implementation of Human Trajectory Forecasting in Crowds: A Deep Learning Perspective TrajNet

VITA lab at EPFL 183 Jan 05, 2023
Bounding Wasserstein distance with couplings

BoundWasserstein These scripts reproduce the results of the article Bounding Wasserstein distance with couplings by Niloy Biswas and Lester Mackey. ar

Niloy Biswas 1 Jan 11, 2022
Meaningful titles for tabs and PDF downloads! Also supports tab search.

arxiv-utils If you are a researcher that reads a lot on ArXiv, you'll benefit a lot from this web extension. Renames the title of PDF page to the pape

Johnson 174 Dec 20, 2022
The repo contains the code to train and evaluate a system which extracts relations and explanations from dialogue.

The repo contains the code to train and evaluate a system which extracts relations and explanations from dialogue. How do I cite D-REX? For now, cite

Alon Albalak 6 Mar 31, 2022