Firefox OS/Remote Control: Difference between revisions

Jump to navigation Jump to search
(→‎Architecture Designs: Add link to remote control service)
Line 36: Line 36:
# Server response secure.html as requested page for key exchange.
# Server response secure.html as requested page for key exchange.
# Client acquires RSA public key from secure.sjs. [[Firefox_OS/Remote_Control#RSA_public_key_exchange|Detail]]
# Client acquires RSA public key from secure.sjs. [[Firefox_OS/Remote_Control#RSA_public_key_exchange|Detail]]
# Secure.sjs replies RSA public key SPKI in base64.
# Secure.sjs replies RSA-OEAP public key SPKI in base64. [https://github.com/MDTsai/gecko-dev/blob/Bug_1235013_new_httpserver/b2g/remotecontrol/secure.sjs#L80 source]
# Client imports RSA public key and wrap symmetric key.
# Client imports RSA public key and wrap symmetric key.
# Client sends wrapped symmetric key to secure.sjs in base64. [[Firefox_OS/Remote_Control#Send_symmetric_key|Detail]]
# Client sends wrapped symmetric key (AES-GCM) to secure.sjs in base64. [[Firefox_OS/Remote_Control#Send_symmetric_key|Detail]] [https://github.com/luke-chang/gaia/blob/1228262_tv_remote_control_secure/tv_apps/remote-control-client/js/secure.js#L210 source]
# Secure.sjs replies a ticket number.
# Secure.sjs replies a ticket number.
# Secure.sjs unwraps symmetric key with RSA private key.
# Secure.sjs unwraps symmetric key with RSA-OEAP private key. [https://github.com/MDTsai/gecko-dev/blob/Bug_1235013_new_httpserver/b2g/remotecontrol/secure.sjs#L30 source]
# Secure.sjs saves symmetric key.
# Secure.sjs saves symmetric key.
# Remote Control Service generates a new UUID, encrypted with symmetric key and binds encrypted UUID with ticket number.
# Remote Control Service generates a new UUID, encrypted with symmetric key and binds encrypted UUID with ticket number. [https://github.com/MDTsai/gecko-dev/blob/Bug_1235013_new_httpserver/b2g/remotecontrol/secure.sjs#L30 source]
# Client polls encrypted UUID from secure.sjs by ticket number. [[Firefox_OS/Remote_Control#Poll_UUID|Detail]]
# Client polls encrypted UUID from secure.sjs by ticket number. [[Firefox_OS/Remote_Control#Poll_UUID|Detail]]
# Client decrypts received UUID to double confirm server receives correct symmetric key.
# Client decrypts received UUID to double confirm server receives correct symmetric key.
133

edits

Navigation menu