tencent cloud

Tencent Real-Time Communication

소식 및 공지 사항
제품 업데이트
Tencent Cloud 오디오/비디오 단말 SDK 재생 업그레이드 및 권한 부여 인증 추가
TRTC 월간 구독 패키지 출시 관련 안내
제품 소개
제품 개요
기본 개념
제품 기능
제품 장점
응용 시나리오
성능 데이터
구매 가이드
Billing Overview
무료 시간 안내
Monthly subscription
Pay-as-you-go
TRTC Overdue and Suspension Policy
과금 FAQ
Refund Instructions
신규 사용자 가이드
Demo 체험
Call
개요(TUICallKit)
Activate the Service
Run Demo
빠른 통합(TUICallKit)
오프라인 푸시
Conversational Chat
온클라우드 녹화(TUICallKit)
AI Noise Reduction
UI 사용자 정의
Calls integration to Chat
Additional Features
No UI Integration
Server APIs
Client APIs
Solution
ErrorCode
릴리스 노트
FAQs
라이브 스트리밍
Billing of Video Live Component
Overview
Activating the Service (TUILiveKit)
Demo 실행
No UI Integration
UI Customization
Live Broadcast Monitoring
Video Live Streaming
Voice Chat Room
Advanced Features
Client APIs
Server APIs
Error Codes
Release Notes
FAQs
RTC Engine
Activate Service
SDK 다운로드
API 코드 예시
Usage Guidelines
API 클라이언트 API
고급 기능
RTC RESTFUL API
History
Introduction
API Category
Room Management APIs
Stream mixing and relay APIs
On-cloud recording APIs
Data Monitoring APIs
Pull stream Relay Related interface
Web Record APIs
AI Service APIs
Cloud Slicing APIs
Cloud Moderation APIs
Making API Requests
Call Quality Monitoring APIs
Usage Statistics APIs
Data Types
Appendix
Error Codes
콘솔 가이드
애플리케이션 관리
사용량 통계
모니터링 대시보드
개발 보조
Solution
Real-Time Chorus
FAQs
과금 개요
기능 관련
UserSig 관련
방화벽 제한 처리
설치 패키지 용량 축소 관련 질문
Andriod 및 iOS 관련
Web 관련
Flutter 관련
Electron 관련
TRTCCalling Web 관련
멀티미디어 품질 관련
기타 질문
Protocols and Policies
컴플라이언스 인증
보안 백서
정보 보안에 관한 참고 사항
Service Level Agreement
Apple Privacy Policy: PrivacyInfo.xcprivacy
TRTC 정책
개인 정보 보호 정책
데이터 처리 및 보안 계약
용어집

UserSig 관련

PDF
포커스 모드
폰트 크기
마지막 업데이트 시간: 2024-07-24 17:31:05

UserSig는 무엇입니까?

UserSig란 Tencent Cloud가 설계한 일종의 보안 서명으로, 악성 해커가 귀하의 클라우드 서비스 사용권을 도용하는 것을 방지합니다. 현재 Tencent Cloud의 TRTC, IM, MLVB 등의 서비스는 모두 이 보안 메커니즘을 사용하고 있으며, 이러한 서비스를 사용하려면 해당 SDK의 초기화 또는 로그인 함수에 SDKAppID, UserID, UserSig의 주요 정보를 제공해야 합니다. 이 중, SDKAppID는 귀하의 애플리케이션 식별에 사용되고, UserID는 귀사의 사용자 식별에 사용됩니다. UserSig는 이 둘을 기반으로 보안 서명을 계산합니다. UserSig는 HMAC SHA256 암호화 알고리즘으로 계산됩니다. 해커가 UserSig를 위조하지 못하는 이상 귀하의 클라우드 서비스 트래픽을 도용할 수 없습니다. UserSig의 계산 원리는 다음 이미지와 같으며, 그 본질은 SDKAppID, UserID, ExpireTime 등 주요 정보에 대해 해시 암호화를 1회 진행하는 것입니다.
//UserSig 계산 공식, 여기서 secretkey는 usersig 계산용 암호화 키

usersig = hmacsha256(secretkey, (userid + sdkappid + currtime + expire +
base64(userid + sdkappid + currtime + expire)))
설명:
'currtime'은 현재 시스템 시간이고 'expire'는 서명 만료 시간입니다.
상기 그림은 UserSig를 계산하는 방법만을 보여줍니다. UserSig 연결 코드를 구현하는 방법에 대한 자세한 내용은 클라이언트 계산 UserSig서버 계산 UserSig를 참고하십시오.

디버깅 및 실행 단계에서 UserSig를 계산하는 방법은 무엇입니까?

현재 Demo를 빠르게 실행하고 TRTC SDK의 기능에 대해 배우고 싶다면 클라이언트 샘플 코드콘솔 메소드를 통해 UserSig를 계산하고 얻을 수 있습니다. 다음을 참고하십시오.
주의사항:
UserSig를 얻기 위한 위의 두 가지 계산 방식은 디버깅에만 적용할 수 있습니다. 제품 런칭에는 이 방법을 권장하지 않습니다. 클라이언트 코드(특히 Web)의 SECRETKEY는 디컴파일로 크래킹되기 쉽습니다. 키가 유출되면 해커는 Tencent Cloud 트래픽을 도용할 수 있습니다.
올바른 방법은 프로젝트 서버에 UserSig 계산 코드를 배포하여 App이 필요할 때마다 실시간 계산된 UserSig를 서버에서 요청할 수 있도록 하는 것입니다.

UserSig를 계산하기 위한 클라이언트 샘플 코드

1. SDKAPPID 및 키 가져오기:
1.1 TRTC 콘솔 로그인 > 애플리케이션 관리로 이동합니다.
1.2 애플리케이션 구성을 클릭하면 SDKAppID에 해당하는 애플리케이션 정보를 볼 수 있습니다.
1.3 기본 정보에서 SDKSecretKey를 확인하여 UserSig 발급을 위한 암호화 키를 가져옵니다.
1.4 Copy Secret Key를 클릭하여 키를 클립보드에 복사합니다.


2. UserSig 계산: 클라이언트 사용을 용이하게 하기 위해 각 플랫폼에서 UserSig를 계산하기 위한 소스 파일을 제공합니다. 계산을 직접 다운로드할 수 있습니다.
적용 플랫폼
파일 소스 코드
파일 상대 경로
iOS
TRTC-API-Example-OC/Debug/GenerateTestUserSig.h
Mac
OCDemo/TRTCDemo/TRTC/GenerateTestUserSig.h
Android
TRTC-API-Example/Debug/src/main/java/com/tencent/trtc/debug/GenerateTestUserSig.java
Windows(C++)
TRTC-API-Example-C++/TRTC-API-Example-Qt/src/Util/defs.h
Windows(C#)
TRTC-API-Example-CSharp/TRTC-API-Example-CSharp/GenerateTestUserSig.cs
Web
base-js/js/debug/GenerateTestUserSig.js
Flutter
TRTC-API-Example/lib/Debug/GenerateTestUserSig.dart
TRTC SDK의 예시 코드에 GenerateTestUserSig라는 오픈 소스 모듈을 제공하였습니다. 이 중 SDKAPPID, EXPIRETIME 및 SECRETKEY 등 3가지 멤버 변수를 자체 설정으로 변경하면 genTestUserSig() 함수를 호출하여 계산된 UserSig를 획득해 SDK 관련 기능을 빠르게 실행할 수 있습니다.



콘솔에서 UserSig 가져오기

1. TRTC 콘솔에 로그인하고 왼쪽 사이드바에서 애플리케이션 관리>UserSig 생성을 클릭합니다.
2. 드롭다운 목록을 클릭하여 생성한 애플리케이션(SDKAppID)을 선택하면 자동으로 해당 키(Key)가 생성됩니다.
3. 사용자 이름(UserID)을 입력합니다.
4. 서명(UserSig) 생성을 클릭하면 해당하는 UserSig 서명이 생성됩니다.

정식 실행 단계에서 UserSig는 어떻게 계산하나요?

비즈니스의 공식 운영 단계에서 TRTC는 UserSig에 대한 상위 수준의 서버측 계산 솔루션을 제공하여 UserSig 계산용 키가 유출되는 것을 최대한 막을 수 있습니다. 이는 서버를 뚫는 것이 App을 리버스하는 것보다 어렵기 때문입니다. 구체적인 구현 프로세스는 다음과 같습니다.
1. App에서 SDK의 초기화 함수를 호출하기 전에 먼저 서버에 UserSig를 요청합니다.
2. 서버에서 SDKAppID와 UserID에 따라 UserSig를 계산합니다. 계산 소스 코드는 파일 전반부를 참고하십시오.
3. 서버에서 계산된 UserSig를 App에 리턴합니다.
4. App에서 획득한 UserSig를 특정 API를 통해 SDK에 전송합니다.
5. SDK는 SDKAppID + UserID + UserSig를 Tencent Cloud 서버에 보내 인증을 진행합니다.
6. Tencent Cloud는 UserSig에 대한 인증을 진행하여 합법 여부를 판단합니다.
7. 인증 통과 후 TRTCSDK에 TRTC 서비스를 제공합니다.



과정을 간소화하기 위해 다국어 버전의 UserSig 계산 소스 코드(현재 버전 서명 알고리즘)를 제공합니다.
언어 버전
서명 알고리즘
핵심 함수
다운로드 링크
Java
HMAC-SHA256
GO
HMAC-SHA256
PHP
HMAC-SHA256
Node.js
HMAC-SHA256
Python
HMAC-SHA256
C#
HMAC-SHA256

이전 버전 서명 알고리즘 UserSig 계산 소스 코드

서명 계산 난이도를 낮추고 고객이 더욱 빠르게 Tencent Cloud 서비스를 이용할 수 있도록 하기 위해, TRTC는 2019-07-19부터 새로운 서명 알고리즘을 적용하여, ECDSA-SHA256을 HMAC-SHA256으로 업그레이드 하였습니다. 2019-07-19 이후 생성된 SDKAppID는 새로운 HMAC-SHA256 알고리즘이 적용됩니다.
SDKAppID가 2019-07-19 이전에 생성된 경우 기존 버전의 서명 알고리즘을 계속 사용할 수 있습니다. 알고리즘 소스 코드의 다운로드 링크는 다음과 같습니다.
언어 버전
서명 알고리즘
다운로드 링크
Java
ECDSA-SHA256
C++
ECDSA-SHA256
GO
ECDSA-SHA256
PHP
ECDSA-SHA256
Node.js
ECDSA-SHA256
C#
ECDSA-SHA256
Python
ECDSA-SHA256

도움말 및 지원

문제 해결에 도움이 되었나요?

피드백