Skip to content
Steven Pham edited this page Dec 6, 2017 · 3 revisions

FAQ

Where can I find the matching client for this server?

A companion android app has been created, though if you would like to make your own, look at the implementation section of the FAQ.

Can I use another relay board?

Yes you can! You will just have to edit the open_door method to work with the relay board you have chosen.

How is the password verification implemented?

Password verification is implemented using a challenge-response system with bcrypt as the hashing algorithm. In essence, the server sends a 29 byte challenge and expects a bcrypt hash as the response. The client should respond with the hash of a valid key appended with the challenge data. If the server verifies that the client has a trusted key it calls the open_door function.

Why bcrypt?

Bcrypt was chosen for its ability to adjust its work factor (which you may change as you wish) which allows for users to trade as much processing time as they want for security or vice versa.

Clone this wiki locally