An encryptor based on Shamir's secret sharing algo to protect your personal texts. By setting up 3 question-answer pairs, you will be able to see the plain text if and only if correctly providing any 2 of them.
| Name | Version | Note |
|---|---|---|
| com.codahale:shamir | 6.2.10 | implementation of Shamir algorithm |
| com.google.protobuf:protobuf-java | 3.17.3 | file serialization |
| com.github.johnrengelman:shadow | 2.0.1 | fatjar packaging tool |
| www.iconfinder.com | - | app icon ( |
| Encrypt |
|---|
![]() |
| Decrypt |
|---|
![]() |
Using Portable Version (Windows 10/11 AMD64)
| Step | Description |
|---|---|
| #1 | download and unzip 3qtxt-portable-1.0-x64.zip |
| #2 | double-click launch.bat to use the app |
Using JRE 8+
| Step | Description |
|---|---|
| #1 | download 3qtxt-1.0-all.jar |
| #2 | (optional) download icon.png |
| #3 | run java -Duser.language=en -Dfile.encoding=UTF8 -jar 3qtxt-1.0-all.jar in CLI |
| Step | Description |
|---|---|
| #1 | clone the repository |
| #2 | run gradew shadowJar to compile and build the fatjar from src/ |
| #3 | find the built binary: build/libs/3qtxt-1.0-all.jar |
| Step | Description |
|---|---|
| #1 | clone the repository |
| #2 | setup protocol buffer compiler (or use protobuf/protoc.exe) |
| #3 | modify protobuf/ThreeQuestionsTxtFileMsg.proto to meet your requirement |
| #4 | run protoc.exe --java_out=.\ ThreeQuestionsTxtFileMsg.proto to generate java code |
| #5 | override src/main/java/ThreeQuestionsTxtFileProtos.java with the generated one |
| #6 | update the version of protobuf-java in build.gradle to algin with the protocol buffer compiler you use |
| #7 | rebuild the whole project under src/ |


