用于從WebRTC服務(wù)器向WebRTC客戶端安全且動(dòng)態(tài)地重新加載附加軟件的方法
【專(zhuān)利摘要】本發(fā)明涉及一種計(jì)算機(jī)裝置(10)以及一種由計(jì)算機(jī)實(shí)現(xiàn)的、用于從WebRTC服務(wù)器向WebRTC客戶端安全且動(dòng)態(tài)地重新加載附加軟件(SW)的方法,其特征在于,WebRTC數(shù)據(jù)通道被用來(lái)傳輸軟件(SW)。
【專(zhuān)利說(shuō)明】
用于從WebRTG服務(wù)器向WebRTG客戶端安全且動(dòng)態(tài)地重新加載附加軟件的方法
技術(shù)領(lǐng)域
[0001 ] 本發(fā)明涉及一種由計(jì)算機(jī)實(shí)現(xiàn)的、用于從WebRTC服務(wù)器向WebRTC客戶端安全且動(dòng)態(tài)地重新加載附加軟件的方法以及一種相應(yīng)的計(jì)算機(jī)裝置。
【背景技術(shù)】
[0002]WebRTC瀏覽器開(kāi)發(fā)商、如Google或Moz i I Ia通常借助確定的編解碼器來(lái)發(fā)行其瀏覽器。屬于這些編解碼器例如是音頻編解碼器,例如G.711和OPUS,以及視頻編解碼器,為此作為示例應(yīng)該提到VP8。因此,這種編解碼器是這些具有webRTC能力的瀏覽器的完整的組成部分。
[0003]但對(duì)于WebRTC應(yīng)用的開(kāi)發(fā)商而言,不能毫無(wú)困難地在其項(xiàng)目中以安全的方式和方法集成附加的、可能還不包含在原來(lái)的瀏覽器版本中的編解碼器,以便由此為其用戶產(chǎn)生附加的用處。問(wèn)題的一部分在于,這種附加的編解碼器經(jīng)常受到商業(yè)專(zhuān)利權(quán)的保護(hù),并且因此只有通過(guò)支付相應(yīng)的許可費(fèi)用才能獲得并安裝。
[0004]為了這種編解碼器的重新安裝,通常這樣做,S卩:這些編解碼器可通過(guò)所謂的瀏覽器插件被加載并接著被安裝。但對(duì)于WebRTC瀏覽器,存在以下缺點(diǎn):
[0005]-1ETF/W3C中的網(wǎng)頁(yè)實(shí)時(shí)通信(WebRTC)文件規(guī)定,網(wǎng)頁(yè)實(shí)時(shí)通信應(yīng)該無(wú)插件就行。這就意味著,所涉及的編解碼器應(yīng)該固有地被集成在瀏覽器中,也就是說(shuō),應(yīng)該已經(jīng)通過(guò)瀏覽器開(kāi)發(fā)商被固定地內(nèi)置。
[0006]-瀏覽器開(kāi)發(fā)商在實(shí)現(xiàn)上述要求時(shí)的特殊難題在于,存在商業(yè)專(zhuān)利權(quán)(經(jīng)常也簡(jiǎn)稱(chēng)為知識(shí)產(chǎn)權(quán)或者說(shuō)IPR)并且因此伴隨著許可成本的編解碼器不能利用開(kāi)發(fā)商的免費(fèi)瀏覽器來(lái)提供。
[0007]-瀏覽器插件構(gòu)成了安全風(fēng)險(xiǎn),因?yàn)椴荒軌虬踩乜刂朴纱吮恢匦掳惭b的編解碼器的來(lái)源,并且因此瀏覽器插件在WebRTC應(yīng)用解決方案對(duì)于許多用戶的接受度方面也是額外的障礙。
[0008]編解碼器的安全的重新安裝的上面以音頻和視頻編解碼器為例描述的難題也十分普遍地存在于其他應(yīng)該在WebRTC客戶端、例如瀏覽器-尤其是WebRTC瀏覽器-中被重新安裝的軟件中。
【發(fā)明內(nèi)容】
[0009]因此,本發(fā)明所基于的任務(wù)是,克服這些缺點(diǎn),并且說(shuō)明一種用于從WebRTC服務(wù)器向WebRTC客戶端安全且動(dòng)態(tài)地重新加載附加軟件的方法以及一種相應(yīng)的計(jì)算機(jī)裝置。
[0010]該任務(wù)借助一種根據(jù)權(quán)利要求1所述的方法以及借助一種根據(jù)權(quán)利要求9所述的計(jì)算機(jī)裝置來(lái)解決。此外,一種相應(yīng)的根據(jù)權(quán)利要求7所述的計(jì)算機(jī)程序或計(jì)算機(jī)程序產(chǎn)品以及一種根據(jù)權(quán)利要求8所述的機(jī)器可讀取的、相應(yīng)的計(jì)算機(jī)程序被保存在其上的數(shù)據(jù)載體也有助于解決這一難題,它們應(yīng)該同樣被看作為隸屬于本發(fā)明。
[0011]本發(fā)明的有利擴(kuò)展方案是從屬權(quán)利要求的主題。
[0012]根據(jù)本發(fā)明,一種由計(jì)算機(jī)實(shí)現(xiàn)的、用于從WebRTC服務(wù)器向WebRTC客戶端安全且動(dòng)態(tài)地重新加載附加軟件的方法以以下步驟進(jìn)行:在WebRTC客戶端與WebRTC服務(wù)器之間建立WebRTC連接的過(guò)程中,通過(guò)以下方式傳輸所需的軟件,即為此使用WebRTC數(shù)據(jù)通道。通過(guò)這種方式,就可以以安全且動(dòng)態(tài)的方式和方法重新加載并重新安裝所需的軟件,而不必動(dòng)用瀏覽器插件。WebRTC數(shù)據(jù)通道另外也被稱(chēng)作為WebRTC數(shù)據(jù)信道。這種WebRTC數(shù)據(jù)通道本身由IETF/W3C標(biāo)準(zhǔn)化,并且立足于安全的基于IP/UDP/DTLS/SCTP的傳輸。
[0013]根據(jù)本發(fā)明方法的一種有利的實(shí)施方式,所述軟件被確定用于實(shí)時(shí)應(yīng)用。尤其是這種軟件是一種編解碼器,例如一種音頻或視頻編解碼器。
[0014]能夠有利的是,所述WebRTC數(shù)據(jù)通道在軟件傳輸后保持并且沒(méi)有立即被再次取消,以便由此例如能夠?qū)崿F(xiàn)沒(méi)有時(shí)間延遲而快速重新加載其他所需的軟件。
[0015]此外可能有利的是,自動(dòng)地在WebRTC客戶端與WebRTC服務(wù)器之間建立WebRTC連接的時(shí)間點(diǎn)上傳輸軟件,使得用戶不必特意擔(dān)心這一方面。對(duì)于電話呼叫或會(huì)議的示例而言,這可能就意味著,自動(dòng)在達(dá)成電話呼叫或達(dá)成會(huì)議的時(shí)間點(diǎn)上進(jìn)行音頻編解碼器的下載。但替代地,也可設(shè)置,專(zhuān)門(mén)由用戶觸發(fā)的編解碼器的下載。于是為此將優(yōu)選設(shè)置安裝區(qū)域(install button)。作為付費(fèi)模式,為此例如將可以考慮所謂的“使用才支付(pay as you
V,
use) ο
[0016]如果軟件在WebRTC客戶端僅臨時(shí)被加載并且只有在預(yù)先確定的時(shí)間段期間才保持可用,則可帶來(lái)其他優(yōu)點(diǎn)。這在上述示例的情況下就意味著,重新加載的編解碼器僅供電話呼叫期間或者會(huì)議期間使用,并且只能夠使用那么長(zhǎng),直到WebRTC客戶端(尤其是WebRTC瀏覽器)重新啟動(dòng)。這種做法同樣支持“使用才支付”的計(jì)價(jià)模式。替代地,所重新加載的編解碼器當(dāng)然也可被永久安裝并且保持可用,由此,即使在WebRTC客戶端或者WebRTC瀏覽器重啟后,該編解碼器仍可供用戶使用。
[0017]根據(jù)本發(fā)明的方法有利地被實(shí)現(xiàn)為計(jì)算機(jī)程序或計(jì)算機(jī)程序產(chǎn)品,并且能夠被保存在機(jī)器可讀取的數(shù)據(jù)載體上。因此,這兩種設(shè)計(jì)方案同樣可被看作為隸屬于本發(fā)明。
[0018]一種根據(jù)本發(fā)明的計(jì)算機(jī)裝置包括WebRTC客戶端在其上運(yùn)行的第一計(jì)算機(jī),其適用于執(zhí)行上述方法以用于安全且動(dòng)態(tài)地從WebRTC服務(wù)器向WebRTC客戶端重新加載附加軟件。此外,根據(jù)本發(fā)明的計(jì)算機(jī)裝置包括第二計(jì)算機(jī),其用作為WebRTC服務(wù)器,并且所要傳輸?shù)能浖柚摰诙?jì)算機(jī)是準(zhǔn)備好的或可訪問(wèn)的,使得所述軟件可以根據(jù)查詢通過(guò)WebRTC客戶端來(lái)調(diào)用或被傳輸?shù)皆摽蛻舳松?。為了連接這兩個(gè)計(jì)算機(jī),設(shè)置一種相應(yīng)的網(wǎng)絡(luò),所述網(wǎng)絡(luò)必須必然地被實(shí)現(xiàn)為,使得其能夠提供WebRTC數(shù)據(jù)通道(連同RTC客戶端與WebRTC服務(wù)器之間的WebRTC連接)。很明顯,借助根據(jù)本發(fā)明的計(jì)算機(jī)裝置,能夠?qū)崿F(xiàn)與結(jié)合根據(jù)本發(fā)明的方法所描述的相同的優(yōu)點(diǎn)。
【附圖說(shuō)明】
[0019]由下面參照附圖對(duì)有利的實(shí)施方式所進(jìn)行的描述得出本發(fā)明的其他優(yōu)點(diǎn)、特征和特點(diǎn)。其中:
[0020]圖1示出根據(jù)本發(fā)明的計(jì)算機(jī)裝置的一種實(shí)施方式的示意性概覽圖;以及
[0021]圖2示出一種示意性圖示,說(shuō)明根據(jù)本發(fā)明的方法如何基于標(biāo)準(zhǔn)化的WebRTC-協(xié)議棧來(lái)實(shí)施。
【具體實(shí)施方式】
[0022]所述計(jì)算機(jī)裝置10又包括第一計(jì)算機(jī)12、用作為WebRTC服務(wù)器的第二計(jì)算機(jī)14以及網(wǎng)絡(luò)16,所述網(wǎng)絡(luò)連接所述第一計(jì)算機(jī)12和所述第二計(jì)算機(jī)14并且此外被構(gòu)型為,使得該網(wǎng)絡(luò)能夠提供WebRTC連接-WebRTC數(shù)據(jù)通道也屬于WebRTC連接。只要這被達(dá)成,所述軟件SW就可從服務(wù)器14傳輸?shù)剿龅谝挥?jì)算機(jī)12中的客戶端上,這通過(guò)相應(yīng)的箭頭被形象地示出。
[0023]在所述第一計(jì)算機(jī)12中,示意性地示出了⑶-ROM90,作為數(shù)據(jù)載體的示例,計(jì)算機(jī)程序或計(jì)算機(jī)程序產(chǎn)品92可被保存在該數(shù)據(jù)載體上,所述計(jì)算機(jī)程序或計(jì)算機(jī)程序產(chǎn)品又示意性地作為具有程序代碼的頁(yè)面被示出。在所述第一計(jì)算機(jī)12上安裝了所述計(jì)算機(jī)程序90后,在該計(jì)算機(jī)12上運(yùn)行的WebRTC客戶端可以以根據(jù)本發(fā)明的方式繼續(xù)運(yùn)行,以便執(zhí)行根據(jù)本發(fā)明的方法。為了說(shuō)明根據(jù)本發(fā)明的方法,隨后以以下為出發(fā)點(diǎn),即:WebRTC客戶端作為WebRTC瀏覽器(下面簡(jiǎn)稱(chēng)為“瀏覽器”)存在,該瀏覽器為了電話呼叫(簡(jiǎn)稱(chēng)為“呼叫”)需要從WebRTC服務(wù)器(下面簡(jiǎn)稱(chēng)為“服務(wù)器”)14加載音頻編解碼器,因?yàn)楦鶕?jù)標(biāo)準(zhǔn)被集成在瀏覽器內(nèi)的音頻編解碼器(例如G.711或OPUS)被視為不充分。這種具有擴(kuò)展功能范圍的音頻編解碼器例如基于H.264或H.265。
[0024]對(duì)于本發(fā)明的應(yīng)用,自然還要提到語(yǔ)音編解碼器、如G.729的下載。
[0025]根據(jù)下面的示例,向用戶在其用戶界面(例如通過(guò)菜單項(xiàng)“調(diào)節(jié)”)上在其所安裝或者所使用的瀏覽器內(nèi)提供加載附加編解碼器的選項(xiàng)。替代地,這也可以自動(dòng)進(jìn)行,對(duì)此作為示例可以列舉WebRTC客戶端或?yàn)g覽器的安裝、第一電話呼叫的時(shí)間點(diǎn)等等。
[0026]根據(jù)本發(fā)明,首先進(jìn)行信令,用于建立連接以及用于建立瀏覽器的相應(yīng)能力。這在圖2左邊的柱體中示出。因?yàn)檫@里所使用的命名和簡(jiǎn)稱(chēng)本身是公知的,所以放棄詳細(xì)描述。這一左邊的柱體以及在右側(cè)旁邊所示的右邊的柱體為所謂的WebRTC協(xié)議棧的部分。在信令后,建立從瀏覽器到預(yù)定義的服務(wù)器地址的WebRTC-有效數(shù)據(jù)連接,其中,在此使用WebRTC-會(huì)話信令。在此,WebRTC數(shù)據(jù)通道的建立以及在所述瀏覽器與所述服務(wù)器應(yīng)用之間的該數(shù)據(jù)通道的特性達(dá)成例如通過(guò)SDP(會(huì)話描述協(xié)議)提議/應(yīng)答法進(jìn)行。在標(biāo)準(zhǔn)WebRTC中,使用SCTP(流控制傳輸協(xié)議)通道,該SCTP通道通過(guò)為加密協(xié)議的DTLS(數(shù)據(jù)報(bào)傳輸層安全Datagramm Transport Layer Security)來(lái)保護(hù)。通過(guò)這種安全的、動(dòng)態(tài)地在瀏覽器與服務(wù)器之間達(dá)成的數(shù)據(jù)通道,編解碼器文件被安全地傳輸給瀏覽器。在瀏覽器側(cè),通過(guò)瀏覽器-API (API =Applicat1n Programming Interface應(yīng)用編程接口)實(shí)現(xiàn)編解碼器的安裝。在此,所述瀏覽器-API對(duì)于瀏覽器開(kāi)發(fā)商可以是特別的,但也可以是標(biāo)準(zhǔn)化的。WebRTC數(shù)據(jù)通道的這種構(gòu)建以及用來(lái)傳輸編解碼器的應(yīng)用基本構(gòu)成了根據(jù)本發(fā)明的方法,并且在圖2右邊的柱體中,通過(guò)以虛線示出的方框來(lái)表示。由虛線的方框可以看出,數(shù)據(jù)通道使用了SCTP,該SCTP又通過(guò)DTLS來(lái)保護(hù)。這些協(xié)議屬于標(biāo)準(zhǔn)化的WebRTC,因此它們不需要詳細(xì)地描述和解釋。然后,在使用重新加載的軟件或重新加載的編解碼器的情況下,通過(guò)圖2中右邊柱體的左邊部分,也就是通過(guò)RTC對(duì)等連接和SRTP(安全實(shí)時(shí)傳輸協(xié)議Secure Real-TimeTransport Protocol)、即用來(lái)傳輸數(shù)據(jù)、尤其是例如通過(guò)自有的WebRTC連接所傳輸?shù)娜缫纛l和/或視頻數(shù)據(jù)的媒體數(shù)據(jù)的“真正的”有效通道,實(shí)現(xiàn)真正的通信。
[0027]在該附加的編解碼器的成功下載和本地安裝后,終端或者說(shuō)瀏覽器與服務(wù)器之間的數(shù)據(jù)連接可被取消。替代地,WebRTC數(shù)據(jù)通道也可保留,以便例如能夠更快地重新加載其他編解碼器或其他軟件。自該時(shí)間點(diǎn)起,用于WebRTC音頻應(yīng)用和/或WebRTC視頻應(yīng)用、如電話呼叫或會(huì)議的瀏覽器既可利用已經(jīng)被集成在瀏覽器內(nèi)的、不伴隨著專(zhuān)利權(quán)的編解碼器(例如6.711、(^1^、¥?8),又可利用剛才所述的附加地被重新加載的編解碼器(瀏覽器開(kāi)發(fā)商在開(kāi)發(fā)瀏覽器時(shí)不能把所述被重新加載的編解碼器集成到瀏覽器中,因?yàn)樗鼈兿碛猩虡I(yè)專(zhuān)利權(quán),并且伴隨著相應(yīng)的許可成本)。
[0028]根據(jù)應(yīng)用可規(guī)定,自動(dòng)在達(dá)成的呼叫或引入的會(huì)議的時(shí)間點(diǎn)上進(jìn)行編解碼器下載。但也可規(guī)定,編解碼器下載根據(jù)用戶提出的明確要求來(lái)引入并執(zhí)行。
[0029]如果所重新加載的編解碼器被永久安裝,那么其在瀏覽器重啟后繼續(xù)可供使用。針對(duì)該應(yīng)用方式,例如可能發(fā)生相關(guān)編解碼器的相當(dāng)高的許可支付。因此,如果所重新加載的編解碼器僅被臨時(shí)加載(也就是說(shuō)保持在RAM內(nèi))并且僅在呼叫期間或者會(huì)議期間可供使用或者僅那么長(zhǎng)地可用地保持,直到瀏覽器重啟,就能夠帶來(lái)優(yōu)點(diǎn)。對(duì)此例如另一種付款模式是可以的,在這種付款模式下,只有具體的使用需要支付。在極少使用編解碼器的情況下,這可能對(duì)于用戶而言是大的優(yōu)點(diǎn)。
[0030]總之可理解的是,根據(jù)本發(fā)明,借助所重新加載的軟件(例如編解碼器)可實(shí)現(xiàn)WebRTC客戶端、例如瀏覽器的擴(kuò)展,利用該軟件該WebRTC客戶端的配置變?yōu)榭赡堋=柚鶕?jù)本發(fā)明的方法,該被重新加載的軟件不僅取自安全的來(lái)源-也就是說(shuō)WebRTC服務(wù)器,而且通過(guò)安全的WebRTC數(shù)據(jù)通道形式的路徑來(lái)傳輸。因此,能夠以十分安全的方式實(shí)現(xiàn)WebRTC客戶端的功能的擴(kuò)展。因?yàn)樵摂U(kuò)展可隨時(shí)使用并且也可任意改變,所以該擴(kuò)展也是非常動(dòng)態(tài)的。
[0031 ]本發(fā)明也可被用于其他應(yīng)用,如即時(shí)通訊或E-mail交流中。
[0032]可以理解的是,本發(fā)明的參照所示實(shí)施方式描述的特征、例如計(jì)算機(jī)裝置的各個(gè)組件的類(lèi)型和設(shè)計(jì)方案或者所述方法的各個(gè)步驟的順序也可存在于其他實(shí)施方式中,除非另作說(shuō)明或者出于技術(shù)的原因而本身被禁用。
[0033]附圖標(biāo)記列表
[0034]10計(jì)算機(jī)裝置
[0035]12第一計(jì)算機(jī)
[0036]14第二計(jì)算機(jī)/WebRTC服務(wù)器
[0037]16 網(wǎng)絡(luò)
[0038]90數(shù)據(jù)載體
[0039]92計(jì)算機(jī)程序
[0040]Sff 軟件
【主權(quán)項(xiàng)】
1.由計(jì)算機(jī)實(shí)現(xiàn)的、用于從WebRTC服務(wù)器向WebRTC客戶端安全且動(dòng)態(tài)地重新加載附加軟件(SW)的方法,其特征在于,為了傳輸所述軟件(SW),使用WebRTC數(shù)據(jù)通道,并且所述軟件(SW)被用于擴(kuò)展WebRTC客戶端的功能。2.根據(jù)權(quán)利要求1所述的方法, 其特征在于,所述軟件(SW)是一種用于實(shí)時(shí)應(yīng)用的軟件。3.根據(jù)權(quán)利要求1或2所述的方法, 其特征在于,所述軟件(SW)是一種編解碼器,尤其是一種音頻或視頻編解碼器。4.根據(jù)上述權(quán)利要求中任一項(xiàng)所述的方法, 其特征在于,所述WebRTC數(shù)據(jù)通道在傳輸所述軟件(SW)后被保留。5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的方法, 其特征在于,所述軟件(SW)的傳輸自動(dòng)在所述WebRTC客戶端與所述WebRTC服務(wù)器之間建立WebRTC連接的時(shí)間點(diǎn)上進(jìn)行。6.根據(jù)權(quán)利要求1至5中任一項(xiàng)所述的方法, 其特征在于,所述軟件(Sff)僅被臨時(shí)加載在WebRTC客戶端中,并且只有在預(yù)先確定的時(shí)間段期間才保持可用。7.—種計(jì)算機(jī)程序產(chǎn)品(92),用于執(zhí)行根據(jù)上述權(quán)利要求中任一項(xiàng)所述的方法。8.—種機(jī)器可讀取的數(shù)據(jù)載體(90),具有被保存在其上的、根據(jù)權(quán)利要求7所述的計(jì)算機(jī)程序產(chǎn)品(92)。9.一種計(jì)算機(jī)裝置(10),包括: -第一計(jì)算機(jī)(12),WebRTC客戶端在第一計(jì)算機(jī)上運(yùn)行,所述WebRTC客戶端適合于執(zhí)行根據(jù)權(quán)利要求1至5中任一項(xiàng)所述的方法; -第二計(jì)算機(jī)(14),所述計(jì)算機(jī)用作為WebRTC服務(wù)器,并且軟件(SW)以可調(diào)用的方式被保存在第二計(jì)算機(jī)上;以及 -網(wǎng)絡(luò)(16),所述網(wǎng)絡(luò)將所述第一計(jì)算機(jī)(12)與所述第二計(jì)算機(jī)(14)連接并且適合于提供WebRTC數(shù)據(jù)通道。
【文檔編號(hào)】G06F9/445GK105849693SQ201480061235
【公開(kāi)日】2016年8月10日
【申請(qǐng)日】2014年11月3日
【發(fā)明人】K·克拉格霍費(fèi)爾, V·蘭斯邁爾
【申請(qǐng)人】統(tǒng)有限責(zé)任兩合公司, 統(tǒng)一有限責(zé)任兩合公司