├── .gitignore ├── .gitmodules ├── LICENSE ├── README.md ├── ant-javacard.jar ├── card_proxy.py ├── docs ├── BlindOracle.md ├── MemoryCard.md ├── README.md ├── SecureApplet.md ├── SingleUseKey.md └── Teapot.md ├── gp.jar ├── run_sim.py ├── shell.nix ├── simulator.jar ├── src └── main │ └── java │ └── toys │ ├── BlindOracleApplet.java │ ├── Crypto.java │ ├── DataEntry.java │ ├── FiniteField.java │ ├── HMACDigest.java │ ├── MemoryCardApplet.java │ ├── PinCode.java │ ├── Secp256k1.java │ ├── SecureApplet.java │ ├── SecureChannel.java │ ├── SingleUseKeyApplet.java │ ├── TeapotApplet.java │ └── TransientHeap.java └── tests ├── README.md ├── requirements.txt ├── run_tests.py └── tests ├── __init__.py ├── test_blindoracle.py ├── test_memorycard.py ├── test_secureapplet.py ├── test_teapot.py └── util ├── card.py ├── prebuilt ├── libsecp256k1.dylib └── libsecp256k1.so ├── secp256k1.py ├── securechannel.py └── simulator.py /.gitignore: -------------------------------------------------------------------------------- 1 | build/ 2 | __pycache__ 3 | .venv 4 | .vscode 5 | .DS_Store 6 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/.gitmodules -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/README.md -------------------------------------------------------------------------------- /ant-javacard.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/ant-javacard.jar -------------------------------------------------------------------------------- /card_proxy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/card_proxy.py -------------------------------------------------------------------------------- /docs/BlindOracle.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/docs/BlindOracle.md -------------------------------------------------------------------------------- /docs/MemoryCard.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/docs/MemoryCard.md -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/docs/README.md -------------------------------------------------------------------------------- /docs/SecureApplet.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/docs/SecureApplet.md -------------------------------------------------------------------------------- /docs/SingleUseKey.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/docs/SingleUseKey.md -------------------------------------------------------------------------------- /docs/Teapot.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/docs/Teapot.md -------------------------------------------------------------------------------- /gp.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/gp.jar -------------------------------------------------------------------------------- /run_sim.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/run_sim.py -------------------------------------------------------------------------------- /shell.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/shell.nix -------------------------------------------------------------------------------- /simulator.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/simulator.jar -------------------------------------------------------------------------------- /src/main/java/toys/BlindOracleApplet.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/BlindOracleApplet.java -------------------------------------------------------------------------------- /src/main/java/toys/Crypto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/Crypto.java -------------------------------------------------------------------------------- /src/main/java/toys/DataEntry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/DataEntry.java -------------------------------------------------------------------------------- /src/main/java/toys/FiniteField.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/FiniteField.java -------------------------------------------------------------------------------- /src/main/java/toys/HMACDigest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/HMACDigest.java -------------------------------------------------------------------------------- /src/main/java/toys/MemoryCardApplet.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/MemoryCardApplet.java -------------------------------------------------------------------------------- /src/main/java/toys/PinCode.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/PinCode.java -------------------------------------------------------------------------------- /src/main/java/toys/Secp256k1.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/Secp256k1.java -------------------------------------------------------------------------------- /src/main/java/toys/SecureApplet.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/SecureApplet.java -------------------------------------------------------------------------------- /src/main/java/toys/SecureChannel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/SecureChannel.java -------------------------------------------------------------------------------- /src/main/java/toys/SingleUseKeyApplet.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/SingleUseKeyApplet.java -------------------------------------------------------------------------------- /src/main/java/toys/TeapotApplet.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/TeapotApplet.java -------------------------------------------------------------------------------- /src/main/java/toys/TransientHeap.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/src/main/java/toys/TransientHeap.java -------------------------------------------------------------------------------- /tests/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/README.md -------------------------------------------------------------------------------- /tests/requirements.txt: -------------------------------------------------------------------------------- 1 | cryptography 2 | pyscard 3 | -------------------------------------------------------------------------------- /tests/run_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/run_tests.py -------------------------------------------------------------------------------- /tests/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/tests/test_blindoracle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/tests/test_blindoracle.py -------------------------------------------------------------------------------- /tests/tests/test_memorycard.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/tests/test_memorycard.py -------------------------------------------------------------------------------- /tests/tests/test_secureapplet.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/tests/test_secureapplet.py -------------------------------------------------------------------------------- /tests/tests/test_teapot.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/tests/test_teapot.py -------------------------------------------------------------------------------- /tests/tests/util/card.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/tests/util/card.py -------------------------------------------------------------------------------- /tests/tests/util/prebuilt/libsecp256k1.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/tests/util/prebuilt/libsecp256k1.dylib -------------------------------------------------------------------------------- /tests/tests/util/prebuilt/libsecp256k1.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/tests/util/prebuilt/libsecp256k1.so -------------------------------------------------------------------------------- /tests/tests/util/secp256k1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/tests/util/secp256k1.py -------------------------------------------------------------------------------- /tests/tests/util/securechannel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/tests/util/securechannel.py -------------------------------------------------------------------------------- /tests/tests/util/simulator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cryptoadvance/specter-javacard/HEAD/tests/tests/util/simulator.py --------------------------------------------------------------------------------