(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-02-01
(54)【発明の名称】暗号化されたビデオ会議を安全に記録および検索するためのシステムおよび方法
(51)【国際特許分類】
H04N 7/15 20060101AFI20240125BHJP
H04N 21/266 20110101ALI20240125BHJP
H04L 65/403 20220101ALI20240125BHJP
G09C 1/00 20060101ALI20240125BHJP
【FI】
H04N7/15
H04N21/266
H04L65/403
G09C1/00 630D
G09C1/00 630E
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023545733
(86)(22)【出願日】2022-01-13
(85)【翻訳文提出日】2023-09-26
(86)【国際出願番号】 US2022012241
(87)【国際公開番号】W WO2022164639
(87)【国際公開日】2022-08-04
(32)【優先日】2021-01-29
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】520173819
【氏名又は名称】ズーム ビデオ コミュニケーションズ インコーポレイテッド
【氏名又は名称原語表記】Zoom Video Communications, Inc.
【住所又は居所原語表記】55 Almaden Blvd., 6th Floor, San Jose, CA 95113 U.S.A.
(74)【代理人】
【識別番号】100137969
【氏名又は名称】岡部 憲昭
(74)【代理人】
【識別番号】100104824
【氏名又は名称】穐場 仁
(74)【代理人】
【識別番号】100121463
【氏名又は名称】矢口 哲也
(72)【発明者】
【氏名】クローン,マックス
【テーマコード(参考)】
5C164
【Fターム(参考)】
5C164FA10
5C164PA21
5C164SC02P
5C164VA21P
(57)【要約】
開示された1つの例示的な方法は、会議暗号鍵を取得することと、クライアントデバイスからビデオ会議プロバイダに、暗号化されたビデオ会議を開始する要求を送信することであって、暗号化されたビデオ会議は、複数の参加者を含む、送信することと、会議暗号鍵を複数の参加者の各参加者に配布することと、公開暗号鍵および秘密暗号鍵を含む鍵ペアの公開暗号鍵を取得することと、公開暗号鍵を使用して会議暗号鍵を暗号化することと、クライアントデバイスからビデオ会議プロバイダに、ビデオ会議を記録する要求を送信することと、会議暗号鍵を使用してクライアントデバイスのマイクロフォンおよび画像センサからのオーディオおよびビデオを暗号化することと、暗号化されたオーディオおよびビデオをビデオ会議プロバイダに送信することと、暗号化された会議暗号鍵をビデオ会議プロバイダに提供することと、を含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ビデオ会議プロバイダによって、暗号化されたビデオ会議を開始することと、
前記ビデオ会議プロバイダにより、前記ビデオ会議の複数の参加者からのオーディオおよびビデオの暗号化ストリームを受信して記憶することであって、暗号化されたオーディオおよびビデオが、会議暗号鍵を使用して前記複数の参加者のそれぞれによって暗号化され、前記ビデオ会議プロバイダが、前記会議暗号鍵にアクセスすることができない、受信して記憶することと、
オーディオおよびビデオの前記暗号化ストリームを前記参加者に提供することと、
暗号化された会議暗号鍵を受信して記憶することと、
前記暗号化されたオーディオおよびビデオを前記暗号化された会議暗号鍵と関連付けることと、
ビデオ会議が終了した後に、前記ビデオ会議プロバイダによって、記憶された前記暗号化されたオーディオおよびビデオの一部、ならびに前記暗号化された会議暗号鍵の要求を受信することと、
前記要求に応答して、前記記憶され暗号化されたオーディオおよびビデオの前記一部と、前記暗号化された会議暗号鍵とを提供することと、を含む方法。
【請求項2】
複数の暗号化された会議暗号鍵を受信することと、
前記複数の暗号化された会議暗号鍵を前記暗号化されたオーディオおよびビデオと関連付けることと、をさらに含み、
前記暗号化されたオーディオおよびビデオの異なる部分が、異なる会議暗号鍵を使用して暗号化されている、請求項1に記載の方法。
【請求項3】
会議暗号鍵間の遷移の指示の受信を受信することと、
前記会議暗号鍵と前記暗号化されたオーディオおよびビデオとの間の前記遷移の指示を関連付けることと、をさらに含む、請求項2に記載の方法。
【請求項4】
前記記憶され暗号化されたオーディオおよびビデオならびに前記暗号化された会議暗号鍵の前記要求に応答して、前記記憶され暗号化されたオーディオおよびビデオならびに前記複数の暗号化された会議暗号鍵を提供することを
さらに含む、請求項2に記載の方法。
【請求項5】
会議暗号鍵を取得することと、
クライアントデバイスからビデオ会議プロバイダに、暗号化されたビデオ会議を開始する要求を送信することであって、前記暗号化されたビデオ会議が、複数の参加者を含む、送信することと、
前記会議暗号鍵を前記複数の参加者の各参加者に配布することと、
公開暗号鍵および秘密暗号鍵を含む鍵ペアの公開暗号鍵を取得することと、
前記公開暗号鍵を使用して前記会議暗号鍵を暗号化することと、
前記クライアントデバイスから前記ビデオ会議プロバイダに、前記ビデオ会議を記録する要求を送信することと、
前記会議暗号鍵を使用して前記クライアントデバイスのマイクロフォンおよび画像センサからのオーディオおよびビデオを暗号化することと、
前記暗号化されたオーディオおよびビデオを前記ビデオ会議プロバイダに送信することと、
前記暗号化された会議暗号鍵を前記ビデオ会議プロバイダに提供することと、を含む、方法。
【請求項6】
前記ビデオ会議プロバイダから、前記暗号化されたオーディオおよびビデオならびに前記暗号化された会議暗号鍵を要求することに応答して、前記暗号化されたオーディオおよびビデオならびに前記暗号化された会議暗号鍵を受信することと、
前記秘密暗号鍵を使用して、前記暗号化された会議暗号鍵を復号することと、
前記復号された会議暗号鍵を使用して前記暗号化されたオーディオおよびビデオを復号することと、をさらに含む、請求項5に記載の方法。
【請求項7】
前記ビデオ会議中に、
第2の会議暗号鍵を取得することと、
前記会議暗号鍵を前記第2の会議暗号鍵に変更することであって、
前記第2の会議暗号鍵を各参加者に配布することと、
前記第2の会議暗号鍵を使用して前記クライアントデバイスのマイクロフォンおよび画像センサからのオーディオおよびビデオを暗号化することと、
前記公開暗号鍵を使用して前記第2の会議暗号鍵を暗号化することと、を含む、変更することと、
前記暗号化されたオーディオおよびビデオを前記ビデオ会議プロバイダに送信することと、
前記暗号化された第2の会議暗号鍵を前記ビデオ会議プロバイダに送信することと、をさらに含む、請求項5に記載の方法。
【請求項8】
前記会議暗号鍵から前記第2の会議暗号鍵への変更の指示を前記ビデオ会議プロバイダに提供することをさらに含む、請求項7に記載の方法。
【請求項9】
前記ビデオ会議プロバイダから、前記暗号化されたオーディオおよびビデオならびに前記暗号化された会議暗号鍵を要求することに応答して、前記暗号化されたオーディオおよびビデオならびに前記暗号化された会議暗号鍵を受信することと、
前記公開暗号鍵を使用して前記会議暗号鍵および前記第2の会議暗号鍵を復号することと、
前記会議暗号鍵を使用して前記暗号化されたオーディオおよびビデオの第1の部分を復号することと、
前記第2の会議暗号鍵を使用して前記暗号化されたオーディオおよびビデオの第2の部分を復号することと、をさらに含む、請求項7に記載の方法。
【請求項10】
前記公開暗号鍵を取得することが、鍵管理システム(「KMS」)に暗号鍵を要求することを含み、前記KMSが、暗号鍵ペアを生成し、前記暗号鍵ペアの第1の鍵を前記公開暗号鍵として提供し、前記暗号鍵ペアの第2の鍵を提供しない、請求項5に記載の方法。
【請求項11】
非一時的コンピュータ可読媒体と、
通信インターフェースと、
前記非一時的コンピュータ可読媒体および前記通信インターフェースに通信可能に結合されたプロセッサと、を備え、前記プロセッサが、前記非一時的コンピュータ可読媒体に記憶されたプロセッサ実行可能命令を実行して、
暗号化されたビデオ会議を開始することと、
前記ビデオ会議の複数の参加者からオーディオおよびビデオの暗号化ストリームを受信して記憶することであって、暗号化されたオーディオおよびビデオが、暗号化された会議暗号鍵を使用してそれぞれの参加者によって暗号化され、前記プロセッサが、前記会議暗号鍵にアクセスすることができない、受信して記憶することと、
前記オーディオおよびビデオの暗号化ストリームを前記参加者に提供することと、
暗号化された会議暗号鍵を受信して記憶することと、
前記暗号化されたオーディオおよびビデオを前記暗号化された会議暗号鍵と関連付けることと、
前記暗号化されたビデオ会議を終了することと、
前記記憶され暗号化されたオーディオおよびビデオの一部と前記暗号化された会議暗号鍵の要求を受信することと、
前記要求に応答して、前記記憶され暗号化されたオーディオおよびビデオの前記一部と、前記暗号化された会議暗号鍵とを提供することと、を行うように構成されている、システム。
【請求項12】
前記プロセッサが、前記非一時的コンピュータ可読媒体に記憶されたさらなるプロセッサ実行可能命令を実行して、
複数の暗号化された会議暗号鍵を受信することと、
前記複数の暗号化された会議暗号鍵を前記暗号化されたーディオおよびビデオと関連付けることと、を行うように構成され、
前記暗号化されたオーディオおよびビデオの部分が、異なる会議暗号鍵を使用して暗号化されている、請求項11に記載のシステム。
【請求項13】
前記プロセッサが、前記非一時的コンピュータ可読媒体に記憶されたさらなるプロセッサ実行可能命令を実行して、
会議暗号鍵間の遷移の指示を受信することと、
会議暗号鍵間の遷移の前記指示を前記暗号化されたオーディオとビデオとに関連付けることと、を行うように構成されている、請求項12に記載のシステム。
【請求項14】
前記プロセッサが、前記非一時的コンピュータ可読媒体に記憶されたさらなるプロセッサ実行可能命令を実行して、
前記記憶され暗号化されたオーディオおよびビデオならびに前記暗号化された会議暗号鍵の前記要求に応答して、前記記憶され暗号化されたオーディオおよびビデオならびに前記複数の暗号化された会議暗号鍵を提供するように構成されている、請求項12に記載のシステム。
【請求項15】
非一時的コンピュータ可読媒体と、
通信インターフェースと、
マイクロフォンと、
画像センサと、
前記非一時的コンピュータ可読媒体、前記通信インターフェース、前記マイクロフォン、および前記画像センサに通信可能に結合されたプロセッサと、を備え、前記プロセッサが、前記非一時的コンピュータ可読媒体に記憶されたプロセッサ実行可能命令を実行して、
前記マイクロフォンからのオーディオおよび前記画像センサからの映像を受信することと、
会議暗号鍵を取得することと、
複数の参加者を含む暗号化されたビデオ会議を開始する要求をビデオ会議プロバイダに送信することと、
前記会議暗号鍵を前記複数の参加者の各参加者に配布することと、
公開暗号鍵および秘密暗号鍵を含む鍵ペアの公開暗号鍵を取得することと、
前記公開暗号鍵を使用して前記会議暗号鍵を暗号化することと、
前記ビデオ会議を記録する要求を前記ビデオ会議プロバイダに送信することと、
前記会議暗号鍵を使用して前記オーディオおよびビデオを暗号化することと、
前記暗号化されたオーディオおよびビデオを前記ビデオ会議プロバイダに送信することと、
前記暗号化された会議暗号鍵を前記ビデオ会議プロバイダに送信することと、を行うように構成されている、システム。
【請求項16】
前記プロセッサが、前記非一時的コンピュータ可読媒体に記憶されたさらなるプロセッサ実行可能命令を実行して、
前記ビデオ会議プロバイダから、前記暗号化されたオーディオおよびビデオと、前記暗号化された会議暗号鍵とを要求することと、
前記暗号化されたオーディオおよびビデオと前記暗号化された会議暗号鍵とを受信することと、
前記秘密暗号鍵を使用して、前記暗号化された会議暗号鍵を復号することと、
前記復号された会議暗号鍵を使用して前記暗号化されたオーディオおよびビデオを復号することと、を行うように構成されている、請求項15に記載のシステム。
【請求項17】
前記プロセッサが、前記ビデオ会議中に、前記非一時的コンピュータ可読媒体に記憶されたさらなるプロセッサ実行可能命令を実行して、
第2の会議暗号鍵を取得することと、
前記第2の会議暗号鍵を各参加者に配布することと、
前記第2の会議暗号鍵を使用して前記オーディオおよび前記ビデオを暗号化し、
前記公開暗号鍵を使用して前記第2の会議暗号鍵を暗号化することと、
前記暗号化されたオーディオおよびビデオを前記ビデオ会議プロバイダに送信することと、
前記暗号化された第2の会議暗号鍵を前記ビデオ会議プロバイダに送信することと、を行うように構成されている、請求項15に記載のシステム。
【請求項18】
前記プロセッサが、前記非一時的コンピュータ可読媒体に記憶されたさらなるプロセッサ実行可能命令を実行して、前記会議暗号鍵から前記第2の会議暗号鍵への変更の指示を前記ビデオ会議プロバイダに提供するように構成されている、請求項17に記載のシステム。
【請求項19】
前記プロセッサが、前記非一時的コンピュータ可読媒体に記憶されたさらなるプロセッサ実行可能命令を実行して、
前記ビデオ会議プロバイダから、前記暗号化されたオーディオおよびビデオと、前記暗号化された会議暗号鍵とを要求することと、
前記暗号化されたオーディオおよびビデオと前記暗号化された会議暗号鍵とを受信することと、
前記公開暗号鍵を使用して前記会議暗号鍵および前記第2の会議暗号鍵を復号することと、
前記会議暗号鍵を使用して前記暗号化されたオーディオおよびビデオの第1の部分を復号することと、
前記第2の会議暗号鍵を使用して前記暗号化されたオーディオおよびビデオの第2の部分を復号することと、を行うように構成されている、請求項17に記載のシステム。
【請求項20】
前記プロセッサが、前記非一時的コンピュータ可読媒体に記憶されたさらなるプロセッサ実行可能命令を実行して、
前記公開暗号鍵を取得するために鍵管理システム(「KMS」)に暗号鍵を要求し、前記KMSが、暗号鍵ペアを生成し、前記暗号鍵ペアの第1の鍵を前記公開暗号鍵として提供し、前記暗号鍵ペアの第2の鍵を提供しないように構成されている、請求項15に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
[0001]関連出願の相互参照
本出願は、2021年1月29日に出願された「暗号化されたビデオ会議を安全に記録および検索するためのシステムおよび方法」と題する米国特許出願第17/162,382号の優先権を主張し、その全体が参照により本明細書に組み込まれる。
【0002】
[0002]本出願は、一般に、ビデオ会議をホストし、またはビデオ会議に参加することに関し、より詳細には、暗号化されたビデオ会議を記録するためのシステムおよび方法に関する。
【背景技術】
【0003】
[0003]ビデオ会議は、人々がグループとして集合するための一般的な方法になっているが、同じ物理的位置にいることはない。参加者は、ビデオ会議に招待され、パーソナルコンピュータまたは電話から参加することができ、直接のグループ会議またはイベントの間に行うように、互いに見て聞き、大きく会話することができる。ユーザフレンドリーなビデオ会議ソフトウェアの出現により、全国または世界に分散しているにもかかわらず、チームが協力して作業することが可能になった。それはまた、家族および友人が、互いに物理的に離れているにもかかわらず、より意味のある方法で互いに関わり合うことを可能にした。
【発明の概要】
【0004】
[0004]暗号化されたビデオ会議を安全に記録および検索するためのシステムおよび方法について、様々な例を説明する。1つの例示的な方法は、会議暗号鍵を取得することと、クライアントデバイスからビデオ会議プロバイダに、暗号化されたビデオ会議を開始する要求を送信することであって、暗号化されたビデオ会議は、複数の参加者を含む、送信することと、会議暗号鍵を複数の参加者の各参加者に配布することと、公開暗号鍵および秘密暗号鍵を含む鍵ペアの公開暗号鍵を取得することと、公開暗号鍵を使用して会議暗号鍵を暗号化することと、クライアントデバイスからビデオ会議プロバイダに、ビデオ会議を記録する要求を送信することと、会議暗号鍵を使用してクライアントデバイスのマイクロフォンおよび画像センサからのオーディオおよびビデオを暗号化することと、暗号化されたオーディオおよびビデオをビデオ会議プロバイダに送信することと、暗号化された会議暗号鍵をビデオ会議プロバイダに提供することと、を含む。
【0005】
[0005]別の例示的な方法は、ビデオ会議プロバイダによって、暗号化されたビデオ会議を開始することと、ビデオ会議プロバイダにより、ビデオ会議の複数の参加者からのオーディオおよびビデオの暗号化ストリームを受信して記憶することであって、暗号化されたオーディオおよびビデオは、会議暗号鍵を使用してそれぞれの参加者によって暗号化され、ビデオ会議プロバイダは、会議暗号鍵にアクセスすることができない、記憶することと、オーディオおよびビデオの多重化された暗号化ストリームを参加者に提供することと、暗号化された会議暗号鍵を受信して記憶することと、暗号化されたオーディオおよびビデオを暗号化された会議暗号鍵と関連付けることと、ビデオ会議が終了した後にビデオ会議プロバイダによって、記憶され暗号化されたオーディオおよびビデオと暗号化された会議暗号鍵との要求を受信することと、要求に応答して、記憶され暗号化されたオーディオおよびビデオと、暗号化された会議暗号鍵とを提供することと、を含む。
【0006】
[0006]1つの例示的なシステムは、非一時的コンピュータ可読媒体と、通信インターフェースと、マイクロフォンと、画像センサと、非一時的コンピュータ可読媒体、通信インターフェース、マイクロフォン、および画像センサに通信可能に結合されたプロセッサと、を含み、プロセッサは、マイクロフォンからのオーディオおよび画像センサからの映像を受信するために非一時的コンピュータ可読媒体に記憶されたプロセッサ実行可能命令を実行することと、会議暗号鍵を取得することと、複数の参加者を含む暗号化されたビデオ会議を開始する要求をビデオ会議プロバイダに送信することと、会議暗号鍵を複数の参加者の各参加者に配布することと、公開暗号鍵および秘密暗号鍵を含む鍵ペアの公開暗号鍵を取得することと、公開暗号鍵を使用して会議暗号鍵を暗号化することと、ビデオ会議を記録する要求をビデオ会議プロバイダに送信することと、会議暗号鍵を使用してクライアントデバイスのマイクロフォンおよび画像センサからのオーディオおよびビデオを暗号化することと、暗号化されたオーディオおよびビデオをビデオ会議プロバイダに送信することと、暗号化された会議暗号鍵をビデオ会議プロバイダに送信することと、を行うように構成されている。
【0007】
[0007]別の例示的なシステムは、非一時的コンピュータ可読媒体と、通信インターフェースと、非一時的コンピュータ可読媒体および通信インターフェースに通信可能に結合されたプロセッサと、を含み、プロセッサは、非一時的コンピュータ可読媒体に記憶されたプロセッサ実行可能命令を実行して、暗号化されたビデオ会議を開始することと、ビデオ会議の複数の参加者からオーディオおよびビデオの暗号化ストリームを受信して記憶することであって、暗号化されたオーディオおよびビデオは、暗号化された会議暗号鍵を使用してそれぞれの参加者によって暗号化され、プロセッサは、会議暗号鍵にアクセスすることができない、受信して記憶することと、オーディオおよびビデオの暗号化ストリームを多重化し、オーディオおよびビデオの多重化された暗号化ストリームを参加者に提供することと、暗号化された会議暗号鍵を受信して記憶することと、暗号化されたオーディオおよびビデオを暗号化された会議暗号鍵と関連付けることと、暗号化されたビデオ会議を終了することと、記憶され暗号化されたオーディオおよびビデオと暗号化された会議暗号鍵との要求を受信することと、要求に応答して、記憶され暗号化されたオーディオおよびビデオならびに暗号化された会議暗号鍵を提供することと、を行うように構成されている。
【0008】
[0008]1つの例示的な非一時的コンピュータ可読媒体は、プロセッサ実行可能命令を含み、プロセッサ実行可能命令は、プロセッサに、マイクロフォンからのオーディオおよび画像センサからのビデオを受信することと、会議暗号鍵を取得することと、複数の参加者を含む暗号化されたビデオ会議を開始する要求をビデオ会議プロバイダに送信することと、会議暗号鍵を複数の参加者の各参加者に配布することと、公開暗号鍵および秘密暗号鍵を含む鍵ペアの公開暗号鍵を取得することと、公開暗号鍵を使用して会議暗号鍵を暗号化することと、ビデオ会議を記録する要求をビデオ会議プロバイダに送信することと、会議暗号鍵を使用してクライアントデバイスのマイクロフォンおよび画像センサからのオーディオおよびビデオを暗号化することと、暗号化されたオーディオおよびビデオをビデオ会議プロバイダに送信することと、暗号化された会議暗号鍵をビデオ会議プロバイダに送信することと、を行わせるように構成されている。
【0009】
[0009]別の例示的な非一時的コンピュータ可読媒体は、プロセッサ実行可能命令を含み、プロセッサ実行可能命令は、プロセッサに、暗号化されたビデオ会議を開始することと、ビデオ会議の複数の参加者からオーディオおよびビデオの暗号化ストリームを受信して記憶することであって、暗号化されたオーディオおよびビデオは、暗号化された会議暗号鍵を使用してそれぞれの参加者によって暗号化され、プロセッサは、会議暗号鍵にアクセスすることができない、受信して記憶することと、オーディオおよびビデオの暗号化ストリームを多重化し、オーディオおよびビデオの多重化された暗号化ストリームを参加者に提供することと、暗号化された会議暗号鍵を受信して記憶することと、暗号化されたオーディオおよびビデオを暗号化された会議暗号鍵と関連付けることと、暗号化されたビデオ会議を終了することと、記憶され暗号化されたオーディオおよびビデオと暗号化された会議暗号鍵との要求を受信することと、要求に応答して、記憶され暗号化されたオーディオおよびビデオならびに暗号化された会議暗号鍵を提供することと、を行わせるように構成されている。
【0010】
[0010]これらの例示的な例は、本開示の範囲を限定または定義するためではなく、むしろその理解を助けるための例を提供するために言及されている。例示的な例は、さらなる説明を提供する「発明を実施するための形態」で説明される。様々な例によって提供される利点は、本明細書を調べることによってさらに理解され得る。
【0011】
[0011]本明細書に組み込まれ、本明細書の一部を構成する添付の図面は、1つまたは複数の特定の例を示し、例の説明と共に、特定の例の原理および実装を説明するのに役立つ。
【図面の簡単な説明】
【0012】
【
図1】暗号化されたビデオ会議を安全に記録および検索するための例示的なシステムを示す。
【
図2】暗号化されたビデオ会議を安全に記録および検索するための例示的なシステムを示す。
【
図3】暗号化されたビデオ会議を安全に記録および検索するための例示的なシステムを示す。
【
図4】暗号化されたビデオ会議を安全に記録および検索するための例示的なシステムを示す。
【
図5】暗号化されたビデオ会議を安全に記録および検索するための例示的な方法を示す。
【
図6】暗号化されたビデオ会議を安全に記録および検索するための例示的な方法を示す。
【
図7】暗号化されたビデオ会議を安全に記録および検索するための例示的な方法を示す。
【
図8】暗号化されたビデオ会議を安全に記録および検索するための例示的なシステムを示す。
【
図9】暗号化されたビデオ会議を安全に記録および検索するための例示的な方法を示す。
【
図10】暗号化されたビデオ会議を安全に記録および検索するための例示的な方法を示す。
【
図11】本開示による暗号化されたビデオ会議を安全に記録および検索するための任意のシステムまたは方法での使用に適した例示的なコンピューティングデバイスを示す。
【発明を実施するための形態】
【0013】
[0017]本明細書では、暗号化されたビデオ会議を安全に記録および検索するためのシステムおよび方法の文脈で例を説明する。当業者は、以下の説明が例示にすぎず、決して限定することを意図するものではないことを理解するであろう。ここで、添付の図面に示されている例の実施態様を詳細に参照する。同じまたは同様の項目を参照するために、図面および以下の説明を通して同じ参照符号が使用される。
【0014】
[0018]明確にするために、本明細書に記載の例の日常的な特徴のすべてが示され説明されているわけではない。当然のことながら、そのような実際の実装の開発では、アプリケーションおよびビジネス関連の制約の遵守などの開発者の特定の目標を達成するために、実装に固有の多数の決定を行わなければならず、これらの特定の目標は実装ごとに、開発者ごとに異なることが理解されよう。
【0015】
[0019]人々は、家族との連絡を取り続ける、ビジネスを行う、グループまたは組織を管理するなど、多種多様な理由でビデオ会議に参加する。場合によっては、ビデオ会議の参加者は、ビデオ会議のコンテンツを機密に保ち、特定の許可された人員のみが利用できるようにしたい場合がある。これは、ビデオ会議への参加者間でストリーミングされるオーディオおよびビデオを暗号化することによって行うことができ、潜在的な盗聴者がストリーミングされたオーディオおよびビデオにアクセスするのを防止することができる。必要な復号情報がなければ、暗号化されたオーディオおよびビデオにアクセスすることは、非常に計算上困難であり得る。しかしながら、いくつかのシナリオでは、オーディオおよびビデオデータは、暗号化されたビデオ会議の過程で復号されてもよい。
【0016】
[0020]例えば、いくつかのビデオ会議プロバイダは、ビデオ会議を記録するオプションを提供する。いくつかの例では、ビデオ会議プロバイダ自体は、オーディオおよびビデオが移動するネクサスであり、会議を記録し、記録された会議へのアクセスを1人または複数の参加者に提供する。しかしながら、この機能を実行するために、ビデオ会議プロバイダは、記録されたオーディオおよびビデオがその後暗号化されても、記録用のオーディオおよびビデオを復号する必要がある。したがって、ビデオ会議プロバイダダは、ビデオ会議の暗号化されたオーディオおよびビデオにアクセスすることができる。そのようなシナリオは、いくつかの理由で望ましくない場合がある。例えば、ビデオ会議プロバイダのサーバは、参加者によって「信頼できない」可能性があり、これは、サーバの出自およびアイデンティティが参加者によって検証可能でない可能性があるか、そうでなければ疑わしい可能性があることを意味する。場合によっては、オーディオまたはビデオは、例えば法律または規制によってビデオ会議プロバイダと共有されない場合がある機密情報を含む場合がある。さらに、参加者自身は、単にビデオ会議のコンテンツへのアクセスをビデオ会議プロバイダダに望まない場合がある。
【0017】
[0021]ビデオ会議のセキュリティを提供するために、参加者は、ビデオ会議プロバイダダと暗号情報を共有することなく、参加者間でオーディオおよびビデオデータを暗号化し、参加者間で暗号情報を配布するオプションを使用することができる。したがって、すべての参加者は、暗号化されたオーディオおよびビデオを受信し、それを復号することができるが、ビデオ会議プロバイダは、暗号化されたビデオおよびオーディオを受信し、参加者に配信し続けるが、それを復号することはできない。しかしながら、これは、ビデオ会議プロバイダが暗号化されたデータを記憶することができるが、オーディオおよびビデオを暗号化および復号するために使用される鍵を持たないため、会議を記録したい参加者にとって問題となる。さらに、ビデオ会議中に使用された鍵は、(新しい暗号鍵へのローテーションにより)ビデオ会議中に、またはビデオ会議が終了したときに破棄される。
【0018】
[0022]ビデオ会議プロバイダが暗号化されたビデオ会議を記録できるようにし、1人または複数の参加者が記録されたビデオ会議を後で検索してそれにアクセスできるようにするために、ホストは、ビデオ会議が暗号化されたビデオ会議を開始することを要求し、ホストは、例えば対称暗号鍵などの会議暗号鍵を生成する。さらに、ホストは、例えば、非対称暗号鍵ペアを生成することによって、会議暗号鍵を暗号化するために使用する暗号鍵ペアの公開鍵を取得する。
【0019】
[0023]ビデオ会議中、参加者は、会議暗号鍵を使用してオーディオおよびビデオを暗号化し、オーディオおよびビデオは、ビデオ会議プロバイダによって受信および記憶されるとともに、ビデオ会議に参加できるように様々な参加者に配布される。さらに、ホストは、暗号化された会議暗号鍵をビデオ会議プロバイダに提供し、ビデオ会議プロバイダは、暗号化されたオーディオおよびビデオにそれを関連付ける。
【0020】
[0024]ビデオ会議中、ホストは複数の会議暗号鍵を介してローテーションしてもよく、それにより、ビデオ会議が経時的に異なる鍵を使用して暗号化される。鍵のローテーションごとに、新しい会議暗号鍵が(以前に取得された公開鍵を使用して)暗号化され、ビデオ会議プロバイダにアップロードされ、ビデオ会議プロバイダはこれを記録された暗号化されたビデオ会議に関連付ける。
【0021】
[0025]会議が終了すると、ホスト(または他の会議参加者)は、その後、暗号化されたオーディオおよびビデオ、ならびにビデオ会議プロバイダに提供された暗号化された会議暗号鍵を検索することができる。ホストは、会議暗号鍵を暗号化するために使用された公開鍵に対応する秘密鍵(または、複数の会議暗号鍵が使用された場合は複数の鍵)を使用する。次いで、復号された会議暗号鍵を使用してオーディオおよびビデオを復号することができる。
【0022】
[0026]このような技術を使用することにより、暗号化されたオーディオおよびビデオは、ビデオ会議プロバイダで保存されている間、安全である。復号鍵もビデオ会議プロバイダと共に記憶されるが、暗号化されているため、アクセスできない。さらに、この例ではホストが暗号鍵ペアを生成するものとして説明されているが、代わりに、公開鍵は、ビデオ会議プロバイダの顧客によってホストされるものなどの鍵管理サーバによって提供されてもよい。したがって、ホストは、ビデオ会議がビデオ会議プロバイダに提供される前に、ビデオ会議を復号するために必要な秘密鍵にアクセスすることができない。代わりに、ホストは、後で秘密鍵の復号を要求する必要がある場合があり、これは鍵管理サービスに対する認証を必要とする場合があり、それによってビデオ会議からのオーディオおよびビデオのセキュリティをさらに保証する。
【0023】
[0027]そのような技術を使用して、ビデオ会議のホストおよび参加者は、それらの通信のためのプライバシーを享受し、ビデオ会議記録へのアクセスが同様に制限されることを保証することができる。上述したように、これは、様々なプライバシー規制に従うのを助けることができ、または暗号化された記録にアクセスするための他の試みがホスト(またはホストの雇用者などの対応するエンティティ)によって仲介されなければならないことを保証することができる。
【0024】
[0028]この例示的な例は、本明細書で論じられる一般的な主題を読み手に紹介するために与えられており、本開示はこの例に限定されない。以下のセクションでは、暗号化されたビデオ会議を安全に記録および検索するためのシステムおよび方法の様々な追加の非限定的な例および例を説明する。
【0025】
[0029]ここで
図1を参照すると、
図1は、様々なクライアントデバイスにビデオ会議機能を提供する例示的なシステム100を示している。システム100は、複数の通信ネットワーク120、130に接続されたビデオ会議プロバイダ110を含み、それを介して様々なクライアントデバイス140~180は、ビデオ会議プロバイダ110によってホストされるビデオ会議に参加することができる。例えば、ビデオ会議プロバイダ110は、プライベートネットワーク内のデバイスにビデオ会議サービスを提供するためにプライベートネットワーク内に配置することができ、または、パブリックネットワーク、例えばインターネットに接続することができるため、誰でもアクセスすることができる。いくつかの例は、ビデオ会議プロバイダ110が構成要素を供給して、民間の組織がプライベートな内部ビデオ会議をホストすることを可能にし、またはそのシステムをパブリックネットワークを介してビデオ会議プロバイダ110に接続することを可能にするハイブリッドモデルを提供することさえできる。
【0026】
[0030]システムはまた、任意選択的に、クライアントデバイス140~160のユーザにユーザアイデンティティサービスを提供することができ、ビデオ会議プロバイダ110に対して1人または複数のユーザのユーザアイデンティティを認証することができる、1人または複数のユーザアイデンティティプロバイダ、例えばユーザアイデンティティプロバイダ115を含む。この例では、ユーザアイデンティティプロバイダ115は、ビデオ会議プロバイダ110とは異なるエンティティによって運営されているが、いくつかの例では、それらは同じエンティティであってもよい。
【0027】
[0031]ビデオ会議プロバイダ110は、クライアントがビデオ会議(または「会議」)を作成し、他者をそれらの会議に参加するように招待すること、ならびに会議の記録、会議オーディオからのトランスクリプトの生成、会議におけるユーザ機能の管理、会議中のテキストメッセージングの有効化、メイン会議からのブレイクアウトルームの作成および管理などの他の関連機能を実行することを可能にする。以下に説明する
図2は、ビデオ会議プロバイダ110のアーキテクチャおよび機能のより詳細な説明を提供する。
【0028】
[0032]この例示的なビデオ会議プロバイダ110の会議は、参加者が接続される仮想「ルーム」に提供される。この文脈におけるルームは、様々なビデオおよびオーディオデータが多重化されて様々な参加者に提供される前に受信される共通点を提供するサーバによって提供される構造体である。本開示では「ルーム」がこの概念のラベルであるが、複数の参加者が共通のビデオ会議に参加することを可能にする任意の適切な機能を使用することができる。さらに、いくつかの例では、上記で示唆したように、会議は「ブレイクアウト」ルームを有することもできる。そのようなブレイクアウトルームはまた、「メイン」ビデオ会議室に関連付けられたルームであってもよい。したがって、メインビデオ会議室の参加者は、メインルームに戻る前に、例えば特定のトピックについて論じるために、ルームを出てブレイクアウトルームに入ることができる。この例のブレイクアウトルームは、メインルームの会議に関連付けられた個別の会議である。しかしながら、ブレイクアウトルームに参加するには、参加者は最初にメインルームに入らなければならない。ルームは、様々な例に従って任意の数の関連付けられるブレイクアウトルームを有してもよい。
【0029】
[0033]ビデオ会議プロバイダ110との会議を作成するために、ユーザは、クライアントデバイス140~180を使用してビデオ会議プロバイダ110に連絡し、新しい会議を作成するオプションを選択することができる。そのようなオプションは、クライアントデバイス140~160によってアクセスされるウェブページ、またはクライアントデバイス140~160によって実行されるクライアントアプリケーションにおいて提供されてもよい。電話機器の場合、ユーザは、電話機器の数字ボタンを押すことによってナビゲートすることができるオーディオメニューを提示されることができる。会議を作成するために、ビデオ会議プロバイダ110は、会議の日付、時刻、および期間、参加者の数、使用する暗号化の種類、会議が機密であるか非公開であるかなどの特定の情報をユーザに促すことができる。様々な会議設定を受信した後、ビデオ会議プロバイダは、会議の記録を作成し、会議識別子、および、いくつかの例では、対応する会議パスワードまたはパスコード(または他の認証情報)を生成することができ、すべての会議情報が会議ホストに提供される。
【0030】
[0034]会議情報を受信した後、ユーザは、1人または複数のユーザを会議に招待するために会議情報を配布することができる。スケジュールされた時間(または、会議が即時開始に設定された場合は直ちに)に会議を開始するために、ホストは会議識別子と、該当する場合は対応する認証情報(例えば、パスワードまたはパスコード)とを提供する。次いで、ビデオ会議システムは、会議を開始し、ユーザを会議に受け入れ得る。会議のために設定されたオプションに応じて、ホストがまだ到着していなくても、適切な会議識別子(必要に応じて、認証情報)を提供すると直ちにユーザを受け入れることができ、または会議がまだ開始されていないことを示す情報をユーザに提示することができ、またはホストがユーザのうちの1人または複数を特に受け入れることを要求することができる。
【0031】
[0035]会議中、参加者は、クライアントデバイス140~180を使用して、オーディオまたはビデオ情報をキャプチャし、その情報をビデオ会議プロバイダ110にストリーミングすることができる。それらはまた、様々なユーザが会議に参加することを可能にするためにそれぞれのクライアントデバイス140によって表示されるビデオ会議プロバイダ210からのオーディオまたはビデオ情報を受信する。
【0032】
[0036]会議の終了時に、ホストは会議を終了するオプションを選択してもよいし、スケジュールされた終了時間または所定の期間後に自動的に終了してもよい。会議が終了すると、様々な参加者は会議から切断され、会議のオーディオまたはビデオストリームを受信しなくなる(オーディオまたはビデオストリームの送信を停止する)。ビデオ会議プロバイダ110はまた、会議識別子またはパスワード/パスコードなどの会議情報を無効にすることもできる。
【0033】
[0037]そのような機能を提供するために、1つまたは複数のクライアントデバイス140~180は、ネットワーク120または公衆交換電話網(「PSTN」)130などの1つまたは複数の通信ネットワークを使用してビデオ会議プロバイダ110と通信することができる。クライアントデバイス140~180は、オーディオまたはビデオ機能を有する任意の適切なコンピューティングまたは通信デバイスであってもよい。例えば、クライアントデバイス140~160は、インターネットまたは他の適切なコンピュータネットワークを使用してビデオ会議プロバイダ110に接続された、プロセッサおよびコンピュータ可読媒体を有するデスクトップまたはラップトップコンピュータなどの従来のコンピューティングデバイスであってもよい。適切なネットワークには、インターネット、任意のローカルエリアネットワーク(「LAN」)、メトロエリアネットワーク(「MAN」)、広域ネットワーク(「WAN」)、セルラネットワーク(例えば、3G、4G、4GLTE、5Gなど)、またはこれらの任意の組み合わせが含まれる。代わりに、または同様に、タブレット、スマートフォン、および専用ビデオ会議機器などの他の種類のコンピューティングデバイスを使用してもよい。これらのデバイスの各々は、オーディオ機能とビデオ機能の両方を提供することができ、1人または複数のユーザがビデオ会議プロバイダ110によってホストされるビデオ会議に参加することを可能にすることができる。
【0034】
[0038]上述したコンピューティングデバイスに加えて、クライアントデバイス140~180はまた、携帯電話(例えば、携帯電話170)、インターネットプロトコル(「IP」)電話(例えば、電話180)、または従来の電話などの1つまたは複数の電話機器を含むことができる。そのような電話機器は、ユーザがビデオ会議プロバイダ110を含むPSTNを使用して他の電話機器に従来の通話を行うことを可能にすることができる。特定のコンピューティングデバイスはまた、電話機能を提供することができ、電話機器として動作することができることを理解されたい。例えば、スマートフォンは、通常、携帯電話機能を提供し、したがって、
図1に示す例示的なシステム100の電話機器として動作することができる。さらに、従来のコンピューティングデバイスは、電話機能を可能にするソフトウェアを実行することができ、これにより、ユーザは、例えばヘッドセットおよびマイクロフォンを使用して電話を発信および受信することができる。そのようなソフトウェアは、PSTNゲートウェイと通信して、コンピュータネットワークからPSTNに通話をルーティングすることができる。したがって、電話機器は、従来の通話を行うことができる任意のデバイスを包含し、従来の電話のような専用の電話機器のみに限定されない。
【0035】
[0039]再びクライアントデバイス140~160を参照すると、これらのデバイス140~160は、ネットワーク120を使用してビデオ会議プロバイダ110に連絡し、新しい会議を作成したり、既存の会議に参加したりするためのアクセスなど、ビデオ会議プロバイダ110によって提供される機能にアクセスするための情報をビデオ会議プロバイダ110に提供することができる。そのために、クライアントデバイス140~160は、ユーザ識別情報、会議識別子、会議パスワードまたはパスコードなどを提供してもよい。ユーザアイデンティティプロバイダ115を使用する例では、クライアントデバイス、例えば、クライアントデバイス140~160は、ユーザアイデンティティプロバイダ115と連携して動作して、ユーザ識別情報または他のユーザ情報をビデオ会議プロバイダ110に提供することができる。
【0036】
[0040]ユーザアイデンティティプロバイダ115は、ビデオ会議プロバイダ110に対してユーザを識別するのを助けることができる、ビデオ会議プロバイダ110によって信頼されている任意のエンティティであってもよい。例えば、信頼できるエンティティは、企業または他の組織によって運営され、ユーザが雇用者または信頼できるサードパーティなどのユーザのアイデンティティを確立したサーバであってもよい。ユーザは、ユーザアイデンティティプロバイダ115で自分のアイデンティティにアクセスするために、ユーザ名およびパスワードを提供することなどによって、ユーザアイデンティティプロバイダ115にサインインすることができる。アイデンティティは、この意味で、ユーザが使用しているクライアントデバイスに関係なく、特定のユーザを識別するために使用することができるユーザアイデンティティプロバイダ115で確立され維持される情報である。アイデンティティの例は、ユーザによってユーザアイデンティティプロバイダ110で確立され、パスワードまたは生体認証、二要素認証などの追加のセキュリティ機能によって保護された電子メールアカウントであってもよい。しかしながら、アイデンティティは、電子メールなどの機能とは異なっていてもよい。例えば、医療提供者は、その患者のアイデンティティを確立することができる。そして、そのようなアイデンティティは関連付けられた電子メールアカウントを有してもよいが、アイデンティティはそれらの電子メールアカウントとは異なる。したがって、ユーザの「アイデンティティ」は、特定のユーザに結び付けられ、そのユーザによってのみアクセス可能でなければならない安全で検証された情報のセットに関する。アイデンティティにアクセスすることにより、関連付けられたユーザは、ビデオ会議プロバイダ110などの他のコンピューティングデバイスまたはサービスに対して自身を検証することができる。
【0037】
[0041]ユーザがクライアントデバイスを使用してビデオ会議プロバイダ110にアクセスすると、ビデオ会議プロバイダ110は、ユーザによって提供された情報を使用してユーザアイデンティティプロバイダ115と通信し、ユーザのアイデンティティを検証する。例えば、ユーザは、ユーザアイデンティティプロバイダ115に関連付けられたユーザ名または暗号化署名を提供することができる。次いで、ユーザアイデンティティプロバイダ115は、ユーザのアイデンティティを確認するか、または要求を拒否する。この応答に基づいて、ビデオ会議プロバイダ110は、それぞれそのサービスへのアクセスを提供または拒否する。
【0038】
[0042]例えばクライアントデバイス170~180などの電話機器の場合、ユーザは、ビデオ会議サービスにアクセスするためにビデオ会議プロバイダ110に通話を行うことができる。通話に応答した後、ユーザは、ビデオ機能が電話機器によって提供されていなくても、電話機器が会議に参加し、電話機器のオーディオデバイス、例えばマイクロフォンおよびスピーカを使用して参加することを可能にするために、例えば会議識別子(「ID」)、パスコードまたはパスワードなどのビデオ会議に関する情報を提供することができる。
【0039】
[0043]電話機器は通常、従来のコンピューティングデバイスよりも機能が限定されるため、ビデオ会議プロバイダ110に特定の情報を提供することができない場合がある。例えば、電話機器は、電話機器またはユーザを識別するためのユーザ識別情報をビデオ会議プロバイダ110に提供することができない場合がある。したがって、ビデオ会議プロバイダ110は、そのような電話機器により限定された機能を提供することができる。例えば、ユーザは、会議識別子およびパスコードなどの会議情報を提供した後に会議に参加することを許可されてもよいが、会議の匿名の参加者としてのみ識別されてもよい。これは、会議で発言する能力を制限すること、会議中に共有される特定のコンテンツを聞くもしくは見る能力を制限すること、またはブレイクアウトルームに参加すること、または会議の他の参加者とテキストチャットを行うことなどの他の会議機能にアクセスすることなどによって、いくつかの例で会議と対話する能力を制限することができる。
【0040】
[0044]ユーザは、認証されたアイデンティティを有し、ユーザを識別することができるクライアントデバイスをビデオ会議プロバイダ110に使用する場合であっても、匿名で会議に参加し、ビデオ会議プロバイダ110にユーザ識別情報を提供することを拒否することを選択できることを理解されたい。ビデオ会議プロバイダ110は、そのような匿名ユーザがビデオ会議プロバイダ110によって提供されるサービスを使用することを許可するか否かを判定することができる。匿名ユーザは、匿名性の理由にかかわらず、電話機器を使用するユーザに関して上述したように制限されてもよく、場合によっては、特定の会議または他のサービスにアクセスすることを妨げられてもよく、またはビデオ会議プロバイダにアクセスすることを完全に妨げられてもよい。
【0041】
[0045]再びビデオ会議プロバイダ110を参照すると、いくつかの例では、これにより、クライアントデバイス140~160は、それぞれのビデオおよびオーディオストリームを暗号化して、会議におけるプライバシーを改善するのを助けることができる。暗号化は、クライアントデバイス140~160とビデオ会議プロバイダ110との間で提供されてもよく、またはクライアントデバイス140~160によって送信されたマルチメディアストリームが会議に参加している別のクライアントデバイス140~160によって受信されるまで復号されないエンドツーエンド構成で提供されてもよい。暗号化はまた、通信の一部のみの間に提供されてもよく、例えば、暗号化は、国際間を横断する暗号化されていない通信に使用されてもよい。
【0042】
[0046]クライアントからサーバへの暗号化を使用して、クライアントデバイス140~160とビデオ会議プロバイダ110との間の通信を保護することができる一方で、ビデオ会議プロバイダ110が、参加者のための会議を記録すること、または参加者のための会議のトランスクリプトを生成することなどの特定の処理を実行するために、復号されたマルチメディアストリームにアクセスすることを可能にする。エンドツーエンド暗号化を使用して、ビデオ会議プロバイダ110が会議のコンテンツにアクセスすることを心配することなく、会議を参加者にとって完全に非公開に保つことができる。ストリームの鍵ペア暗号化を含む、任意の適切な暗号化方法を使用することができる。例えば、エンドツーエンド暗号化を提供するために、会議ホストのクライアントデバイスは、会議に参加している他のクライアントデバイスの各々の公開鍵を取得し、鍵のセットを安全に交換して、会議中に送信されたマルチメディアコンテンツを暗号化および復号することができる。したがって、クライアントデバイス140~160は、会議中に互いに安全に通信することができる。さらに、いくつかの例では、特定の種類の暗号化は、会議に参加しているデバイスの種類によって制限され得る。例えば、電話機器は、マルチメディアストリームを暗号化および復号する能力を欠いている可能性がある。したがって、マルチメディアストリームを暗号化することは多くの場合望ましい場合があるが、一部のユーザが会議に参加するのを妨げる可能性があるため、必須ではない。
【0043】
[0047]
図1に示す例示的なシステムを使用することにより、ユーザは、ビデオ会議プロバイダ110を介してそれぞれのクライアントデバイス140~180を使用して会議を作成し、会議に参加することができる。さらに、そのようなシステムは、ユーザが、従来の標準ベースのビデオ会議ハードウェアから専用のビデオ会議機器、ラップトップまたはデスクトップコンピュータ、ハンドヘルドデバイスからレガシーな電話機器などまで、多種多様な異なるクライアントデバイス140~180を使用することを可能にする。
【0044】
[0048]ここで
図2を参照すると、
図2は、ビデオ会議プロバイダ210がビデオ会議機能を様々なクライアントデバイス220~250に提供する例示的なシステム200を示している。クライアントデバイス220~250は、2つの従来のコンピューティングデバイス220~230と、ビデオ会議室240用の専用機器と、電話機器250とを含む。各クライアントデバイス220~250は、一般に
図1に関して上述したように、クライアントデバイス220~240用のインターネットまたはクライアントデバイス250用のPSTNなどの通信ネットワークを介してビデオ会議プロバイダ210と通信する。ビデオ会議プロバイダ210はまた、1つまたは複数のユーザアイデンティティプロバイダ215と通信しており、ユーザアイデンティティプロバイダは、一般に
図1に関して上述したように、ビデオ会議プロバイダ210に対して様々なユーザを認証することができる。
【0045】
[0049]この例では、ビデオ会議プロバイダ210は、ビデオ会議機能の異なる態様を提供するために複数の異なるサーバ(またはサーバのグループ)を使用し、それにより、様々なクライアントデバイスがビデオ会議を作成して参加することを可能にする。ビデオ会議プロバイダ210は、1つまたは複数のリアルタイムメディアサーバ212、1つまたは複数のネットワークサービスサーバ214、1つまたは複数のビデオルームゲートウェイ216、および1つまたは複数の電話ゲートウェイ218を使用する。これらのサーバ212~218の各々は、1つまたは複数の通信ネットワークに接続されて、それらがクライアントデバイス220~250に1つまたは複数のビデオ会議へのアクセスおよび参加を集合的に提供することを可能にする。
【0046】
[0050]リアルタイムメディアサーバ212は、
図2に示すクライアントデバイス220~250などの会議参加者に多重化マルチメディアストリームを提供する。ビデオおよびオーディオストリームは、通常、それぞれのクライアントデバイスで発生するが、それらは、リアルタイムメディアサーバ212によって受信される1つまたは複数のネットワークを介して、クライアントデバイス220~250からビデオ会議プロバイダ210に送信される。リアルタイムメディアサーバ212は、例えば、プロキシ設定およびファイアウォールの存在などに基づいて、どのプロトコルが最適であるかを判定する。例えば、クライアントデバイスは、オーディオおよびビデオについてはUDP、TCP、TLS、またはHTTPSを選択し、コンテンツスクリーン共有についてはUDPを選択することができる。
【0047】
[0051]次いで、リアルタイムメディアサーバ212は、ターゲットクライアントデバイスに基づいて様々なビデオおよびオーディオストリームを多重化し、多重化ストリームを各クライアントデバイスに通信する。例えば、リアルタイムメディアサーバ212は、クライアントデバイス220~240からオーディオストリームおよびビデオストリームを受信し、クライアントデバイス250からオーディオストリームのみを受信する。次いで、リアルタイムメディアサーバ212は、デバイス230~250から受信したストリームを多重化し、多重化されたストリームをクライアントデバイス220に提供する。リアルタイムメディアサーバ212は、例えば、これらのストリームを提供する方法において、リアルタイムネットワークおよびクライアントの変化に反応するなど、適応性がある。例えば、リアルタイムメディアサーバ212は、クライアントの帯域幅CPU使用量、メモリおよびネットワークI/Oなどのパラメータ、ならびにパケット損失、レイテンシおよびジッタなどのネットワークパラメータを監視して、ストリームが提供される方法をどのように変更するかを判定することができる。
【0048】
[0052]クライアントデバイス220は、ストリームを受信し、受信したストリームに対して任意の解読、復号、逆多重化を実行した後、クライアントデバイスのビデオやオーディオ機器を使用してオーディオやビデオを出力する。この例では、リアルタイムメディアサーバは、ストリームをクライアントデバイス220に送信するときにクライアントデバイス自身のビデオおよびオーディオフィードを多重化しない。代わりに、各クライアントデバイス220~250は、他のクライアントデバイス220~250からのマルチメディアストリームのみを受信する。例えばクライアントデバイス250のようなビデオ機能を欠く電話機器の場合、リアルタイムメディアサーバ212は、多重化オーディオストリームのみを配信する。クライアントデバイス220は、特定の通信のために複数のストリームを受信することができ、クライアントデバイス220がストリームを切り替えてより高いサービス品質を提供することを可能にする。
【0049】
[0053]マルチメディアストリームを多重化することに加えて、いくつかの例では、リアルタイムメディアサーバ212は、着信マルチメディアストリームを復号することもできる。上述したように、マルチメディアストリームは、クライアントデバイス220~250とビデオ会議システム210との間で暗号化されてもよい。いくつかのそのような例では、リアルタイムメディアサーバ212は、着信マルチメディアストリームを復号し、様々なクライアントのために適切にマルチメディアストリームを多重化し、送信のために多重化ストリームを暗号化することができる。
【0050】
[0054]
図1に関して上述したように、ビデオ会議プロバイダ210は、ユーザの要求に応じて、暗号化されていないマルチメディアストリームに関して特定の機能を提供することができる。例えば、会議ホストは、会議が記録されること、またはオーディオストリームのトランスクリプトが準備されることを要求することができ、その後、復号されたマルチメディアストリームを使用してリアルタイムメディアサーバ212によって実行されてもよく、または記録または転写機能は、オーディオおよびビデオストリームを記録するための専用のサーバ(または複数のサーバ)、例えばクラウド記録サーバにオフロードされてもよい。いくつかの例では、ビデオ会議プロバイダ210は、会議参加者が会議における不適切な挙動またはコンテンツを会議参加者に通知することを可能にすることができる。そのような通知は、ビデオ会議プロバイダ210によるレビューのために会議の一部を記録するようにリアルタイムメディアサーバ212をトリガすることができる。ビデオまたはオーディオ品質の監視、メディア符号化メカニズムの調整または変更など、ビデオ会議プロバイダで復号されたマルチメディアストリームに基づいてアクションを実行するために、さらに他の機能を実装することができる。
【0051】
[0055]複数のリアルタイムメディアサーバ212が単一の会議のデータの通信に関与してもよく、マルチメディアストリームが複数の異なるリアルタイムメディアサーバ212を介してルーティングされてもよいことを理解されたい。さらに、様々なリアルタイムメディアサーバ212は、共同配置されなくてもよく、代わりに、複数の異なる地理的位置に配置されてもよく、これにより、異なる国または異なる大陸に配置されるなど、広い地理的領域にわたって分散されたクライアント間の高品質の通信が可能になる。さらに、いくつかの例では、これらのサーバのうちの1つまたは複数は、クライアントの施設、例えば、企業または他の組織に共同配置されてもよい。例えば、異なる地理的領域は各々、同じ地理的領域内のクライアントデバイスが、異なる国または異なる大陸に配置されるリアルタイムメディアサーバに接続するのではなく、ローカルサーバ212を介してビデオ会議プロバイダ210に高品質の接続を有してマルチメディアストリームを送受信できるようにするために、1つまたは複数のリアルタイムメディアサーバ212を有してもよい。次いで、ローカルリアルタイムメディアサーバ212は、そうでなければクライアントデバイス220~250自体が直接利用できない可能性がある高速ネットワーク基盤、例えば、インターネットバックボーンネットワークを使用して、物理的に離れたサーバと通信することができる。したがって、ルーティングマルチメディアストリームは、ビデオ会議システム210全体に、多くの異なるリアルタイムメディアサーバ212にわたって分散されてもよい。
【0052】
[0056]ネットワークサービスサーバ214に目を向けると、これらのサーバ214は、クライアントデバイスが会議の作成または参加、会議への招待の送信、ユーザアカウントまたはサブスクリプションの作成または管理、および他の関連機能を可能にするための管理機能を提供する。さらに、これらのサーバは、監視サーバセットの下でビデオ会議プロバイダの部分を管理するために、異なる機能を実行するように、または例えば特定の領域または場所について、階層の異なるレベルで動作するように構成されてもよい。クライアントデバイス220~250は、ビデオ会議プロバイダ210にアクセスするとき、通常、それらのアカウントにアクセスするために、または会議に参加するために、1つまたは複数のネットワークサービスサーバ214と通信する。
【0053】
[0057]この例では、クライアントデバイス220~250が最初にビデオ会議プロバイダ210に連絡すると、ネットワークサービスサーバ214にルーティングされる。次いで、クライアントデバイスは、ビデオ会議プロバイダ210への認証されたアクセスを得るために、ユーザのアクセス資格情報、例えばユーザ名およびパスワードまたはシングルサインオン資格情報を提供することができる。このプロセスは、提供された資格情報を検証するために、ネットワークサービスサーバ214がユーザアイデンティティプロバイダ215に連絡することを含んでもよい。ユーザの資格情報が受け入れられると、クライアントデバイスは、ネットワークサービスサーバ214と対話することによって、ユーザがビデオ会議プロバイダ210とのアイデンティティを有する場合にユーザアカウント情報を更新すること、または新しい会議をスケジュールすることなどの管理機能を実行することができる。
【0054】
[0058]いくつかの例では、ユーザは、匿名でビデオ会議プロバイダ210にアクセスすることができる。匿名で通信する場合、クライアントデバイス220~250は、1つまたは複数のネットワークサービスサーバ214と通信することができるが、ビデオ会議プロバイダが匿名ユーザに許可する機能に応じて、会議を作成または参加するための情報を提供するだけである。例えば、匿名ユーザは、クライアント220を使用してビデオ会議プロバイダにアクセスし、会議IDおよびパスコードを提供することができる。ネットワークサービスサーバ214は、会議IDを使用して、今後のまたは進行中の会議を識別し、パスコードが会議IDに対して正しいことを検証することができる。そうした後、ネットワークサービスサーバ214は、次いで、クライアントデバイス220が会議に参加し、適切なリアルタイムメディアサーバ212と通信することを可能にするために、クライアントデバイス220に情報を通信することができる。
【0055】
[0059]ユーザが会議をスケジュールしたい場合、ユーザは(匿名または認証された)新しい会議をスケジュールするオプションを選択することができ、次いで、会議の日時、会議の期間、使用される暗号化の種類、招待する1人または複数のユーザ、プライバシー制御(例えば、匿名ユーザを許可しない、スクリーン共有を防止する、会議への参加を手動で許可するなど)、会議記録オプションなどの様々な会議オプションを選択することができる。次いで、ネットワークサービスサーバ214は、スケジュールされた会議の会議記録を作成および記憶することができる。スケジュールされた会議時間が到着すると(または事前の閾値期間内に)、ネットワークサービスサーバ214は、様々なユーザからの会議への参加要求を受け入れることができる。
【0056】
[0060]会議への参加要求を処理するために、ネットワークサービスサーバ214は、1つまたは複数のクライアントデバイス220~250から、会議IDおよびパスコードなどの会議情報を受信することができる。ネットワークサービスサーバ214は、提供された会議IDに対応する会議レコードを見つけ、次いで、会議のスケジュールされた開始時間が到着したか否か、会議ホストが会議を開始したか否か、およびパスコードが会議レコード内のパスコードと一致するか否かを確認する。要求がホストによって行われた場合、ネットワークサービスサーバ214は、会議をアクティブ化し、ホストをリアルタイムメディアサーバ212に接続して、ホストがマルチメディアストリームの送信および受信を開始することを可能にする。
【0057】
[0061]ホストが会議を開始すると、会議レコードが配置され、パスコードが要求元クライアントデバイス220~250によって供給されたパスコードと一致する場合、アクセスを要求している後続のユーザは会議に受け入れられる。いくつかの例では、追加のアクセス制御も使用することができる。しかし、ネットワークサービスサーバ214が、要求元クライアントデバイス220~250を会議に受け入れると判定した場合、ネットワークサービスサーバ214は、要求元クライアントデバイス220~250との間でマルチメディアストリームを処理するためのリアルタイムメディアサーバ212を識別し、識別されたリアルタイムメディアサーバ212に接続するための情報をクライアントデバイス220~250に提供する。追加のクライアントデバイス220~250は、ネットワークサービスサーバ214を介したアクセスを要求するときに会議に追加されてもよい。
【0058】
[0062]会議に参加した後、クライアントデバイスは、リアルタイムメディアサーバ212を介してマルチメディアストリームを送受信するが、会議中に必要に応じてネットワークサービスサーバ214と通信することもできる。例えば、会議ホストが会議を退出する場合、ネットワークサービスサーバ214は、別のユーザを新しい会議ホストとして任命し、そのユーザにホスト管理権限を割り当てることができる。ホストは、スクリーン共有を有効または無効にすること、ユーザを会議からミュートまたは削除すること、サブ会議または「ブレイクアウト」ルームを作成すること、会議を記録することなどによって、会議を管理することを可能にする管理権限を有してもよい。そのような機能は、ネットワークサービスサーバ214によって管理することができる。
【0059】
[0063]例えば、ホストが会議からユーザを削除したい場合、ホストはユーザを識別し、クライアントデバイス上のユーザインターフェースを介してコマンドを発行することができる。コマンドは、ネットワークサービスサーバ214に送信されてもよく、次いで、ネットワークサービスサーバは、識別されたユーザを対応するリアルタイムメディアサーバ212から切断してもよい。ホストが、1人または複数の会議参加者が参加するためのブレイクアウトルームを作成することを望む場合、そのようなコマンドは、ネットワークサービスサーバ214によって処理されてもよく、ネットワークサービスサーバは、ブレイクアウトルームに対応する新しい会議記録を作成し、次いで、最初に参加者を会議自体に受け入れたのと同様に、1人または複数の会議参加者をブレイクアウトルームに接続することができる。
【0060】
[0064]進行中の会議を作成および管理することに加えて、ネットワークサービスサーバ214は、会議が完了した後、会議を閉じて破棄する役割も担うことができる。例えば、会議ホストは、ネットワークサービスサーバ214に送信される進行中の会議を終了するコマンドを発行することができる。次いで、ネットワークサービスサーバ214は、任意の残りの参加者を会議から削除し、1つまたは複数のリアルタイムメディアサーバ212と通信して会議のオーディオおよびビデオのストリーミングを停止し、例えば、会議の対応するパスコードを会議記録から削除することによって非アクティブ化し、または会議に対応する会議記録を削除することができる。したがって、ユーザが後で会議にアクセスを試みる場合、ネットワークサービスサーバ214は要求を拒否することができる。
【0061】
[0065]ビデオ会議プロバイダによって提供される機能に応じて、ネットワークサービスサーバ214は、組織のためのプライベート会議機能、特別な種類の会議(例えば、ウェビナー)などを提供することなどによって、追加の機能を提供することができる。そのような機能は、この説明によるビデオ会議プロバイダの様々な例に従って提供することができる。
【0062】
[0066]ここでビデオルームゲートウェイサーバ216を参照すると、これらのサーバ216は、専用のビデオ会議室で使用され得るような専用のビデオ会議ハードウェア間のインターフェースを提供する。そのようなビデオ会議ハードウェアは、1つまたは複数のカメラおよびマイクロフォンと、カメラおよびマイクロフォンの各々からビデオおよびオーディオストリームを受信し、ビデオ会議プロバイダ210と接続するように設計されたコンピューティングデバイスとを含むことができる。例えば、ビデオ会議ハードウェアは、ビデオ会議プロバイダによってその加入者のうちの1人または複数に提供されてもよく、その加入者は、ビデオ会議プロバイダに接続するために使用するためにビデオ会議ハードウェアにアクセス資格情報を提供することができる。
【0063】
[0067]ビデオルームゲートウェイサーバ216は、他のクライアントデバイス220~230、250が利用できない可能性がある専用のビデオ会議ハードウェアとの特殊な認証および通信を提供する。例えば、ビデオ会議ハードウェアは、最初に設置されたときにビデオ会議プロバイダに登録することができ、ビデオルームゲートウェイは、そのような登録、ならびに専用のビデオ会議ハードウェアが接続するときにビデオルームゲートウェイサーバ216に提供される情報、例えば、デバイスID情報、加入者情報、ハードウェア機能、ハードウェアバージョン情報などを使用してビデオ会議ハードウェアを認証することができる。そのような情報を受信し、専用のビデオ会議ハードウェアを認証すると、ビデオルームゲートウェイサーバ216は、ネットワークサービスサーバ214およびリアルタイムメディアサーバ212と対話して、ビデオ会議ハードウェアがビデオ会議プロバイダ210によってホストされる会議を作成または参加することを可能にすることができる。
【0064】
[0068]ここで電話ゲートウェイサーバ218を参照すると、これらのサーバ218は、ビデオ会議プロバイダがホストする会議への電話機器の参加を可能にし、容易にする。電話機器はPSTNを使用して通信し、TCP/IPなどのコンピュータネットワーキングプロトコルを使用しないので、電話ゲートウェイサーバ218は、PSTNとビデオ会議プロバイダ210によって使用されるネットワーキングシステムとの間を変換するインターフェースとして機能する。
【0065】
[0069]例えば、ユーザが会議に接続するために電話機器を使用する場合、ユーザは、ビデオ会議プロバイダの電話ゲートウェイサーバ218のうちの1つに対応する電話番号にダイヤルすることができる。電話ゲートウェイサーバ218は、通話に応答し、会議IDおよびパスコードなどのユーザからの情報を要求するオーディオメッセージを生成する。ユーザは、例えば、デュアルトーンマルチ周波数(「DTMF」)オーディオ信号を電話ゲートウェイサーバ218に送信することによって、電話機器上のボタンを使用してそのような情報を入力することができる。電話ゲートウェイサーバ218は、一般に上述したように、ユーザによって入力された数字または文字を判定し、会議への参加または会議の開始の要求と共に、会議IDおよびパスコード情報をネットワークサービスサーバ214に提供する。電話クライアントデバイス250が会議に受け入れられると、電話ゲートウェイサーバ218は、代わりに、電話機器に代わって会議に参加する。
【0066】
[0070]会議に参加した後、電話ゲートウェイサーバ218は、電話機器からオーディオストリームを受信して対応するリアルタイムメディアサーバ212に提供し、リアルタイムメディアサーバ212からオーディオストリームを受信してそれらを復号し、復号されたオーディオを電話機器に提供する。したがって、電話ゲートウェイサーバ218は、基本的にクライアントデバイスとして動作するが、電話機器は、主に、対応する電話ゲートウェイサーバ218のための入力/出力デバイス、例えば、マイクロフォンおよびスピーカとして動作し、それによって、電話機器のユーザが、コンピューティングデバイスまたはビデオを使用していないにもかかわらず、会議に参加することを可能にする。
【0067】
[0071]上述したビデオ会議プロバイダ210の構成要素は、そのようなデバイスおよび例示的なアーキテクチャの単なる例であることを理解されたい。いくつかのビデオ会議プロバイダは、上述したよりも多いまたは少ない機能を提供することができ、上述したように異なる種類のサーバに機能を分離することはできない。代わりに、異なる例に従って、任意の適切なサーバおよびネットワークアーキテクチャを使用することができる。
【0068】
[0072]ここで
図3を参照すると、
図3は、ユーザがエンドツーエンド(「E2E」)暗号化されたビデオ会議に関与することを可能にする簡略化されたシステム300を示す。システムは、2つのクライアントデバイス320、330と、ビデオ会議プロバイダ310とを含む。クライアントデバイス320、330は、一般に
図1および
図2に関して上述したように、1つまたは複数の通信ネットワーク(図示せず)を介してビデオ会議プロバイダ310に接続される。
【0069】
[0073]E2E暗号化されたビデオ会議では、各参加者は、それぞれのクライアントデバイス320~330でビデオ会議に参加し、ホストは、オーディオストリームおよびビデオストリームを暗号化および復号するために使用される会議鍵、例えば対称暗号鍵を確立する。各参加者はまた、それぞれの参加者と通信するために使用できる独自の各々の公開/秘密鍵ペアを有し、各参加者の公開鍵は、信頼できるエンティティに登録することによって、または秘密鍵を使用して暗号化署名名を生成し、ホストまたは他の参加者が公開鍵の公開されたコピーを使用して署名を検証することを可能にすることなどによって、任意の適切な方法で公開または配布される。
【0070】
[0074]各参加者の公開鍵が検証されると、ホストは、参加者のそれぞれの公開鍵を使用して会議鍵を暗号化することにより、会議鍵を参加者に安全に配布することができる。例えば、ホストは、会議鍵を含む暗号化されたメッセージを生成し、それぞれの参加者の公開鍵を使用して各参加者に送信することができる。会議鍵を受け取り復号に成功すると、それぞれの参加者は会議コンテンツを暗号化および復号することができる。
【0071】
[0075]
図3に示すシステム300では、クライアントデバイス320は、最初にビデオ会議プロバイダ310に接続し、ビデオ会議プロバイダが新しい会議を作成することを要求する。会議が作成されると、クライアントデバイス320は、会議のホストとして指定され、会議でE2E暗号化を提供するために使用する会議鍵を確立するが、それをビデオ会議プロバイダ310に提供しない。続いて、参加者クライアントデバイス330は、会議に参加し、その秘密鍵を使用して暗号化署名されたメッセージを生成してホストクライアントデバイス320に提供し、ホストクライアントデバイスは、参加者の公開鍵を使用してメッセージを検証する。公開鍵を検証した後、ホストクライアントデバイス320は、参加者の公開鍵を使用して会議鍵を暗号化し、それを参加者クライアントデバイス330に送信し、参加者クライアントデバイスは会議鍵を復号する。会議鍵が参加者クライアントデバイス330によって正常に受信および復号されると、会議鍵を使用して暗号化されたオーディオおよびビデオの送信を開始することができる。
【0072】
[0076]この例では、各参加者は、送信する各データストリーム(例えば、オーディオおよびビデオ)の非秘密ストリームIDを使用して新しい鍵を計算することによってストリームごとの暗号鍵を生成し、対応するストリーム暗号鍵を使用してそのオーディオおよびビデオストリームを暗号化する。ビデオ会議プロバイダは、様々な暗号化ストリームを受信し、それらを
図1および
図2に関して上述したように一般的に多重化し、それらを様々な参加者クライアントデバイス320、330に配信する。そして、それぞれのクライアントデバイス320、330は、会議鍵を使用して着信ストリームを復号し、ビデオ会議のコンテンツを見ることができる。
【0073】
[0077]しかしながら、このプロセスの一部として、ビデオ会議プロバイダ310は会議鍵にアクセスできない。したがって、ビデオ会議プロバイダ310は、様々なオーディオおよびビデオストリームを復号することができない。しかし、個々のストリームは様々な参加者から別々に受信されるため、ビデオ会議プロバイダ310は、各ストリームのソースを識別することができ、したがって、各参加者に配信するためにストリームを適切に多重化することができる。
【0074】
[0078]ビデオ会議プロバイダ310が会議鍵にアクセスできない結果として、オーディオストリームおよびビデオストリームを復号して記録することができない。さらに、上記で示唆したように、会議鍵は、会議が終了すると様々なクライアントによって破棄される。したがって、E2E暗号化会議で会議を記録することが問題になる。
【0075】
[0079]E2E暗号化会議の記録および後の再生を可能にするために、ホストクライアントデバイス320は、会議を記録するためにビデオ会議プロバイダにメッセージを送信することができる。次いで、ホストクライアントデバイス320は、暗号鍵ペアの一方の鍵を使用して会議鍵を暗号化し、暗号化された会議鍵をビデオ会議プロバイダ310に送信することができる。ビデオ会議プロバイダ310は、暗号化された会議鍵を受信し、それを会議に関連付ける。また、様々な参加者からの暗号化されたオーディオおよびビデオストリームの記憶を開始する。会議が終了すると、ホストまたは参加者は、記録された暗号化されたオーディオおよびビデオデータ、ならびに暗号化された会議鍵をビデオ会議プロバイダ310に要求することができる。
【0076】
[0080]次いで、要求元クライアントデバイスは、会議鍵を暗号化するために使用される暗号鍵ペアの他方の鍵にアクセスできる限り、会議鍵を復号することができる。会議鍵にアクセスすると、会議鍵は、オーディオおよびビデオデータを復号し、データを適切なフォーマット、例えばmp4に符号化するなど、データに必要な任意の追加の処理を実行することができる。
【0077】
[0081]
図4は、暗号化されたビデオ会議を安全に記録および検索するための別の例示的なシステム400を示す。この例では、ホストのクライアントデバイス420は、ビデオ会議プロバイダ410の顧客であるホストの会社または組織内のプライベートネットワーク440に接続されている。顧客はまた、暗号鍵情報を提供することができ、復号されたオーディオおよびビデオに対して復号および符号化機能を実行することができるサーバ450を維持する。
【0078】
[0082]この例では、ホストのクライアントデバイス420が会議を確立すると、
図3に関して上述したように、一般に会議鍵を生成および配布する。さらに、新しい暗号鍵ペアを生成し、鍵のうちの1つ(鍵ペアの「公開」鍵と呼ばれる)をホストのクライアントデバイスに提供する顧客サーバ450からの鍵も要求する。公開鍵はその後、会議鍵を暗号化するために使用される。暗号化された会議鍵は、
図3に関して上述したように、ビデオ会議プロバイダ410に提供される。しかしながら、第2の鍵(「秘密」鍵)は、サーバ450によって維持され、会議に関連付けられ、ホストのクライアントデバイス420と共有されない。
【0079】
[0083]会議が終了すると、顧客のサーバ450は、ビデオ会議プロバイダ410から暗号化された会議記録および暗号化された会議鍵を要求することができる。そして、サーバ450は、秘密鍵を使用して会議鍵を復号する。そして、復号された会議鍵を使用して会議記録を復号する。これにより、顧客は、暗号化された会議鍵および会議記録を復号することしかできないため、記録に対する制御を維持することができる。さらに、それは、顧客がクラウド環境などの専用リソースに計算コストのかかる処理をプッシュすることを可能にし、復号およびビデオ/オーディオ符号化を実行することができ、許可された人員による後の検索のために任意の適切な位置に復号され符号化された記録を記憶することができる。このプロセスは、参加者のうちの一人ではなく、顧客のサーバ450(または顧客のコンピューティングリソースのうちの他のもの)によって実行されるため、顧客は、会議記録に対するセキュリティを維持し、顧客の組織内の適切な人員へのアクセスのみを許可することができる。
【0080】
[0084]ここで
図5を参照すると、
図5は、暗号化されたビデオ会議を安全に記録および検索するための例示的な方法500を示す。
図5の方法500は、
図4に示すシステムに関して説明される。しかしながら、
図1~
図3または
図8に示すシステムのいずれかを含む、本開示による任意の適切なシステムを使用することができる。
【0081】
[0085]ブロック510において、ホストのクライアントデバイス420は、会議暗号鍵を取得する。会議暗号鍵を生成するための任意の適切な技術を使用することができる。例えば、会議暗号鍵は、楕円曲線を使用するなど、任意の適切な暗号鍵ペア技術に従って生成された暗号鍵ペアを含むことができる。いくつかの例では、会議暗号鍵は単一の暗号鍵であってもよい。
【0082】
[0086]ブロック520において、ホストのクライアントデバイス420は、暗号化されたビデオ会議を開始する要求をビデオ会議プロバイダ410に送信する。要求は、会議識別子およびパスコードなどの特定の会議情報を識別することができる。これはまた、E2E暗号化を使用するオプションを含む、会議のための1つまたは複数のオプションを含むことができる。あるいは、E2E暗号化を使用する要求は、会議を開始する要求とは別に送信されてもよい。
【0083】
[0087]ブロック530において、ホストのクライアントデバイス420は、会議暗号鍵を複数の参加者の各参加者に配布する。例えば、ホストのクライアントデバイスは、暗号化されたビデオ会議の各参加者から公開暗号鍵を取得し、各参加者について、それぞれ参加者の公開鍵を使用して会議暗号鍵のコピーを暗号化することができる。次いで、ホストのクライアントデバイス420は、使用された公開鍵に基づいて、各暗号化された会議暗号鍵をそれぞれ参加者に送信することができる。
【0084】
[0088]ブロック540において、ホストのクライアントデバイス420は、暗号鍵ペアの公開暗号鍵を取得する。ブロック510と同様に、暗号鍵ペアを生成するための任意の適切な技術を使用することができる。この例では、楕円曲線関数を使用して鍵ペアが生成され、ホストのクライアントデバイス420は、公開暗号鍵となる暗号鍵ペアの暗号鍵のうちの一方を取得する。さらに、この例では、ホストのクライアントデバイス420は、顧客サーバ450などのリモートコンピューティングデバイスに公開暗号鍵を要求する。しかしながら、いくつかの例では、ホストのクライアントデバイス420自体が暗号鍵ペアを生成し、暗号鍵の一方を公開鍵として指定することができる。
【0085】
[0089]ブロック550において、ホストのクライアントデバイス420は、公開暗号鍵を使用して会議暗号鍵を暗号化する。
【0086】
[0090]ブロック560において、ホストのクライアントデバイス420は、ビデオ会議を記録する要求をビデオ会議プロバイダ410に送信する。いくつかの例では、ビデオ会議を記録する要求は、ビデオ会議の過程中に送信されてもよく、いくつかの例では、記録する要求は、会議が開始される前に送信されてもよく、または会議が最初にスケジュールされたときにビデオ会議プロバイダ410との会議設定として構成されてもよい。さらに、いくつかの例では、ビデオ会議プロバイダ410は、暗号化されたビデオ会議の使用のみを許可し、その場合、要求は送信されない。
【0087】
[0091]ブロック570において、ホストのクライアントデバイス420は、暗号化された会議暗号鍵をビデオ会議プロバイダ410に送信する。この例では、ホストのクライアントデバイス420は、暗号化された会議暗号鍵を、会議識別子、会議の日時、およびホスト名などの暗号化された会議暗号鍵の関連付けを助ける追加情報と共に送信する。しかしながら、いくつかの例では、ホストのクライアントデバイス420は、暗号化された会議暗号鍵のみを送信し、ビデオ会議プロバイダ410は、受信した暗号化された会議暗号鍵とビデオ会議との関連付けを維持する。
【0088】
[0092]ビデオ会議中に会議暗号鍵が変更された例では、ホストのクライアントデバイス420はまた、会議暗号鍵が変更されたという通知と、参加者が新しい会議暗号鍵を使用するように変更したときの対応するタイムスタンプとをビデオ会議プロバイダ410に送信することができる。しかしながら、いくつかの例では、新しい会議暗号鍵を送信すると、会議暗号鍵が変更されたという通知が提供される。
【0089】
[0093]ブロック580において、ホストのクライアントデバイス420は、会議暗号鍵を使用して、マイクロフォンおよびビデオキャプチャデバイスから取得されたオーディオおよびビデオの暗号化を開始する。この例では、ビデオ会議プロバイダは、オーディオおよびビデオの暗号化を開始するために参加者にメッセージを送信する。しかしながら、いくつかの例では、ホストを含む参加者は、会議暗号鍵を受信すると直ちにオーディオおよびビデオの暗号化を開始することができる。
【0090】
[0094]ブロック582において、ホストのクライアントデバイス420は、暗号化されたオーディオおよびビデオをビデオ会議プロバイダ410に送信する。また、他の参加者からビデオ会議プロバイダからオーディオおよびビデオの多重化ストリームを受信を開始する。ブロック570および580における機能は、ビデオ会議全体にわたって継続することを理解されたい。
【0091】
[0095]ブロック584において、ホストのクライアントデバイス420は、ブロック510に関して上述したように新しい会議暗号鍵を取得し、次いで、ブロック530に関して上述したように、新しい会議暗号鍵を他の参加者に配布する。いくつかの例では、ホストのクライアントデバイスは、例えば5分ごとに定期的に会議暗号鍵を変更することができ、またはビデオ会議の過程を通して同じ会議暗号鍵を使用し続けることができる。そのような例では、ブロック584および586は実行されない。
【0092】
[0096]ブロック586において、ホストのクライアントデバイス420は、一般にブロック550に関して上述したように、公開暗号鍵を使用して新しい会議暗号鍵を暗号化し、方法はブロック570に戻る。
【0093】
[0097]上述した方法500は、本開示による一例にすぎないことを理解されたい。他の例では、上述のブロックは異なる順序で実行されてもよく、または1つまたは複数のブロックが省略されてもよい。例えば、ブロック520~570の順序は、異なる例に従って任意の適切な順序で行われてもよい。
【0094】
[0098]ここで
図6を参照すると、
図6は、暗号化されたビデオ会議を安全に記録および検索するための例示的な方法600を示す。
図6の方法600は、
図4に示すシステムに関して説明される。しかしながら、
図1~
図3または
図8に示すシステムのいずれかを含む、本開示による任意の適切なシステムを使用することができる。
【0095】
[0099]ブロック610において、顧客サーバ450は、ビデオ会議から記録された暗号化されたオーディオおよびビデオを取得し、対応する暗号化された会議暗号鍵を取得するために、ビデオ会議プロバイダ410に要求を送信する。この例では、顧客サーバ450は、会議識別子、会議パスコード、ホスト名、および会議が開始するようにスケジュールされた日時を含む。他の例では、異なる情報が使用されてもよい。いくつかの例では、顧客サーバ450は、ビデオ会議プロバイダ410で顧客アカウントにアクセスするための資格情報を提供することができる。顧客サーバ450が顧客アカウントにアクセスすると、検索のために選択するために利用可能な暗号化された会議記録を提示することができる。要求に応答して、ビデオ会議プロバイダ410は、記録された暗号化されたオーディオ、ビデオ、および会議暗号鍵を送信する。
【0096】
[0100]ビデオ会議中に複数の会議暗号鍵が使用された例では、顧客サーバ450は、例えば、各会議暗号鍵に対応するタイムスタンプを提供することによって、各会議暗号鍵がいつ使用され始めたかに関する指示をビデオ会議プロバイダ410から取得することもできる。
【0097】
[0101]ブロック610に関して説明した機能は顧客サーバ450に関して行われるが、ホストのクライアントデバイス420などの任意の適切なコンピューティングデバイスがそのような機能を実行できることを理解されたい。
【0098】
[0102]ブロック620において、顧客サーバ450は、会議暗号鍵を復号する。そのために、サーバ450またはリモートコンピューティングデバイスに存在する鍵管理システム(「KMS」)にアクセスし、会議暗号鍵を暗号化するために使用される公開暗号鍵に対応する秘密暗号鍵を要求する。この例では、KMSは、管理する各暗号鍵ペアに対応するレコードを、会議識別子、会議ホスト、会議が開始するようにスケジュールされた日時などの対応する会議情報と共に維持する。顧客サーバ450は、必要な情報をKMSに供給し、それに応答して、対応する秘密暗号鍵を受信し、これを使用して会議暗号鍵を復号する。
【0099】
[0103]いくつかの例では、ブロック620は、会議が終了した後にホストのクライアントデバイス420によって実行されてもよい。
図5に関して上述したように、いくつかの例では、ホストのクライアントデバイス420は、会議暗号鍵を暗号化するために使用される暗号鍵ペアを生成することができる。その場合、ホストのクライアントデバイス420は、対応する秘密鍵を使用して会議暗号鍵を復号することができる。
【0100】
[0104]ブロック630において、顧客サーバ450は、復号された会議暗号鍵を使用して、暗号化されたオーディオおよびビデオを復号する。
図5に関して上述したように、いくつかの例では、ビデオ会議全体で同じ会議暗号鍵が使用され、その場合、顧客サーバ450は同じ会議暗号鍵を使用してビデオ会議全体を復号する。しかしながら、複数の会議暗号鍵が使用された場合、顧客サーバ450は、ブロック610に関して上述したように、ビデオ会議プロバイダ410によって供給された情報を使用して、対応する鍵を使用して暗号化されたビデオおよびオーディオを復号する。この例では、ブロック630は顧客サーバ450によって実行されたが、いくつかの例では、ホストのクライアントデバイス420によって実行されてもよい。
【0101】
[0105]ここで
図7を参照すると、
図7は、暗号化されたビデオ会議を安全に記録および検索するための例示的な方法700を示す。
図7の方法700は、
図4に示すシステムに関して説明される。しかしながら、
図1~
図3または
図8に示すシステムのいずれかを含む、本開示による任意の適切なシステムを使用することができる。
【0102】
[0106]ブロック710において、ビデオ会議プロバイダ410は、暗号化されたビデオ会議を開始する。この例では、暗号化されたビデオ会議は、ホストクライアントデバイス420から受信した要求に応答して開始される。しかしながら、いくつかの例では、ビデオ会議プロバイダ410は、そのような要求なしに、例えば、スケジュールされた会議時間に暗号化されたビデオ会議を開始することによって、またはホストではない参加者のクライアントデバイス430からの要求に応答して、暗号化されたビデオ会議を開始することができる。
【0103】
[0107]ブロック720において、ビデオ会議プロバイダ410は、暗号化されたビデオ会議の参加者から暗号化されたオーディオおよびビデオを受信して記憶する。
図5に関して上述したように、ホストのクライアントデバイス420は、様々な参加者が暗号化されたビデオ会議の一部として送信される暗号化されたオーディオおよびビデオを各々受けることを可能にするために、会議鍵を生成して様々な参加者に配布する。この例では、ビデオ会議プロバイダ410は、ホストのクライアントデバイスから会議を記録する要求を受信する。しかしながら、他の例では、ビデオ会議プロバイダ410は、例えば、ビデオ会議の構成設定に基づいて、またはすべてのビデオ会議を記録するためのデフォルト要件に基づいて、要求なしで記録を開始する。
【0104】
[0108]この例では、暗号化されたオーディオおよびビデオを記憶するために、ビデオ会議プロバイダ410は、参加者から受信した暗号化されたオーディオおよびビデオをデータストアに記憶し、記憶され暗号化されたオーディオおよびビデオをビデオ会議に関連付ける。例えば、ビデオ会議プロバイダ410は、暗号化されたオーディオおよびビデオを有する追加情報を記憶することができ、これは、ビデオ会議プロバイダによって記憶されたビデオ会議記録への参照、ビデオ会議識別子、ビデオ会議が開始するようにスケジュールされた日時、ホスト名、ホストアカウント識別子、顧客識別子などのうちの1つまたは複数を含むことができる。
【0105】
[0109]ブロック730において、ビデオ会議プロバイダ410は、参加者にオーディオおよびビデオの多重化された暗号化ストリームを提供する。様々なオーディオストリームおよびビデオストリームが暗号化されているにもかかわらず、ビデオ会議プロバイダ410は、例えば、それぞれのストリームが受信されたネットワーク接続またはポートに基づいて、またはオーディオストリームおよびビデオストリームと共に送信された暗号化されていない情報、オーディオストリームまたはビデオストリームを生成した参加者またはクライアントデバイスに関する情報に基づいて、各オーディオストリームおよびビデオストリームの発信元を判定することができる。オーディオおよびビデオを多重化するために、ビデオ会議プロバイダ410は、様々な参加者から暗号化されたオーディオおよびビデオストリームを受け入れ、各参加者について、他の参加者からのオーディオおよびビデオストリームをそれぞれの参加者に送信し、各参加者は、他の参加者からのオーディオおよびビデオストリームを受信する。いくつかの例では、ビデオ会議プロバイダ410は、すべての参加者がすべてのオーディオストリームおよびビデオストリームを受信するように、参加者自体からオーディオストリームおよびビデオストリームを送信することもできる。
【0106】
[0110]ブロック740において、ビデオ会議プロバイダ410は、暗号化された会議暗号鍵を受信して記憶する。
図5に関して上述したように、ホストクライアントデバイス420は、参加者がビデオ会議中に送信されるオーディオおよびビデオを暗号化するために使用することができる会議暗号鍵を生成および配布し、ホストクライアントデバイス420は会議暗号鍵を暗号化する。ビデオ会議プロバイダ410は、暗号化された会議暗号鍵を受信し、それをデータストアに記憶する。
【0107】
[0111]ブロック750において、ビデオ会議プロバイダは、暗号化されたオーディオおよびビデオを暗号化された会議暗号鍵に関連付ける。例えば、上述したように、ビデオ会議プロバイダ410は、記憶され暗号化されたオーディオおよびビデオを、対応するビデオ会議を識別するための情報と関連付けることができる。ビデオ会議プロバイダ410は、ブロック720に関して上述したように追加情報を記憶することによって、または暗号化された会議暗号鍵をビデオ会議に対応するデータストア記録に記憶することなどによって、暗号化された会議暗号鍵をビデオ会議または記憶され暗号化されたオーディオおよびビデオに同様に関連付けることができる。
【0108】
[0112]いくつかの例では、ビデオ会議プロバイダ410は、
図5および
図6に関して上述したように、暗号化されたビデオ会議の過程で複数の暗号化された会議暗号鍵を受信することができる。連続して暗号化された会議暗号鍵を受信したことに応答して、ビデオ会議プロバイダ410は、上述したように、そのような受信された各鍵を記憶し、それを暗号化されたオーディオおよびビデオと関連付ける。いくつかの例では、ビデオ会議プロバイダ410はまた、例えば、対応するタイムスタンプを提供することによって、各暗号化会議暗号鍵がいつ使用され始めたかを識別する指示を受信することができる。そのような追加情報はまた、記憶され、暗号化されたオーディオおよびビデオに関連付けられてもよい。
【0109】
[0113]ブロック760において、ビデオ会議プロバイダ410は、記憶され暗号化されたオーディオおよびビデオ、ならびに暗号化された会議暗号鍵の要求を受信する。この例では、ビデオ会議プロバイダ410は、ビデオ会議が終了した後にのみ、記憶された暗号化情報の要求を受け入れる。しかしながら、いくつかの例では、そのような要求は、ビデオ会議の進行中に受信されてもよい。さらに、いくつかの例では、ビデオ会議プロバイダ410は、記憶された暗号化情報を許可されたユーザ、例えば、ビデオ会議のホスト、または記憶された暗号化情報に関連付けられたアカウントに関連付けられたユーザにのみ提供することができる。
【0110】
[0114]ブロック770において、ビデオ会議プロバイダ410は、要求に応答して、記憶され暗号化されたオーディオおよびビデオ、ならびに記憶され暗号化された会議暗号鍵を提供する。さらに、会議暗号鍵間の遷移タイムスタンプなどの追加情報が利用可能である場合、ビデオ会議プロバイダ410はまた、記憶されたオーディオおよびビデオおよび記憶され暗号化された会議暗号鍵の要求に応答してそのような情報を提供することができる。
【0111】
[0115]ここで
図8を参照すると、
図8は、暗号化されたビデオ会議を安全に記録および検索するための別の例示的なシステム800を示す。この例示的なシステム800は、ホストクライアントデバイス820および参加者クライアントデバイス830を含む。ホストクライアントデバイス820は、新しいビデオ会議を開始するためにビデオ会議プロバイダ810と通信する。しかしながら、この例では、暗号化されたオーディオおよびビデオを記録するためにビデオ会議プロバイダにメッセージを送信するのではなく、代わりに、ホストは、参加者としてビデオ会議に参加し、ビデオ会議を記録するために自動化されたアカウントを招待している。例えば、ホストのクライアントデバイス820は、ビデオ会議プロバイダ810の顧客である雇用場所でプライベートネットワーク840に接続することができ、会議を通知し、ビデオ会議にアクセスできるようにするための情報、例えば、会議識別子、パスコード、および会議のスケジュールされた日時を提供するメッセージを顧客サーバ450に送信することができる。次いで、顧客サーバ450は、スケジュールされた時間に、供給された会議識別子およびパスコードを使用して自動化プロセスにビデオ会議に接続させることができる。
【0112】
[0116]自動化プロセスがビデオ会議プロバイダに接続され、会議に参加すると、ビデオ会議プロバイダ810によって参加者として扱われ、一般に
図4~
図5に関して上述したように、他の参加者と同様に会議暗号鍵を受信する。自動化プロセスは、会議鍵を使用して暗号化されていないオーディオおよびビデオにアクセスできるため、オーディオおよびビデオを記録し、その後の配信のために適切なフォーマット、例えばmp4に符号化することができる。したがって、システム800は、ビデオ会議をビデオ会議プロバイダ810に開いて記録することなく、E2E暗号化されたビデオ会議の記録を可能にすることができる。
【0113】
[0117]ここで
図9を参照すると、
図9は、暗号化されたビデオ会議を安全に記録および検索するための例示的な方法900を示す。
図9の方法900は、
図8に示すシステムに関して説明される。しかしながら、
図1~
図3に示すシステムのいずれかを含む、本開示による任意の適切なシステムを使用することができる。
【0114】
[0118]ブロック910において、ホストのクライアントデバイス820は、
図5のブロック510に関して上述したように、一般に会議暗号鍵を取得する。
【0115】
[0119]ブロック920において、ホストのクライアントデバイス820は、ブロック520に関して上述したように、暗号化されたビデオ会議を開始する要求を送信する。
【0116】
[0120]ブロック930において、ホストのクライアントデバイス820は、ビデオ会議を記録する要求を顧客サーバ850に送信する。この例では、クライアントデバイス820は、会議が開始されると要求を送信する。要求は、会議識別子およびパスコードまたは会議へのURLリンクなど、顧客サーバ850がビデオ会議に参加することを可能にする情報を含む。要求はまた、会議が開始されたか否か、または会議のスケジュールされた開始時間を含むか否かを示す。要求に応答して、顧客サーバ850は、供給された情報、例えば会議識別子およびパスコードを使用して、自動化プロセス、例えば顧客会議レコーダ852にビデオ会議に参加させる。
【0117】
[0121]ブロック940において、ホストのクライアントデバイス820は、ブロック530に関して上述したように、会議暗号鍵を会議参加者に配布する。上述した顧客会議レコーダ852は参加者としてビデオ会議に参加しているので、会議暗号鍵のコピーも受信し、したがってビデオ会議の暗号化されたオーディオおよびビデオを受信して復号することができる。
【0118】
[0122]ブロック950において、ホストのクライアントデバイス820、ならびに他の参加者、例えばクライアントデバイス830は、ブロック580に関して一般的に上述したように、会議暗号鍵を使用してホストのクライアントデバイスのマイクロフォンおよびカメラによってキャプチャされたオーディオおよびビデオを暗号化する。
【0119】
[0123]ブロック960において、ホストのクライアントデバイス820ならびに他の参加者は、一般にブロック582に関して上述したように、その暗号化されたオーディオおよびビデオをビデオ会議プロバイダ810に送信する。
【0120】
[0124]ブロック970において、各参加者は、受信した暗号化されたオーディオおよびビデオを復号する。特に、顧客会議レコーダ852は、様々な会議参加者から暗号化されたオーディオおよびビデオを受信して復号し、任意選択的にそれを適切なフォーマットに符号化し、復号されたオーディオおよびビデオ(符号化されているか否かにかかわらず)を、それ自体のローカルデータストアなどのデータストアまたは例えば顧客サーバ450などのリモートコンピューティングデバイスに記憶する。
【0121】
[0125]ブロック980において、ホストのクライアントデバイス820は、任意選択的に、ブロック584に関して上述したように新しい会議暗号鍵を取得し、参加者を新しい会議暗号鍵に遷移させる。
【0122】
[0126]会議が終了すると、顧客会議レコーダ852は、記録されたオーディオおよびビデオを、その後の許可された検索のために適切な位置に記憶することができる。記録は完全に顧客自身によって処理されたため、記録へのアクセスを制御し、許可されたユーザのみがそのコンテンツにアクセスできるようにすることができる。
【0123】
[0127]ここで
図10を参照すると、
図10は、暗号化されたビデオ会議を安全に記録および検索するための例示的な方法900を示す。
図9の方法900は、
図4に示すシステムに関して説明される。しかしながら、
図1~
図3または
図8に示すシステムのいずれかを含む、本開示による任意の適切なシステムを使用することができる。
【0124】
[0128]ブロック1010~1030は、
図5のブロック510~530に関して上述したように一般的に実行される。
【0125】
[0129]ブロック1040で、ホストのクライアントデバイス420は、会議暗号鍵を顧客サーバ450に送信して、会議識別子、パスコード、ビデオ会議のスケジュールされた開始時刻、ホスト名、ビデオ会議プロバイダの顧客アカウントなどのビデオ会議を識別する情報と共に、安全なデータベース、例えば暗号化データベースに記憶する。そのような情報はまた、安全なデータベースに記憶され、会議暗号鍵に関連付けられる。いくつかの例では、ホストのクライアントデバイスが顧客サーバに公開暗号鍵を要求する
図5に関して上述したプロセスを使用するなどして、会議暗号鍵を別々に暗号化することができる。会議暗号鍵が暗号化されている場合、顧客サーバ450はまた、会議暗号鍵の復号を可能にするために、対応する秘密暗号鍵への参照を記憶することができる。
【0126】
[0130]ブロック1050において、ホストのクライアントデバイス420は、ブロック560に関して上述したように、ビデオ会議プロバイダ410に会議を記録する要求を送信する。しかしながら、この例では、ホストのクライアントデバイス420は、会議暗号鍵の暗号化されたコピーをビデオ会議プロバイダ410に送信しない。代わりに、上述したように、会議暗号鍵は顧客サーバ450によって記憶されている。
【0127】
[0131]ブロック1060~1090は、ブロック582~584に関して上述したように概して進行するが、新しい会議暗号鍵が生成された場合、それは、ビデオ会議プロバイダ410ではなく、ブロック1040に関して上述したように記憶されるように顧客サーバ450に提供される。
【0128】
[0132]ビデオ会議が終了すると、顧客サーバ450は、一般に
図6のブロック610~630に記載されるように、暗号化されたオーディオおよびビデオのコピーを要求することができるが、会議暗号鍵は顧客サーバ450によって記憶されているため、ビデオ会議プロバイダ410に要求しない。
【0129】
[0133]ここで
図11を参照すると、
図11は、本開示によるビデオ会議中にユーザアクションを提案するための例示的なシステムまたは方法での使用に適した例示的なコンピューティングデバイス1100を示す。例示的なコンピューティングデバイス1100は、1つまたは複数の通信バス1102を使用してメモリ1120およびコンピューティングデバイス1100の他の構成要素と通信するプロセッサ1110を含む。プロセッサ1110は、メモリ1120に記憶されたプロセッサ実行可能命令を実行して、本開示による直感的なアシスタント1100を実行するように、または
図5~
図7、
図9、および
図10に関して上述した例示的な方法500~700、900、1000の一部またはすべてなど、異なる例に従ってビデオ会議中にユーザアクションを提案するための1つまたは複数の方法を実行するように構成される。この例では、コンピューティングデバイスはまた、ユーザ入力を受け入れるために、鍵ボード、マウス、タッチスクリーン、ビデオキャプチャデバイス、マイクロフォンなどのような1つまたは複数のユーザ入力デバイス1150を含む。コンピューティングデバイス1100はまた、ユーザに視覚的出力を提供するためのディスプレイ1140を含む。
【0130】
[0134]コンピューティングデバイス1100はまた、通信インターフェース1140を含む。いくつかの例では、通信インターフェース1130は、ローカルエリアネットワーク(「LAN」)、インターネットなどの広域ネットワーク(「WAN」)、メトロポリタンエリアネットワーク(「MAN」)、ポイントツーポイントまたはピアツーピア接続などを含む1つまたは複数のネットワークを使用した通信を可能にし得る。他のデバイスとの通信は、任意の適切なネットワークプロトコルを使用して達成され得る。例えば、1つの適切なネットワークプロトコルは、インターネットプロトコル(「IP」)、送信制御プロトコル(「TCP」)、ユーザデータグラムプロトコル(「UDP」)、またはTCP/IPもしくはUDP/IPなどのそれらの組み合わせを含むことができる。
【0131】
[0135]本明細書の方法およびシステムのいくつかの例は、様々な機械上で実行されるソフトウェアに関して説明されているが、方法およびシステムはまた、本開示による様々な方法を特に実行するためのフィールドプログラマブルゲートアレイ(FPGA)などの特定に構成されたハードウェアとして実装されてもよい。例えば、例は、デジタル電子回路、またはコンピュータハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせで実装することができる。一例では、デバイスは、1つまたは複数のプロセッサを含むことができる。プロセッサは、プロセッサに結合されたランダムアクセスメモリ(RAM)などのコンピュータ可読媒体を含む。プロセッサは、1つまたは複数のコンピュータプログラムを実行するなど、メモリに記憶されたコンピュータ実行可能プログラム命令を実行する。そのようなプロセッサは、マイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、およびステートマシンを含むことができる。そのようなプロセッサは、PLC、プログラマブル割り込みコントローラ(PIC)、プログラマブル論理デバイス(PLD)、プログラマブル読み出し専用メモリ(PROM)、電子的プログラマブル読み出し専用メモリ(EPROMまたはEEPROM)、または他の同様のデバイスなどのプログラマブル電子デバイスをさらに備えることができる。
【0132】
[0136]そのようなプロセッサは、プロセッサによって実行されると、プロセッサによって実行されるか、または支援されるように、プロセッサに本開示による方法を実行させることができるプロセッサ実行可能命令を記憶することができる媒体、例えば1つまたは複数の非一時的コンピュータ可読媒体を含むか、またはそれと通信することができる。非一時的コンピュータ可読媒体の例は、限定はしないが、ウェブサーバ内のプロセッサなどのプロセッサにプロセッサ実行可能命令を提供することができる電子、光学、磁気、または他の記憶デバイスを含むことができる。非一時的コンピュータ可読媒体の他の例には、フロッピーディスク、CD-ROM、磁気ディスク、メモリチップ、ROM、RAM、ASIC、構成されたプロセッサ、すべての光学媒体、すべての磁気テープもしくは他の磁気媒体、またはコンピュータプロセッサが読み取ることができる任意の他の媒体が含まれるが、これらに限定されない。記載されたプロセッサおよび処理は、1つまたは複数の構造内にあってもよく、1つまたは複数の構造を介して分散されてもよい。プロセッサは、本開示による方法(または方法の一部)を実行するためのコードを含むことができる。
【0133】
[0137]いくつかの例の前述の説明は、例示および説明の目的でのみ提示されており、網羅的であること、または本開示を開示された正確な形態に限定することを意図するものではない。本開示の趣旨および範囲から逸脱することなく、その多数の修正および適応が当業者には明らかであろう。
【0134】
[0138]本明細書における例または実施態様への言及は、例に関連して説明される特定の特徴、構造、動作、または他の特性が、本開示の少なくとも1つの実施態様に含まれ得ることを意味する。本開示は、そのように記載された特定の例または実施態様に限定されない。本明細書の様々な箇所における「一例では」、「一実施態様では」、または「実施態様では」という表現、またはそれらの変形の出現は、必ずしも同じ例または実施態様を指すものではない。一例または実施態様に関連して本明細書に記載された任意の特定の特徴、構造、動作、または他の特性は、任意の他の例または実施態様に関連して記載された他の特徴、構造、動作、または他の特性と組み合わせることができる。
【0135】
[0139]本明細書における「または」という単語の使用は、包括的および排他的OR条件を網羅することを意図している。換言すれば、AまたはBまたはCは、Aのみ、Bのみ、Cのみ、AおよびBのみ、AおよびCのみ、BおよびCのみ、ならびにAおよびBおよびC、のうちの特定の用途に適切な代替的な組み合わせのいずれかまたはすべてを含む。
【国際調査報告】