Backend/Network

SRTCP

petitCoding 2011. 5. 13. 09:42

SRTCP (Secure Realtime Transport Control Protocol)

 

RTCP 가 RTP 패킷을 제어하듯이,

SRTCP 는 SRTP를 제어하는 역할을 한다. (SRTP 패킷 확인하기)

RTCP 패킷과 역할이 비슷한데, 거기에 보안 기능 (암호화, 메시지 인증 및 무결성 검사) 이 추가되어 있다고 보면 쉽다.

SRTCP 패킷에는 SRTP처럼 MKI 와 Authentication Tag 필드가 붙어있는데,

그밖에 E-tag 및 SRTCP Index 필드도 포함되어 있다.

SRTCP의 Payload 부분이 암호화 되어서 전송되는 것이 특징이다.

여기서 암호화 및 인증 기능은 Optional 이다. 꼭 사용해야 되는 것은 아니고

필요에 따라 사용할 수도, 사용하지 않을 수도 있다는 의미이다.

SRTCP에서는 기본적으로 AES 알고리즘을 사용하여 데이터를 암호화 한다.

물론 다른 암호화 알고리즘도 선택 가능하다.

 

SRTCP 헤더의 모습은 다음과 같다.




E flag : Payload가 암호화 되었는지, 안되었는지 여부를 알려 준다.

SRTCP Index :  최초 0으로 시작해서 1씩 증가한다.

MKI : SDP에 설정된 마스터키가 여러개일 경우 여기서 사용할 마스터 인덱스를 알려준다.

Authentication Tag : SRTCP 데이터의 변형을 막기 위한 인증 코드이다.

헤더 처음부터 SRTCP Index 까지의 내용이 해싱되어 이 태그에 저장된다. 

(SRTP 에서는 헤더부터 Payload까지 인증, Optional)



SRTP 패킷과는 달리 E-flag, SRTCP Index, 인증 태그 필드는 SRTCP 패킷에서
반드시 존재해야 한다.




반응형

'Backend > Network' 카테고리의 다른 글

실시간 전송 프로토콜, RTP.  (0) 2011.05.13
SRTP  (0) 2011.05.13
FEC  (0) 2011.05.13
SDP - SRTP 원리  (0) 2011.05.13
TLS Protocol (SSL)  (0) 2011.05.12