Compare commits

...

75 commits
1.48 ... main

Author SHA1 Message Date
Evan Su
2b92b84b5d
Clean up for archiving repository
Some checks failed
build-linux / build (push) Has been cancelled
build-macos / build (push) Has been cancelled
build-windows / build (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
2025-09-07 14:57:33 -04:00
Evan Su
88e6771734
Update README.md: project archived 2025-08-07 18:43:44 -04:00
Evan Su
c4b344958a
Update README.md: better license wording 2025-08-05 23:54:07 -04:00
Evan Su
587474b516
Update README.md: clarify GPL 3.0 only 2025-08-05 23:49:11 -04:00
Evan Su
898d3b7b5a
Update Picocrypt.go: GPL-3.0-only 2025-08-05 23:32:54 -04:00
Evan Su
0cbeab04b6
Update Picocrypt.go: GPLv3 -> GPL-3.0-or-later 2025-08-05 23:03:52 -04:00
Evan Su
5c735fba99
Update README.md: add archival notice 2025-08-05 22:35:18 -04:00
Evan Su
ae6eb2db2c
Update README.md: link to Windows installer 2025-08-04 11:29:22 -04:00
Evan Su
f53b4ceab9
Merge pull request #133 from Picocrypt/release-1.49
Release v1.49
2025-08-03 23:29:22 -04:00
Evan Su
f5a71df14c
Update io.github.picocrypt.Picocrypt.metainfo.xml: update release changes 2025-08-03 23:20:09 -04:00
Evan Su
67b351732a
Update Changelog.md: release v1.49 2025-08-03 23:17:43 -04:00
Evan Su
00c66216e6
Merge branch 'main' into release-1.49 2025-08-03 23:02:21 -04:00
Evan Su
79a62d2424
Update README.md: missing /decrypt in Web section 2025-08-03 14:52:02 -04:00
Evan Su
0bb51602a3
Update README: simplifications, macOS notice 2025-08-03 14:49:41 -04:00
Evan Su
d8f7a4f46b
Update README: remove homebrew and mobile section
Cleaning up the repo as I will potentially stop working on Picocrypt forever
2025-08-03 13:36:53 -04:00
Evan Su
a072a2043b
Merge branch 'main' into release-1.49 2025-08-01 22:28:47 -04:00
Evan Su
b6d1b2156a
Update Changelog: sticking with freedesktop 24.08 for now
25.08 is not out yet and the golang sdk might also take some time to get itself onto 25.08. 24.08 is supported for until next year so for 1.49 at least, it's fine to stick with 24.08.
2025-08-01 22:27:05 -04:00
Evan Su
398251b69e
Merge branch 'main' into release-1.49 2025-08-01 17:04:33 -04:00
Evan Su
33b349d86d
Update Picocrypt.go: bump var version to 1.49 2025-08-01 16:55:50 -04:00
Evan Su
26326009ec
Update Changelog: upx Linux binary, update upx for Windows 2025-08-01 16:53:25 -04:00
Evan Su
8a08532f8f
Merge pull request #132 from Retengart/upx-for-linux
UPX for Linux & upgrade UPX for Windows
2025-08-01 16:45:53 -04:00
Evan Su
078dee49e9
Merge branch 'main' into upx-for-linux 2025-08-01 13:16:58 -04:00
Aleksandr Menenkov
1937ed85be
add: Cyrillic symbols support 2025-08-01 14:32:03 +03:00
Evan Su
c04aa8585d
Update Picocrypt.go header comment version to 1.49 2025-07-31 22:26:40 -04:00
Evan Su
2480307dfb
Update versioninfo.rc to 1.49 2025-07-31 22:26:13 -04:00
Evan Su
a6fdbab2c3
Update flatpak xml in prep for 1.49 2025-07-31 22:25:26 -04:00
Evan Su
e8f0a3fdd4
Update VERSION to 1.49 2025-07-31 22:21:50 -04:00
Evan Su
9db0b1d6cf
Update Changelog.md: Added support for Cyrillic characters 2025-07-31 22:15:02 -04:00
Aleksandr Menenkov
ab7b9f1421
add: latest UPX for Windows 2025-08-01 01:06:17 +03:00
Aleksandr Menenkov
e9e6c134c2
add: upx compression for Linux build & fix: optimize upx build for Windows 2025-07-31 19:52:04 +03:00
Evan Su
e67c55673f
Update README.md: link to archive.org snapshot of picocrypt.org
picocrypt.org is gone now and the MEGA account used to upload their downloads was suspended (good!), but for those curious...
2025-07-14 01:33:22 -04:00
Evan Su
f9fe92e1e4
Update README.md
May this country forever remain glorious and free.
2025-07-14 01:16:41 -04:00
Evan Su
9a76b9cb18
Update Changelog.md 2025-07-13 14:39:07 -04:00
Evan Su
2d2a476988
Update default.yml 2025-07-13 14:36:33 -04:00
Evan Su
8b247e8ceb
Update default.yml 2025-07-13 14:35:45 -04:00
Evan Su
a199f57350
Update default.yml 2025-07-13 14:31:56 -04:00
Evan Su
c0b0b62b24
Update build-snapcraft.yml 2025-07-13 13:48:08 -04:00
Evan Su
2e348e8c75
Update build-snapcraft.yml 2025-07-13 13:41:37 -04:00
Evan Su
eabf3ce2b9
Update build-snapcraft.yml 2025-07-13 13:37:35 -04:00
Evan Su
02e8fb8444
Update build-snapcraft.yml 2025-07-13 13:29:27 -04:00
Evan Su
5237d493d4
Update build-snapcraft.yml 2025-07-13 13:26:54 -04:00
Evan Su
dd39639d36
Update build-snapcraft.yml 2025-07-13 13:17:19 -04:00
Evan Su
241d6df328
Update build-snapcraft.yml 2025-07-13 13:13:40 -04:00
Evan Su
e555d5a876
Update build-snapcraft.yml 2025-07-13 13:09:43 -04:00
Evan Su
29138e1413
Update build-snapcraft.yml 2025-07-13 13:01:45 -04:00
Evan Su
f96480413d
Update build-snapcraft.yml 2025-07-13 12:58:31 -04:00
Evan Su
356d0c813d
Update build-snapcraft.yml: give snapcraft sudo 2025-07-13 12:54:30 -04:00
Evan Su
0c7c784fea
Update build-snapcraft.yml: forgot to install multipass 2025-07-13 12:52:00 -04:00
Evan Su
556b101351
Update build-snapcraft.yml: multipass instead of lxd 2025-07-13 12:50:27 -04:00
Evan Su
419fdffd20
Update build-snapcraft.yml 2025-07-13 12:48:10 -04:00
Evan Su
2308302691
Update build-snapcraft.yml 2025-07-13 12:46:42 -04:00
Evan Su
3fcb09aaef
Update build-snapcraft.yml: forgot sudo 2025-07-13 12:41:45 -04:00
Evan Su
928ed39eb4
Update build-snapcraft.yml: lxd init --auto 2025-07-13 12:39:02 -04:00
Evan Su
8387154d54
Update build-snapcraft.yml 2025-07-13 12:36:33 -04:00
Evan Su
fe30ef5b97
Create build-snapcraft.yml 2025-07-13 12:34:05 -04:00
Evan Su
880d3445a3
Add snapcraft files 2025-07-13 12:25:44 -04:00
Evan Su
2e6122d242
Update Changelog.md: update Flatpak runtime 2025-07-13 12:14:39 -04:00
Evan Su
5a15972126
Merge pull request #130 from Picocrypt/dependabot/go_modules/src/golang.org/x/crypto-0.40.0
Bump golang.org/x/crypto from 0.39.0 to 0.40.0 in /src
2025-07-10 22:07:27 -04:00
dependabot[bot]
0dfedc787e
Bump golang.org/x/crypto from 0.39.0 to 0.40.0 in /src
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.39.0 to 0.40.0.
- [Commits](https://github.com/golang/crypto/compare/v0.39.0...v0.40.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.40.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-10 21:42:37 +00:00
Evan Su
d77c4edc08
Merge pull request #126 from jaeone22/main
Change the macOS app icon to the Big Sur style
2025-07-05 15:47:04 -04:00
Evan Su
ff4737be9f Update Changelog.md 2025-07-04 23:52:47 -04:00
Evan Su
c8822cf544 replace old macos icon with new one 2025-07-04 23:49:38 -04:00
jaeone22
0aee848c36
Merge branch 'main' into main 2025-07-02 15:06:45 +09:00
Evan Su
b15b88560c
feature description refinements, recommend reading it 2025-07-02 01:29:41 -04:00
jaeone22
9060c9ea42 New icons for macOS 2025-07-02 14:12:19 +09:00
Evan Su
dc47a493fc
Update README.md: note about windows opengl 2025-07-02 00:49:18 -04:00
Evan Su
bfb8d76440
Merge pull request #123 from Picocrypt/macos-app-apple-silicon-only
Update README.md: Apple silicon only
2025-06-10 22:04:38 -04:00
Evan Su
bdaf13605f
Update README.md: Apple silicon only 2025-06-10 21:48:18 -04:00
Evan Su
851d669abf
Merge pull request #121 from Picocrypt/dependabot/go_modules/src/golang.org/x/crypto-0.39.0
Bump golang.org/x/crypto from 0.38.0 to 0.39.0 in /src
2025-06-10 17:29:18 -04:00
dependabot[bot]
1defefe05e
Bump golang.org/x/crypto from 0.38.0 to 0.39.0 in /src
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.38.0 to 0.39.0.
- [Commits](https://github.com/golang/crypto/compare/v0.38.0...v0.39.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.39.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-05 21:30:51 +00:00
Evan Su
d8e893e325
Merge pull request #120 from Picocrypt/add-homebrew
Update README.md: add homebrew option
2025-06-03 21:45:35 -04:00
Evan Su
f3bba8d606
Update README.md: add --no-quarantine to homebrew command 2025-06-03 16:05:54 -04:00
Evan Su
4f83e43575
Update README.md: add homebrew option 2025-06-03 16:04:09 -04:00
Evan Su
3447051582
Merge pull request #118 from Picocrypt/dependabot/go_modules/src/golang.org/x/crypto-0.38.0
Bump golang.org/x/crypto from 0.37.0 to 0.38.0 in /src
2025-05-17 16:53:56 -04:00
dependabot[bot]
7a40604a1f
Bump golang.org/x/crypto from 0.37.0 to 0.38.0 in /src
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.37.0 to 0.38.0.
- [Commits](https://github.com/golang/crypto/compare/v0.37.0...v0.38.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.38.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 22:09:49 +00:00
22 changed files with 189 additions and 72 deletions

View file

@ -8,7 +8,11 @@ body:
- type: markdown
attributes:
value: |
**Please read this section carefully and completely. You may be blocked from this repository if you violate the rules.**
**🚨🚨🚨Please read this section carefully and *COMPLETELY*.🚨🚨🚨**
- type: markdown
attributes:
value: |
**You may be blocked from this repository if you violate the rules.**
- type: markdown
attributes:
value: |
@ -86,7 +90,7 @@ body:
attributes:
label: "Please confirm:"
options:
- label: "I have carefully read and agree to the rules outlined above"
- label: "**I have carefully read and understand *ALL* of the rules outlined above**"
required: true
- label: "I will provide as many helpful details as possible"
required: true

View file

@ -41,6 +41,12 @@ jobs:
CGO_ENABLED: 1
GOAMD64: v1
- name: Compress with upx
run: |
wget -O upx.tar.xz https://github.com/upx/upx/releases/download/v5.0.2/upx-5.0.2-amd64_linux.tar.xz
tar -xf upx.tar.xz
upx-5.0.2-amd64_linux/upx --lzma src/Picocrypt
- name: Package as .deb
run: |
wget https://github.com/user-attachments/files/16136712/Picocrypt.zip

View file

@ -46,6 +46,8 @@ jobs:
unzip -d Picocrypt.app Picocrypt.app.zip
rm Picocrypt.app.zip
mv src/Picocrypt Picocrypt.app/Contents/MacOS/Picocrypt
rm Picocrypt.app/Contents/Resources/icon.icns
mv dist/macos/iconSmall.icns Picocrypt.app/Contents/Resources/icon.icns
mkdir out
cp -R Picocrypt.app out
hdiutil create Picocrypt.dmg -volname Picocrypt -fs APFS -format UDZO -srcfolder out

42
.github/workflows/build-snapcraft.yml vendored Normal file
View file

@ -0,0 +1,42 @@
name: build-snapcraft
permissions:
contents: write
on:
workflow_dispatch:
jobs:
build-snapcraft:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Copy Snapcraft files to source
run: |
cp -r dist/snapcraft/* src/
- name: Fix permissions
run: |
chmod -R a+rX src
- name: List contents of src
run: |
ls -l src
ls -l src/snapcraft.yaml || echo "snapcraft.yaml not found"
- name: Snapcraft
uses: snapcore/action-build@v1
with:
path: src
- name: Upload .snap artifacts
uses: actions/upload-artifact@v4
with:
name: build-snapcraft
path: |
src/*.snap
if-no-files-found: error
compression-level: 9

View file

@ -60,9 +60,9 @@ jobs:
- name: Compress with upx
shell: pwsh
run: |
Invoke-WebRequest -OutFile upx.zip https://github.com/user-attachments/files/15894908/upx-4.2.4-win64.zip
Invoke-WebRequest -OutFile upx.zip https://github.com/upx/upx/releases/download/v5.0.2/upx-5.0.2-win64.zip
Expand-Archive -DestinationPath upx upx.zip
upx/upx-4.2.4-win64/upx.exe --lzma --brute -o src/Picocrypt.exe src/5.exe
upx/upx-5.0.2-win64/upx.exe --lzma -o src/Picocrypt.exe src/5.exe
- name: Upload artifact
uses: actions/upload-artifact@v4

View file

@ -38,6 +38,12 @@ jobs:
CGO_ENABLED: 1
GOAMD64: v1
- name: Compress with upx
run: |
wget -O upx.tar.xz https://github.com/upx/upx/releases/download/v5.0.2/upx-5.0.2-amd64_linux.tar.xz
tar -xf upx.tar.xz
upx-5.0.2-amd64_linux/upx --lzma src/Picocrypt
- name: Package as .deb
run: |
wget https://github.com/user-attachments/files/16136712/Picocrypt.zip

View file

@ -43,6 +43,8 @@ jobs:
unzip -d Picocrypt.app Picocrypt.app.zip
rm Picocrypt.app.zip
mv src/Picocrypt Picocrypt.app/Contents/MacOS/Picocrypt
rm Picocrypt.app/Contents/Resources/icon.icns
mv dist/macos/iconSmall.icns Picocrypt.app/Contents/Resources/icon.icns
mkdir out
cp -R Picocrypt.app out
hdiutil create Picocrypt.dmg -volname Picocrypt -fs APFS -format UDZO -srcfolder out

View file

@ -57,9 +57,9 @@ jobs:
- name: Compress with upx
shell: pwsh
run: |
Invoke-WebRequest -OutFile upx.zip https://github.com/user-attachments/files/15894908/upx-4.2.4-win64.zip
Invoke-WebRequest -OutFile upx.zip https://github.com/upx/upx/releases/download/v5.0.2/upx-5.0.2-win64.zip
Expand-Archive -DestinationPath upx upx.zip
upx/upx-4.2.4-win64/upx.exe --lzma --brute -o src/Picocrypt.exe src/5.exe
upx/upx-5.0.2-win64/upx.exe --lzma -o src/Picocrypt.exe src/5.exe
- name: Upload artifact
uses: actions/upload-artifact@v4

View file

@ -1,3 +1,10 @@
# v1.49 (Released 08/03/2025)
<ul>
<li>✓ Update macOS icon to fit better</li>
<li>✓ Added support for Cyrillic characters (https://github.com/Picocrypt/giu/pull/1), thanks <a href="https://github.com/Retengart">@Retengart</a></li>
<li>✓ upx Linux binary in addition to Windows, update upx version for Windows</li>
</ul>
# v1.48 (Released 04/18/2025)
<ul>
<li>✓ Allow pressing 'Enter' key to press Start/Process button</li>

View file

@ -1,54 +1,62 @@
<a href="https://github.com/Picocrypt/Picocrypt/actions/workflows/build-windows.yml"><img src="https://github.com/Picocrypt/Picocrypt/actions/workflows/build-windows.yml/badge.svg"></a>
<a href="https://github.com/Picocrypt/Picocrypt/actions/workflows/build-macos.yml"><img src="https://github.com/Picocrypt/Picocrypt/actions/workflows/build-macos.yml/badge.svg"></a>
<a href="https://github.com/Picocrypt/Picocrypt/actions/workflows/build-linux.yml"><img src="https://github.com/Picocrypt/Picocrypt/actions/workflows/build-linux.yml/badge.svg"></a>
<a href="https://github.com/Picocrypt/Picocrypt/actions/workflows/codeql-analysis.yml"><img src="https://github.com/Picocrypt/Picocrypt/actions/workflows/codeql-analysis.yml/badge.svg"></a>
🍁 **Proudly made in Canada.** 🍁
<p align="center"><img align="center" src="/images/logo.svg" width="512" alt="Picocrypt"></p>
Picocrypt is a very small (hence <i>Pico</i>), very simple, yet very secure encryption tool that you can use to protect your files. It's designed to be the <i>go-to</i> tool for encryption, with a focus on security, simplicity, and reliability. Picocrypt uses the secure XChaCha20 cipher and the Argon2id key derivation function to provide a high level of security, even from three-letter agencies like the NSA. <strong>Your privacy and security is under attack. Take it back with confidence by protecting your files with Picocrypt.</strong>
Picocrypt is a very small (hence <i>Pico</i>), very simple, yet very secure encryption tool that you can use to protect your files. It's designed to be the <i>go-to</i> tool for file encryption, with a focus on security, simplicity, and reliability. Picocrypt uses the secure XChaCha20 cipher and the Argon2id key derivation function to provide a high level of security.
<br>
<p align="center"><img align="center" src="/images/screenshot.png" width="318" alt="Picocrypt"></p>
# Downloads
**Make sure to only download Picocrypt from this repository** to ensure that you get the authentic and backdoor-free Picocrypt. When sharing Picocrypt with others, be sure to link to this repository to prevent any confusion.
# ❄️ Project archived ❄️
**Beware of picocrypt.org, which claims to be the official website for this project! Remember, there is no official website for Picocrypt.** Even if this self-proclaimed website is taken down, I will not remove this message; let it be a real-world warning to stay vigilant.
Picocrypt has been permanently archived and frozen into a read-only state.
Read the [reason](https://github.com/Picocrypt/Picocrypt/issues/134) why. ***Please read it carefully and fully**; it's not the format you might expect.*
**Picocrypt is still fully functional, stable, and secure as is. You can continue using it confidently.**
Archiving Picocrypt doesn't mean there's anything wrong with it, just that I'm done working on it.
A community-developed successor to Picocrypt is available and called [Picocrypt NG](https://github.com/Picocrypt-NG).
⚠️ **I do not endorse, develop, nor support Picocrypt NG; use it at your own risk.** ⚠️
Picocrypt NG is not subject to the same rigorous testing and design I applied to Picocrypt.
# Downloads
**You are highly recommended to read through the [Features](https://github.com/Picocrypt/Picocrypt?tab=readme-ov-file#features) section below to fully understand the features and limitations of Picocrypt before using it.**
Make sure to only download Picocrypt from this repository to ensure that you get the authentic and backdoor-free Picocrypt. When sharing Picocrypt with others, be sure to link to this repository to prevent any confusion. Besides this repository, there is no official website/webpage or mobile apps for Picocrypt. For example, beware of picocrypt.org ([archive.org snapshot](https://web.archive.org/web/20240816235513/http://picocrypt.org/)), which claimed to be the official website for this project.
## Windows
Picocrypt for Windows is as simple as it gets. To download the latest, standalone, and portable executable for Windows, click <a href="https://github.com/Picocrypt/Picocrypt/releases/latest/download/Picocrypt.exe">here</a>. If Microsoft Defender or your antivirus flags Picocrypt as a virus, please do your part and submit it as a false positive for the betterment of everyone.
To download the latest, standalone, and portable executable for Windows, click <a href="https://github.com/Picocrypt/Picocrypt/releases/latest/download/Picocrypt.exe">here</a>. If it won't start, see <a href="https://github.com/Picocrypt/Picocrypt/issues/91">here</a> for a solution or use the installer below which automatically fixes the issue (recommended).
If you use Picocrypt frequently, you can also download the [installer](https://github.com/Picocrypt/Picocrypt/releases/download/1.49/Installer.exe) for easy access, automatic file extension association, and bundled compatibility helpers. Administrator privileges are not required to run the installer.
If your antivirus flags Picocrypt as a virus, please report it as a false positive to help everyone.
## macOS
Picocrypt for macOS is very simple as well. Download Picocrypt <a href="https://github.com/Picocrypt/Picocrypt/releases/latest/download/Picocrypt.dmg">here</a>, open the container, and drag Picocrypt to your Applications. You may need to manually trust the app from a terminal and control-click on the app if macOS prevents you from opening it:
Download Picocrypt <a href="https://github.com/Picocrypt/Picocrypt/releases/latest/download/Picocrypt.dmg">here</a>, open the container, and drag Picocrypt to your Applications. You will need to manually trust the app from a terminal if macOS prevents you from opening it:
```
xattr -d com.apple.quarantine /Applications/Picocrypt.app
```
Note: the macOS app is built for Apple silicon only. If you're still on Intel, you can build from source.
**Warning: Picocrypt will cease to work on macOS in the future** because Apple doesn't care about backwards compatibility. Once OpenGL is removed and/or GLFW compatibility is broken, Picocrypt will no longer work and it will be very difficult to fix. If you're a macOS user, you're probably better off using the CLI or Web version instead. Maybe also consider using an OS that actually somewhat cares about its developers and users...
## Linux
To use Picocrypt on Linux, you can download the raw binary <a href="https://github.com/Picocrypt/Picocrypt/releases/latest/download/Picocrypt">here</a> (you may need to install the packages below). Alternatively, you can try the <a href="https://github.com/Picocrypt/Picocrypt/releases/latest/download/Picocrypt.deb">.deb</a>, <a href="https://flathub.org/apps/io.github.picocrypt.Picocrypt">Flatpak</a>, run Picocrypt through Wine, or compile from source using the instructions in the `src/` directory.
Download the raw binary <a href="https://github.com/Picocrypt/Picocrypt/releases/latest/download/Picocrypt">here</a> (you may need the packages below). Alternatively, try the <a href="https://github.com/Picocrypt/Picocrypt/releases/latest/download/Picocrypt.deb">.deb</a> or <a href="https://flathub.org/apps/io.github.picocrypt.Picocrypt">Flatpak</a>.
```
sudo apt install -y libc6 libgcc-s1 libgl1 libgtk-3-0 libstdc++6 libx11-6
```
## CLI
A command-line interface is available for Picocrypt <a href="https://github.com/Picocrypt/CLI">here</a>. It can encrypt and decrypt files, folders, and globs, and supports paranoid mode and Reed-Solomon encoding. You can use it on systems that don't have a GUI or can't run the GUI app, or to write automated shell scripts for backups, etc.
A command-line interface is available for Picocrypt <a href="https://github.com/Picocrypt/CLI">here</a>. It can encrypt and decrypt files, folders, and glob patterns, and supports paranoid mode and Reed-Solomon encoding. You can use it on systems that don't have a GUI or can't run the GUI app.
## Web
A functionally limited web app is available <a href="https://picocrypt.github.io/">here</a> which allows you to encrypt and decrypt standard Picocrypt volumes (no advanced features or keyfiles) on any modern browser, including mobile devices. It's a simple, future-proof way to encrypt files that should work indefinitely due to the web's stable nature. Note that you can only encrypt single files up to a maximum size of 1 GiB.
## Mobile 🚧
An experimental project <a href="https://github.com/Picocrypt/PicoGo">PicoGo</a> is a community-developed port of Picocrypt to platforms like Android and iOS using the Fyne GUI library. Feel free to try it out, but keep in mind that it is *not* part of the official core Picocrypt project (like the platforms listed above) and thus not subject to the same scrutiny and standards that the core project is. So, **use it with caution and diligence** during its experimental phase.
# Why Picocrypt?
Why should you use Picocrypt instead of VeraCrypt, 7-Zip, BitLocker, or Cryptomator? Here are a few reasons why you should choose Picocrypt:
<ul>
<li>Unlike BitLocker and most cloud services, Picocrypt and its dependencies are completely open-source and auditable. You can verify for yourself that there aren't any backdoors or flaws. In fact, Picocrypt was audited by Radically Open Security in 2024 and no major security issues were discovered (you can read the full report <a href="https://github.com/Picocrypt/storage/blob/main/Picocrypt.Audit.Report.pdf">here</a>).</li>
<li>Picocrypt is <i>tiny</i>. While Cryptomator is over 50 MiB and VeraCrypt is over 20 MiB, Picocrypt sits at just 3 MiB, about the size of a medium-resolution photo. And that's not all - Picocrypt is portable (doesn't need to be installed) and doesn't require administrator/root privileges.</li>
<li>Picocrypt is easier and more productive to use than VeraCrypt. To encrypt files with VeraCrypt, you'd have to spend a minute or two just setting up a volume. With Picocrypt's simple UI, all you have to do is drag and drop your files, enter a password, and hit Encrypt. All the complex procedures are handled by Picocrypt internally. Who said secure encryption can't be simple?</li>
<li>Picocrypt is designed for security. 7-Zip is an archive utility and not an encryption tool, so its focus is not on security. Picocrypt, however, is built with security as the number one priority. Every part of Picocrypt exists for a reason and anything that could impact the security of Picocrypt is removed. Picocrypt is built with cryptography you can trust.</li>
<li>Picocrypt authenticates data in addition to protecting it, preventing hackers from maliciously modifying sensitive data. This is useful when you are sending encrypted files over an insecure channel and want to be sure that it arrives untouched.</li>
<li>Picocrypt actively protects header data from corruption by adding extra Reed-Solomon parity bytes, so if part of a volume's header (which contains important cryptographic components) corrupts (e.g., hard drive bit rot), Picocrypt can still recover the header and decrypt your data with a high success rate. Picocrypt can also encode the entire volume with Reed-Solomon to prevent any corruption to your important files.</li>
</ul>
A functionally limited web app is available <a href="https://picocrypt.github.io/">here</a> which allows you to encrypt and decrypt standard Picocrypt volumes (no advanced features or keyfiles) on any modern browser, including mobile devices. It's a simple, future-proof way to securely encrypt files that should work indefinitely due to the web's stable nature. Note that you can only encrypt/decrypt single files up to a maximum size of 512 MiB.
# Comparison
Here's how Picocrypt compares to other popular encryption tools.
@ -71,27 +79,27 @@ Here's how Picocrypt compares to other popular encryption tools.
| Telemetry |✅ None |✅ None |✅ None |❓ Unknown |✅ None |
| Audited |✅ [Yes](https://github.com/Picocrypt/storage/blob/main/Picocrypt.Audit.Report.pdf) |✅ Yes |❌ No |❓ Unknown |✅ Yes |
Keep in mind that while Picocrypt does most things better than other tools, it's not a one-size-fits-all and doesn't try to be. There are use cases such as full-disk encryption where VeraCrypt and BitLocker would be a better choice. So while Picocrypt is a great choice for the majority of people, you should still do your own research and use what's best for you.
Keep in mind that while Picocrypt does most things better than other tools, it's not a one-size-fits-all and doesn't try to be. There are use cases such as full-disk encryption where VeraCrypt and BitLocker would be a better (and the only) choice. So while Picocrypt is a great choice for the majority of people doing file encryption, you should still do your own research and use what's best for you.
# Features
Picocrypt is a very simple tool, and most users will intuitively understand how to use it in a few seconds. On a basic level, simply dropping your files, entering a password, and hitting Encrypt is all that's needed to encrypt your files. Dropping the output back into Picocrypt, entering the password, and hitting Decrypt is all that's needed to decrypt those files. Pretty simple, right?
Picocrypt is a very simple tool and most users will intuitively understand how to use it in a few seconds. On a basic level, simply dropping your files, entering a password, and hitting Encrypt is all that's needed to encrypt your files. Dropping the output back into Picocrypt, entering the password, and hitting Decrypt is all that's needed to decrypt those files. Pretty simple, right?
While being simple, Picocrypt also strives to be powerful in the hands of knowledgeable and advanced users. Thus, there are some additional options that you may use to suit your needs.
While being simple, Picocrypt also strives to be powerful in the hands of knowledgeable and advanced users. Thus, there are some additional options that you may use to suit your needs. Read through their descriptions carefully as some of them can be complex to use correctly.
<ul>
<li><strong>Password generator</strong>: Picocrypt provides a secure password generator that you can use to create cryptographically secure passwords. You can customize the password length, as well as the types of characters to include.</li>
<li><strong>Comments</strong>: Use this to store notes, information, and text along with the file (<strong>it won't be encrypted</strong>). For example, you can put a description of the file you're encrypting before sending it to someone. When the person you sent it to drops the file into Picocrypt, your description will be shown to that person. <strong>Comments are not authenticated, meaning it can be freely modified by an attacker. Thus, it should only be used for informational purposes in trusted environments.</strong></li>
<li><strong>Keyfiles</strong>: Picocrypt supports the use of keyfiles as an additional form of authentication (or the only form of authentication). Any file can be used as a keyfile, and a secure keyfile generator is provided for convenience. Not only can you use multiple keyfiles, but you can also require the correct order of keyfiles to be present for a successful decryption to occur. A particularly good use case of multiple keyfiles is creating a shared volume, where each person holds a keyfile, and all of them (and their keyfiles) must be present to decrypt the shared volume. By checking the "Require correct order" box and dropping your keyfile in last, you can also ensure that you'll always be the one clicking the Decrypt button.</li>
<li><strong>Comments</strong>: Use this to store <strong>non-sensitive</strong> text along with the volume (<strong>it won't be encrypted</strong> and simply can't be by design). For example, you can put a description of the file you're encrypting before sending it to someone. When the person you sent it to drops the volume into Picocrypt, your description will be shown to that person. Or, if you're backing up personal files, you can give a description of the volume's contents so you can quickly remind yourself without having to fully decrypt. Since comments are neither encrypted nor authenticated, it can be freely read and modified by an attacker. <strong>Thus, it should only be used for non-sensitive, informational purposes in trusted environments.</strong></li>
<li><strong>Keyfiles</strong>: Picocrypt supports the use of keyfiles as an additional form of authentication (or the only form of authentication). Any file can be used as a keyfile, and a secure keyfile generator is provided for convenience. Not only can you use multiple keyfiles, but you can also require the correct order of keyfiles to be present for a successful decryption to occur. A particularly good use case of multiple keyfiles is creating a shared volume, where each person holds a keyfile, and all of them (and their keyfiles) must be present to decrypt the shared volume. By checking the "Require correct order" box and dropping your keyfile in last, you can also ensure that you'll always be the one clicking the Decrypt button. <strong>Use the keyfile generator whenever possible for the best security.</strong></li>
<li><strong>Paranoid mode</strong>: Using this mode will encrypt your data with both XChaCha20 and Serpent in a cascade fashion, and use HMAC-SHA3 to authenticate data instead of BLAKE2b. Argon2 parameters will be increased significantly as well. This is recommended for protecting top-secret files and provides the highest level of practical security attainable. For a hacker to break into your encrypted data, both the XChaCha20 cipher and the Serpent cipher must be broken, assuming you've chosen a good password. It's safe to say that in this mode, your files are impossible to crack. Keep in mind, however, that this mode is slower and isn't really necessary unless you're a government agent with classified data or a whistleblower under threat.</li>
<li><strong>Reed-Solomon</strong>: This feature is very useful if you are planning to archive important data on a cloud provider or external medium for a long time. If checked, Picocrypt will use the Reed-Solomon error correction code to add 8 extra bytes for every 128 bytes of data to prevent file corruption. This means that up to ~3% of your file can corrupt and Picocrypt will still be able to correct the errors and decrypt your files with no corruption. Of course, if your file corrupts very badly (e.g., 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 this option will slow down encryption and decryption speeds significantly.</li>
<li><strong>Force decrypt</strong>: Picocrypt automatically checks for file integrity upon decryption. If the file has been modified or is corrupted, Picocrypt will automatically delete the output for the user's safety. If you would like to override these safeguards, check this option. Also, if this option is checked and the Reed-Solomon feature was used on the encrypted volume, Picocrypt will attempt to recover as much of the file as possible during decryption.</li>
<li><strong>Split into chunks</strong>: Don't feel like dealing with gargantuan files? No worries! With Picocrypt, you can choose to split your output file into custom-sized chunks, so large files can become more manageable and easier to upload to cloud providers. Simply choose a unit (KiB, MiB, GiB, or TiB) and enter your desired chunk size for that unit. To decrypt the chunks, simply drag one of them into Picocrypt and the chunks will be automatically recombined during decryption.</li>
<li><strong>Compress files</strong>: By default, Picocrypt uses a zip file with no compression to quickly merge files together when encrypting multiple files. If you would like to compress these files, however, simply check this box and the standard Deflate compression algorithm will be applied during encryption.</li>
<li><strong>Deniability</strong>: Picocrypt volumes typically follow an easily recognizable header format. However, if you want to hide the fact that you are encrypting your files, enabling this option will provide you with plausible deniability. The output volume will indistinguishable from a stream of random bytes, and no one can prove it is a volume without the correct password. This can be useful in an authoritarian country where the only way to transport your files safely is if they don't "exist" in the first place. Keep in mind that this mode slows down encryption and decryption speeds, requires you to manually rename the volume afterward, renders comments useless, and also voids the extra security precautions of the paranoid mode, so you should only use it if absolutely necessary.</li>
<li><strong>Recursively</strong>: If you want to encrypt and/or decrypt a large set of files individually, this option will tell Picocrypt to go through every recursive file that you drop in and encrypt/decrypt it separately. This is useful, for example, if you are encrypting thousands of large documents and want to be able to decrypt any one of them in particular without having to download and decrypt the entire set of documents. Keep in mind that this is a very complex feature that should only be used if you know what you are doing.</li>
<li><strong>Deniability</strong>: Picocrypt volumes typically follow an easily recognizable header format. However, if you want to hide the fact that you are encrypting your files, enabling this option will provide you with plausible deniability. The output volume will indistinguishable from a stream of random bytes, and no one can prove it is a volume without the correct password. This can be useful in an authoritarian country where the only way to transport your files safely is if they don't "exist" in the first place. Keep in mind that this mode slows down encryption and decryption speeds, requires you to manually rename the volume afterward, renders comments useless, and also voids the extra security precautions of the paranoid mode, so you should only use it if absolutely necessary. <strong>If you've never heard of plausible deniability, this feature is not for you.</strong></li>
<li><strong>Recursively</strong>: If you want to encrypt and/or decrypt a large set of files individually, this option will tell Picocrypt to go through every recursive file that you drop in and encrypt/decrypt it separately. This is useful, for example, if you are encrypting thousands of large documents and want to be able to decrypt any one of them in particular without having to download and decrypt the entire set of documents. <strong>Keep in mind that this is a very complex feature that should only be used if you know what you are doing.</strong></li>
</ul>
# Security
For more information on how Picocrypt handles cryptography, see <a href="Internals.md">Internals</a> for the technical details. If you're worried about the safety of me or this project, let me assure you that this repository won't be hijacked or backdoored. I have 2FA (TOTP) enabled on all accounts with a tie to Picocrypt (GitHub, etc.), in addition to full-disk encryption on all of my portable devices. For further hardening, Picocrypt uses my isolated forks of dependencies and I fetch upstream only when I have taken a look at the changes and believe that there aren't any security issues. This means that if a dependency gets hacked or deleted by the author, Picocrypt will be using my fork of it and remain completely unaffected. I've also meticulously gone through every single setting in the Picocrypt organization and repos, locking down access behind multiple layers of security such as read-only base-level member permissions, required PRs and mandatory approvals (which no one can do but me), mandatory CODEOWNERS approvals, and I'm the only member of the Picocrypt organization and repos (except for PicoGo). You can feel confident about using Picocrypt as long as you understand:
For more information on how Picocrypt handles cryptography, see <a href="Internals.md">Internals</a> for the technical details. If you're worried about the safety of me or this project, let me assure you that this repository won't be hijacked or backdoored. I have 2FA (TOTP) enabled on all accounts with a tie to Picocrypt (GitHub, etc.), in addition to full-disk encryption on all of my portable devices. For further hardening, Picocrypt uses my isolated forks of dependencies and I fetch upstream only when I have taken a look at the changes and believe that there aren't any security issues. This means that if a dependency gets hacked or deleted by the author, Picocrypt will be using my fork of it and remain completely unaffected. I've also meticulously gone through every single setting in the Picocrypt organization and repos, locking down access behind multiple layers of security such as read-only base-level member permissions, required PRs and mandatory approvals (which no one can do but me), mandatory CODEOWNERS approvals, and I'm the only member of the Picocrypt organization and repos. You can feel confident about using Picocrypt as long as you understand:
<strong>Picocrypt operates under the assumption that the host machine it is running on is safe and trusted. If that is not the case, no piece of software will be secure, and you will have much bigger problems to worry about. As such, Picocrypt is designed for the offline security of volumes and does not attempt to protect against side-channel analysis.</strong>
@ -107,6 +115,9 @@ No, it doesn't shred any files and just deletes them as your file manager would.
Yes, Picocrypt is secure against quantum computers. All of the cryptography used in Picocrypt works off of a private key, and private-key cryptography is considered to be resistant against all current and future developments, including quantum computers.
# License
All original code (non-forked repositories) in the [Picocrypt organization](https://github.com/orgs/Picocrypt/repositories) is licensed under **GPL-3.0-only**. This includes the GUI, CLI, and web application. Forked repositories retain their respective upstream licenses.
# Acknowledgements
A thank you from the bottom of my heart to the significant contributors on [Open Collective](https://opencollective.com/picocrypt):
<ul>
@ -158,16 +169,13 @@ Also, a huge thanks to the following people who were the first to donate and sup
Finally, thanks to these people/organizations for helping me out when needed:
<ul>
<li>[ REDACTED ] for helping me create an AppImage for Picocrypt</li>
<li>u/Upstairs-Fishing867 for helping me test PGP signatures</li>
<li>u/greenreddits for constant feedback and support</li>
<li>u/Tall_Escape for helping me test Picocrypt</li>
<li>u/NSABackdoors for doing plenty of testing</li>
<li>@samuel-lucas6 for feedback, suggestions, and support</li>
<li>@AsuxAX and @Minibus93 for testing new features</li>
<li>@mdanish-kh and @stephengillie for WinGet package</li>
<li>@Retengart for helping create the Flatpak</li>
<li><a href="https://privacyguides.org">Privacy Guides</a> for listing Picocrypt</li>
<li>@Retengart for helping create the Flatpak and housekeeping it</li>
<li><a href="https://privacyguides.org">Privacy Guides</a> for (previously) listing Picocrypt</li>
<li><a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> for auditing Picocrypt</li>
<li>You?</li>
</ul>

View file

@ -1 +1 @@
1.48
1.49

View file

@ -26,18 +26,11 @@
</screenshot>
</screenshots>
<releases>
<release version="1.48" date="2025-04-18">
<url type="details">https://github.com/Picocrypt/Picocrypt/blob/main/Changelog.md#v148-released-04182025</url>
<release version="1.49" date="2025-08-03">
<url type="details">https://github.com/Picocrypt/Picocrypt/blob/main/Changelog.md#v149-released-08032025</url>
<description>
<ul>
<li>Allow pressing 'Enter' key to press Start/Process button</li>
<li>Update "Encrypt" button to "Zip and Encrypt" if multiple files</li>
<li>Give user estimated required free disk space in status label</li>
<li>Encrypt previously unencrypted temporary zip files</li>
<li>Add `.incomplete` to filenames while work is in progress</li>
<li>Use `encrypted-*.zip.pcv` output name instead of `Encrypted.zip.pcv`</li>
<li>Use 0700 permissions when auto unzipping and creating folders</li>
<li>Handle many more errors in the code where they were ignored previously</li>
<li>Added support for displaying Cyrillic characters in the UI</li>
</ul>
</description>
</release>

BIN
dist/macos/icon.icns vendored Normal file

Binary file not shown.

BIN
dist/macos/iconBlack.icns vendored Normal file

Binary file not shown.

BIN
dist/macos/iconSmall.icns vendored Normal file

Binary file not shown.

View file

@ -0,0 +1,6 @@
[Desktop Entry]
Type=Application
Terminal=false
Name=Picocrypt
Exec=picocrypt
Icon=${SNAP}/meta/gui/picocrypt.svg

1
dist/snapcraft/snap/gui/picocrypt.svg vendored Normal file
View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="140" height="140" overflow="hidden"><defs><clipPath id="A"><path d="M143 118h140v140H143z"/></clipPath><linearGradient x1="143" y1="188" x2="283" y2="188" gradientUnits="userSpaceOnUse" spreadMethod="pad" id="B"><stop offset="0" stop-color="#00f2fe"/><stop offset=".021" stop-color="#03effe"/><stop offset=".293" stop-color="#24d2fe"/><stop offset=".554" stop-color="#3cbdfe"/><stop offset=".796" stop-color="#4ab0fe"/><stop offset="1" stop-color="#4facfe"/></linearGradient></defs><g clip-path="url(#A)" transform="translate(-143 -118)"><path d="M233.781 156.296c0-4.832 3.918-8.75 8.75-8.75a8.75 8.75 0 1 1 0 17.5 8.75 8.75 0 0 1-8.75-8.75zM178 252.513v-9.844h9.844a5.47 5.47 0 0 0 5.468-5.469v-9.843h9.844a5.47 5.47 0 0 0 5.469-5.469 5.47 5.47 0 0 0-5.469-5.469h-15.312a5.47 5.47 0 0 0-5.469 5.469v9.844h-9.844a5.47 5.47 0 0 0-5.469 5.469v9.843h-13.124v-16.328l48.494-48.495a5.47 5.47 0 0 0 .809-6.704 88.53 88.53 0 0 1-5.174-9.922c-1.804-4.058-.885-8.906 2.288-12.063l21.475-21.375c3.065-3.051 7.659-4.024 11.702-2.479 6.35 2.427 15.501 6.894 23.039 14.397 7.584 7.548 12.201 16.834 14.738 23.296a10.86 10.86 0 0 1-2.451 11.672l-21.735 21.633c-3.164 3.15-7.889 4.07-12.035 2.346-3.42-1.423-6.732-3.112-9.844-5.022a5.47 5.47 0 0 0-7.521 1.8 5.47 5.47 0 0 0 1.8 7.522c3.596 2.207 7.42 4.158 11.364 5.798 8.242 3.429 17.643 1.586 23.952-4.692l21.734-21.632c6.165-6.136 8.095-15.33 4.917-23.423-2.921-7.435-8.276-18.165-17.204-27.05-8.896-8.855-19.511-14.057-26.85-16.862a21.99 21.99 0 0 0-23.323 4.944l-21.475 21.375c-6.366 6.336-8.2 16.085-4.566 24.259 1.127 2.535 2.353 5.015 3.663 7.411l-47.133 47.133a5.47 5.47 0 0 0-1.602 3.868v24.062a5.47 5.47 0 0 0 5.469 5.469h24.062a5.47 5.47 0 0 0 5.469-5.469z" fill="url(#B)"/></g></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

40
dist/snapcraft/snapcraft.yaml vendored Normal file
View file

@ -0,0 +1,40 @@
name: picocrypt
summary: A very small, very simple, yet very secure encryption tool.
description: Picocrypt is a very small, very simple, yet very secure encryption tool that you can use to protect your files. It's designed to be the go-to tool for encryption, with a focus on security, simplicity, and reliability. Picocrypt uses the secure XChaCha20 cipher and the Argon2id key derivation function to provide a high level of security, even from three-letter agencies like the NSA. Your privacy and security is under attack. Take it back with confidence by protecting your files with Picocrypt.
version: "1.49"
confinement: strict
base: core22
grade: stable
apps:
picocrypt:
command: bin/Picocrypt
environment:
NO_AT_BRIDGE: 1
LIBGL_ALWAYS_SOFTWARE: 1
extensions: [gnome]
plugs:
- home
parts:
picocrypt:
plugin: go
source: .
build-packages:
- gcc
- xorg-dev
- libgtk-3-dev
- libgl1-mesa-dev
- libglu1-mesa-dev
- libffi-dev
build-snaps:
- go
stage-packages:
- libc6
- libgcc-s1
- libgl1
- libglu1-mesa
- libgtk-3-0
- libstdc++6
- libx11-6
- libffi7

View file

@ -1,6 +1,6 @@
1 VERSIONINFO
FILEVERSION 1,48,0,0
PRODUCTVERSION 1,48,0,0
FILEVERSION 1,49,0,0
PRODUCTVERSION 1,49,0,0
FILEOS 0x40004
FILETYPE 0x1
{
@ -8,7 +8,7 @@ BLOCK "StringFileInfo"
{
BLOCK "040904B0"
{
VALUE "FileVersion", "1.48"
VALUE "FileVersion", "1.49"
VALUE "LegalCopyright", "\xA9 Evan Su & contributors, GPLv3"
VALUE "ProductName", "Picocrypt"
}

View file

@ -2,9 +2,9 @@ package main
/*
Picocrypt v1.48
Picocrypt v1.49
Copyright (c) Evan Su
Released under a GNU GPL v3 License
Released under GPL-3.0-only
https://github.com/Picocrypt/Picocrypt
~ In cryptography we trust ~
@ -61,7 +61,7 @@ var TRANSPARENT = color.RGBA{0x00, 0x00, 0x00, 0x00}
// Generic variables
var window *giu.MasterWindow
var version = "v1.48"
var version = "v1.49"
var dpi float32
var mode string
var working bool

View file

@ -4,12 +4,12 @@ go 1.24.2
require (
github.com/Picocrypt/dialog v0.0.0-20250412233924-78f7b909315b
github.com/Picocrypt/giu v0.0.0-20250412235908-fe90a482e6f2
github.com/Picocrypt/giu v0.0.0-20250801020750-ec85cd24c933
github.com/Picocrypt/imgui-go v0.0.0-20250412235405-d86b230f5fbb
github.com/Picocrypt/infectious v0.0.0-20250412183341-9f88c6307b39
github.com/Picocrypt/serpent v0.0.0-20240830233833-9ad6ab254fd7
github.com/Picocrypt/zxcvbn-go v0.0.0-20250412183938-d59695960527
golang.org/x/crypto v0.37.0
golang.org/x/crypto v0.40.0
)
require (
@ -17,5 +17,5 @@ require (
github.com/Picocrypt/glfw/v3.3/glfw v0.0.0-20250412234750-7b96bfdb8dd8 // indirect
github.com/Picocrypt/mainthread v0.0.0-20240831004314-496f638392b3 // indirect
github.com/Picocrypt/w32 v0.0.0-20240831001500-1183079d4d57 // indirect
golang.org/x/sys v0.32.0 // indirect
golang.org/x/sys v0.34.0 // indirect
)

View file

@ -1,7 +1,7 @@
github.com/Picocrypt/dialog v0.0.0-20250412233924-78f7b909315b h1:k5YGEx61N6K8l2l6AQ1u5W2aR+47sVZWFyqXS/f5lIA=
github.com/Picocrypt/dialog v0.0.0-20250412233924-78f7b909315b/go.mod h1:OyaP0Tz19qL3RAGq5Ntues+WVrIbHh5MrfqoA/qhqeg=
github.com/Picocrypt/giu v0.0.0-20250412235908-fe90a482e6f2 h1:SPR2efZTpZJON/2mNifLi68Gl9Epxh/1nXb3kGGHCcg=
github.com/Picocrypt/giu v0.0.0-20250412235908-fe90a482e6f2/go.mod h1:jd6AonK0ZI02R7GqLWb4gWJz/A2ClF36Y4fFMR8Lzbk=
github.com/Picocrypt/giu v0.0.0-20250801020750-ec85cd24c933 h1:4K9zEOVimmirylJ2ZFSNdJeAjLSCrkgWuCtPDlWw+wo=
github.com/Picocrypt/giu v0.0.0-20250801020750-ec85cd24c933/go.mod h1:jd6AonK0ZI02R7GqLWb4gWJz/A2ClF36Y4fFMR8Lzbk=
github.com/Picocrypt/gl v0.0.0-20250412234430-767b58dbf936 h1:6MChjQ4AZC2ISBjbgZU/z6tSUxYP50NkRvAu0T2kjlY=
github.com/Picocrypt/gl v0.0.0-20250412234430-767b58dbf936/go.mod h1:pMdf3io/y3I+zYZ6/xFb3MlI2AgL38enDDIKuR0n2qA=
github.com/Picocrypt/glfw/v3.3/glfw v0.0.0-20250412234750-7b96bfdb8dd8 h1:i8wXJhSYIJTXb6sqBS6JZW7QosI9u8Ysy1BHZCTuZEc=
@ -18,7 +18,7 @@ github.com/Picocrypt/w32 v0.0.0-20240831001500-1183079d4d57 h1:jusSXTp0h5wz8lxNX
github.com/Picocrypt/w32 v0.0.0-20240831001500-1183079d4d57/go.mod h1:FkeZHdKlITdP34VknO8yLdRY5pCi+iWEhDSA0YsBhZc=
github.com/Picocrypt/zxcvbn-go v0.0.0-20250412183938-d59695960527 h1:IqypAzv5COsByMhiSdwlgafA5SBRG7Z0binnBSo3htM=
github.com/Picocrypt/zxcvbn-go v0.0.0-20250412183938-d59695960527/go.mod h1:u0rcUNEwy7st1DnPxdOJdTsh0aSRhrdMOxlIGrXR1Ls=
golang.org/x/crypto v0.37.0 h1:kJNSjF/Xp7kU0iB2Z+9viTPMW4EqqsrywMXLJOOsXSE=
golang.org/x/crypto v0.37.0/go.mod h1:vg+k43peMZ0pUMhYmVAWysMK35e6ioLh3wB8ZCAfbVc=
golang.org/x/sys v0.32.0 h1:s77OFDvIQeibCmezSnk/q6iAfkdiQaJi4VzroCFrN20=
golang.org/x/sys v0.32.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
golang.org/x/crypto v0.40.0 h1:r4x+VvoG5Fm+eJcxMaY8CQM7Lb0l1lsmjGBQ6s8BfKM=
golang.org/x/crypto v0.40.0/go.mod h1:Qr1vMER5WyS2dfPHAlsOj01wgLbsyWtFn/aY+5+ZdxY=
golang.org/x/sys v0.34.0 h1:H5Y5sJ2L2JRdyv7ROF1he/lPdvFsd0mJHFw2ThKHxLA=
golang.org/x/sys v0.34.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=