Joe-Palmer / rtmplite

Automatically exported from code.google.com/p/rtmplite
0 stars 0 forks source link

Avoid clear text password over RTMP in siprtmp #70

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
First reported by Luke Weber <luke.weber@gmail.com> on Jan 16 2012.

> It seems to me that the username/password would be passed in the clear
> with this implementation. Is there a preferred way that you would
> register with the sip gateway via rtmp that makes the username/
> password more secure on the client/rtmp side?
> ... snip
>
> Luke

--

Hi Luke,

If you are concerned about the clear text password over TCP, then we could 
implement digest authentication directly from the client. The required changes 
in siprtmp/p2p-sip can be summarized as follows:
- do not supply password in rtmp_register, but supply some flag so that it 
generates outbound REGISTER.
- if 401 (or 407) response received, then accept the client connection, and 
invoked a callback on client such as "authenticate(...)". The callback shall 
receive the full SIP header for authentication.
- The client generates the full SIP header for authorization, and calls a 
function say "authorize(...)".
- The gateway uses the header to send in the next REGISTER attempt.
- This mechanism can be extended to any other method such that auth for INVITE 
can be different from auth for REGISTER.

The advantage of this approach is that the clear-text password is not known to 
the gateway as well, so only the end-user need to know the clear text password. 
Makes it more end-to-end in my opinion, with the gateway just being a blind 
translator...

If this approach is too non-trivial to implement, then your suggestion is fine 
too. Use a shared secret between the client and the server to encrypt the 
password. The shared secret as well as the user's password will be known to 
both the end-user and the gateway, but not to intermediate network sniffers.

Regards!

Original issue reported on code.google.com by kundan10 on 6 Feb 2012 at 8:04