一種視頻數據安全加密傳輸方法和系統與流程
2023-11-30 15:38:01
本發明涉及一種數據傳輸方法和系統,具體涉及一種視頻數據安全加密傳輸方法和系統。
背景技術:
現有技術流媒體伺服器軟體在傳輸視頻數據時採用人工設定的密碼對視頻數據進行加密並傳輸,當需要在客戶端軟體上播放視頻時需要手動輸入密碼,驗證通過後播放實時視頻流或回放歷史錄像。這種方式存在以下問題:密碼固定,為保證其安全性,需要定期進行更改,更改密碼後,需要通過人工的方式通知客戶端使用者,操作不便且存在安全隱患。
現有技術採用人工記錄歷史密碼和歷史錄像文件對應的方式,密碼丟失後將導致歷史錄像文件無法播放。密碼不易保管,完全靠記憶,易洩露。監控平臺或前端攝像機對視頻數據進行加密,但是密碼及密鑰信息使用明文傳輸,將加密使用的密碼或密鑰使用明文和數據一起傳輸,提取到密碼或密鑰後就能破解加密數據,存在安全隱患。
現有技術加密和解密算法都由一個研發團隊實現,內部研發人員可以解密信息,存在安全隱患。
現有技術採用前端攝像機實現加密方法,依賴前端攝像機能力,需要前端攝像機支持加密,而且前端攝像機的加密協議必須與安防平臺統一,增加了系統建造成本。
現有技術視頻數據在網路上使用明文傳輸,會被非法入侵或者黑客攻擊,截取傳輸數據,篡改或者替換數據。導致監控中心無法對現場畫面進行有效的判斷,甚至被替換後的數據欺騙。以便達到非法的目的。部分敏感區域圖像數據可能會被權限不足的用戶訪問。由於數據都是明文,只要拿到數據流或者文件,就可以通過播放器進行播放,會導致敏感數據被非法訪問。
技術實現要素:
為了解決上述問題,本發明提出一種視頻數據安全加密傳輸方法,其特徵在於,包括步驟:
S1、流媒體伺服器端隨機產生第一密碼,並使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀;
S2、流媒體伺服器端使用硬體加密鎖對第一密碼進行加密得到第一密碼加密文件,使用硬體加密鎖對第一加密關鍵幀進行加密得到第二加密關鍵幀,傳輸包括第二加密關鍵幀、第一密碼加密文件、使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的加密算法算法類型信息的視頻數據;
S3、客戶端獲取包括第二加密關鍵幀、第一密碼加密文件、使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的加密算法算法類型信息的視頻數據;
S4、客戶端通過與硬體加密鎖配對的硬體解密鎖對第二加密關鍵幀解密得到第一加密關鍵幀,通過與硬體加密鎖配對的硬體解密鎖對第一密碼加密文件進行解密得到第一密碼,使用第一密碼對第一加密關鍵幀進行解密。
進一步的,所述步驟S2中流媒體伺服器端隨機產生的第一密碼定時更換。
進一步的,所述步驟S2中流媒體伺服器端使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的加密算法定時更換。
為了保證上述方法的實施,本發明還提供一種視頻數據安全加密傳輸系統,包括下列單元:
用於流媒體伺服器端隨機產生第一密碼,並使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的第一加密單元;
用於流媒體伺服器端使用硬體加密鎖對第一密碼進行加密得到第一密碼加密文件,使用硬體加密鎖對第一加密關鍵幀進行加密得到第二加密關鍵幀的第二加密單元,
用於伺服器端傳輸包括第二加密關鍵幀、第一密碼加密文件、使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的加密算法算法類型信息的視頻數據的數據傳輸單元,
用於客戶端獲取包括第二加密關鍵幀、第一密碼加密文件、使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的加密算法算法類型信息的視頻數據的數據接收單元;
用於客戶端通過與硬體加密鎖配對的硬體解密鎖對第二加密關鍵幀解密得到第一加密關鍵幀,通過與硬體加密鎖配對的硬體解密鎖對第一密碼加密文件進行解密得到第一密碼,使用第一密碼對第一加密關鍵幀進行解密的解密單元。
進一步的,第一加密單元隨機產生的第一密碼定時更換。
進一步的,第一加密單元中的加密算法定時更換。
本發明的有益效果是,第一密碼為隨機生成,且定時更新保證了安全性。隨機密碼經過硬體加密和視頻數據經過一次軟體加密一次硬體加密,安全性更高。內部研發人員知道視頻數據的軟體加密算法,但是不知道外部硬體加密鎖的算法,無法提取隨機密碼。即使知道隨機密碼,沒有硬體加密鎖時也不能解密數據。不用人工輸入和人工記憶密碼,杜絕了人為洩密的隱患。用戶在客戶端軟體播放視頻時只需要插入配對的硬體加密鎖即可播放加密視頻,不用關心密碼內容,用戶體驗好;播放完成後取走硬體加密鎖則不能再播放加密視頻,使用過程不會產生密碼洩露,硬體加密鎖加密算法不可逆,安全係數高,即使知道隨機密碼的內容沒有配對的硬體加密鎖也無法解密。每一幀視頻數據包含了加密的算法類型和加密後的隨機密碼,更新加密算法不影響歷史視頻的播放。加密不依賴於前端攝像機。加密在流媒體伺服器端實現,與前端攝像機是否支持加密無關,只要流媒體伺服器收到前端攝像機的視頻數據即可實現加密。只對關鍵幀進行加密,減少了加密的工作量,但是依然能夠取得較好的效果。
附圖說明
圖1為本發明視頻數據安全加密傳輸方法流程圖
圖2為本發明視頻數據安全加密傳輸系統架構圖
具體實施方式
圖1為本發種視頻數據安全加密傳輸方法流程圖
圖2為本發明視頻數據安全加密傳輸系統架構圖
圖中標號說明
100為第一加密單元,200為第二加密單元,300為數據傳輸單元,400為數據接收單元,500為解密單元,600為硬體加密鎖,700為硬體解密鎖 。
實施例1:本發明提出一種視頻數據安全加密傳輸方法,其特徵在於,包括步驟:
S1、流媒體伺服器端隨機產生第一密碼,並使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀;
只對關鍵幀進行加密減少了加密的工作量,缺少關鍵幀視頻無法播放,依然能取到很好的加密效果。
S2、流媒體伺服器端使用硬體加密鎖對第一密碼進行加密得到第一密碼加密文件,使用硬體加密鎖對第一加密關鍵幀進行加密得到第二加密關鍵幀,傳輸包括第二加密關鍵幀、第一密碼加密文件、使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的加密算法算法類型信息的視頻數據;
對第一加密關鍵幀和第一密碼使用硬體加密增加了系統的安全性。隨機密碼經過硬體加密和視頻數據經過一次軟體加密一次硬體加密,安全性更高。內部研發人員知道視頻數據的軟體加密算法,但是不知道外部硬體加密鎖的算法,無法提取隨機密碼。即使知道隨機密碼,沒有硬體加密鎖時也不能解密數據。用戶在客戶端軟體播放視頻時只需要插入配對的硬體加密鎖即可播放加密視頻,不用關心密碼內容,用戶體驗好
S3、客戶端獲取包括第二加密關鍵幀、第一密碼加密文件、使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的加密算法算法類型信息的視頻數據;
S4、客戶端通過與硬體加密鎖配對的硬體解密鎖對第二加密關鍵幀解密得到第一加密關鍵幀,通過與硬體加密鎖配對的硬體解密鎖對第一密碼加密文件進行解密得到第一密碼,使用第一密碼對第一加密關鍵幀進行解密。
用戶在客戶端軟體播放視頻時只需要插入配對的硬體加密鎖即可播放加密視頻,不用關心密碼內容,用戶體驗好;播放完成後取走硬體加密鎖則不能再播放加密視頻,使用過程不會產生密碼洩露,硬體加密鎖加密算法不可逆,安全係數高,即使知道隨機密碼的內容沒有配對的硬體加密鎖也無法解密。每一幀視頻數據包含了加密的算法類型和加密後的隨機密碼,更新加密算法不影響歷史視頻的播放。
進一步的,所述步驟S2中流媒體伺服器端隨機產生的第一密碼定時更換。
第一密碼定時更換增加了系統的安全性。
進一步的,所述步驟S2中流媒體伺服器端使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的加密算法定時更換。
加密算法定時更換增加了系統的安全性。
實施例2:本發明還提供一種視頻數據安全加密傳輸系統,包括下列單元:
用於流媒體伺服器端隨機產生第一密碼,並使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的第一加密單元100;
只對關鍵幀進行加密減少了加密的工作量,缺少關鍵幀視頻無法播放,依然能取到很好的加密效果。
用於流媒體伺服器端使用硬體加密鎖600對第一密碼進行加密得到第一密碼加密文件,使用硬體加密鎖600對第一加密關鍵幀進行加密得到第二加密關鍵幀的第二加密單元200。
對第一加密關鍵幀和第一密碼使用硬體加密增加了系統的安全性。隨機密碼經過硬體加密和視頻數據經過一次軟體加密一次硬體加密,安全性更高。內部研發人員知道視頻數據的軟體加密算法,但是不知道外部硬體加密鎖600的算法,無法提取隨機密碼。即使知道隨機密碼,沒有硬體加密鎖600時也不能解密數據。用戶在客戶端軟體播放視頻時只需要插入配對的硬體加密鎖即可播放加密視頻,不用關心密碼內容,用戶體驗好。
用於伺服器端傳輸包括第二加密關鍵幀、第一密碼加密文件、使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的加密算法算法類型信息的視頻數據的數據傳輸單元300,
用於客戶端獲取包括第二加密關鍵幀、第一密碼加密文件、使用第一密碼對視頻數據的關鍵幀進行加密得到第一加密關鍵幀的加密算法算法類型信息的視頻數據的數據接收單元400;
用於客戶端通過與硬體加密鎖600配對的硬體解密鎖700對第二加密關鍵幀解密得到第一加密關鍵幀,通過與硬體加密鎖600配對的硬體解密鎖700對第一密碼加密文件進行解密得到第一密碼,使用第一密碼對第一加密關鍵幀進行解密的解密單元500。
用戶在客戶端軟體播放視頻時只需要插入配對的硬體加密鎖600即可播放加密視頻,不用關心密碼內容,用戶體驗好;播放完成後取走硬體加密鎖600則不能再播放加密視頻,使用過程不會產生密碼洩露,硬體加密鎖600加密算法不可逆,安全係數高,即使知道隨機密碼的內容沒有配對的硬體加密鎖600也無法解密。每一幀視頻數據包含了加密的算法類型和加密後的隨機密碼,更新加密算法不影響歷史視頻的播放。
進一步的,第一加密單元100隨機產生的第一密碼定時更換。
第一密碼定時更換增加了系統的安全性。 進一步的,第一加密單元100中的加密算法定時更換。
加密算法定時更換增加了系統的安全性。
本發明的有益效果是,第一密碼為隨機生成,且定時更新保證了安全性。隨機密碼經過硬體加密和視頻數據經過一次軟體加密一次硬體加密,安全性更高。內部研發人員知道視頻數據的軟體加密算法,但是不知道外部硬體加密鎖的算法,無法提取隨機密碼。即使知道隨機密碼,沒有硬體加密鎖時也不能解密數據。不用人工輸入和人工記憶密碼,杜絕了人為洩密的隱患。用戶在客戶端軟體播放視頻時只需要插入配對的硬體加密鎖即可播放加密視頻,不用關心密碼內容,用戶體驗好;播放完成後取走硬體加密鎖則不能再播放加密視頻,使用過程不會產生密碼洩露,硬體加密鎖加密算法不可逆,安全係數高,即使知道隨機密碼的內容沒有配對的硬體加密鎖也無法解密。每一幀視頻數據包含了加密的算法類型和加密後的隨機密碼,更新加密算法不影響歷史視頻的播放。加密不依賴於前端攝像機。加密在流媒體伺服器端實現,與前端攝像機是否支持加密無關,只要流媒體伺服器收到前端攝像機的視頻數據即可實現加密。只對關鍵幀進行加密,減少了加密的工作量,但是依然能夠取得較好的效果。
本領域普通技術人員可以理解實現上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關的硬體完成,的程序可以存儲於一種計算機可讀存儲介質中,該程序在執行時,包括方法實施例的步驟之一或其組合。
另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以採用硬體的形式實現,也可以採用軟體功能單元的形式實現。集成的單元如果以軟體功能單元的形式實現並作為獨立的產品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中。
本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限於磁碟存儲器和光學存儲器等)上實施的電腦程式產品的形式。
本發明是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方框圖來描述的。應理解可由電腦程式指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些電腦程式指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些電腦程式指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些電腦程式指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
顯然,本領域的技術人員可以對本發明進行各種改動和變型而不脫離本發明的精神和範圍。這樣,倘若本發明的這些修改和變型屬於本發明權利要求及其等同技術的範圍之內,則本發明也意圖包含這些改動和變型在內。