New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added use case 7: Secure offline communication for home automation #8
Conversation
@KillerX Thanks so much for your PR. I would like to ask you a question, so could you check the question inline? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One question inline, about a remote server.
@tomoyukilabs I'm most likely missing something but I just see 2 references to "a question inline" but I have not found a question here. Can you please help me find it so I can clarify? Thanks. |
@KillerX Can you check #8 (comment) ? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, but I've forgot to click the "Submit review" button.
Now I've completed to submit my review, so could you confirm my comment and question?
@@ -63,6 +63,12 @@ if she usually posts photos to the online service from her smartphone directly, | |||
|
|||
![uc06](figs/uc06.jpg) | |||
|
|||
## UC-07: Secure offline communication for home automation | |||
|
|||
A user sets up a home automation gateway is under normal circumstances using HTTPS to securely accept commands via a remote server. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would like to confirm where HTTPS would be applied:
- Is the remote server talking HTTPS on global internet?
- Does devices communicate with each other via HTTPS while the gateway is offline?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Yes, all communication to the remote server is via HTTPS.
- In this case the most of the devices talking to the gateway are using other protocols, like Z-Wave and ZigBee (in our particular use case). Thus the question does not really apply. BUT as far as general encryption is concerned, we are striving towards having all channels encrypted. The "ethernet" side of the gateway should communicate via HTTPS everywhere, but currently for APP<->Gateway directly this is not possible in a completely offline solution.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@KillerX Thanks a lot for your comment. As you explained, most of devices can speak non-HTTP protocols such as Z-Wave, ZigBee, etc., so a home automation gateway, which translates HTTP and non-HTTP protocols into each other, is necessary for apps using HTTP(S) to control such kind of devices.
My intention of the question above is to clarify which would talk HTTPS in the home network. If I understand your proposal correctly, the app (web and/or native) seems to need to talk to the gateway directly in the home network when the gateway cannot communicate with the remote server due to interruption at gateway's internet connection. Is it right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, that is correct. One additional option would also be custom hardware with WiFi (for example and arduino based remote control) that make use of the HTTPS API directly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay. I'm happy with adding the proposal. Thanks!
Hey,
This is my first attempt to contribute to something like this so please excuse beginner mistakes.
The use case deals with home automation systems where a a direct (https) communication between two local devices is wanted or even required due to bad or even non-existent internet connection.