tencent cloud

フィードバック

ビデオライブストリーミング再生のセキュリティ

最終更新日:2022-12-23 15:11:47

    用語の説明

    • クライアント:Tencent Cloud CSS製品を使用する使用者側で、通常はTencent Cloudアカウントの所有者です。
    • ユーザー:Tencent Cloudクライアント製品の端末使用者で、通常は視聴者です。

    ライブストリーミングの安全なユースケース

    ユースケース説明
    ライブストリーミングの盗用防止 ライブストリーミング再生リンクはURLです。ホットリンク防止対策がない再生URLは、取得さえすれば誰でも再生することができます。さらに再生URLは一定のルールがあることが多く、例えばプロトコル:\\再生ドメイン名\AppName\ストリームID方式をスプライシングしたものがあります。不正アクセス防止リンクがない場合、ルールを推測してルールに応じて組み合わせてすれば、誰でもトラバース再生し、すべてのストリームを視聴することができます。一つ目にはコンテンツを秘密にできず、二つ目には盗用によって発生したトラフィックは自身で支払う必要があります。
    視聴者のフィルタリング ライブストリーミングコンテンツは視聴者が自由に視聴することを許可するものではなく、次の条件を満たすユーザー層の視聴のみを承認するものです。例えば会員、ログインしたユーザー、購入が完了したユーザーなどです。
    コンテンツの著作権制限 ライブストリーミングコンテンツの著作権側は明確な制限があり、信頼性の高い安全な環境で再生する必要があります。例えばディズニー映画、中国のテレビ局のライブストリーミングなどです。
    コンテンツセキュリティ ライブストリーミングコンテンツは一定の機密性またはプライバシーがあり、特定の人だけが視聴できます。

    以上のライブストリーミングシーンにはいずれもライブストリーミングのセキュリティが必要ですが、ここでは簡単なものから複雑なものまでTencent Cloud CSSのセキュリティソリューションをそれぞれご紹介します。全体として、ライブストリーミングのセキュリティには2つの面で保証があります。一つは再生URLで、再生URLの使用および配信を制限します。もう一つはコンテンツで、ライブストリーミングのコンテンツを暗号化します。前者は実現が簡単で、プレーヤーのサポートは必要なく、どのプレーヤーでも可能です。後者はプレーヤーのサポートが必要で、さらにハードウェアおよびOSのサポートが必要です。

    ここでは一般的なライブストリーミング再生のセキュリティソリューションと特徴、および実施方法をご紹介します。

    Referer認証

    • 適用ケース:ライブストリーミングのコンテンツセキュリティをあまり気にせず、再生の敷居を少し高くしたいだけであれば、ホットリンク防止のためのRefererを使用することができます。
    • 実施方法CSSコンソール > ドメイン名管理 > 再生ドメイン名の選択 > アクセス制御 > Refererホットリンク防止をオンにしてReferer内容を入力します。
    • 優位性:簡単に実施でき、設定を制御すれば完了します。
    • 存在する問題:再生リクエスト中のRefererは修正、偽造できるため、Refererの制限内容が知られると、再生リクエスト中のRefererが修正され、サーバーのReferer制限が回避されてしまいます。

    IPブラックリスト/ホワイトリスト

    • 適用ケース:再生を許可するまたは許可しないユーザーのパブリックネットワークの再生IPが明確であれば、IPブラックリストによって制限できます
    • 実施方法:Referer認証と同様に、アクセス制御内でIPブラックリスト/ホワイトリストを書き込みます。
    • 優位性:簡単に実施でき、コンソールで設定し、制限ポリシーが厳格で、偽造できません。
    • 存在する問題:再生を許可するまたは許可しないユーザーのパブリックネットワーク IPを容易に知ることができず、さらに変更される可能性があります。

    再生のホットリンク防止

    • 適用ケース:ライブストリーミングに特別なセキュリティ要件がない場合、盗用防止のみが必要です。
    • 実施方法:Referer認証と同様に、CSSコンソールでKey認証を有効化し、キーを書き込みます。このようにして生成された再生URLはtxTimeとtxSecretを含み、バックエンドでKeyによってtxSecretを復号して再生URLの合法性を検証します。具体的な原理と方法はホットリンク防止の計算をご参照ください。
    • 優位性:簡単に実施でき、コンソールを開いて設定します。再生URLは前のドキュメントに従ってtxTimeとtxSecretを生成すれば完了です。
    • 存在する問題:有効期間内に、再生URLを取得した視聴者は再生することができます。再生URLは簡単に配布されるため、盗用される可能性があります。有効期間を長く設定すると、盗用の可能性が大きくなります。有効期間が短い場合は、URLを取得する時に期限切れになっている可能性があります。再生プロセスで誤って切断された場合、改めて再生する時は新しい再生URLを取得する必要があります 。ネットワークが不安定な再生ユーザーは再生URLを頻繁に取得しなければならない可能性があります 。一般的に再生URLの有効期間は24時間に設定することをお勧めします。

    再生ホットリンク防止とリモート認証の組み合わせ

    視聴者が不合理なチャネルから再生URLを取得し、盗用することを防止するため、再生ホットリンク防止をベースに、クライアントによるカスタムtoken検証方式を追加し、安全性が高いホットリンク防止メカニズムを提供します。

    • ユースケース:ライブストリーミング再生は、再生を許可するユーザー層を正確に制御する必要があります。例えば会員、ログインした視聴者などです。
    • 実施方法:Tencent Cloudで再生ホットリンク防止の検証に合格した後、クライアントの業務サーバーインターフェースを呼び出し、再生リクエストをユーザーの業務サーバーに転送します。業務サーバーはtoken情報を抽出して検証し、検証に合格したら検証結果をTencent Cloud CSSに返し、それによって再生を許可するかどうかを決定します。クライアント自身の検証を追加し、クライアント自身で再生を許可するかを制御することができます。具体的な方法は次のとおりです:
      1. クライアントサーバー(tokenサービス)に再生リンクを申請します。
      2. クライアントサーバーはリクエストの合法性に応じて再生URLを発行します。再生URLにはTencent Cloudのホットリンク防止txSecretとクライアント自身が配布したtokenが含まれます。Tencent Cloudホットリンク防止は、例えば5分のように短く設定することができます。
      3. Tencent Cloudホットリンク防止およびビジネスtokenを含む再生リンクを使用してTencent Cloud CSSをリクエストします
      4. Tencent Cloud CSSはTencent Cloudホットリンク防止を検証し、合格するとクライアントtokenを含む再生URLを、クライアントのtokenサービスに転送します.
      5. クライアントのtokenサービスの検証に成功すると、HTTP statusによって検証結果が返信されます。200はOKで、その他はNGです。
      6. Tencent Cloud CSSはtoken の検証結果に応じてライブストリーミングのコンテンツリソースをクライアントに返すかどうかを決定します。
    • 実施方法:再生ホットリンク防止を有効化してリモート認証を有効化します。具体的な実施プロセスについてはTencent Cloudの営業部門にご相談いただくか、チケットを提出してTencent Cloud CSSにお問い合わせください。
    • ソリューションの優位性:クライアントはどのようなユーザーに再生を許可するかを自身で柔軟に制御することができます。
    • 存在する問題:クライアント自身でtoken配布サービスを開発する必要があります。ライブストリーミングコンテンツは暗号化されておらず、視聴者は合法的な再生リンクによってライブストリーミングコンテンツを記録、またはリアルタイムにライブストリーミングコンテンツを転送することができます。ハッカーがネットワークによってライブストリーミングコンテンツを捕捉する可能性があります。

    HLS AES128によるストリーミングコンテンツの暗号化、再生ホットリンク防止を組み合わせたリモート認証

    再生ホットリンク防止にリモート認証を組み合わせることをベースに、AES128暗号化アルゴリズムを使用してHLSのTSビデオフレームを暗号化します。

    • ユースケース:HLSプロトコルを使用して再生し、ストリーミングメディアコンテンツが著作権、機密またはプライバシーに関わることで、ネットワーク上でハッカーから捕捉されないようにします。
    • 実施方法:HLS基準がサポートするAES128を使用してTSビデオストリームのビデオフレームを暗号化します。具体的なフローは次のとおりです:
      img
    • 実施方法:再生ホットリンク防止を有効化してリモート認証を有効化します。具体的な実施プロセスについてはTencent Cloudの営業部門にご相談いただくか、チケットを提出してTencent Cloud CSSにお問い合わせください。
    • ソリューションの優位性:暗号化方式はHLSの標準的方式で、HLSプロトコルをサポートしているプレーヤーは当然サポートしています。キーアクセスは成熟した製品によってサポートされ、再生の復号はプレーヤー内に内蔵されています。再生ホットリンク防止とリモート認証は組み合わせて使用することができ、安全性が高く、方式が成熟しており、統合が簡単です。
    • 存在する問題:HLS方式の再生シーンしかサポートしていない。

    業界のDRMスキーム

    主にAppleの Fairplay DRM、GoogleのWidevine DRM、中国のChinaDRMなどのような国外および国内の認証済みDRMをサポートしていることを指します。その基本原理はオーソリティサーバーにDRM証明書を申請し、証明書によってID情報の管理および暗号化/復号フローにおけるキーおよびキーの使用制限を管理します。

    • ユースケース:著作権者には明確な制限性があり、承認された標準的DRMスキームの使用が求められます。
    • 実施方法:現在Tencent CloudはAppleのFairplay DRM、GoogleのWidevine DRMの2種類のDRMスキームのみをサポートしています。その他のDRMスキームは開発中です。
    • 実施方法:具体的な実施プロセスについてはTencent Cloudの営業部門にご相談いただくか、チケットを提出してTencent Cloud CSSにお問い合わせください。
    • ソリューションの優位性:メディアの復号はOSまたはハードウェアによって完了し、セキュリティレベルが高いです。権限制御が柔軟で、例えば視聴者にビデオの最初の10分間だけ視聴を許可するなどの制御が可能です
    • 存在する問題:指定のプロトコル、HLSまたはDashのみをサポートしています。実施するのが複雑で、基準に応じて証明書を申請する必要があり、またプレーヤーの開発、DRMコンポーネントへの統合が必要です。主要なブラウザのサポートは不完全で、例えばFairplayはHLSプロトコルを使用する必要があり、かつiOSおよびmacOSプラットフォームの再生のみをサポートしています。WidevineはFirefoxなどの非Chromiumカーネルブラウザの再生をサポートしていますが、別途CDMモジュールをダウンロードする必要があり、全体的にスムーズではありません。ブラックボックス部分が多く(ライセンスのリクエストプロセスと暗号化/復号プロセス)、デバッグと互換性の面で手間がかかります。

    Tencent Cloudが自社開発したストリーミングコンテンツの暗号化方式

    大部分のプライバシーライブストリーミングまたはコンテンツセキュリティが必要なライブストリーミングはハードウェアレベルのセキュリティ、および複雑な証明書配布による検証プロセスが必要ありません。さらに国内のライブストリーミングでは、FLVライブストリーミング方式も流行しています。FLVに対する安全なライブストリーミングのソリューションが求められています。

    • ユースケース:FLVプロトコルを使用して再生する状況で、ストリーミングコンテンツを暗号化し、ネットワーク上でハッカーから捕捉されないようにします。
    • 実施方法:Tencent Cloud CSSが自社開発したストリーミングの暗号化方式です。クライアントはストリーミングに暗号化するキーを設定し、Tencent Cloud CSSはキーを読み取って指定のストリーミングを暗号化します。ユーザーが再生する時は、クライアントがまずユーザーを認証し、その後クライアント端末に復号キーを配布し、ビデオストリームを復号します。プロセスはHLS AES128と類似しています。
      自社開発の暗号化/復号のフローは次のとおりです:
    • 実施方法:具体的な実施プロセスについてはTencent Cloudの営業部門にご相談いただくか、チケットを提出してTencent Cloud CSSにお問い合わせください。
    • ソリューションの優位性:すべてのプロセスが制御可能で、キーと暗号化/復号は製品とツールによってサポートされています。Tencent CloudはPlayer+を提供し、統合しやすく、ソリューションが成熟しています。
    • 存在する問題:SDKを統合する必要があり、クライアントの自社開発のプレーヤーしかサポートしていません。Web端末およびブラウザは再生できません。

    ライブストリーミング再生のセキュリティ上の特徴および実施方法の長所と短所の比較

    セキュリティソリューション セキュリティソリューション 特徴 存在する問題 実施の複雑度 推奨度
    Referer認証 HTTPリクエストのRefererを認証します 簡単に実施でき、設定するとすぐに有効化されます Referer内容を偽造できます 非常に簡単
    IPブラックリスト/ホワイトリスト アクセスするIPを認証します 簡単に実施でき、設定するとすぐに有効化されます 視聴者のIPは簡単に取得できず、頻繁に変更される可能性があります 非常に簡単
    再生ホットリンク防止 再生URLを暗号化し、URLを認証します 簡単に実施でき、設定するとすぐに有効化されます ホットリンク防止の有効期間を制御するのは難しく、長すぎるとリンク不正アクセスされやすく、短すぎると頻繁に取得する必要があります。 非常に簡単
    再生ホットリンク防止+リモート認証 再生URLを暗号化し、URLを認証し、クライアント自身での認証プロセスを提供します 実施しやすく、不正取得が困難であり、token認証の開発についてクライアントが協力する必要があります - 簡単
    HLS暗号化 再生URLを暗号化すると同時に、ストリーミングコンテンツを暗号化します 実施しやすく、クライアントはtoken認証の開発を組み合わせる必要があります HLS プロトコルのみをサポート、 FLVは使用できません 簡単
    業界のDRMスキーム コンテンツを暗号化し、再生URLも暗号化でき、ソフトウェアおよびハードウェアレベルのセキュリティ保障をサポートします やや複雑で、プレーヤーの開発が必要であり、互換性の問題も若干多くなっています 実施が複雑で、互換性の問題が多く、iOSおよびAndroidは別々にサポートする必要があります 複雑
    自社開発の暗号化方式 コンテンツと再生URLの暗号化 やや複雑で、プレーヤーの開発が必要ですが、全フローが制御可能です プライベートソリューションは、Tencent Cloudの通信プロトコルに準拠する必要があります。ブラウザ未対応です 複雑
    お問い合わせ

    カスタマーサービスをご提供できるため、ぜひお気軽にお問い合わせくださいませ。

    テクニカルサポート

    さらにサポートが必要な場合は、サポートチケットを送信して弊社サポートチームにお問い合わせください。24時間365日のサポートをご提供します。

    電話サポート(24 時間365日対応)