handshake prototype