相關(guān)申請的交叉引用
本申請要求于2014年12月9日提交的美國臨時申請no.62/089,767的權(quán)益,該臨時申請通過全文引用而結(jié)合于此。
本發(fā)明是關(guān)于數(shù)據(jù)通信,特別是關(guān)于在回傳數(shù)據(jù)鏈路上將更新密鑰信息自來源端傳輸至接收端。
背景技術(shù):
高解析數(shù)字內(nèi)容保護(high-bandwidthdigitalcontentprotection,hdcp)是保護數(shù)字內(nèi)容在相異接口傳輸?shù)膮f(xié)議,一般而言,hdcp架構(gòu)包含hdcp來源裝置(如dvd播放器、高解析(高清)dvd播放器、藍光播放器、計算機視訊、計算機硬盤等)、hdcp接收裝置(如接收器、電視、屏幕等)以及音頻裝置(如環(huán)繞音場系統(tǒng))。通過hdcp認證/加密協(xié)議(即為hdcp協(xié)議),hdcp來源裝置與hdcp接收裝置相驗證,hdcp來源裝置由hdcp協(xié)議以加密一數(shù)據(jù)串流,其包含視訊數(shù)據(jù),并將已加密的數(shù)據(jù)串流傳輸至hdcp接收裝置,自hdcp來源裝置傳輸至hdcp接收裝置的數(shù)據(jù)為加密的數(shù)據(jù)。
對于通用常見的架構(gòu)而言,hdcp來源裝置將視頻數(shù)據(jù)(videodata)傳輸至hdcp接收裝置,同時將與視頻數(shù)據(jù)相對應(yīng)的音頻數(shù)據(jù)傳輸至音頻裝置,以分離hdcp來源裝置和hdcp接收裝置。當hdcp接收裝置或顯示器連接至hdcp來源裝置時,hdcp接收裝置會依據(jù)視頻數(shù)據(jù)產(chǎn)生影像,而音頻裝置會依據(jù)音頻數(shù)據(jù)而產(chǎn)生聲音。
在不同架構(gòu)中,hdcp接收裝置接收來自外部源(如ota天線)的數(shù)據(jù)串流(datastream),其包含視頻數(shù)據(jù)和音頻數(shù)據(jù),并將所接收到的音頻數(shù)據(jù)經(jīng)hdcp來源裝置傳輸至音頻裝置。介于hdcp接收裝置及hdcp來源裝置間的鏈接(或鏈路)稱為音頻回傳通道(audioreturnchannel,arc),當使用arc時,音頻數(shù)據(jù)經(jīng)hdcp來源裝置傳輸至音頻裝置之前,hdcp接收裝置未認證hdcp來源裝置,且hdcp接收裝置未加密音頻數(shù)據(jù),因此,arc所傳輸?shù)母叻直媛室纛l數(shù)據(jù)未受保護,易遭受違法復(fù)制。
技術(shù)實現(xiàn)要素:
實施例涉及在已加密的數(shù)據(jù)的子幀前端嵌入一前置碼,其表示在來源裝置中執(zhí)行更新密鑰,以及子幀及后續(xù)子幀為加密狀態(tài)。接收裝置由確認/加密協(xié)議,以確認來源裝置。接收裝置接收數(shù)據(jù)串流,其中包含音頻數(shù)據(jù)。所接收到的音頻數(shù)據(jù)的至少一部分為加密狀態(tài),已加密的音頻數(shù)據(jù)分封化為子幀。接收裝置嵌入第一前置碼,作為子幀的前導(dǎo),其表示依據(jù)確認/加密協(xié)議,在來源裝置中執(zhí)行更新密鑰,以及表示子幀有效負載及后續(xù)子幀有效負載所含的音頻數(shù)據(jù)為加密狀態(tài)。接收裝置通過第一數(shù)據(jù)鏈路將封包傳送至來源裝置中。
在一實施例中,音頻數(shù)據(jù)包含音頻區(qū)塊,每一音頻區(qū)塊包含192個幀,每一幀包含兩個子幀,每一子幀包含至少前導(dǎo)和音頻采樣字符。每一前導(dǎo)包含以下其中之一:第一前置碼、第二前置碼、第三前置碼及第四前置碼,第二前置碼可表示為音頻區(qū)塊的前導(dǎo)以及對應(yīng)于后續(xù)第一通道的音頻采樣字符,第三前置碼可表示為對應(yīng)于后續(xù)第一通道的音頻采樣字符,第四前置碼可表示為對應(yīng)于后續(xù)第二通道的音頻采樣字符。
在一實施例中,嵌入第一前置碼作為子幀的前導(dǎo)的步驟包含:將子幀的第二前置碼取代為子幀的第一前置碼。
在一實施例中,接收裝置決定音頻數(shù)據(jù)的某一部分為加密狀態(tài)。
在一實施例中,第一數(shù)據(jù)鏈路為音頻回傳通道(arc),在此實施例中,接收裝置通過第一數(shù)據(jù)鏈路,以確認來源裝置。
在一實施例中,接收裝置利用第一數(shù)據(jù)鏈路及與其分離的第二數(shù)據(jù)鏈路,以確認該來源裝置。第二數(shù)據(jù)鏈路可為顯示數(shù)據(jù)通道(ddc)。
在一實施例中,確認/加密協(xié)議為高解析數(shù)字內(nèi)容保護(hdcp)協(xié)議。
實施例所述的接收裝置包含接收器、加密電路及傳送器。接收器接收含有音頻數(shù)據(jù)的數(shù)據(jù)串流。加密電路耦接于接收器,該加密電路包含處理器和內(nèi)存,用以執(zhí)行:利用確認/加密協(xié)議,以確認來源裝置,將所接收到的音頻數(shù)據(jù)的至少一部分進行加密,將已加密的音頻數(shù)據(jù)的至少一部分予以分封化為子幀,嵌入第一前置碼,調(diào)整子幀,作為子幀的前導(dǎo),其依據(jù)該確認/加密協(xié)議,在該來源裝置中執(zhí)行更新密鑰(rekeying),以及加密子幀有效負載及后續(xù)多個子幀有效負載內(nèi)所含的音頻數(shù)據(jù)。傳送器耦接于該加密電路,該傳送器將調(diào)整后的子幀,通過第一數(shù)據(jù)鏈路,以傳送至該來源裝置。
附圖說明
圖1是本發(fā)明一實施例的系統(tǒng)方塊圖。
圖2是本發(fā)明一實施例的來源裝置的方塊圖。
圖3是本發(fā)明一實施例的接收裝置的方塊圖。
圖4是本發(fā)明一實施例的音頻數(shù)據(jù)的架構(gòu)圖。
圖5a至5c是本發(fā)明中音頻數(shù)據(jù)內(nèi)嵌前置碼以表示音頻數(shù)據(jù)的部分為已加密狀態(tài)的示意圖。
圖6是本發(fā)明一實施例的調(diào)整數(shù)據(jù)串流的步驟流程圖。
圖7是本發(fā)明另一實施例的系統(tǒng)方塊圖。
圖8是本發(fā)明一實施例的計算裝置的方塊圖。
具體實施方式
本發(fā)明可利用說明書中的若干較佳實施例及詳細敘述與所附圖式而得以了解。圖式中相同的組件符號是指本發(fā)明中的同一組件。然而,應(yīng)理解為,本發(fā)明的所有較佳實施例是僅用以說明而非用以限制申請專利范圍。
本發(fā)明將以較佳的實施例及觀點加以詳細敘述。下列圖式及描述提供本發(fā)明特定的施行細節(jié),以便于徹底了解這些實施例的實行方式。然而該領(lǐng)域的技術(shù)人員須了解本發(fā)明也可在不具備這些細節(jié)的條件下實行。此外,文中不會對一些已熟知的結(jié)構(gòu)或功能做細節(jié)描述,以避免各種實施例間不必要的相關(guān)描述的混淆,以下描述中的術(shù)語將以最廣義的合理方式解釋,即使其與本發(fā)明某特定實施例的細節(jié)描述一起使用。另外,附圖并未描繪實際實施例的每一特征,所描繪的圖式組件皆為相對尺寸而非按比例繪制。圖式中相同的組件符號代表相同的組件,然而,為清楚說明,在不同圖式中重復(fù)出現(xiàn)的組件未必會再標示組件符號。由參考下列詳細敘述,將可以更快速地了解上述觀點以及本發(fā)明的優(yōu)點,并且由下面的描述及附加圖式,更容易了解本發(fā)明的精神。
數(shù)字音頻數(shù)據(jù)是自接收裝置經(jīng)過回傳數(shù)據(jù)鏈路(例如:音頻回傳通道,arc)傳輸至來源裝置,在數(shù)字音頻數(shù)據(jù)的某一部分內(nèi)嵌前置碼,以表示音頻數(shù)據(jù)是否已加密。接收裝置在正確位置嵌入第一前置碼,作為音頻數(shù)據(jù)的子幀的前導(dǎo),其表示依據(jù)認證/加密協(xié)議,在來源裝置中執(zhí)行更新密鑰(rekey),以及在回傳數(shù)據(jù)鏈路上,自接收裝置傳送至來源裝置的音頻數(shù)據(jù)的部分為加密狀態(tài)。倘若在回傳數(shù)據(jù)鏈路上的部分音頻數(shù)據(jù)是未加密狀態(tài),則接收裝置在正確位置嵌入第二前置碼,以作為子幀的前導(dǎo)。
系統(tǒng)概要
下列所述的實施例中,是以hdcp作為全文hdmi的示例,應(yīng)當理解,也可依據(jù)本文所公開的原理,廣泛應(yīng)用于不同于hdcp的認證/加密協(xié)議/流程,以及不同于hdmi的傳輸協(xié)議/流程。
hdcp協(xié)議是于傳送器及接收器之間通信,傳送器確認接收器是否已被授權(quán)來接收加密保護數(shù)據(jù),傳送器利用hdcp協(xié)議以確認接收器。在確認(authentication)后,傳送器利用hdcp協(xié)議以加密數(shù)據(jù),并將已加密的數(shù)據(jù)傳輸至接收器,接收器利用hdcp協(xié)議對已接收到的加密數(shù)據(jù)執(zhí)行解密步驟,傳送器會定期發(fā)出指示,使接收器更新密鑰(rekey),更新密鑰(rekey)意旨在傳送器和接收器之間,交換持續(xù)通信的加密密鑰,更新密鑰能使來自傳送器的已接收的加密數(shù)據(jù),持續(xù)地被接收器解密。
圖1是本發(fā)明一實施例的系統(tǒng)100的方塊圖,系統(tǒng)100包含來源裝置102、接收裝置104、音頻裝置106和外部源(externalsource)108。來源裝置102經(jīng)由雙向的正向數(shù)據(jù)鏈路(forwarddatalink)112和返向數(shù)據(jù)鏈路(returndatalink)114,與接收裝置104耦接。來源裝置102經(jīng)音頻數(shù)據(jù)鏈路116耦接于音頻裝置106,接收裝置104經(jīng)視聽(audio/visual,av)數(shù)據(jù)鏈路118耦接于外部源108。
來源裝置102為數(shù)字內(nèi)容的來源端,而接收裝置104為重制數(shù)字內(nèi)容的消費裝置。如本文所述,接收裝置104可作為限定版數(shù)字內(nèi)容的來源,如音頻數(shù)據(jù)傳送至來源裝置102。來源裝置102包含av接收器、家庭劇院系統(tǒng)、dvd播放器、高畫質(zhì)dvd播放器、藍光播放器和計算機硬盤,音頻裝置106包含環(huán)繞音場系統(tǒng)(surroundsoundsystems)。
來源裝置102與接收裝置104具有兩種操作模式:第一模式與第二模式。盡管來源裝置102和接收裝置104大多操作其中一種模式,然而,在其他實施例中,來源裝置102和接收裝置104可操作混合模式(hybridmode),其來源裝置102接收來自接收裝置104的音頻數(shù)據(jù),而來源裝置102傳輸視頻/音頻數(shù)據(jù)至接收裝置104。在第一模式中,視頻數(shù)據(jù)自來源裝置102,經(jīng)正向數(shù)據(jù)鏈路112傳輸至音頻裝置106;在第二模式中,音頻數(shù)據(jù)自接收裝置104,經(jīng)返向數(shù)據(jù)鏈路114傳輸至音頻裝置106。在第二模式中,接收裝置104將音頻數(shù)據(jù)傳輸至來源裝置102,以傳送至音頻裝置106。在第二模式中,被傳輸?shù)囊纛l數(shù)據(jù)可能為加密狀態(tài),當?shù)诙J街械囊纛l數(shù)據(jù)已加密,音頻數(shù)據(jù)經(jīng)音頻數(shù)據(jù)鏈路116傳輸至音頻裝置106之前,來源裝置102會對已加密的音頻數(shù)據(jù)進行解密。
在一實施例中,在第二模式中,接收裝置104將自來源裝置102的視頻數(shù)據(jù)發(fā)送至顯示器。在一些實施例中,顯示器為接收裝置104的外部,在其他某些實施例中,接收裝置104包含顯示器。在第二模式中,接收裝置104將來自外部源108的音頻數(shù)據(jù)發(fā)送至來源裝置102。接收裝置104包含接收器、電視機和屏幕,外部源108包含ota天線、機頂盒和儲存裝置。
在一實施例中,正向數(shù)據(jù)鏈路112及返向數(shù)據(jù)鏈路114是由hdmi纜線實現(xiàn)的,在此實施例中,正向數(shù)據(jù)鏈路112包含單向高速主鏈路(如tmds鏈路)以及雙向慢速副鏈路(如ddc鏈路),返向數(shù)據(jù)鏈路114包含音頻回傳通道(arc),單向主鏈路是將來自來源裝置102的數(shù)據(jù),傳輸至接收裝置104,在返向數(shù)據(jù)鏈路114上所傳輸?shù)臄?shù)據(jù)為數(shù)字數(shù)據(jù)。
在第一模式中,來源裝置102利用正向數(shù)據(jù)鏈路112的副鏈路上hdcp協(xié)議,以確認接收裝置104。來源裝置102根據(jù)hdcp協(xié)議以加密視頻數(shù)據(jù),加密視頻數(shù)據(jù)的目的在于:從來源裝置102傳輸至接收裝置104時,可避免視頻數(shù)據(jù)非法盜取或拷貝,來源裝置102將已加密視頻數(shù)據(jù),經(jīng)正向數(shù)據(jù)鏈路112的主鏈路,傳輸至接收裝置104,接收裝置104接收已加密的視頻數(shù)據(jù),并依照hdcp協(xié)議對已加密視頻數(shù)據(jù)進行解密,并顯示。來源裝置102將音頻數(shù)據(jù)(與視頻數(shù)據(jù)相對應(yīng))通過音頻數(shù)據(jù)鏈路116,以傳輸至音頻裝置106。
在第二模式中,接收裝置104利用hdcp協(xié)議,在返向數(shù)據(jù)鏈路114上確認來源裝置102,接收裝置104接收視聽(audio/video,av)數(shù)據(jù)串流,其包含自外部源108經(jīng)視聽數(shù)據(jù)鏈路118的音頻數(shù)據(jù),接收裝置104對音頻數(shù)據(jù)(對應(yīng)hdcp協(xié)議)進行加密,并將已加密的音頻數(shù)據(jù)分封化為子幀。
從接收裝置104傳輸至來源裝置102的音頻數(shù)據(jù)可為高分辨率數(shù)字數(shù)據(jù),加密音頻數(shù)據(jù)的目的在于:當音頻數(shù)據(jù)自接收裝置104經(jīng)返向數(shù)據(jù)鏈路114傳輸至來源裝置102時,避免音頻數(shù)據(jù)遭非法盜取和拷貝。具體而言,接收裝置104在已分封化且已加密的音頻數(shù)據(jù)的子幀的前端嵌入第一前置碼,以表示子幀的負載及后續(xù)子幀的負載內(nèi)所含的音頻數(shù)據(jù)是加密狀態(tài),以及依據(jù)hdcp協(xié)議,在來源裝置102上更新密鑰,下文將詳細說明,并參照圖5a至5c所示。
返向數(shù)據(jù)鏈路114使接收裝置104傳輸數(shù)據(jù)至來源裝置102,詳言之,由接收裝置104確認來源裝置102的確認數(shù)據(jù),通過返向數(shù)據(jù)鏈路114來傳輸,返向數(shù)據(jù)鏈路114還將由接收裝置104傳輸至來源裝置102(如上游upstream)的已加密音頻數(shù)據(jù),予以分封化,如前所述,返向數(shù)據(jù)鏈路114可為arc,在arc上傳輸?shù)臄?shù)據(jù)為數(shù)字數(shù)據(jù)(digitaldata),返向數(shù)據(jù)鏈路114未將音頻數(shù)據(jù)自來源裝置102傳輸至接收裝置104(如下游downstream)。
在第二模式中,以hdcp協(xié)議對自接收裝置104傳輸至來源裝置102的音頻數(shù)據(jù)進行加密,其會伴隨著下列操作:接收裝置104確認來源裝置102,以及,在來源裝置102更新密鑰。倘若來源裝置102未定期更新密鑰,則會重復(fù)出現(xiàn)相同的任意數(shù)值,接收裝置104可定期嵌入第一前置碼至子幀前端,以產(chǎn)生信號命令來源裝置更新密鑰。相反地,當音頻數(shù)據(jù)未加密,且來源裝置102未更新密鑰,第二前置碼會插入或保留在子幀前端內(nèi)。
來源裝置的實施例:
圖2為來源裝置102的系統(tǒng)架構(gòu)圖,以便于將數(shù)據(jù)串流自接收裝置104導(dǎo)引至音頻裝置106。來源裝置102包含i/o端口(input/outputport)202/204、內(nèi)容儲存庫212、hdcp加密引擎214、hdmi傳送器216、回傳通道(returnchannel,rc)接收器218、hdcp解密引擎220、回傳通道傳送器222和音頻接口裝置224等,在其他諸多組件之間。來源裝置102分別通過i/o端口202和i/o端口204,各自作為接收裝置104和音頻裝置106的中間接口。來源裝置102可在兩種模式下操作。
在第一模式中,來源裝置102由hdcp協(xié)議以加密視頻數(shù)據(jù)。在主正向鏈路上,將已加密的視頻數(shù)據(jù)傳輸至接收裝置104,而在音頻數(shù)據(jù)鏈路116上,將音頻數(shù)據(jù)(與已加密視訊數(shù)據(jù)相對應(yīng))傳送至音頻裝置106。
在第一模式中,i/o端口202在正向數(shù)據(jù)鏈路112的側(cè)邊上,將第一確認數(shù)據(jù)(firstauthenticationdata)傳送至接收裝置104。第一、二確認數(shù)據(jù)為來源裝置102確認接收裝置104的相關(guān)數(shù)據(jù),再者,i/o端口202在正向數(shù)據(jù)鏈路112上,將第一數(shù)據(jù)串流(firstdatastream)傳送至接收裝置104。
在第二模式中,來源裝置102在返向數(shù)據(jù)鏈路114上,接收來自接收裝置104的音頻數(shù)據(jù),以及對已加密的音頻數(shù)據(jù)(假設(shè)為加密狀態(tài)時)進行解密,以及,在音頻數(shù)據(jù)鏈路116上,將已解密的音頻數(shù)據(jù)傳送至音頻裝置106。
在第二模式中,i/o端口202在返向數(shù)據(jù)鏈路114上,接收來自第三確認數(shù)據(jù)(thirdauthenticationdata)以及將第四確認數(shù)據(jù)(fourthauthenticationdata)傳送至接收裝置104,第三及第四確認數(shù)據(jù)為接收裝置104確認來源裝置102的相關(guān)數(shù)據(jù)。除此之外,i/o端口202在返向數(shù)據(jù)鏈路114上,接收來自接收裝置104的第二數(shù)據(jù)串流(seconddatastream)。第一、二模式中,i/o端口204皆在音頻數(shù)據(jù)鏈路116上,將第三數(shù)據(jù)串流傳送至音頻裝置106。
內(nèi)容儲存庫212所儲存的內(nèi)容包含視頻數(shù)據(jù)和音頻數(shù)據(jù),在一些實施例中,內(nèi)容儲存庫212作為光盤讀取器或硬盤;在另一實施例中,內(nèi)容儲存庫212耦接于來源裝置102的外部數(shù)據(jù)源。
內(nèi)容儲存庫212所接收的內(nèi)容由hdcp加密引擎214加密及分封化(packetize),hdcp加密引擎214為邏輯區(qū)塊(logicblock),hdcp加密引擎214可由硬件、計算機程序或及其組合執(zhí)行。hdcp加密引擎214包含處理器232a和內(nèi)存234a,內(nèi)存234a為非瞬時計算機可讀取儲存媒體,用以儲存指令,而處理器232a執(zhí)行儲存在內(nèi)存234a內(nèi)的指令。
在第一模式中,在返向數(shù)據(jù)鏈路114的側(cè)邊上,hdcp加密引擎214通過i/o端口202及hdcp協(xié)議,建立來源裝置102和接收裝置104間的第一安全鏈路,目的在于確認接收裝置104。確認接收裝置104過程中,在正向數(shù)據(jù)鏈路112的側(cè)邊上,hdcp加密引擎214將第一確認數(shù)據(jù)傳送至接收裝置104,以及接收來自接收裝置104的第二確認數(shù)據(jù),hdcp加密引擎214由第一、二確認數(shù)據(jù),以確認接收裝置104。
在第一模式中,hdcp加密引擎214利用hdcp協(xié)議以加密來自內(nèi)容儲存庫212的視頻數(shù)據(jù),將已加密的視頻數(shù)據(jù)予以分封化(packetize),以及,將已分封化且已加密的視頻數(shù)據(jù)傳送至hdmi傳送器216。
在第一模式中,在正向數(shù)據(jù)鏈路112上,hdmi傳送器216通過i/o端口202,將第一確認數(shù)據(jù)自hdcp加密引擎214傳送至接收裝置104,以及傳送第二確認數(shù)據(jù)至hdcp加密引擎214。進一步地,在正向數(shù)據(jù)鏈路112上,hdmi傳送器216通過i/o端口202,將第一數(shù)據(jù)串流自hdcp加密引擎214傳送至接收裝置104,第一數(shù)據(jù)串流包含已分封化且已加密的視頻數(shù)據(jù)。
在第二模式中,回傳通道接收器218通過i/o端口202,在返向數(shù)據(jù)鏈路114上,接收來自接收裝置104的第三確認數(shù)據(jù),第三確認數(shù)據(jù)為來源裝置102確認接收裝置104的相關(guān)數(shù)據(jù)?;貍魍ǖ澜邮掌?18將第三確認數(shù)據(jù)傳送至hdcp解密引擎220,進一步地,回傳通道接收器218通過i/o端口202,在返向數(shù)據(jù)連接114上,接收來自接收裝置104的第二數(shù)據(jù)串流,第二數(shù)據(jù)串流包含已分封化且已加密的音頻數(shù)據(jù)串流?;貍魍ǖ澜邮掌?18包含頻率數(shù)據(jù)復(fù)原電路(clockdatarecoverycircuit),以自第二數(shù)據(jù)串流中擷取數(shù)字數(shù)據(jù),如:已分封化且已加密的音頻數(shù)據(jù)串流。
hdcp解密引擎220為邏輯區(qū)塊,其解密數(shù)據(jù)串流(如第二數(shù)據(jù)串流),hdcp解密引擎220可由硬件、計算機程序或其組合而執(zhí)行,hdcp解密引擎220包含處理器232b和內(nèi)存234b,其操作及功能相同于hdcp加密引擎214的處理器232a和內(nèi)存234a,在此不加以贅述。
第二模式中,hdcp解密引擎220通過i/o端口202在返向數(shù)據(jù)鏈路114上,利用hdcp協(xié)議以建立接收裝置104和來源裝置102間的第二安全鏈路,以便于確認接收裝置104,在確認過程中,hdcp解密引擎220接收來自接收裝置104的第三確認數(shù)據(jù),以及將第四確認數(shù)據(jù)傳送至接收裝置104。hdcp解密引擎220由第三、四確認數(shù)據(jù)以驗證接收裝置104。更進一步地,hdcp解密引擎220接收第二數(shù)據(jù)串流,其包含已分封化且已加密的音頻數(shù)據(jù)串流。
第二模式中,倘若已分封化且已加密的音頻數(shù)據(jù)串流的子幀前導(dǎo)含有第一前置碼,hdcp解密引擎220將依據(jù)hdcp協(xié)議以更新密鑰。在第二模式中,依據(jù)hdcp協(xié)議,hdcp解密引擎220解密子幀有效負載內(nèi)所含的音頻數(shù)據(jù),以及解密后續(xù)子幀有效負載的已分封化且已加密的音頻數(shù)據(jù)串流,hdcp解密引擎220將已解密的音頻數(shù)據(jù)串流傳送至音頻裝置106。
在第二模式中,回傳通道傳送器222接收來自hdcp解密引擎220的第四確認數(shù)據(jù),第四確認數(shù)據(jù)為接收裝置104確認來源裝置102的相關(guān)數(shù)據(jù)。回傳通道傳送器222通過i/o端口202,在返向數(shù)據(jù)鏈路114上,將第四確認數(shù)據(jù)傳送至接收裝置104,回傳通道傳送器222包含模擬電路,如序列器(serializer)。
音頻接口裝置224將接收來自hdcp解密引擎220的已解密音頻數(shù)據(jù)串流,處理所接收到的音頻數(shù)據(jù)串流,以及,通過i/o端口202將第三數(shù)據(jù)串流傳送至音頻裝置106,而第三數(shù)據(jù)串流是包含上述已處理的音頻數(shù)據(jù)串流。處理音頻數(shù)據(jù)串流的步驟/程序包含:將已解密的音頻數(shù)據(jù)串流調(diào)整為由音頻數(shù)據(jù)重制格式。
hdcp加密引擎214與hdmi傳送器216可組合為一單一組件。在一實施例中,回傳通道接收器218和回傳通道傳送器222可組合為一單一組件。在一實施例中,來源裝置102包含音頻裝置106。
接收裝置的實施例:
圖3是接收裝置104的系統(tǒng)方塊圖,以便于將第二數(shù)據(jù)串流自接收裝置104導(dǎo)引至音頻裝置106。接收裝置104可包含i/o端口302、接收器306、hdcp加密引擎314、回傳通道傳送器322、回傳通道接收器318、hdmi接收器310及hdcp解密引擎320等,在其他諸多組件之間。
接收裝置104可在兩種模式下操作。在第一模式下,接收裝置104在正向數(shù)據(jù)鏈路112上,接收來自來源裝置102的已加密的視頻數(shù)據(jù),解密上述已加密的視頻數(shù)據(jù),以及,將已解密的視頻數(shù)據(jù)傳送至顯示器352。在第二模式中,接收裝置104接收數(shù)據(jù)串流,其包含音頻數(shù)據(jù)或音/視頻數(shù)據(jù),在返向數(shù)據(jù)鏈路114上,將音頻數(shù)據(jù)串流傳送至來源裝置102,倘若在返向數(shù)據(jù)鏈路114上的音頻數(shù)據(jù)串流將被加密,接收裝置104將執(zhí)行相關(guān)的加密程序,以及,將加密后的音頻數(shù)據(jù)串流傳送至來源裝置102。
接收裝置104通過i/o端口302與來源裝置102接合。在第一模式中,i/o端口302在正向數(shù)據(jù)鏈路112上,接收來自來源裝置102的第一確認數(shù)據(jù),以及,將第二確認數(shù)據(jù)傳送至來源裝置102。第一、二確認數(shù)據(jù)為來源裝置102確認接收裝置104的相關(guān)數(shù)據(jù);除此之外,i/o端口302在正向數(shù)據(jù)鏈路112上,接收來自來源裝置102的第一數(shù)據(jù)串流。在第二模式中,i/o端口302在返向數(shù)據(jù)鏈路114上,傳送第三確認數(shù)據(jù)至來源裝置102,以及接收來自來源裝置102的第四確認數(shù)據(jù),第三、四確認數(shù)據(jù)為接收裝置104確認來源裝置102的相關(guān)數(shù)據(jù);除此之外,i/o端口302在返向數(shù)據(jù)鏈路114上,傳送第二數(shù)據(jù)串流至來源裝置102。
在第二模式中,接收器306在視聽數(shù)據(jù)鏈路118上,接收來自外部源108的av數(shù)據(jù)串流,av數(shù)據(jù)串流包含音頻數(shù)據(jù)和視頻數(shù)據(jù),接收器306將視頻數(shù)據(jù)串流(視頻數(shù)據(jù))傳送至顯示器352,以及,將音頻數(shù)據(jù)串流(包含音頻數(shù)據(jù))傳送至hdcp加密引擎314。
hdcp加密引擎314為邏輯區(qū)塊,其可加密及分封化接收自接收器306的音頻數(shù)據(jù)串流。hdcp加密引擎314可由硬件組件、計算機程序或其組合加以實現(xiàn)。hdcp加密引擎314包含處理器332b和內(nèi)存334b,其操作及功能相同于hdcp加密引擎214的處理器232a和內(nèi)存234a,因此,在此不再加以贅述。
在第二模式中,hdcp加密引擎314在返向數(shù)據(jù)鏈路114上,通過i/o端口302,利用hdcp協(xié)議,以建立接收裝置104和來源裝置102間的第二安全鏈路,以便于確認來源裝置102。在確認過程中,hdcp加密引擎314將第三確認數(shù)據(jù)傳送至來源裝置102,以及,接收來自來源裝置102的第四確認數(shù)據(jù),hdcp加密引擎314由第三、四確認數(shù)據(jù)以確認來源裝置102。
在第二模式中,hdcp加密引擎314利用hdcp協(xié)議以加密音頻數(shù)據(jù)串流,以及將已加密的音頻數(shù)據(jù)串流分封化為子幀(sub-frame)。hdcp加密引擎314在子幀嵌入第一前置碼,調(diào)整子幀,以作為已分封化且已加密的數(shù)據(jù)的子幀前導(dǎo),用以表示在來源裝置102內(nèi)依據(jù)hdcp協(xié)議更新密鑰,以及表示子幀有效負載內(nèi)的音頻數(shù)據(jù),與后續(xù)預(yù)定數(shù)目的子幀有效負載為已加密狀態(tài)。在一實施例中,后續(xù)子幀的預(yù)設(shè)數(shù)目為63,下文及圖5a至5c所示將詳細說明hdcp加密引擎314將已分封化且已加密的音頻數(shù)據(jù)串流傳送至回傳通道傳送器322。
在一實施例中,依據(jù)來自外部源108的指示,hdcp加密引擎314決定是否將音頻數(shù)據(jù)串流某部分加密,倘若音頻數(shù)據(jù)串流某部分需要被加密,hdcp加密引擎314將依據(jù)hdcp協(xié)議,加密音頻數(shù)據(jù)串流的一部分,以及,將音頻數(shù)據(jù)串流的已加密部分予以封分化為子幀。
在第二模式中,回傳通道傳送器322接收來自hdcp加密引擎314的第三確認數(shù)據(jù),第三確認數(shù)據(jù)為接收裝置104確認來源裝置102的相關(guān)數(shù)據(jù),回傳通道傳送器322在返向數(shù)據(jù)鏈路114上,通過i/o端口302將第三確認數(shù)據(jù)傳送至來源裝置102,更進一步地,回傳通道傳送器322通過i/o端口302,將第二數(shù)據(jù)串流(包含已分封化且已加密的音頻數(shù)據(jù)串流)傳送至來源裝置102,回傳通道傳送器322包含模擬電路,如序列器(serializer)。
第二模式中,回傳通道接收器318在返向數(shù)據(jù)鏈路114上,通過i/o端口302,接收來自來源裝置102的第四確認數(shù)據(jù),第四確認數(shù)據(jù)為接收裝置104確認來源裝置102的相關(guān)數(shù)據(jù)?;貍魍ǖ澜邮掌?18包含頻率數(shù)據(jù)復(fù)原電路(clockdatarecoverycircuit),以自第二數(shù)據(jù)串流中擷取數(shù)字數(shù)據(jù),如:已分封化且已加密的音頻數(shù)據(jù)串流。
在第一模式中,hdmi接收器310接收來自來源裝置102的第一確認數(shù)據(jù),以及將第一確認數(shù)據(jù)傳送至hdcp解密引擎320。hdmi接收器310在正向數(shù)據(jù)鏈路112上,通過i/o端口302,將第二確認數(shù)據(jù)自hdcp解密引擎320傳送至來源裝置102。更進一步地,hdmi接收器310在正向數(shù)據(jù)鏈路112上,通過i/o端口302,接收來自來源裝置102的第一數(shù)據(jù)串流(包含已分封化且已加密的視頻數(shù)據(jù)),以及,將第一數(shù)據(jù)串流傳送至hdcp解密引擎320。
hdcp解密引擎320為邏輯區(qū)塊,用以解密數(shù)據(jù)串流,如第一數(shù)據(jù)串流,hdcp解密引擎320可由硬件組件、計算機程序或其組合以實現(xiàn)。hdcp解密引擎320包含處理器332a和內(nèi)存334a,其操作及功能相同于hdcp加密引擎214的處理器232a和內(nèi)存234a,故在此不再加以贅述。
在第一模式中,hdcp解密引擎320在正向數(shù)據(jù)鏈路112上,通過i/o端口302,利用hdcp協(xié)議,建立來源裝置102和接收裝置104間的第一安全鏈路,以便于hdcp解密引擎320確認來源裝置102。在確認過程中,hdcp解密引擎320接收來自來源裝置102的第一確認數(shù)據(jù),以及,將來第二確認數(shù)據(jù)傳送至來源裝置102,hdcp解密引擎320由第一、二確認數(shù)據(jù),以確認來源裝置102。
hdcp解密引擎320接收第一數(shù)據(jù)串流,其包含來自來源裝置102的已分封化且已加密的視頻數(shù)據(jù),hdcp解密引擎320由hdcp協(xié)議,將已分封化且已加密的視頻數(shù)據(jù)予以解密,以及,將解密后的視頻數(shù)據(jù)傳送至顯示器352。
在一實施例中,hdcp解密引擎320和hdmi接收器310可組合為一單一組件。在一實施例中,回傳通道傳送器322和回傳通道接收器318可組合為一單一組件。在一些實施例中,接收裝置104包含顯示器352;而在另一些實施例中,顯示器352為接收裝置104的外部裝置。
音頻區(qū)塊格式的實施例:
圖4所示是符合國際電工委員會(iec)標準60958(2004年,第二版)的規(guī)范的音頻數(shù)據(jù)的區(qū)塊402的示意圖,引用其內(nèi)容作為本文的公開內(nèi)容。區(qū)塊402包含一組0-191的連續(xù)幀,區(qū)塊402包含192個幀,每一0-191幀包含兩個依序子幀:子幀(subframe)0和子幀1,每一子幀(也就是,子幀0,子幀1)包含同步前導(dǎo)404、輔助數(shù)據(jù)(aux)406、音頻采樣字符(audiosampleword)408、有效旗標(validityflag)410、用戶數(shù)據(jù)(userdata)412、通道狀態(tài)(channelstatus)414及同位(paritybit)416,每一子幀包含位0-31(即為32位)。
位0-3包含同步前導(dǎo)404,位4-7包含輔助數(shù)據(jù)(aux)406,位8-27包含音頻采樣字符408,位28包含有效旗標(validityflag)410,位29包含用戶數(shù)據(jù)412,位30包含通道狀態(tài)414,位31包含同位(paritybit)416,由此,每一幀包含64個位,總言之,每一區(qū)塊402包含12,288個位,倘若數(shù)據(jù)的傳輸速度為50mbps者,則區(qū)塊402的傳輸速度為0.24576ms。
以iec30958標準所制定的規(guī)范而言,在兩通道操作模式中,連續(xù)子幀0和子幀1含有兩通道(通道0和通道1)所傳送的采樣(sample),子幀0包含來自通道0的采樣,子幀1包含來自通道1的采樣。
子幀0和子幀1的同步前導(dǎo)404提供關(guān)于區(qū)塊402的同步和驗證信息,為了在采樣期間內(nèi)完成同步以及確認可信性,同步前導(dǎo)404會特意地違背雙相標示編碼(biphasemarkcoding,bmc)原則,以區(qū)別同步前導(dǎo)404與其他子幀(如aux406、音頻采樣字符408、有效旗標410、用戶數(shù)據(jù)412、通道狀態(tài)414及同位416)的不同。
區(qū)塊(如區(qū)塊402)的幀0的子幀0的同步前導(dǎo)404可能包含不是第一前置碼(bsync),就是第二前置碼(b)。第一前置碼(bsync)表示依據(jù)hdcp協(xié)議,在來源裝置102中更新密鑰,而幀0的子幀0的有效負載及后續(xù)子幀(例如,區(qū)塊402幀0到191的子幀0及1)的有效負載所含的音頻數(shù)據(jù)為加密狀態(tài)。進一步地,第一前置碼(bsync)表示:區(qū)塊402的開始,以及后續(xù)對應(yīng)至通道0的音頻采樣字符408。每隔64個區(qū)塊,區(qū)塊402的幀0的子幀0的同步前導(dǎo)404可包含第一前置碼(bsync)。承上述實施例,倘若區(qū)塊402以速度0.24576ms傳送,則區(qū)塊402的64個位的傳輸速度為17.5ms。第二前置碼(b)表示為區(qū)塊402開始,及后續(xù)對應(yīng)至通道0的音頻采樣字符408。
區(qū)塊402的后續(xù)幀(如幀1-191)的子幀0的同步前導(dǎo)404包含第三前置碼(m),其表示后續(xù)與通道0相對應(yīng)的音頻采樣字符408。區(qū)塊402的所有幀0-191的子幀1內(nèi)所含的同步前導(dǎo)404包含第四前置碼(w),其表示后續(xù)與通道1相對應(yīng)的音頻采樣字符408。
aux輔助數(shù)據(jù)406包含輔助數(shù)據(jù),如音頻數(shù)據(jù)與狀態(tài)信息,音頻采樣字符408為數(shù)字音頻采樣的值,以二補碼二進制(two’scomplementbinaryform)來表示音頻采樣字符408。
有效旗標410用以表示音頻采樣字符408的數(shù)據(jù)位的可信度。舉例而言,有效旗標410若為“0”,則表示音頻采樣字符408的數(shù)據(jù)位為可信;有效旗標410為“1”,則為不可信。在一些實施例中,有效旗標也可進一步表示aux輔助數(shù)據(jù)406的數(shù)據(jù)位的可信度與否。有效旗標410表示用戶信息。由來源裝置102解密的主數(shù)據(jù)通道,其相關(guān)數(shù)據(jù)可由通道狀態(tài)414表示。因接口失靈所造成的錯誤,則同位416將會提供奇數(shù)偵測(detectionofanoddnumber)。
以上闡述了iec60958標準應(yīng)用于本發(fā)明實施例的規(guī)范,熟知該項技術(shù)領(lǐng)域的通常知識者應(yīng)當理解,本發(fā)明也可套用其他標準規(guī)范。
圖5a是表示本發(fā)明自接收裝置104傳送至來源裝置102的音頻數(shù)據(jù)串流的數(shù)據(jù)結(jié)構(gòu)區(qū)塊圖。如圖5a所示,音頻數(shù)據(jù)串流的區(qū)塊502為非加密狀態(tài),區(qū)塊504和區(qū)塊506為加密狀態(tài),而區(qū)塊504在區(qū)塊502后傳輸,區(qū)塊506在區(qū)塊504后傳輸。
hdcp加密引擎314決定音頻數(shù)據(jù)串流某部分為不加密狀態(tài),舉例而言,參閱圖5a、5b所示,區(qū)塊502為不加密狀態(tài),hdcp加密引擎314未對音頻數(shù)據(jù)串流的部分進行加密,且未將音頻數(shù)據(jù)串流分封化為區(qū)塊502。hdcp加密引擎314決定加密音頻數(shù)據(jù)串流的部分,舉例而言,如圖5a、5b所示,區(qū)塊504為加密狀態(tài),區(qū)塊504包含音頻數(shù)據(jù)串流的64個區(qū)塊(如傳輸速度為15.7ms的音頻數(shù)據(jù)串流),加密部分可包含比64個區(qū)塊更多或更少的音頻數(shù)據(jù)串流,hdcp加密引擎314對音頻數(shù)據(jù)的部分進行加密,且將音頻數(shù)據(jù)串流分封化為區(qū)塊504。hdcp加密引擎314嵌入第一前置碼(bsync),以作為區(qū)塊504的幀0的子幀0的導(dǎo)引,第一前置碼(bsync)表示:依據(jù)hdcp協(xié)議,在來源裝置102中更新密鑰,以及64個區(qū)塊(如區(qū)塊504)包含已加密數(shù)據(jù)。在一實施例中,區(qū)塊0的幀0的子幀0包含第二前置碼(b),在此實施例中,加密引擎314以第一前置碼(bsync)取代第二前置碼(b),區(qū)塊1-63的幀0的子幀0包含第二前置碼,在63個幀后,hdcp加密引擎314決定是否加密后續(xù)音頻數(shù)據(jù)串流的部分。
在一實施例中,hdcp加密引擎314決定加密后續(xù)音頻數(shù)據(jù)串流的部分,舉例而言,圖5a中的后續(xù)部分為區(qū)塊506,hdcp加密引擎314對后續(xù)音頻數(shù)據(jù)串流的部分進行加密、分封化為區(qū)塊506、以及嵌入第一前置碼(bsync)作為導(dǎo)引。
在另一實施例中,hdcp加密引擎314決定后續(xù)音頻數(shù)據(jù)串流的部分為非加密狀態(tài),舉例而言,圖5b中的后續(xù)部分區(qū)塊508為非加密狀態(tài),在此實施例中,hdcp加密引擎314未對后續(xù)音頻數(shù)據(jù)串流的部分進行加密,也不進行分封化。
hdcp加密引擎314決定音頻數(shù)據(jù)串流第一部分為加密狀態(tài),第二部分為非加密狀態(tài),第三部分為加密狀態(tài),第四部分為非加密狀態(tài),以圖5c所示為例,區(qū)塊512為第一部分,區(qū)塊514為第二部分,區(qū)塊516為第三部分,區(qū)塊518為第四部份。在一實施例中,區(qū)塊512和區(qū)塊516如同圖5a和5b所示的區(qū)塊504,而區(qū)塊514和區(qū)塊518如同圖5b所示的區(qū)塊508。圖5c所示的區(qū)塊514包含兩個區(qū)塊,可以包含更多或更少區(qū)塊,區(qū)塊518也可包含更多或更少區(qū)塊。因此,hdcp加密引擎314可不對第二部分(區(qū)塊514)和第四部份(區(qū)塊518)進行加密,而區(qū)塊514和區(qū)塊518包含任一區(qū)塊。
調(diào)整數(shù)據(jù)串流的流程:
圖6是本發(fā)明調(diào)整數(shù)據(jù)串流(自接收裝置104至來源裝置102)的流程圖。步驟602(authentication):接收裝置104鑒別確認來源裝置102,具體而言,步驟602是在返向數(shù)據(jù)鏈路114上,利用hdcp協(xié)議,hdcp加密引擎314鑒別確認來源裝置102。
步驟604(receive):在視聽數(shù)據(jù)鏈路118上,接收器306用以接收來自外部源108的av數(shù)據(jù)串流,av數(shù)據(jù)串流包含音頻數(shù)據(jù)和視頻數(shù)據(jù),接收器306將音頻數(shù)據(jù)串流(包含音頻數(shù)據(jù))傳輸至hdcp加密引擎。
步驟606(encrypt):由hdcp協(xié)議,hdcp加密引擎314對音頻數(shù)據(jù)的至少一部分進行加密步驟。步驟608(packetize):hdcp加密引擎314對已加密的音頻數(shù)據(jù)串流,予以分封化為區(qū)塊(包含子幀)。舉例而言,hdcp加密引擎314分封化音頻數(shù)據(jù)串流,致使已分封化的音頻數(shù)據(jù)串流包含音頻區(qū)塊,每一音頻區(qū)塊包含192個幀,每一幀包含兩個子幀,每一子幀包含至少一前導(dǎo)及一音頻采樣字符。
步驟610(modify):hdcp加密引擎314嵌入第一前置碼作為子幀的前導(dǎo),調(diào)整幀,以表示在來源裝置102中更新密鑰,以及表示子幀有效負載以及后續(xù)子幀有效負載的音頻數(shù)據(jù)的至少一部分為加密狀態(tài)。在一實施例中,步驟610由嵌入第一前置碼作為子幀前導(dǎo),調(diào)整子幀的步驟還包含:以第一前置碼取代第二前置碼。
步驟612(transmit):已調(diào)整且已分封化的加密音頻數(shù)據(jù)串流通過hdcp加密引擎314傳輸至回傳通道傳送器322,在返向數(shù)據(jù)鏈路114上,將第二數(shù)據(jù)串流(包含已調(diào)整且已分封化的加密音頻數(shù)據(jù))傳輸至來源裝置102。
本發(fā)明不限于圖6顯示的一連串步驟的實施例,可因?qū)嶋H需求而有所變動或潤飾。舉例而言:承前述步驟604接收av數(shù)據(jù)串流(包含音頻數(shù)據(jù))是發(fā)生在步驟602接收裝置確認來源裝置的步驟后,除此之外,步驟604接收數(shù)據(jù)串流也可在步驟602前執(zhí)行。同樣地,步驟608分封化音頻數(shù)據(jù)步驟是發(fā)生在步驟606加密音頻數(shù)據(jù)步驟后,除此之外,步驟608分封化音頻數(shù)據(jù)步驟也可在步驟606前執(zhí)行。
本文所述的電路可執(zhí)行特定功能、i/o端口,一些電路可由可編程處理器執(zhí)行,而可編程處理器是由媒體(非瞬時計算機可讀取媒體)、混和功能邏輯、配置邏輯(如field可編程gatearray邏輯)及其組合之一的連串指令而操控。舉例而言,所公開的加密電路可由可編程處理器及混和功能邏輯已執(zhí)行,例如加密邏輯的某一部分。
替代附加實施例:
圖7所示是根據(jù)另一實施例顯示系統(tǒng)700的方塊圖,系統(tǒng)700包含來源裝置102、接收裝置104、音頻裝置106及外部源108。來源裝置102和接收裝置104經(jīng)正向數(shù)據(jù)鏈路112和返向數(shù)據(jù)鏈路714以相互耦接,不同于圖1所示的返向數(shù)據(jù)鏈路114,圖7所示的返向數(shù)據(jù)鏈路714為單向鏈路(unidirectionallink),其將來自接收裝置104的數(shù)據(jù)傳送至來源裝置102。在此實施例中,來源裝置102的hdcp加密引擎314在返向數(shù)據(jù)鏈路714及正向數(shù)據(jù)鏈路112側(cè)邊上,通過i/o端口302,以確認來源裝置102。在確認過程中,hdcp加密引擎314在返向數(shù)據(jù)鏈路714上,將第三確認數(shù)據(jù)傳送至來源裝置102上,以及在正向數(shù)據(jù)鏈路側(cè)邊上,接收來自來源裝置102的第四確認數(shù)據(jù)。
圖8是本發(fā)明計算裝置800的方塊圖,其用以執(zhí)行與hdcp加密引擎214、314及hdcp解密引擎220、320的相關(guān)操作。計算裝置800包含處理器812、輸入模塊816、輸出模塊820、內(nèi)存(或記憶模塊)826及用以將前述組件耦接的總線827,在其他諸多組件之間。處理器812執(zhí)行儲存于內(nèi)存826的指令,輸入模塊816包含用以接收用戶的輸入設(shè)備,如鍵盤和點擊設(shè)備(如鼠標和觸控屏幕),輸出模塊820包含顯示設(shè)備,或與顯示設(shè)備通信的接口裝置。
內(nèi)存826為非瞬時計算機可讀取儲存媒體,其包含數(shù)據(jù)庫830、電子設(shè)計自動化(electronicdesignautomation,eda)程序834及集成電路(ic)設(shè)計836,在其他諸多組件之間。數(shù)據(jù)庫830包含不同電路組件的數(shù)據(jù),如hdcp加密引擎214、314與hdcp解密引擎220、320。電子設(shè)計自動化程序834包含用以設(shè)計集成電路(ic)的軟件程序,如電路布局與繞線工具(placeandroutetools)、綜合工具(synthesistools)及驗證工具(verificationtools)。由電子設(shè)計自動化程序834所設(shè)計的過程,可儲存于集成電路(ic)設(shè)計836內(nèi),集成電路(ic)設(shè)計836為全操作電路或部分大型ic電路,集成電路(ic)設(shè)計836包含下列的數(shù)字表示(digitalrepresentation):一或多個回傳通道接收器218、來源裝置102和hdcp加密引擎314的hdcp解密引擎220和回傳通道傳送器222、接收裝置104的回傳通道接收器318和回傳通道傳送器322。
本文所述的原則涵蓋其他不同于mhl及/或hdcp的協(xié)議,舉例而言,相似的實施例可采用hdmi2.0的hdcp以實現(xiàn)。
在不脫離本發(fā)明精神與范圍下,上述裝置/組件及其相關(guān)方法可允許變動或潤飾。應(yīng)當理解的是,先前所述的說明及其附圖僅用以解釋,而非限制本發(fā)明的范圍。下述申請專利范圍廣泛涵蓋本文所述的通用和特定技術(shù)特征,以及本發(fā)明探討方法和系統(tǒng)的陳述應(yīng)落入在申請專利范圍中,不受相異語言而有所影響。