This page contains a number of open-source tools that StevenHatzakis.com hosts for educational purposes. Select one from the side navigation panel or scroll down this page. To learn more about funding open-source development visit Gitcoin.co:

 

[Open-Source]



 

[Open link, then right-click to "save as .html" for offline use]

[BIP39 Tool]

The BIP39 Tool is an open-source browser app that works both offline and online (i.e. does not require an internet connection), based on just the code in the HTML file of the page, and using cryptographically secure pseudo-random number generators based on local browser entropy which is sourced as the initial seed to create account and wallet addresses. When accessing the advanced section of the BIP39 tool, the entropy section - used as the initial seed - can also be obtained for backup/redundancy (as this is a pre-image of the resulting mnemonic, or users can supply their own entropy sources to seed a new mnemonic or recover an existing mnemonic.

Mnemonics - also known as recovery phrases - are a string of unique words that represent/encode a unique string of binary data (bits of zeroes and ones) which correspond to certain lengths depending on the security needed to deter brute force attacks or key collisions (i.e. 128 bits, 256 bits). For those relying on the entropy generated by the tool, keep in mind it relies on the getRandomValues command, W3C recommended web cryptography API, which also means that users of applications that are subject to any weaknesses inherent from the getRandomValues command. For such reasons, users can supply their own entropy used the advanced function of the BIP 39 tool, which comes with its own set of risks as sourcing sufficiently random entropy can be highly complex even for advanced users.



 

[Open link, then right-click to "save as .html" for offline use]

[Shamir Secret Sharing Tool]

 

The Shamir Secret Sharing Scheme is an encryption/decryption web browser app/tool that works both offline and online, based on just the code in the HTML file of the page.

The app that takes ordinary plain-text secrets (i.e. a password or private key, or other sensitive data) as inputs and then encrypts the data by producing x number of separate cipher-texts act as keys where at least n number of these cipher-text keys are required to be recombined to decrypt the original plain text, similar to a multi-signature scheme.


 

[can be saved offline as standalone .html]

[AES Encryption Tool]

SJCL Standalone AES [Advanced Encryption Standard] Tool. This page is a demo of the Stanford Javascript Crypto Library hosted by StevenHatzakis.com for educational purposes.