1. Scope and Who We Are
This policy covers Tiny Pad Server, the application you install on the computer you want to control. It applies to the Linux, macOS and Windows versions. The Tiny Pad app for iPhone and iPad is covered by a separate policy, because it runs on a different device, asks for different permissions, and is distributed through the App Store: Tiny Pad App Privacy Policy. Tiny Pad Server is published by Tiny Bits Ltd, a company registered in England and Wales (company number 16882060), with its registered office at 61 Bridge Street, Kington, HR5 3DJ, United Kingdom. Where this policy says "we" or "us", it means Tiny Bits Ltd.
2. The Short Version
• Tiny Pad Server makes one automatic outbound request and sends no data to Tiny Bits. That request asks tiny-pad.com whether a newer version exists; it carries nothing about you and nothing about your computer, and you can switch it off. It has no licence check and no telemetry. The other time it reaches the internet is one you trigger yourself: clicking the website link on the About screen hands that address to your normal browser. • We receive nothing from it. No analytics, no telemetry, no crash reports, no accounts. • Everything it stores stays in one folder on your computer, readable only by you. • Everything it sends goes only to devices you have paired, only across your own network, and only inside an encrypted channel. The rest of this policy sets that out in detail, file by file and message by message.
3. Personal Data We Collect: None
Tiny Bits collects no personal data through Tiny Pad Server. We hold no record of who uses it, on what computer, or for what. The software never sends us anything, so there is nothing for us to hold. Tiny Pad Server contains: • No analytics or telemetry of any kind • No crash or error reporting to us or to anyone else • No usage, feature or behavioural tracking • No advertising identifiers and no ad networks • No third-party SDKs (no Firebase, no Sentry, no analytics frameworks) • No accounts, sign-in, email collection or licence activation • No telemetry, no analytics, no crash reports sent to us Tiny Pad Server sends no data to us under any circumstances. Apart from the update check described in section 7, every network operation it starts on its own stays on your local network or on your own machine. The one route to the internet is one you take deliberately: the About screen carries a link to our website, and clicking it passes the address to your system's default browser, which loads the page in the ordinary way. Tiny Pad does not fetch the page itself, and we are not told that you clicked.
4. What the Server Stores on Your Computer
Tiny Pad Server keeps all of its data in a single folder: • Linux: ~/.config/tinypad/ • macOS: ~/Library/Application Support/tinypad/ • Windows: %APPDATA%\tinypad\ The folder and the configuration file inside it are created with owner-only permissions (mode 0700 and 0600 on Linux and macOS, restricted ACLs on Windows), so other users of the same computer cannot read them. server.json holds the server's configuration: • A randomly generated 128-bit server ID, created on first run. It identifies this installation to your paired devices. It is not derived from your hardware, your network or anything about you. • The server's friendly name, which defaults to your computer's hostname and can be changed at any time in Settings. • Your preferences: the UDP port, the maximum number of simultaneous connections, auto-start, theme, gesture mappings, on-screen keyboard behaviour and monitor mapping. • One entry per paired device, containing a random device ID, the name you typed when you paired it, that device's Ed25519 public key, and the time it last connected. No private key of your device is ever stored on the computer. server.json.bak is created only if the configuration file ever becomes unreadable, so that your settings are not silently discarded. crash.log is the crash report. The server appends one line to it every time it starts. That line records the version, the date and time, and the process ID, so the file exists from the first run even if nothing ever goes wrong. If the server does crash, the fault and a stack trace of the program's own code are written below that line. Reports build up rather than replacing one another, and the file is emptied only once it passes about a megabyte. It contains none of your documents or input, and it is never uploaded. server.log is the ordinary log: what the software did, not what you did. It records the version, the server ID, the friendly name, the ID of each device that connects, the transport it used, and any errors. It records no window titles, nothing you type and nothing from your screen. Two files are kept, server.log and server.log.1, of about two megabytes each, and older entries are discarded as new ones arrive. It is never uploaded. If you would like to send either of them to us to help fix a bug, you are welcome to attach it to an email. That is always your decision, never automatic. On Linux, two further files may appear in the same folder: • A record of the firewall rules Tiny Pad added, so it can later remove exactly those rules and nothing else. • A screen-sharing restore token issued by your desktop's portal, so Pencil mode does not have to ask your permission again every session. It is stored with owner-only permissions and means nothing outside your own desktop. Deleting that folder removes everything Tiny Pad Server has stored. Section 10 lists the system settings to undo as well.
5. What the Server Sends to Your Device
Tiny Pad Server transmits only to devices you have paired, only across your local network or a USB cable, and only inside the encrypted channel described in section 8. It sends four kinds of information. The active application. So your device can show the right toolbar for whatever you are working in, the server reports the title of the focused window, the application's identifier (its process name or bundle ID), its version where that is known, and the name of your operating system. Window titles routinely contain file names, document names and web page titles, so this is real information about what you are doing. It is sent live to your paired device, and the server neither stores it nor keeps a history of it. Screen preview in Pencil mode. When you use Pencil mode, the server captures the region of the screen you selected and streams it to your device as image tiles: lossy JPEG, or losslessly compressed raw pixels where quality matters. Frames live in memory only for as long as it takes to send them. They are never written to disk, never cached, and never sent anywhere but your paired device. Capture stops when you leave Pencil mode or disconnect. Display geometry. The dimensions of the captured screen, so your pen and finger positions land where you expect. Pairing and session messages. The cryptographic values described in section 8. Tiny Pad Server does not send your files, your clipboard, the keystrokes you type on your own keyboard, your browsing history, your camera, your microphone or your saved passwords. It contains no code to read any of them.
6. What the Server Receives
Your paired device sends input for the server to apply to your computer: pointer movement, clicks and scrolling; key presses and text; pen position, pressure, tilt and buttons; gamepad axes and buttons; multi-finger gestures; pan and zoom; the current mode; and, in Pencil mode, the screen region you want to watch. The server checks each message, hands it to the operating system's input layer, and discards it. Input is not recorded, not written to disk, and not accumulated into any history.
7. Network Activity
Tiny Pad Server listens on one UDP port, 4444 by default, for connections from your paired devices. Besides that, it opens only these connections, and no others: • Local discovery (mDNS/DNS-SD), so your device can find the computer without you typing an IP address. The server advertises a service named tinypad-<server ID> of type _tinypad._udp, together with its port. It publishes no TXT records. Bear in mind that mDNS is a broadcast protocol: anyone already on your network can see that a Tiny Pad server exists and on which port, and, as with any mDNS service, the advertising computer's local hostname and address. Your data and your pairing credentials are never part of that advertisement. If you would rather not advertise at all, connect over USB. • The local usbmuxd socket (a Unix socket on Linux and macOS, localhost:27015 on Windows), part of Apple's device support software. It is used to notice an iPhone or iPad attached by cable and to open a tunnel to it. Nothing leaves your machine. • Sockets on your own computer: on Linux, D-Bus and your compositor's socket, used to detect the focused window, capture the screen through your desktop's portal, and query the firewall. On its own initiative, Tiny Pad Server contacts exactly one host, and only to ask whether a newer version of it exists. The update check. It fetches two small fixed files from tiny-pad.com: a list of the current version, and a signature proving we wrote that list. The request has no query string, no identifier, no account, no cookie, and does not say which version you are running, which operating system you use, or anything else about your machine. The one thing it necessarily reveals is your IP address, which is true of fetching any web page. We compare versions on your computer, not ours. It runs at most once a day. It runs when the server starts and when you open the About window, never on a timer, and never while it is switched off. You can switch it off. Settings › Updates › Check for Updates. With it off, the server makes no automatic outbound connection at all. Installing is separate, and off unless you turn it on. Checking only tells you. Settings › Updates › Install Updates Automatically is a second choice, and it starts switched off. On Linux the server never installs anything: your package manager owns that, and the notice tells you to update through it. The only other way the server reaches beyond your machine is the About screen's website link, which opens in your browser when you click it, as described in section 3.
8. Pairing and Encryption
All traffic between the server and your device runs over DTLS using the TLS_PSK_WITH_AES_128_GCM_SHA256 cipher suite, so it is encrypted and authenticated end to end. Pairing. When you add a device, the server generates a random device ID and an Ed25519 key pair. It keeps the public key in server.json and shows the private seed to you once, inside a QR code on your own monitor. That QR code contains the server ID, the server's friendly name, the new device ID, the private seed, and the server's local address and port. It is drawn on your screen and nowhere else. It is never transmitted, never uploaded, never logged. Treat the QR code as a secret while it is on screen: anyone who photographs it can pair a device. If you think one has been seen, use "Show QR code" on that device entry to issue fresh credentials, which invalidates the old ones immediately. Each connection. The two sides run an ephemeral X25519 key exchange, signed with your device's Ed25519 key against a single-use random challenge from the server. A fresh session key is derived and sealed to your device's ephemeral public key. Because the ephemeral private keys are thrown away afterwards, someone who later recovered the long-term pairing key still could not decrypt earlier sessions. Devices that are not in the paired list are rejected before any input is processed, and repeated key-exchange attempts from the same address are rate limited. Removing a device from the list revokes its access at once.
9. Operating System Permissions
Tiny Pad Server needs permission from your operating system to create input, and, for Pencil mode only, to read the screen. You grant these yourself, and you can withdraw them at any time. macOS • Accessibility, required to post mouse, keyboard, pen and gamepad events. System Settings › Privacy & Security › Accessibility. • Screen Recording, required only for the Pencil mode preview. System Settings › Privacy & Security › Screen Recording. Without it, every other mode still works normally. Windows • A firewall rule allowing your paired devices to reach the server port. • Administrator elevation, but only if you choose to install the optional virtual pen driver (for pressure-sensitive Pencil input) or the optional virtual gamepad driver. You are asked before either is installed, and Tiny Pad works without them. Linux • Write access to /dev/uinput, which is how the virtual mouse, keyboard, tablet and gamepad are created. If access is missing, Tiny Pad works out why and shows you the change needed, usually a udev rule plus adding your user to a group. Nothing happens unless you choose to go ahead. If you do, Tiny Pad applies the change with administrator rights through your desktop's standard authentication prompt; section 10 sets out exactly what it writes. • Screen capture, through xdg-desktop-portal on Wayland (your desktop asks which screen to share) or the X11 shared-memory extension on X11. • Read-only access to your compositor's interface, whether D-Bus or the Sway or Hyprland socket, to learn which window has focus.
10. Changes Tiny Pad Makes to Your Computer
We think you are entitled to know about every change Tiny Pad makes outside its own folder. This is the complete list, and each one can be undone. Firewall rules. On first run, Tiny Pad checks whether inbound traffic can actually reach its port. If it is blocked, it adds an allow rule for the Tiny Pad UDP port and for mDNS (UDP 5353). It does this through netsh advfirewall on Windows, and through firewalld, ufw, nftables or iptables on Linux, whichever you use. On Linux this needs administrator rights, so your desktop prompts you. Rules added through firewalld and ufw are permanent and survive a reboot; rules added directly through nftables or iptables are not. Tiny Pad records what it added in firewall.state inside the folder named in section 4, so those exact rules can be identified again later. Input device access (Linux). If Tiny Pad cannot open /dev/uinput, it explains why and offers to fix it. Accepting that offer runs one privileged command, after your desktop has asked you to authenticate. That command writes a udev rule to /etc/udev/rules.d/99-tinypad.rules granting a group access to the device, reloads and reapplies the udev rules, and adds your user account to that group with usermod, which takes effect at your next login. If the uinput kernel module is not loaded, it also loads it and writes /etc/modules-load.d/tinypad.conf so that it loads on boot. Where another package has set conflicting ACLs on /dev/uinput, the repair option additionally runs setfacl to grant that group read and write access. These are the only files Tiny Pad writes outside your home directory, and it writes them only when you ask it to. Auto-start entry. Only if you switch on "Start on login". It writes a desktop entry in ~/.config/autostart/ on Linux, a launch agent in ~/Library/LaunchAgents/ on macOS, or a value under HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run on Windows. Turning the setting off removes it again. Optional Windows drivers. If you want pressure-sensitive pen input or virtual gamepad support, Tiny Pad asks for administrator rights and installs the relevant driver. Both can be removed afterwards from Device Manager or the installed-apps list. On-screen keyboard suppression (Linux). By default, Tiny Pad asks your desktop not to pop up its own on-screen keyboard while a Tiny Pad virtual keyboard is connected. This is a setting you can switch off. Monitor mapping (COSMIC on Linux). If you choose which monitor the pen maps to, Tiny Pad writes that mapping into the COSMIC configuration so the pointer lands on the right display. KDE window queries. On KDE Plasma, the only supported way to ask which window has focus is to run a short script inside KWin. Tiny Pad writes a temporary script file, reads the answer, and deletes it. Removing all of it. Uninstalling Tiny Pad Server and deleting the folder named in section 4 removes the application and everything it stored. Some of the changes above are deliberately left alone, because an uninstaller cannot safely undo them on its own, so we would rather list them than claim a clean removal we do not perform: • Auto-start: switch "Start on login" off before you uninstall, or delete the entry listed above by hand. • Firewall rules: on Windows these are removed for you. On Linux they are not, so remove them yourself with firewall-cmd or ufw. The firewall.state file records exactly which ones Tiny Pad added, so you can remove those and leave the rest of your configuration untouched. • Linux input access: delete /etc/udev/rules.d/99-tinypad.rules and, if it exists, /etc/modules-load.d/tinypad.conf, then remove your user from the group with gpasswd if you no longer want the membership. • Optional Windows drivers: uninstall them from Device Manager or the installed apps list.
11. Logs
Tiny Pad Server writes its log output to standard error, which means the terminal, if you started it from one. It creates no log file, and it sends logs nowhere. At the normal level, log lines cover startup, configuration loading, connections and errors, and may include the server ID, device IDs and device names. If you run the server with the -v flag, it prints additional diagnostics that can include the identifier of the active application and the individual key codes sent from your device; text you type is logged as a character count only, never as content. Debug logging is off unless you turn it on, and its output goes only to your own terminal.
12. Third-Party Components and Services
Tiny Pad Server uses no third-party services. There is no analytics provider, no crash-reporting provider, no advertising network, and no payment processing in the server. Any purchase is handled by Apple within the iOS app and is covered by that app's policy. Tiny Pad Server does include third-party open-source libraries. They are listed with their licences under About › Open-Source Licenses inside the application. None of them transmit data on Tiny Pad's behalf.
13. Children's Privacy
Tiny Pad Server collects no data from anyone, of any age, and reports nothing to us. It is a desktop utility rather than a service aimed at children: it has no accounts, no messaging, no user-generated content and no advertising.
14. Your Rights
Because Tiny Pad Server sends us nothing, we hold no personal data about you as a result of your using it. There is no account to close, no profile to export, and no records of ours to erase. If you contact us, for example by emailing support, we process your email address and whatever you choose to write, solely in order to reply. Our lawful basis is our legitimate interest in supporting the people who use our software, and we keep that correspondence no longer than we need it. Under the UK GDPR and the Data Protection Act 2018 you have the right to access that correspondence, to have it corrected or erased, to restrict or object to our processing of it, and to receive it in a portable form. Write to support@tiny-bits.com and we will respond within one month. If you believe we have handled your data improperly you may complain to the Information Commissioner's Office at ico.org.uk, though we would appreciate the chance to put it right first.
15. Security
What protects your connection is the design described in section 8: only enrolled devices are accepted, every session uses a fresh key, and all traffic is encrypted and authenticated. Two limits are worth stating plainly. First, Tiny Pad secures its own connection but not your network. On a network you do not trust, be deliberate about what you leave running. Second, anyone with access to your unlocked computer can read the configuration folder and pair a new device, so the physical security of the machine remains yours to manage. Tiny Pad Server injects input into the computer it runs on. Install it only on machines you own or are authorised to control.
16. Changes to This Policy
If we change this policy, we will update this page and the date shown above. Tiny Pad Server's design makes significant privacy changes unlikely, because there is no data pipeline to extend. If we ever added anything that sent data off your machine, we would say so here in plain terms, and it would be something you switch on rather than something you discover.
17. Contact
Questions about this policy, or about how Tiny Pad Server handles data, are welcome at support@tiny-bits.com. Tiny Bits Ltd 61 Bridge Street, Kington, HR5 3DJ United Kingdom Company number: 16882060