berryssh 0.5.0
An SSH client for BlackBerry OS 7.x, in plain MIDP 2.0 / CLDC 1.1.
No RIM APIs, so no code signature is needed — the jar contains no reference to
net.rim, which is checkable rather than merely claimed. It speaks
curve25519-sha256, ssh-ed25519 and chacha20-poly1305@openssh.com: the
algorithms a current OpenSSH offers by default, so a twenty-year-old handset
reaches a modern server without that server being weakened to meet it.
Install by opening berryssh.jad in the device's own browser, over plain
HTTP — the OS 7 trust store predates every currently issued CA, and its browser
cannot negotiate TLS 1.2.
In this release
- Saved connections, on screens drawn rather than left to MIDP's own forms
- Password and public key authentication; OpenSSH accepts a signature we make
- Host key confirmed on first contact, refused on mismatch, stored in RMS
- Colour, a cursor, scrollback, and a generated font atlas covering Turkish and
box drawing - Survives the rekey OpenSSH asks for after an hour, which used to kill the
session
Verified against two OpenSSH installations: 200 offline vectors and 32
tests against real servers, including a full shell session.
Known gap — the raw key codes for the BlackBerry's own Escape, Menu, Symbol
and Alt keys have not been read off the hardware, so those keys are unmapped.
Ctrl and Esc are on the menu meanwhile. See #11.