look up stuff about VPN (virtual private networking) this should give you an encrypted connection (VPN Tunnel) to your machine and stop anyone being able to sniff data packets for unencoded password data that may be sent.
once the VPN is set up, then you should be able to access the machine as though you are on the same network as it is.
do a quick google for VPN, it should be pretty self explanitory, especially as you are using winXP(pro i hope)
then all you need is a VNC server running on the machine you want to connect to (Home), and the VNC client running on the machine to want use it with (Work). run the VNC viewer and type the IP address of the home machine and ta-daa! it works! or at least thats the theory
even works across dial up.