I made a game using eclipse. I have a server program and a client program. The clients communicate with the server using sockets. If the client starts it sends its username
... can i know if the client program is an original one i made?
No you can't ... unless you control the execution platform on which the client program is installed and run.
But if you take the approach recommended by Pekka, it doesn't matter. Specifically, if the important state and the actions performed on that state are handled by the server side, then you can implement it in such a way that it doesn't matter if the user has hacked the client.
In practice though, the interactivity of a lot of games depends on fast interactions between the state and the UI. Putting the state on another system is going to cause problems with "lag" unless you can mitigate this.