





摘 要:隨著互聯網和物聯網技術的迅猛發展,各個領域的電子化、信息化、系統化成為了趨勢。針對傳統媒體宣傳手段存在的更新速度慢、推廣成本高、傳播方式不友好等缺陷,提出了一種基于MQTT通信協議并且具備多屏幕播放和防篡改功能的廣告系統。該系統能夠利用MQTT通信協議對遠程Android設備進行監測和控制,同時,為了防止播放的媒體文件被惡意篡改和替換,還為系統增加了防篡改加密功能。此外,為了解決多屏播放輪播圖和視頻時播放同步等問題,提出了一種基于TCP協議的同步播放遠程廣告系統。系統利用互聯網和物聯網技術,大大提高了廣告更新效率,同時支持圖片、音視頻等多種傳播方式,優化了廣告的宣傳效果并降低了推廣成本。
關鍵詞:MQTT;互聯網;物聯網;廣告系統;防篡改;多屏顯示
中圖分類號:TP393 文獻標識碼:A 文章編號:2095-1302(2025)06-0-03
DOI:10.16667/j.issn.2095-1302.2025.06.028
0 引 言
當下,多媒體廣告機已被廣泛應用于樓宇、車輛等,然而大部分廣告機的媒體文件更新均通過手動更換CF卡或硬盤來實現[1],效率低下且成本較高。
在此背景下,越來越多的科技人員和企業投入到基于互聯網和物聯網技術的遠程廣告機設計和實現領域,如智能廣告投放平臺系統的設計與實現[2]。有學者提出了基于Kafka和Zookeeper的遠程廣告投放系統,該系統通過Kafka實現了對遠程廣告終端機的遠程控制和對終端日志的遠程收集,并且可以隨時發布審核完成的電子廣告信息。針對LED廣告顯示方式,有人提出了基于LED大屏顯示技術的遠程廣告屏控制系統[3],該系統通過GPRS通信模塊,實現了遠程廣告投放。為了促進行業發展,文獻[4]提出了一種基于網絡的遠程廣告信息發布系統,該系統實現了廣告顯示屏幕的分屏設置和資源文件(布局文件,視頻,圖片,文字等)以及播放計劃的更新、插播、定時播放功能。
綜上所述,廣告的信息化、系統化已經成為趨勢。隨著社會生產力不斷提高,商品市場豐富多樣,商品更新換代以及信息技術時代的高速發展,傳統的廣告發布方式已經很難滿足當今文化廣告領域的需求。人們逐漸開始關注網絡化、智慧化、系統化的廣告系統,這類系統利用互聯網、物聯網等技術,解決了當今廣告領域發布過慢、內容迭代速度無法匹配產品更新速度的痛點問題。同時,多屏拼接顯示技術的出現又很好地彌補了顯示設備尺寸有限的問題,滿足了客戶對大屏顯示的需求。
1 系統介紹
基于MQTT通信協議的多屏顯示廣告系統,能夠利用MQTT通信協議對遠程Android設備終端發送遠程控制指令,同時,根據多屏顯示需求,可以利用FFmpeg對媒體資源進行碎片切割(僅支持m行n列,即m×n)并排序(從左到右,自上而下),以對應m×n的顯示終端。當多屏節目被發布時,系統先通過MQTT通信協議將發布的節目信息告知對應的Android設備終端,如節目ID、節目的媒體資源ID、媒體資源顯示位置等,Android設備終端獲取節目信息后,通過HTTP/HTTPS協議從系統中主動下載節目的各媒體資源并播放。
廣告系統中的媒體資源安全問題不可忽視,為了資源的安全傳輸和播放,本文采用AES對稱加密算法對媒體資源進行加密。當設備第一次注冊并連接到服務器端時,服務器端首先會驗證設備終端的合法性,如果設備終端合法,則返回一個公鑰給設備。隨后,服務器會利用私鑰對媒體文件進行加密,而設備終端利用接收到的公鑰對媒體資源進行解碼。當加密后的文件被惡意篡改時,文件即被破壞,終端設備解碼失敗,以阻止媒體資源播放,避免了媒體文件被人為修改或者被惡意替換。
多屏播放,即多臺緊臨被拼接成m×n長方形/正方形的Android設備終端,同時播放相同的媒體資源,如視頻、圖片等。多屏播放最大的挑戰是如何使多臺設備的播放進度保持一致。本文提出了一種基準設備,當播放媒體文件時,其他設備基于TCP/IP與基準設備進行播放進度的實時通信,從而保證其他設備與基準設備播放同步,系統框架如圖1所示。
2 關鍵技術
2.1 MQTT通信協議
消息隊列遙測傳輸協議(Message Queuing Telemetry Transport, MQTT)由IBM于1999年發布,這是一種基于發布/訂閱(Publish/Subscribe)模式的“輕量級”通信協議,該協議構建于TCP/IP協議上,由訂閱端、發布端和MQTT Broke組成。訂閱端與發布端統稱為客戶端,MQTT Broker為代理服務器[5],即客戶端作為消息的發布者和訂閱者,服務器作為消息的代理。MQTT傳輸的消息包含了主題(Topic)和負載(Payload),Topic代表消息的類型,訂閱者訂閱(Subscribe)某一Topic后,會收到該主題的消息類型;Payload代表訂閱者所需要的內容[6]。同時,MQTT協議是ISO標準(ISO/IEC PRF 20922)下為硬件性能低下的遠程設備以及相對糟糕的網絡環境而設計的消息協議[7]。MQTT消息傳輸流程如圖2所示。
MQTT協議為使用者提供了三種不同的服務質量來應對不同的應用場景[8]。
QoS0:表示消息最多發送一次,如果Receiver不可用,則會丟失該消息。該服務選用了“fire and forget”的消息發送模式:Sender(可能是Publisher或者Broker)發送一條消息之后,就不再關心該消息是否發送到對方處,也不設置任何重發機制。
QoS1:表示消息至少發送一次,其包含了簡單的重發機制,Sender發送消息之后等待Receiver的ACK,若未收到ACK,則重新發送消息。該模式可保證消息至少能到達一次,但無法保證消息不重復。
QoS2:表示消息僅發送一次。該機制是最高級別的服務機制,設計了重發和重復消息發現機制,它需要經過兩次通信才能完成:PUBLISHlt;-gt;PUBREC,PUBRELlt;-gt;PUBCOMP,可保證消息到達對方處并且只到達一次。
消息發布服務質量等級說明見表1。
2.2 多屏播放
多屏播放技術是利用FFmpeg將圖片、視頻等媒體資源切割并完整展示到多個顯示設備中并同步播放的一種技術。其原理是當創建多屏顯示節目時,需要預先設計好顯示設備數量以及排列順序(從左到右,從上到下依次排列,且必須是m行n列),并對各個區域綁定顯示設備和排列編號(從左到右,自上而下依次排列),當節目關聯媒體資源時,根據顯示設備數量和布局利用FFmpeg將媒體資源切割成m×n媒體碎片,同時對媒體碎片進行編號排列(從左到右,自上而下依次排列),當節目發布時,各個設備分別下載屬于自己的媒體資源并播放,如圖3所示。當發布多屏播放的節目時,系統會把對應的媒體碎片鏈接、ID等信息通過MQTT發給對應的拼接顯示終端,顯示終端收到服務器信息后,主動通過HTTP/HTTPS下載對應的資源碎片并播放。
在多屏播放場景下,實現對輪播圖、視頻等媒體資源的同步播放是一項重大的挑戰。為了解決這個問題,需要將所有設備連接到同一局域網中,并將一臺顯示終端(左上角的設備)設置為基準設備,令所有設備都以基準設備的播放進度為基準。當系統通過MQTT通信協議將某臺設備設置為基準設備時,同時會將該基準設備的IP信息發送給其他需要同步播放的設備,當終端設備收到基準設備的指令后,會啟動Socket Server進程,其他設備作為Socket Client通過局域網連接到基準設備,從而實時與基準設備通信。其他設備每隔一段時間就會咨詢基準設備的播放進度,基準設備同步回復當前的播放進度,如果某臺顯示終端發現播放進度與基準設備不同步,則自動調整自身的播放進度以同步基準設備。多屏同步播放流程如圖4所示。
2.3 媒體資源防篡改
媒體資源作為廣告的顯示資源,是傳遞廣告信息的重要載體,媒體資源傳播的安全性是廣告客戶和系統運營者最關心的問題之一,因此確保媒體資源的安全傳輸至關重要。本系統采用AES對稱加密技術對媒體資源進行了加解密。
高級加密標準(Advanced Encryption Standard, AES)是最為常見的對稱加密算法之一,它屬于分組加密算法[9-12],與數據加密標準(Data Encryption Standard, DES)相比,它有如下優點:
(1)DES算法中的8個選擇函數矩陣的設計原理不予公布,而AES算法公開。
(2)運算速度快,對內存的需求極低,適合受限環境。AES作為新一代數據加密標準,其安全性遠高于DES算法。
(3)AES的密鑰長度比DES長,它也可設定為32 bit的任意倍數,最小值為128 bit,最大值為256 bit,所以用窮舉法無法破解[13]。
AES加解密過程如圖5所示。
AES加密技術是一種基于發送端的先進密碼體制,系統以云服務器作為發送端[14]。首先,服務器端需要創建一個AES私有密鑰,用密鑰對媒體資源進行加密,獲得一個完備的密文,再創建一個解密公鑰,當終端設備注冊接入系統時,系統將公鑰同步下發給終端設備;用戶將媒體資源上傳系統時,系統會通過私鑰對相關媒體資源加密;當顯示終端下載加密媒體文件后,通過公鑰對媒體文件解密;如果中間過程媒體資源被惡意篡改或替換,媒體資源將無法被解密并播放,從而防止非法媒體資源被播放。
3 結 語
本文提出了基于MQTT協議的多屏顯示廣告系統,充分利用MQTT協議小負載和性能穩定的特點,實現了對遠程Android終端的實時控制。同時,為了匹配Android終端對應的資源,需要對切割的媒體碎片進行從左到右、自上而下的順序編號。媒體傳播的安全性也是本系統重點考慮的因素,故采用AES對稱加密方式對媒體資源進行加解密,從而防止媒體資源被惡意篡改。
系統可以適用很多場景,如戶外廣告系統、小區電梯廣告系統、展廳、門店產品展示等。
參考文獻
[1]謝國,王榮良.基于多媒體廣告機安全性的SSL研究與實現[J].微型電腦應用,2006(9):37-39.
[2]常衛建.智能廣告投放平臺系統的設計與實現[D].北京:北京交通大學,2018.
[3]何駿.基于LED大屏顯示技術的遠程廣告機控制系統[D].杭州:浙江工業大學,2019.
[4]陳洪波.基于網絡的遠程廣告信息發布系統的設計[J].電子世界,2012(14):117.
[5]劉澤超,梁濤,孫若塵,等.基于國密算法的MQTT安全機制研究與實現[J].計算機科學,2024,29(2):333-342.
[6]劉一鑌,徐暢.基于HomeAssistant和MQTT的控制系統研究[J].信息通信,2020,34(9):51-54.
[7]李想.物聯網發布/訂閱系統的研究與實現[D].成都:電子科技大學,2019.
[8] MILEVA A, VALINOV A, HARTMANN L, et al. Comprehensive analysis of MQTT 5.0 susceptibility to network covertchannels [J]. Computers amp; security, 2021, 104: 102-207.
[9]楊靜.一種AES算法加密傳輸系統的設計與實現[J].電子設計工程,2019,27(3):123-126.
[10]萬志偉.計算機網絡數據庫的安全管理技術分析[J].電腦知識與技術,2021,17(32):27-28.
[11]張艷.計算機數據庫安全管理研究 [J].無線互聯科技,2021,18(21):58-59.
[12] RAJNI JINDAL, INDUSINGH. A survey on database intrusion"detection: approaches, challenges and application [J]. International journal of intelligent engineering informatics, 2019, 7(6): 559-592.
[13]于慧敏,劉昌斯.基于AES加密的審計防篡改數據庫研究設計[J].信息技術與信息化,2023(7):126-129.
[14]關智華,郭志彪.基于AES的通信信息網絡實時加密技術[J].信息科技·電信技術,2023(6):61-64.作者簡介:韋升文(1984—),男,碩士,中級電子工程師,研究方向為智慧農業、遠程廣告機、智慧社區等物聯網相關技術。
收稿日期:2024-04-22 修回日期:2024-05-23