How to organize RMI Client-Server eBanking architecture
- by xenom
I am developing a secured eBanking service in RMI with a GUI both for Server and Client.
The Server must be able to log every operations (new User, deleted User, Withdrawal, Lodgement...)
The Client will do these operations.
As everything is secured, the Client must at first, create an account with a name and a password in the GUI. After that, the GUI adds the User in the Bank UserList(arrayList) as a new Customer and the User can do several operations.
It seems straightforward at first but I think my conception is not correct.
Is it correct to send the whole Bank by RMI ? Because at first I thought Bank would be the server but I cannot find another way to do that.
Currently, the Client GUI asks for a login and a password, and receives the Bank by RMI. A User is characterized by a name and a hash of the password.
private String name;
private byte[] passwordDigest;
In fact the GUI is doing every security checking and I don't know if it's relevant. When you type login//password, it will search the login in the Bank and compare the hash of the password.
In fact I have the impression that the Client knows too much information because when you have the Bank you have everything..
Does it seem correct or do I need to change my implementation ?