Szilard Gabor LADANYI - 2024
1. The Sallet ecosystem
Sallet stands as a fortified Bitcoin wallet ecosystem, designed for seasoned users seeking paramount security and full autonomy. Its low-level architecture empowers users with granular control over Bitcoin transactions, ensuring multi-layered security measures. This platform offers diverse avenues for leveraging fundamental Bitcoin functionalities, catering to advanced users' need for heightened sovereignty over their assets. Sallet allows users to issue their own NFT's over Bitcoin. It also trackS Users NFT balance across the spectrum of issued tokens. While offering means to trace the entirety of their issued NFT’s, users gain comprehensive control over their NFT ecosystem.
1.1. Modules in the Sallet system
-
Sallet VISOR: Secure Wallet Module - Handles public-only data, serving as a world-facing online Secure Wallet App.
-
Sallet HEAD: Hidden data manager - An air-gapped unit for transaction signing and key management on dedicated, fully self-custodied hardware.
-
Sallet Neck: (as of now part of Visor) Manages token issuance and tracking for self-issued Tokens and NFTs.
1.2. Security Design
Sallet prioritizes robust security measures against potential threats. The development approach explicitly assumes an environment compromised not only by malicious software but also by zero-day compromised hardware. To address security concerns, Sallet employs:
1.2.1. Air-Gapped Setup
-
Private keys are generated and stored offline.
-
Signatures are generated in an airgapped environment.
-
Custom-made analogue entropy is an option for users.
1.2.2. Data Handling
-
Transactions are signed on the airgapped HEAD device.
-
Data transfer from the HEAD unit to the world-facing VISOR module occurs via analogue means.
-
Zero-knowledge tests regularly check for irregularities caused by malicious code or compromised hardware components.
This design ensures a resilient security setup, even in an adversarial environment, by strictly controlling data flow and continuously verifying against threats posed by software vulnerabilities and potentially compromised hardware elements. |
1.3. Visuals and Whitelabeling
Utilizing Kivy, our framework enables effortless customization of layout, colors, images, fonts, and widget appearance. Developers unfamiliar with Python can easily redesign the app by manipulating the .ky file, akin to styling with CSS. This flexibility extends to saving multiple layouts within the app, offering a seamless choice at program launch. Additionally, this streamlined process encompasses whitelabeling tasks.
2. Sallet VISOR: Secure Wallet Module
Sallet Visor is a module within the Sallet system, developed by Sziller and Team at sziller.eu. The actual wallet application of the Sallet ecosystem. You can take a look at current development under: www.github.com/sziller/_sallet_visor VISOR serves as an advanced, low-level Bitcoin wallet that exclusively manages public data. Designed with extreme security in mind, VISOR offers:
2.1. Featureset
-
Coin selection
-
Direct node support
-
3rd party node selection
-
NFT minting
-
Token management
-
… and is the gateway to the airgapped HEAD unit
2.2. Platform Support
VISOR is currently under development for Linux OS and Android Mobiles, with plans to expand to other platforms in the future. It can be used both as Mobile App or Desktop software.
2.3. Functionality
Heres a page-by-page summary of what VISOR does.
2.3.1. Intro
The welcome screen serves as an introduction, explaining high-level features and offering an interactive tutorial-like guide.
2.3.2. BTC onchain wallet
User-friendly interface for quick Bitcoin transactions. Ideal for users not delving into complex details.
2.3.3. NFT wallet
An easy-to-use interface for managing NFTs, catering to everyday NFT users. Enables tracking and trading of NFTs.
2.3.4. NFT minting
Easy to handle NFT Mint. Facilitates the creation and issuance of NFTs, offering customization options and multiple creations in a single transaction.
2.3.5. Coin selection
Advanced, flexible transaction creation interface, allowing meticulous customization for high-value and/or complex transactions.
2.3.6. QR scanner
Enables reading analogue data from the HEAD unit, accepting signed transaction QR representations.
2.3.7. QR code display
Displays analogue data for the isolated HEAD unit, including unsigned or partially signed transactions and software updates.
2.3.8. Broadcast
Setup page for Transaction broadcasting, offering privacy-centric options and various node selections for transaction dissemination.
3. Sallet HEAD: Hidden data manager
Sallet HEAD is a module within the Sallet system, developed by Sziller and Team at sziller.eu. It serves as an Air-gapped, digitally isolated entropy and key manager Though project as of now private, under development will soon be published: www.github.com/sziller/_sallet_head
As the background working horse, HEAD offers:
3.1. Featureset
-
Analogue methods to generate entropy
-
Private key derivation methods
-
Signing of raw Transactions
3.2. Platform Support
Head operates on dedicated hardware, intentionally isolated from digital communication. The hardware supports analog in-out communication through specific peripherals.
3.3. Functionality
Heres a page-by-page summary of what Head does.
For demonstration purposes we are showing different coloring and logos here as an appetizer and to demonstrate Kivy’s ability to redesign application layout, and visuals. |
3.3.1. Intro
Welcome screen with explaining basic features. On this page the high level feature set is explained, where each of them can be picked for an exhaustive description.
3.3.2. Signing
Allows users to sign raw transactions using private keys from its database. Users can selectively sign specific inputs within complex transactions.
3.3.3. Key generator
Enables the creation of new keys using real-life, analogue entropy or derivation from existing safe entropy sources. Additional password features enhance security or provide an extra layer of plausible deniability.
3.3.4. QR scanner
Reads analogue data from the VISOR unit, accepting un-signed or partially signed Transactions in QR code format.
3.3.5. QR code display
Passes analogue data to the VISOR unit, displaying unsigned or partially signed transactions for VISOR to read and process.