MacOS – n actually secure VNC iOS app for use with OS X Screen Sharing

macosremote desktopscreen-sharingSecurity

All iOS VNC clients I have tried use regular VNC authentication. This is insecure because of the 8 character limit on the password, and so on. Some apps such as RealVNC's VNC Viewer, does have info panels that report whether the connection is encrypted, and it never says that it is, even when I turn both checkboxes in the System Preferences under Screen Sharing's Computer Settings... off.

So, I am definitely taking the accepted answer to this question with a grain of salt.

It seems that the only way to go about this is to switch OS X's native Screen Sharing option off entirely, and then use some other method to host VNC securely. This is not a free option, though.

Best Answer

The answer to that question is correct, but there are some nuances.

Screen Sharing server supports 4 authentication types:

  1. Mac OS X user login / password
  2. Apple ID
  3. Request for observe / control ("Anyone may request permission to control screen")
  4. VNC password ("VNC viewers may control screen with password")

Whenever the built-in Screen Sharing client (Cmd+K in Finder) connects to a Screen Sharing server, it uses only types 1, 2 and 3. Then server enables traffic encryption that may work in one of two modes: full encryption or keystroke/mouse move encryption. You could select encryption mode in earlier versions of Mac OS X, but in 10.8 (AFAIR) they removed this option, so Screen Sharing connection is always fully encrypted.

AFAIK there are only two third-party iOS clients that support Screen Sharing authentication types: Screens and Remotix. Both can use authentication types 1 and 3 with keystroke/mouse move encryption, but it seems that full encryption is provided only by Remotix.

Note that if a client uses VNC password (type 4) to connect to Screen Sharing server, then encryption is disabled at all.