免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網運營的一線實戰(zhàn)洞察。

STM32H5實戰(zhàn):Secure Manager與CycloneCRYPTO集成TLS全指南

STM32H5實戰(zhàn):Secure Manager與CycloneCRYPTO集成TLS全指南 STM32H5這顆芯片我拿到手其實挺長時間了但真正把它和Secure Manager、CycloneCRYPTO組合起來跑TLS還是在最近的一個網關項目里才徹底把它摸透。項目標題里這幾個詞——STM32H5、Secure Manager、TLS棧、CycloneCRYPTO、外設所有權Peripheral ownership、Opaque key handling——每一個單拎出來都能講半天但組合在一起使用的時候坑遠比想象中多。這篇博文就把整個落地的思路、配置過程、踩坑記錄和排查經驗完整寫出來給正在做同樣方向的朋友一個參考。先說清楚這套東西是干什么的。STM32H5系列本身是帶TrustZone的Cortex-M33內核MCU而Secure Manager是ST官方提供的一個預置在芯片安全域里的固件組件相當于給開發(fā)者提供了一個“不用自己寫安全啟動和安全存儲”的現(xiàn)成底座。CycloneCRYPTO則是一套輕量級加密庫支持TLS 1.2/1.3協(xié)議棧配合Secure Manager可以在非安全側跑業(yè)務、在安全側管密鑰兩者通過PSA API對接。這套方案的核心價值在于密鑰不出安全域TLS握手全程由安全固件參與簽名和協(xié)商應用層拿到的是不透明句柄Opaque handle而不是裸密鑰。聽起來很美好但真正做起來外設所有權怎么分、Opaque key怎么導入導出、TLS崩潰時怎么排查每一步都有講究。這篇文章我按從設計到落地的順序來寫內容全部來自實際工程。1. 整體方案設計為什么選Secure Manager CycloneCRYPTO1.1 安全模型決定了架構選型做物聯(lián)網設備最怕什么密鑰被人從Flash里dump出來。傳統(tǒng)MCU方案里私鑰要么以明文存在內部Flash要么用一個簡單的加密算法包一層本質上還是“鑰匙和鎖放在同一個抽屜里”。STM32H5的Secure Manager思路不一樣它把整個安全相關的邏輯封裝在TrustZone的安全世界里應用代碼跑在非安全世界兩邊通過PSA API通信。我選擇Secure Manager而不是自研安全固件的核心原因有三個第一省時間。自研TrustZone安全側固件光是要把啟動流程、安全存儲、密鑰管理、密碼學服務這幾塊調通沒有兩三個月下不來而且安全固件這種東西沒有大量安全審計根本不敢用于量產。Secure Manager是ST出廠預置的通過了SESIP Level 3認證直接省掉了整個安全側的開發(fā)和認證成本。第二密鑰隔離是硬需求。項目要求TLS客戶端私鑰和證書必須存儲在安全環(huán)境中任何非安全側的代碼都不能直接訪問密鑰材料。Secure Manager天然滿足這個要求它把密鑰封裝成不透明句柄應用層拿到的是一個ID直接用這個ID去調用簽名、解密等操作密鑰本身永遠不離開安全世界。第三升級路徑清晰。Secure Manager支持固件更新后續(xù)如果ST發(fā)布了安全補丁可以通過官方機制升級不用自己維護一套安全側代碼。CycloneCRYPTO選型則是看中了它對PSA API的支持深度和代碼體積。這個庫來自OCyclone代碼風格非常工程化裁剪靈活在資源受限的MCU上表現(xiàn)不錯。更關鍵的是CycloneCRYPTO的TLS棧CycloneSSL可以直接接入PSA Cryptography API這意味著TLS握手過程中的密鑰交換、證書簽名驗證等操作能直接調用Secure Manager提供的安全服務架構上非常干凈。1.2 硬件資源與外設分配的大前提STM32H5的TrustZone把芯片資源劃分成安全Secure、非安全Non-Secure兩部分這個劃分不是在運行時決定的而是在啟動階段由SAUSecurity Attribution Unit和IDAU硬件邏輯確定的。Secure Manager固件占用了安全側一部分Flash和SRAM應用代碼跑在非安全側。我們項目的硬件是STM32H573片內Flash 1MBSRAM 640KB。實際分配下來Secure Manager占用大約256KB Flash用于固件存儲還要留出一塊Flash做安全存儲Secure Storage用于保存密鑰、證書等敏感數(shù)據。非安全側可用Flash約700KBSRAM約400KB對于跑TLS的網關應用來說夠用但需要精打細算。這里有個非常重要的概念需要提前理解外設所有權。TrustZone體系下每個外設都可以配置為安全或非安全或者支持安全/非安全混合訪問比如UART可以用安全發(fā)送、非安全接收但寄存器訪問權限是統(tǒng)一配置的。Secure Manager默認會鎖定一部分外設作為安全側專用比如TRNG真隨機數(shù)發(fā)生器、AES硬件加速器、HASH外設、OTP存儲。應用代碼如果直接去操作這些外設寄存器會被硬件阻斷并觸發(fā)總線錯誤或者安全異常。這個設計初看覺得限制很多但實際上是刻意為之。TRNG是隨機數(shù)生成的根基如果非安全側能隨意訪問TRNG寄存器惡意代碼就能影響隨機數(shù)質量進而破壞整個加密體系。AES和HASH同理密鑰保存在安全側硬件里非安全側只能用API間接調用不能直接讀寄存器拿密鑰。我們的做法是網絡外設Ethernet MAC、PHY控制引腳分配給非安全域因為這些是應用層需要直接控制的調試串口也放在非安全域方便打日志但任何與密鑰、隨機數(shù)相關的硬件資源都交給Secure Manager統(tǒng)一管理。配置方式有兩種一種是通過STM32CubeMX可視化配置。在TrustZone配置頁面里把需要非安全訪問的外設打上Non-Secure標簽Secure Manager占用的資源會自動標記為Secure這個方式適合項目前期快速驗證。另一種是直接改設備樹源文件或啟動代碼里的SAU配置寄存器適合需要精細控制的場景。實際開發(fā)中我建議先用CubeMX把安全/非安全邊界劃好再在代碼里微調不要一上來就手寫SAU配置容易漏配導致安全異常。1.3 運行時架構與應用分區(qū)應用整體跑在非安全側使用FreeRTOS作為調度內核。Secure Manager作為安全側服務提供方通過PSA API調用接口跟非安全側通信。實際調用過程是這樣的非安全側程序調用PSA Crypto API函數(shù)比如psa_sign_hash該函數(shù)通過ARM的SGATE指令切換到安全世界進入Secure Manager的服務例程完成簽名操作后返回結果。整個過程對應用層是透明的應用層只需要管理好PSA_KEY_ID句柄就行。![架構示意應用層-CycloneSSL/CycloneCRYPTO-PSA API-Secure Manager-硬件加密外設]文字示意上層是TLS握手邏輯中間層是CycloneSSL的PSA適配層底層是Secure Manager固件再往下是TRNG/AES/HASH硬件。因為Secure Manager代碼跑在安全世界有自己的棧空間和內存管理機制所以非安全側的棧溢出或內存踩踏不會直接破壞安全側的數(shù)據。這種隔離特性讓我在調試內存問題時省了不少心——以前用單芯片方案跑TLS一個內存越界就可能把密鑰緩沖區(qū)的數(shù)據改了現(xiàn)在密鑰在安全側非安全側的bug很難影響密鑰完整性。2. 外設所有權配置那些坑你沒跳過不算做過2.1 安全/非安全域劃分的邊界邏輯外設所有權配置里最容易出問題的是“看似該歸非安全域、實際必須留在安全域”的情況。我舉個例子STM32H5的CRC外設。CRC本身不涉及密鑰按理說可以放在非安全域但Secure Manager在初始化時需要用它做安全存儲的完整性校驗所以CRC被Secure Manager鎖定了。如果應用層不看手冊直接初始化CRC外設就會觸發(fā)HardFault。這類問題排查起來特別費時間因為報錯不明確。實際遇到的情況是在系統(tǒng)啟動早期Secure Manager還沒完全初始化完畢非安全側代碼就去訪問了被安全鎖定的外設然后MCU直接掛死在HardFault_Handler里調試器里看到PC指針停在了一個隨機位置。把優(yōu)先級調低、把外設初始化順序調整到Secure Manager完全啟動之后再執(zhí)行問題就解決了。另一個容易被忽視的點是DMA通道的所有權。STM32H5的DMA控制器支持按通道分配安全/非安全屬性。如果應用層把UART接收配置成非安全通道而Secure Manager內部有一個安全通道在同時使用DMA那么中斷路由和事件標志就必須仔細配置。我們在調試Ethernet和UART同時工作時就遇到過DMA通道沖突現(xiàn)象是UART偶發(fā)丟數(shù)據Ethernet收發(fā)性能下降后來發(fā)現(xiàn)是DMA中斷優(yōu)先級和安全管理單元GTZC配置不對。外設所有權配置的最佳實踐建議先梳理應用里所有需要訪問的外設清單明確每個外設是否需要安全側參與使用CubeMX的“Security”視圖把外設一一標注生成初始化代碼后再檢查生成的SAU/GTZC配置啟動階段用Secure Manager提供的接口查詢外設當前所有權確認實際配置與預期一致在HardFault_Handler里記錄觸發(fā)地址和總線狀態(tài)位方便定位是哪次非法訪問引起的。2.2 非安全側如何正確訪問被保護外設如果應用實在需要操作安全外設比如要直接讀取TRNG生成隨機數(shù)雖然不建議正路不是去改外設所有權而是通過Secure Manager提供的服務接口來間接操作。PSA Crypto API里有psa_generate_random函數(shù)就是干這個的應用層調用這個函數(shù)Secure Manager內部用TRNG生成隨機數(shù)后返回。同理AES加解密操作走psa_cipher_encrypt/psa_cipher_decrypt接口HASH走psa_hash_compute接口。這些接口內部會使用安全側硬件加速器應用層看不到寄存器操作細節(jié)但獲得了硬件加速帶來的性能提升。我們項目里TLS握手需要做RSA簽名驗證同時也要做AES-GCM數(shù)據加解密。剛開始我把AES操作都放在非安全側跑軟件實現(xiàn)結果性能慘不忍睹。后來改成通過PSA API調用Secure Manager的硬件AES整體TLS吞吐量提升了將近40%。這個性能差距在高頻率數(shù)據交互的場景下會被進一步放大。這里有個性能與安全的權衡思考不透明句柄方案下每次加解密都要經過SGATE切到安全世界再切回來這個切換是有開銷的。如果加解密數(shù)據包很小比如幾百字節(jié)切換開銷占比就比較高如果數(shù)據包大幾KB硬件加速的性能優(yōu)勢完全能覆蓋切換開銷。所以實際項目中小包場景可以考慮非安全側軟件加解密大包場景用PSA硬件加解密換來的是性能與安全性的平衡。當然如果項目安全等級要求高即使有小包開銷也必須全部走硬件。3. Opaque Key Handling不透明密鑰機制的詳細展開3.1 什么是不透明密鑰Opaque Key“Opaque key”這個詞直譯過來是不透明密鑰它描述的是密鑰對象以不透明句柄的形式存在句柄持有者應用層不知道密鑰的具體內容只知道這個密鑰是哪個ID、用于什么算法??梢赃@樣理解傳統(tǒng)方案是把鑰匙復制一份交給管家保管管家拿著鑰匙開門Opaque方案是把鑰匙鎖在一個保險箱里管家只能透過一個小窗口使用鑰匙的動作但拿不到鑰匙本身。STM32H5 Secure Manager的不透明密鑰機制基于PSA Certified Crypto API定義密鑰對象存儲在安全側的安全存儲區(qū)域中。應用層通過psa_import_key或psa_generate_key創(chuàng)建密鑰對象系統(tǒng)返回一個psa_key_id_t類型的句柄。之后所有用到該密鑰的操作比如psa_sign_hash簽名、psa_verify_hash驗簽、psa_asymmetric_encrypt非對稱加密都傳入這個句柄而不是密鑰數(shù)據。這種設計有幾個實質性的好處密鑰材料不會進入非安全側的RAM側信道攻擊獲取密鑰的難度大幅增加密鑰持久化到安全存儲區(qū)即使設備重啟密鑰依然存在應用層只需要知道密鑰ID即可安全側可以實施密鑰使用策略比如限定某個密鑰只能用于簽名不能用于解密這個策略在密鑰創(chuàng)建時就固化在安全存儲里。3.2 密鑰導入導出從開發(fā)到量產的正確姿勢開發(fā)階段我們需要把測試證書和私鑰導入到設備安全存儲里。最直接的方式是在應用代碼里調用psa_import_key接口把打包在固件里的測試密鑰導入。但這種方式不能用于量產因為你不會希望每一臺設備都燒錄相同的私鑰——這會使得一臺設備被提取密鑰后所有設備的安全防線都崩潰。量產階段的做法通常有兩種第一種是設備首次啟動時生成密鑰對。調用psa_generate_key生成RSA或ECC密鑰對然后通過安全側提供的CSRCertificate Signing Request生成接口獲取公鑰對應的CSR將CSR上傳到服務器由CA簽發(fā)證書后再把證書導入設備。這個流程保證了私鑰從生成到存儲全程不離開設備安全性最高。第二種是在生產線上使用自定義燒錄工具通過安全通信通道把一對一的密鑰對燒錄進每個設備的安全存儲。這種方式適合需要預置特定證書鏈的場景比如設備身份證書由工廠統(tǒng)一簽發(fā)但需要額外的生產線安全措施。我們項目選擇了第一種方式。關鍵代碼片段如下psa_key_id_t key_id; psa_key_attributes_t attr PSA_KEY_ATTRIBUTES_INIT; psa_set_key_usage_flags(attr, PSA_KEY_USAGE_SIGN_HASH | PSA_KEY_USAGE_VERIFY_HASH); psa_set_key_algorithm(attr, PSA_ALG_ECDSA(PSA_ALG_SHA256)); psa_set_key_type(attr, PSA_KEY_TYPE_ECC_KEY_PAIR(PSA_ECC_FAMILY_SECP_R1)); psa_set_key_bits(attr, 256); psa_status_t status psa_generate_key(attr, key_id); if (status ! PSA_SUCCESS) { // 處理錯誤 }導入證書時要特別注意證書本身屬于非敏感數(shù)據可以存放在文件系統(tǒng)里不需要額外加密。但如果證書鏈中包含私鑰對應的公鑰信息導入時先用psa_import_key導入公鑰或公鑰派生TLS握手時再通過函數(shù)調用即可。切勿直接把私鑰以明文形式燒錄到Flash里這是新手最常犯的錯誤。3.3 與CycloneCRYPTO的PSA適配層對接CycloneCRYPTO對PSA API的支持體現(xiàn)在它提供了Crypto Extension模塊專門用于將算法調用映射到PSA接口。打開CycloneCRYPTO的配置頭文件可以看到類似這樣的選項#define CRYPTO_PSA_SUPPORT 1 #define CRYPTO_PSA_IMPORT_KEY_SUPPORT 1 #define CRYPTO_PSA_EXPORT_PUBLIC_KEY_SUPPORT 1TLS握手過程中最關鍵的對接點是私鑰操作簽名。在CycloneSSL中TLS客戶端身份認證需要調用私鑰對握手消息做簽名。默認情況下CycloneSSL直接讀取私鑰緩沖區(qū)里的密鑰數(shù)據然后調用軟件算法進行簽名。但通過PSA適配層你可以把私鑰操作替換成調用psa_sign_hash。具體來說需要實現(xiàn)CycloneSSL的回調函數(shù)void tls_sign_ecdsa_psa(TlsContext *context, const TlsSignContext *signContext, const uint8_t *data, size_t dataLen, uint8_t *signature, size_t *sigLen) { psa_key_id_t key_id (psa_key_id_t)(size_t)signContext-data; psa_status_t status psa_sign_hash(key_id, PSA_ALG_ECDSA(PSA_ALG_SHA256), data, dataLen, signature, sigLen, signatureSize); if (status ! PSA_SUCCESS) { // 處理簽名失敗 } }這里的signContext-data就是我們在初始化TLS上下文時傳入的PSA密鑰句柄。通過這樣的方式TLS握手使用的簽名操作完全由Secure Manager執(zhí)行握手過程中私鑰不出安全域。3.4 密鑰輪換與吊銷處理設備長期運行后密鑰可能面臨泄露風險或者證書過期。Secure Manager的PSA API支持更新密鑰但需要先創(chuàng)建新密鑰然后更新存儲引用。實際項目中我們實現(xiàn)了密鑰輪換機制設備每隔一段時間生成一個會話密鑰臨時密鑰用主密鑰簽名當主證書快過期時設備生成新的主密鑰對通過安全通道向服務器申請新證書新證書導入后舊密鑰標記為不可用并在下次運行時清除。實施這個機制時需要留意PSA API的一個限制一旦某個密鑰ID被寫入安全存儲它綁定到了具體的存儲位置如果想徹底刪除需要調用psa_destroy_key并等待安全存儲回收空間。頻繁創(chuàng)建銷毀密鑰會帶來Flash磨損問題所以輪換頻率要控制好。我們的做法是設備運行最多使用10個會話密鑰輪換之后強制觸發(fā)一次完整的主密鑰更新流程避免安全存儲頻繁擦寫。4. TLS協(xié)議棧集成CycloneSSL與Secure Manager的實戰(zhàn)組合4.1 TLS 1.2還是1.3選型與兼容性考量CycloneSSL支持TLS 1.0到1.3的完整版本。在IoT設備上TLS 1.2依然是最常見的協(xié)議版本但TLS 1.3在握手性能和安全性上都更好。我們項目出于兼容性考慮最終選擇了TLS 1.2為主要協(xié)議同時開啟TLS 1.3支持以便與較新的服務器互通。選型時要特別注意一個細節(jié)服務器端如果配置了不安全的舊協(xié)議比如TLS 1.0客戶端連接時可能會收到警告。實際調試過程中我遇到過連接某些老式服務器時TLS握手在ClientHello階段就被對方拒絕的情況錯誤信息類似于“從遠程客戶端應用程序收到一個TLS 1.2連接請求但沒有任何受客戶端應用程序支持的密碼套件”——這是因為服務器配置了過舊的安全策略。針對這類兼容性問題建議在TLS初始化時設置合理的密碼套件優(yōu)先級列表。我們項目的順序是ECDHE_RSA_WITH_AES_128_GCM_SHA256優(yōu)先其次是ECDHE_ECDSA_WITH_AES_128_GCM_SHA256再然后是RSA_WITH_AES_128_GCM_SHA256。優(yōu)先使用前向保密算法這是安全基線要求。4.2 握手流程中的關鍵狀態(tài)與密鑰交換TLS 1.2完整握手流程中客戶端與服務端經過Hello協(xié)商、證書交換、密鑰交換、握手消息驗證四個階段。當使用Secure Manager時其中兩個關鍵點必須處理第一ClientHello的隨機數(shù)生成。隨機數(shù)質量直接影響TLS會話安全性。CycloneSSL默認使用rand()偽隨機數(shù)但嵌入式環(huán)境里rand()種子往往來自某個固定的時間源預測性很強。我強烈建議把CycloneSSL的RNG回調替換為Secure Manager的psa_generate_random接口這樣每次會話的隨機數(shù)都由硬件TRNG產生安全性可靠。第二服務端證書鏈的驗證。這是整個握手過程中計算量最大的一塊。CycloneSSL內部實現(xiàn)了X.509證書解析和驗證邏輯驗證過程使用mbedTLS風格的證書鏈處理。當使用Secure Manager時證書鏈中的公鑰操作比如驗證服務端證書簽名可以通過PSA API調用安全域的橢圓曲線運算但這塊不是必須的因為證書鏈驗證的公鑰本身是公開信息用非安全側軟件驗簽也可以。我建議證書鏈驗簽走軟件實現(xiàn)以減少安全域調用次數(shù)只有與私鑰相關的操作才走PSA調用。4.3 內存與緩沖區(qū)調優(yōu)CycloneSSL的TLS收發(fā)緩沖區(qū)大小直接影響并發(fā)連接數(shù)量和內存占用。默認配置下CycloneSSL的接收緩沖區(qū)為16KB發(fā)送緩沖區(qū)為4KB這對MCU來說是很大的開銷。我們項目實際調參到接收8KB、發(fā)送2KB配合TLS記錄最大長度限制在1400字節(jié)MTU的以太網環(huán)境下完全夠用。運行時內存分配策略也很關鍵。CycloneSSL允許通過TLS_RECORD_INIT_BUFFER_SIZE等宏控制緩沖區(qū)初始分配大小。如果一開始就分配16KB記錄緩沖區(qū)系統(tǒng)剩余內存幾乎為零后續(xù)任何動態(tài)分配都可能失敗。我們的做法是用小緩沖區(qū)初始化如2KB然后在握手過程中根據協(xié)商的加密套件動態(tài)擴展。這樣即使同時存在多個TLS連接內存壓力也不會一下子就拉滿。4.4 證書管理從開發(fā)證書到生產證書鏈開發(fā)階段用自簽名證書做測試沒問題但生產環(huán)境必須使用由可信CA簽發(fā)的證書。STM32H5 Secure Manager自帶根證書存儲區(qū)域可以預置多個根CA證書用于服務端證書驗證。要注意的是TLS客戶端驗簽服務端證書時需要把CA根證書導入設備的信任庫。Secure Manager的安全存儲空間有限建議只導入必要的根證書。很多IoT項目圖省事把整個瀏覽器根證書庫導入設備這不現(xiàn)實也會浪費空間。我們項目只導入了兩到三個根證書足以驗證所有目標服務器的證書鏈。證書過期問題也是運維中的坑。嵌入式設備離線運行時鐘可能不準證書有效期判斷容易出錯。解決方法是在NTP同步時間后重新評估證書有效期或者使用帶“證書固有時”驗證邏輯的CycloneSSL配置選項允許一定的時間偏差比如24小時減少因為時鐘漂移導致的握手失敗。5. 實操過程記錄一次完整的TLS連接從配置到跑通5.1 環(huán)境準備CubeMX工程配置與安全初始化先說說環(huán)境版本這非常重要因為ST的工具鏈版本差異可能導致API行為不一致。我們用的是STM32CubeMX 6.10、STM32CubeH5固件包V1.4、CycloneCRYPTO v3.6、Secure Manager版本為ST提供的3.x系列編譯器為Arm Compiler 6.18AC6。如果用舊版CubeMX生成工程Secure Manager相關組件可能不會被正確初始化。CubeMX中開啟Secure Manager的步驟在“Categories”中找到“Security”選擇“Secure Manager”使能“Secure Manager Initialization”選擇“Application”模式配置安全存儲區(qū)域大小我們設為32KB因為要容納2個根證書、2個設備密鑰對和若干會話密鑰生成工程后自動生成secure\和non-secure\兩個工程目錄分別編譯。安全側初始化代碼在啟動文件里自動執(zhí)行應用側不需要手動配置SAU。但有一點必須注意Secure Manager在安全側的啟動時間比較長大約需要20~50ms非安全側代碼如果提前訪問PSA API會得到一個“服務未就緒”錯誤。正確做法是在main函數(shù)里先調用一個等待函數(shù)while (psa_get_service_status() ! PSA_SUCCESS) { // 等待Secure Manager就緒 }5.2 CycloneSSL配置與編譯裁剪CycloneSSL的配置主要集中在config.h和crypto_config.h兩個文件。我們做了如下裁剪只保留TLS 1.2和TLS 1.3支持關閉TLS 1.0/1.1關閉不需要的加密算法保留AES-GCM、SHA-256、ECDHE、RSA、ECDSA開啟PSA適配層支持TLS_PSA_SUPPORT關閉調試輸出釋放約10KB Flash關閉會話緩存減少內存開銷。編譯時把CycloneSSL源碼放進工程鏈接時需要注意把PSA適配層文件一起編譯進來。CycloneSSL對PSA的支持在CryptoExtension目錄下需要把對應的.c文件加入工程。如果漏了這一步鏈接階段會出現(xiàn)未定義的psa_sign_hash等函數(shù)引用。內存規(guī)劃上建議把TLS相關的大緩沖區(qū)放在獨立的內存池里。STM32H5的SRAM分為幾個塊有一些塊可能分配給Secure域比如SRAM3靠后部分分配RAM時需要確認能用的非安全SRAM地址范圍。我們用的方法是查看鏈接腳本里non_secure RAM的起始地址和大小把TLS緩沖區(qū)定義在這個區(qū)域里避免越界訪問安全SRAM。5.3 握手連接建立及傳輸測試TLS連接的流程按以下偽代碼組織// 1. 創(chuàng)建TLS上下文 TlsContext tlsContext; tlsInit(tlsContext, TLS_CLIENT_MODE, tlsCipherSuites, tlsExtensions); // 2. 配置服務器證書驗證信任錨 tlsSetAuthType(tlsContext, TLS_AUTH_TYPE_VERIFY_SERVER); // 3. 配置PSA密鑰句柄用于客戶端證書 tlsSetSignCallback(tlsContext, tls_sign_ecdsa_psa, (void*)(uintptr_t)psa_key_id); // 4. 設置底層socket tlsSetSocket(tlsContext, socket, TLS_SOCKET_TYPE_TCP, TLS_SOCKET_IP_TYPE_IPV4); // 5. 發(fā)起握手 err tlsConnectSocket(tlsContext, serverName, connectionTimeout); if (err NO_ERROR) { // 6. 應用數(shù)據傳輸 tlsWrite(tlsContext, data, dataLen, writtenBytes, NULL); tlsRead(tlsContext, buffer, sizeof(buffer), recvLen, NULL); } // 7. 關閉連接 tlsShutdown(tlsContext);第一次跑通時最典型的坑是證書驗證失敗。開發(fā)環(huán)境里我們用的是自簽名證書CycloneSSL會報證書路徑錯誤。調試階段可以通過tlsSetCertVerifyCallback把驗簽回調掛出來打印驗證失敗的具體原因。正式環(huán)境則必須保證時間正確、證書鏈正確導入。另外要注意的是TCP socket底層CycloneSSL不內置TCP/IP協(xié)議棧需要我們自己提供一個socket適配層。我們用的是lwIP需要在tls_set_socket里把lwIP的socket fd傳進去。CycloneSSL內部通過socket接口讀寫整個過程非常順暢。5.4 性能實測數(shù)據在STM32H573 250MHz主頻、啟用Secure Manager硬件加速的條件下我們的實測數(shù)據如下項目測試條件性能數(shù)值TLS握手耗時完整握手RSA 2048無緩存約340msTLS握手耗時會話恢復PSK復用約15msAES-128-GCM加密吞吐量1KB數(shù)據包約3.2MB/sECDSA P-256簽名PSA調用單次操作約8msECDSA P-256驗簽非安全側軟件約22ms從這個數(shù)據可以看到通過PSA調用安全域硬件加速ECDSA簽名速度遠快于驗簽的軟件實現(xiàn)因為在安全域內使用了硬件曲線加速。但驗簽走軟件實現(xiàn)并沒有成為瓶頸。整體性能對物聯(lián)網網關應用來是足夠的。6. 常見問題與排查技巧實錄6.1 TLS握手失敗類問題**錯誤信息“創(chuàng)建TLS客戶端憑據時發(fā)生嚴重錯誤。內部錯誤狀態(tài)為10013?!?*這不是STM32H5側的錯誤而是Windows客戶端連接本地服務器時經常出現(xiàn)的錯誤。它的根因通常是客戶端證書或服務器證書的Key Usage擴展不允許指定用途。如果你在PC上測試設備端TLS服務遇到這個錯誤先去檢查服務器證書的Extended Key Usage是否包含serverAuth如果沒有換用完整證書鏈或重新生成證書。**錯誤信息“請求被中止: 未能創(chuàng)建SSL/TLS安全通道。”**這個錯誤通常出現(xiàn)在客戶端無法與服務端協(xié)商出共同的密碼套件時。在STM32H5作為服務端的場景里檢查CycloneSSL的密碼套件列表是否包含了客戶端支持的套件。我曾經遇到過PC端默認啟用了TLS 1.3而MCU端只配置了TLS 1.2導致無法建立連接的情況。解決辦法是開啟TLS 1.3支持或者調整PC端的協(xié)議配置。**錯誤信息“authentication failed because the remote party sent a TLS alert: handshake failure”**這個錯誤常見于服務端證書驗證失敗或客戶端證書缺失。在嵌入式設備上如果TLS客戶端需要做雙向認證mTLS服務端會要求客戶端提供證書但客戶端沒有配置或證書不受信任就會觸發(fā)handshake failure。排查步驟先用openssl s_client測試服務器端配置確認服務端期望的客戶端證書類型再檢查MCU端證書鏈是否正確配置。**問題“TLS initialization failed”**啟動時出現(xiàn)這個錯誤通常是CycloneSSL的初始化配置出錯。優(yōu)先檢查棧內存是否足夠CycloneSSL的TLS上下文初始化需要至少16KB可用內存如果FreeRTOS任務的棧設置太小初始化函數(shù)會返回錯誤。6.2 安全協(xié)議與加密漏洞相關提示設備接入外部服務器時可能會被安全掃描工具報出以下告警“TLS 1.2協(xié)議信息泄露漏洞(CVE-2016-2183)”這是SWEET32攻擊主要影響CBC模式的3DES算法。修復方法是徹底禁用3DES套件只保留AES-GCM等現(xiàn)代套件。“服務器支持TLS client-initiated重協(xié)商攻擊(CVE-2011-1473)”這個告警多出現(xiàn)在設備作為TLS服務端時。CycloneSSL如果開放了重協(xié)商功能可能被利用發(fā)起DoS攻擊。修復方法是關閉或限制TLS重協(xié)商只允許在建立了應用層認證后的重協(xié)商。我們收到這些告警后處理方式是更新CycloneSSL到最新版本并在配置中禁用所有弱加密套件。具體操作打開cipher_suite列表把包含DES、RC4、CBC模式3DES的套件條目刪掉在TLS擴展配置里關閉客戶端發(fā)起的重協(xié)商。6.3 與Secure Manager相關的內存和外設問題問題現(xiàn)象調用psa_sign_hash后系統(tǒng)復位。排查后發(fā)現(xiàn)是應用層傳入的簽名緩沖區(qū)太小Secure Manager寫入超出緩沖區(qū)邊界觸發(fā)安全異常。解決嚴格遵循PSA API的簽名長度返回值先查詢簽名長度再分配緩沖區(qū)。問題現(xiàn)象啟動后死機HardFault。排查步驟查看GTZC的配置確認是否誤操作了安全外設。用調試器讀取SCB-CFSR寄存器如果顯示IMPRECISERR或BUSFAULT大概率是總線訪問安全問題。問題現(xiàn)象安全存儲空間不足導入證書失敗。Secure Manager的安全存儲按塊管理頻繁導入刪除密鑰會產生碎片。ST提供了安全存儲整理工具也可以調用相關API來壓縮空間。我們最終通過擴大安全存儲配置解決了問題。6.4 特殊使用場景的坑iOS客戶端TLS兼容如果設備同時作為服務端被iOS APP訪問可能會遇到iOS開發(fā)中常見的TLS錯誤。典型錯誤是“error domainnsurlerrordomain code-1200 “tls錯誤導致安全連接失敗””這是因為iOS對TLS版本、證書有效期、證書信任鏈要求非常嚴格。排查經驗檢查服務端證書鏈是否完整iOS要求服務器返回完整的證書鏈包括中間CA證書如果只返回葉子證書iOS會拒絕連接。檢查證書有效期iOS不允許過期或尚未生效的證書。檢查服務器的TLS版本iOS 13及以上要求TLS 1.2以上我們遇到過設備端只支持TLS 1.0導致iOS連接失敗的情況。7. 一些調試與運維層面的深入經驗7.1 日志策略與安全敏感信息過濾嵌入式TLS調試最大的痛點是沒有足夠的日志輸出空間。我們設計了一套分級日志策略錯誤級僅記錄TLS握手失敗原因碼、PSA調用失敗狀態(tài)不打印任何密鑰相關的數(shù)據警告級記錄證書驗證結果、套件協(xié)商結果信息級記錄握手時間、數(shù)據吞吐量等性能指標調試級輸出完整的握手報文摘要但需要編譯時打開宏開關放在調試版本中使用。在正式發(fā)布版本中所有與密鑰相關的緩沖區(qū)和證書私鑰數(shù)據都不會被打印。這一點特別重要——通過串口打印密鑰信息是最低級的安全漏洞。我們在代碼審查時明確禁止了任何形式的密鑰dump連十六進制打印都不允許。7.2 與RTOS任務調度的配合FreeRTOS下TLS連接通常放在獨立任務里。任務棧大小要仔細評估CycloneSSL的TLS握手和加解密操作有較深的函數(shù)調用棧如果任務棧太小會出現(xiàn)詭異的崩潰。我們項目里TLS任務棧設為24KB調試時先用棧水位檢查函數(shù)uxTaskGetStackHighWaterMark確認實際使用量發(fā)現(xiàn)峰值大概在18KB左右24KB留出了合理余量。同時要注意PSA API調用會從非安全世界切到安全世界如果安全側的Secure Manager調度超時會導致調用卡死。因此PSA調用所在的系統(tǒng)時鐘中斷優(yōu)先級要設置為與Secure Manager兼容的級別。我們的做法是把PendSV和SysTick的優(yōu)先級都設置為最低優(yōu)先級數(shù)值最大避免與安全側中斷發(fā)生優(yōu)先級反轉。7.3 設備身份證書與唯一標識綁定為了提高安全性我們把設備的唯一IDUID和安全存儲綁定在設備首次啟動時生成密鑰對并將公鑰導出用于唯一標識。這樣即使兩臺設備固件完全相同它們的身份也是唯一的無法互換身份。測試中驗證了這一點從設備A導出的備份固件燒到設備B由于安全存儲中的密鑰與UID不匹配設備B無法完成TLS身份認證。8. 總結與擴展思考我這幾個月在這個項目上最大的體會是Secure Manager CycloneCRYPTO這套組合真正把“安全”從一個獨立模塊打造成了系統(tǒng)的底層能力。它帶來的代價是學習曲線陡峭、調試手段受限、問題定位不如傳統(tǒng)MCU開發(fā)那么直白但換來的密鑰隔離和認證安全是實打實的。如果你正準備上手我建議先用ST官方的Secure Manager例程把基礎API跑一遍確認你自己的開發(fā)板能夠正常工作再逐步集成CycloneSSL。不要上來就把TLS和Secure Manager合在一起調試問題多且難排查。后續(xù)如果項目需要還可以進一步考慮把設備接入ST的Device Provisioning服務實現(xiàn)云端密鑰管理或者使用Secure Manager支持的額外安全功能比如安全固件更新驗證來做整套安全生命周期管理。這塊擴展的方向很多關鍵是先把底層的密鑰機制、外設權限機制跑通建立起一套完整的可信根。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日韩在线成人电影| www.99热视频在线观看| 97碰碰碰免费公开在线视频| 在线观看免费狠狠色丁香香综合| 五月开心婷婷| 激情五月天噢美| 婷婷五月综合基地| 成人做爰A片免费看视频| 婷婷综合在线| 久久婷婷五月天亚洲欧美| 亚洲超碰在线| 丁香婷婷六月天| 九九成人电影婷婷| 99热久久这里只有精品| 亚洲精品婷婷| 九月丁香婷婷| 久久五月丁香| 久久 婷婷 五月天| 97婷婷久久丁香| 五月丁香婷婷基地| 天天插天天射| 日日夜夜狠狠| 涩五月婷婷| 欧美成人精品一区二区 | 99九九玖玖| 男人操女人高潮91视频| 亚洲爆乳无码精品AAA片蜜桃| 99这里| 丁香五月天婷婷中文| 欧美色色色色色| 丁香五月九九| 超色欲天天| AV成人在线网站| 开心五月深爱五月| 97色五月婷婷在线| 亚州成人综合在线| 丁香婷婷婷婷十二月在线观看视频| 丁香五月激情婷婷| www.97视频| 日日夜夜天天| 曰韩少妇内射免费播放| 热久综合| 婷婷国产欧美97| 97干资源在线观看| 99热8| 欧美VA在线| 欧美婷婷五月| 天天操中文字幕| 五月天六月色| 日日操天天操| 亚洲av综合在线| 欧美五月停| 97夫妻超碰| 超碰狠狠干99| 日韩无码乱轮| 久久综合激情| 99热这里只有的精品视| 手机旧版看人妻1025| 综合激情在线| 亚洲精品字幕在线观看| av五月丁香| www.99热精品99.com| 九九精品re免费视频| av操B网站| 婷婷狠狠干| 丁香婷婷狠狠97| 色色色宗合网| 91AV婷婷| 五月激情婷婷色| 丁香五月第九色| 99热这里只有精品13| 五月噜噜| 伊人激情综合网| 九九黄色网| 激情五月婷婷欧美极品| 深爱激情69热| 综合网亚洲| 97人人干| 五月天婷婷爱| 色色亚卅| 91精品91久久久中77777| 超碰99在线| 五月天激情美女久久| 蜜桃婷婷狠狠久久综合| 久久久妻人人人| 五月丁香六月激情网| 这里只有精品免费观看网占| 99热这里都是精品| 亚洲视频另类| 26uuu国产色| 久久婷婷五月综合色和| 日本久久网| 蒲京久久无码视频| 区区久久妻| 九九热这里只有精品一| 亚洲精品视频在线播放| 97丁香婷婷| 欧美色婷婷| 天天综合网~91综合网| 99在线观看视频精品| 久久精彩视频99| 五月开心久久| 亚洲精品久久久久久久久久吃药| 六月婷婷香蕉| 日日爱699| 久久99久久99精品免观看粉嫩| 狠狠操狠狠| 免费观看高清无码| 丁香五月婷婷激情97| 99丁香五月婷婷在线| 黄色大片又大粗又爽| 日日肏夜夜干| 国产精品久久久久久久久久久久 | 五月婷婷久久爱| 综合色情网| 天天日婷婷| 9热精品| 超91热| 婷婷综合激情| 99热爱爱干干日| 婷婷激情97| 五月丁香日本片| 99精品视频网站| 亚洲人人操| 六月婷婷视频| 超碰国产在线观看| 色婷婷精品视频| 五月天色婷婷基地| 天天干天天日蜜臀av| 久久久18| 日韩视频99| 国产色香蕉精品五夜婷| 免费观看的婷婷五月视频在线| 亚洲中文字幕在线观看| 综合激情开心五月| 五月激情影院| 五月激情另类| 亚洲精品又粗又大又爽A片| 日本欧美国产| 日日干天天射| 九九综合色| 超碰91在线| 97日在线视频| 特黄三级片| 激情小说在线视频| 精品九九网| 一级二级香港秋霞欧美欧美秋霞| OYIWbGcPu8H| 五月丁香青草综合啪啪| 丁香婷婷综合色五月激情国产基地| 五月丁香六月婷婷综合伊人| 青吴乐视频| 亚洲五月婷婷在线| 99欧美热| 亚洲天堂啪啪| 久久99热免费| 草榴视频黄色网| 天天干天天爽天天操| 成人AV片播放| 欧美色九| 六月激情婷婷综合| 99视频综合网| 激情久久五月天| 亚洲av日韩无码| 激情久久久久久久久久| 九九九精品视频免费观看| 久久丁香五月| 天天插天天干天天舔| 操操操97| 激情综合激情综合| 久久只有精| 国产成人网址| 天天摸天天舔天天天天爽| 在线超碰精品| 亚洲黄色影视| 婷婷亚洲欧美丁香五月| 色999;丁香五月| 99人人干| 一区二区三区XXXXXX| 五月婷婷丁香婷婷| 色婷婷WWW| 五月天激情小说| 五月丁香色播| 99久热在线精品| 六月婷婷开心| 欧美成人A片AAA片在线播放| 亚洲精品视频在线| 亚洲天堂制| www.五月天婷婷| 国产精品人妻在线网址| 熟妇人妻中文字幕无码老熟妇 | 欧美综合五月丁香五月天| 久久久.www| 久久精品系列| 色婷婷五月天激情综合| 亚洲欧美综合7777色婷婷| 国产精品涩涩涩视频网站| 五月天色婷婷网| 婷婷九月亚洲| 婷婷色综合中心站| 久久久天堂国产精品女人| 九九九九这里只有精品| 天天综合.com| 婷婷九月| 亚洲在线视频321| 色婷婷激情| 九九热视频思思| 丁香六月婷婷久久高清| 色婷婷AV久久| 色五月婷婷DVD| 91se在线观看| 91干99| 狠狠干狠狠干| 色狠狠综合| 性生活视频98791| 97性视频| 99热日本精品| 婷婷综合玖玖五月| 七月丁香五月婷婷在线| 中文字幕在线观看视频www| 欧美婷婷精品激情| 色五月在线视频观看| 人人色婷婷五月天| 香蕉久久国产AV一区二区| 婷婷丁香五月综合网| www.91色| 亚洲最大在线| 九九热大香蕉| 97色在线观看视频| 成人免费高清在线播放| 五月亭亭直播| 婷婷五月丁香五月综合网| 婷婷五月丁香影院| 激情啪啪五月天| 人妻激情在线| www九九| 五月天伊人久久| 国产乱妇无乱码大黄AA片| 久久婷婷五月综合| 丁香五月五月婷婷| 免费AV黄在线播放| 天天爱天天日| 丁香六月av| 亚洲精品亚洲人成人网| 粉嫩av懂色av蜜臀av熟妇| 9 1大香蕉| aV直接看| 欧洲综合一区| 午夜激情久久| 色婷婷性爱| 五月丁香婷久久| .精品久久久麻豆国产精品| 综合色五月| 久久精品婷婷| 日韩婷婷| 激情5月婷婷| 丁香五月婷婷av影院| 99在线精品免费视频| 九九这里只有精品| 人妻丰满精品一区二区A片| 亚洲无码99| 狠狠操狠狠爱| 最近免费中文字幕大全高清大全1| 久青草影院| 91性高潮久久久久久久久| 午夜丁香婷婷| 日韩久久日| 成人一区在线观看| 五月婷婷久久综合| 婷婷五月天Av| 六月丁香激情网| 亚洲丁香五月天视频| 九九色图| 开心五月深爱五月| 男人的天堂99| 无码se| 这里只有视频精品| 橾逼网| 99热精品99| 婷婷五月天影院| 99操视频| 亚洲无码九九九| www.五月天色色色| 五月丁香婷婷久久| 婷婷爱五月天| 超碰v| 丁香五月久久社区| 色综合爽| 久婷五月| www免费在线视频| 68热超碰在线| 色婷婷久久久| 婷婷五月天综合中文| 五月婷在线视频免费看| 色色色色热| 天天干人人奸97| 97超级操操| 玖玖在线视频福利| 婷婷六月激情综合| 色吧五月| 9精品在线| 91dy.av| 婷婷色片| 性爱技巧五月| 久久综合激情五月天| SS丁香五月婷婷| 久久激情天堂| 99在线播放| 中文精品久久久久人妻不| 精品免费99| 97久久超碰| 99婷五月| 99区视频| 色婷婷小说网| 97操在线视频| 天天天天操| 97碰碰碰免费公开在线视频| 丁香五月区| av在线色五月丁香婷区久| 97中文在线| 先锋影音男人的天堂AV| 天天日天天摸天天| 久热只有精品| 亚洲精品视频在线播放| 天天综合色| 精品成人无码A片观看香草视频| 九九99热久久精品66中文字幕| 婷婷激情鹿城五月天| 五月婷婷激情网| AV中文网| 五月丁香六月停停| 日韩成人中文| 狠狠操天天操天天操| 五月色网| 久操激情| 色欲久久综合| 久久9视频欧美| 色婷五月天激情| 日本精品人妻无码77777| 欧美大香蕉视频| 婷婷五月天电影区小说区| 无码成人AAAAA毛片AI换脸| 婷婷丁香成人| 五月婷婷激情久久| 五月色婷婷亚洲 | 青青草原爱爱网| 丁香六月激情蜜桃| 伊综合蕉| 婷婷五月天免费视频| 久久久高清| 欧洲亚洲欧洲99久久| 狠狠色婷婷777| 五月丁香免费视频| 色五月激情五月天| 操笔无码| 婷婷五月综合国产精品| 狠狠撸激情综合丁香五月天俺来啦| 色五月婷婷中文字幕| 丁香综合婷婷开心激情网| 久久久.COM| 久综合九| 26uuu精品一区二区| 九色91美女| 亚洲啪啪视频| 99热精品网| 六月天婷婷| 丁香色五月婷婷17C| 激情五月天社区| 操操操操操操婷婷五月天| 日韩AV大全| 久热这里只有精品6官网亚洲| 久久五月视频| 婷婷久久国产视频| 婷婷丁香五月天综合在线日韩| 5月婷婷激情6月| 色婷婷AV久久| 欧美视频五区| 草操网| 国产成人精品一区二三区熟女在线 | 亚洲精99| 欧美色色日韩| 久久婷婷五月天懂色| www.日本久久videos| 久热久| 六月丁香激情综合| 欧美图片丁香五月天| 国产精品成人在线| 可以免费看AV网站| 亚洲午夜av| 99久久久| 天天做天天爽| 五月婷人妻| 色婷婷91激情小说| 婷婷香五月天| 另类小说激情五月天| 欧美色色色色色色| 超碰91在线| 深爱丁香激情| 国产操碰| 开心五月婷婷伊人| 99日韩| 久久机热这里只有 | 先锋资源婷婷| 99精品视频在线观看| 天天干天天射色综合| 激情综合99| 久久er99热精品一区二区| 秋霞三及片| 99热e| 四川女人毛多水多A片| 欧美xx激情视频在线观看| 99婷婷| 色综合99无码| 丁香五月激情婷婷| 欧美日本黄色| 99操逼| 精品99久久久久成人网站免费| 丁香五月激情月| 99热成人| 99热在线精品观看| 99免费视频| 婷婷五月丁香色情| 亚洲人人96@| 婷婷五月天BBw| 五月色丁香| 激情综合网婷婷五夜| 五月婷婷中文| 五月天激情图片| 婷婷五月天电影区小说区| 亚洲视99| 久99| 久综合色| 综激情网| 男人的天堂五月丁香| 久久久一级AAA| 99热这里只有精品66| 日本操B视频| 中文字幕丁香五月| 99色最新在线视频| 深爱五月婷婷开心中文字幕| 99色色爰| 久久久WWW| av线电影| 99热销国产这里有精品| 99热99在线精品| 伊人免费视频9| 色五月亚洲| 99热国产| 五月天婷婷在线AN| 五月综合色| 无码操B| 九九九九综合| 婷婷在线精品| 五月激情婷婷丁香| 日本婷婷| 国产精品色色| 日韩精品无码一区二区| 黄色热99| 九九热内射| 六月五月婷婷| 五月天精品综合| 五月天婷婷深深爱| 五月天成人小说网| 五月天成人在线播放| 色婷婷丁香五月在线观看| 香蕉AV777XXX色综合一区| 国产日日操夜夜操的肉棒视频| 久久这里只有精品视频26| 婷婷色五月亚洲| 六月丁香射婷婷欧美色图片| www.色五月天.com| 婷婷五月天在线一区| 五月天激情AV| WWW,五月| 五月激情综合网| 五月天色色色| 丁香婷婷免费| 99日在线视频| 亚洲精品国产成人AV在线| 在线观看的av| 日韩一66精品| 日日艹思思热| 成人婷婷| 狠狠精品干练久久久无码中文字幕| 成人做爰高潮A片免费视频| 婷婷中文字幕| 色色丁香色五月| 五月婷婷导航| 狠狠操之狠狠操| 色五月激情综合| 天天天天天久久久久久| av在线免费网站 | 4438全国最大视频成人网站在线观看 | 五月色欧洲| 播五月丁香六月| 4399欧美另类视频| 婷婷五月综合在线| 色五月婷婷久久大| 黄色三级日本| 久久大香蕉丁香| 国产44页| 亚洲 25P| www.婷婷,com| 在线视频区| 亚洲秘 无码一区二区三区妃光/1| 五月婷婷AV| 99视频精品全部免费观看| 狠狠干天天日| 亚洲精品久久久久久久久久吃药| 久碰综合| xfplayav在线| 婷婷激情社区| 视频1区2区| 九九免费精品在线视频| 久久丁香五月| 97碰碰草| 台湾综合丁香五月蜜桃| 九九热最新| 中国丰满熟女A片免费观| 51XX嘿嘿午夜无码| 美女激情婷婷| 五月天社区| 婷婷五月激情视频网| 六月丁香激情综合网| 91精品综合久久久久久五月丁香 | 99热伊人| 4399伦理午夜| 五月天婷婷在线播放免费| 色情综合网| 99在线一区| 少妇婷婷五月天| 亚洲欧美综合7777色婷婷| 日日操夜夜操中国无码| 91啪级电影| 五月丁香婷婷在线| Www99热| 色丁香五月婷婷在线| 婷婷深爱五月| 99精品自拍| 99色网站| 超碰99成人在线| 爱草视频在线观看| 婷婷五月激情综合| 综合天天综合| 色婷婷电影| 性热视频99精品| 婷婷五月情天| 天天色凹凸| 五月婷婷co.m| 色五月激情五月| 久久精彩免费视频精彩免费视频| 久久五月激情| 超碰在线免费| 亚洲天堂99| 久久99网址| 99热这里只有精品在线观看| 五月天丁香啪啪啪啪| 婷婷中文字幕版| 色区久久| 5月丁香综合网| 五月婷视频| 激情宗合哪里能看| 亚洲综合五月天| 中文字幕丰满乱孑伦无码专区| 色色五月天激情| 色三级色三级| 久久综合九九| 在线区区区| 538在线精品| 日韩狠狠色婷婷| 国产亚洲精品久久久久久郑州| 婷婷基地成人五月天| 啪啪综合网| 亚洲色婷婷激情| 无遮挡国产高潮视频免费观看| 色综合天天网| 69天堂99| 人妻少妇色综合| 婷婷成人AV| 婷婷射综合| 激情五月丁香五月| 国产毛多水多女人A片| er99免费视频在线| 一区二区aV电影免费看| 99精品在线观看视频| 99色天堂| 亚洲亚洲人成综合网络| 五月婷婷综合在线视频小说| 啪啪丁香五月| 香蕉久久国产AV一区二区| 人妻在线中文字幕久久| 狠狠久综合| 四色永久成人网站| 色色婷五月天| 久久婷婷的综合色丁香五月| 色欲丁香| 婷婷五月天,影院| 天天色五月婷婷91久久久久久久| 日日干夜夜干| 五月丁香婷婷无码中文| 97成人操| 亚洲成人免费在线| 五月久久亚洲| 久久人人九九| 91午夜婷婷狠狠久久综合9色| www.婷婷五月| 日韩a热| 色99久草在线| 激情丁香社区| aaa日韩| 久热 91| 中文字幕无码人妻少妇免费视频| 狠狠狠狠狠干| 求可以看的AV网址| 操操国产| 丁香五月停停av| 免费黄色视频网址| www.色擼擼.com| 丁香六月婷婷综合激情欧美| 99精品视频播放| 久久色区| 亚洲五月花| 激情五月开心五月在线视频| 丁香五月婷婷欧美成人色图| 成片免费播放| 91.com男女操| www.成人婷婷综合| 久久色五月| 大香蕉人人人| 精品热青草| 日日天天干| 激情五月天婷婷丁香 | 秋霞A V毛片| 五月天激情.com| www.色综合| 久久女人九九| 91日在线视频| 五月激情小说| 五月婷色色| 亚洲另类视频| 人妻精品久久久久久久| 婷婷五月天777| 综合久久综合| 热99精品视频| 日本人妻操| 激情婷婷丁香| 国产精品久久久爽爽爽麻豆色哟哟| 97碰| 精品女人九九九| 久久九九热视频| 99热99这里有免费的精品| 五月六月丁香激情视频| 色综合色五月| 丁香色色色| 天天肏天天肏天天肏| 日日操无码| 婷婷丁香无码专区| 久久艹 五月天| 国产精品国产成人国产三级| 97香蕉碰碰人妻国产欧美| 丁香六月婷婷开心| 五月婷婷色情| 午夜五月天| 亚洲午夜av| 国产精品成人AV在线| www五月| 五月天另类小说| 日韩在线aaa| 另类图片婷婷五月天| 蜜乳国产网站| 五月激情偷拍| 九九色热| 97丁香五月| 久久婷婷国产| 五月激情婷婷在线| 91久久久久久| 操操操97| 99久久天堂婷婷| 91 久热| www99xxxx五月丁| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 丁香五月天AV在线| 97碰碰草| 久久久精品99| 91seav| 六月丁香婷婷视频综合在线观看| 五月天天天综合| 激情精品久久| 丁香六月无码| 婷婷色在线视频| 日本99热| 激情内射人妻1区2区3区| 天天插操| 日本三日本三级少妇三级66| 991国产精选视频在线播放下载| 激情婷婷色色| 色欲日日躁| 五月天精品视频| 精品女人九九九| 欧亚色色| 婷婷丁香基地在线| 丁香五月天激情综合| 日本91在线| 99热这里只有精品9| 久9精品视频在线| www.99精品视频| 久思思热视频在线观看| WWW.桔色成人.COM| 亚洲无码yw| 五月花婷婷| 九九色插| 天天干,天天舔| 九九热这里只有精品9| 婷婷五月激情中文字幕| 99超级碰免费视频| 色站9/| 日本色噜| 五月天com| 丁香五月婷婷色| 亚洲国产网址| 久久这里都是精品免费| www.成人婷婷综合| 开心深爱激情网| 日噜噜色| 狠狠五月天婷婷| 激情五月婷黄版| 国产午夜精品一区二区三区四区| 色情婷婷。| 婷婷五月天成人影片| 五月色丁香| 国产免费一区二区三州老师F1…… | 99九九精品| 永久热91| 色色色色色色综合| 激情五月影院| 免费AV在线| 深爱丁香激情| 99激情| 九九热99视频在线| 色综合久久88色综合天天| 五月激情小说| 亚洲网站999| 九九色视频| 婷婷激情五月综合| 九九AV在线| 久草五月天| 99热99免费| 欧美丁香婷婷五月| 五月婷婷色播| 一本久道综合色婷婷五月| 六月丁香婷| 色婷网| 超碰人人干| 九九热内射| 26uuuu精品一区二区| 思思re99视频在线观看| 五月天婷综合| 第五色婷婷| 五月丁香 狠狠爱| 天天综合五月| 国产精品18久久久| 午夜理论片最新午夜理论剧 | 丁XX 成人| 五月激情婷婷四射| 激情五月少妇| 久久免费干| 26uuu亚洲欧美| 秋霞少妇AV网站| 欧美婷婷五月激情| 色婷婷丁香五月天| 狠狠色婷婷在线| 色播五月网| 97香蕉碰碰人妻国产欧美| 国产精品爽爽久久久久久| 国产婷婷久久| 丁香六月婷婷综合| 亚洲成人av在线播放| 久久五月天婷婷| 日韩精品一区二区刘| 九九99视频| 碰碰碰97免费精彩视频| 久久五月天综合| 9久9久| 超碰色综合| 九九热av| 激情综合五月| 第四色婷婷五月| av婷婷丁香| 九九这里有精品| 99热日| 97干在线| 婷婷爱综合| 懂色av粉嫩av蜜臀av| 我爱va亚洲va52| 9l视频自拍九色9l黑人| 五月天色五月| 色婷五月天| 亚洲激情AV| 五月婷婷之激情五月| 亚洲传媒在线观看| 97操碰在线视频| 久久六月天| 五月天激情四射| 亚洲婷婷五月天| 性99网站| 中文字幕精品在线观看| 天天色亚洲| 五月天伊人日日噜影片AV| www.cao.com久久| 91婷婷搞| 亚洲五月天天| 在线综合91| 东京热伊人| 激情5月婷婷狠狠干| 九 九九九AV| 成人在线不卡| 五月四色婷婷| 五月天婷婷爱| 亚洲熟妇AV乱码在线观看| 亚洲天堂aaa| 大香蕉婷婷丁香天堂AV| 国产亚洲精品久久久久久久久动漫| 色婷婷www| 性爱AV天堂| 成人 AV播放| 丁香五月天色婷婷| 婷婷激情五月天小说校园| 秋霞A V毛片| 婷婷丁香中文字幕| 久久人人九九| 99热这里只是精品| 在线中文av| 日韩一级| 日韩无码专区| www.色婷婷| 婷婷丁香五另类网站| 欧美在线视频免费播放| 97在线观视频免费观看| 五月色丁香| 久久精彩视频99| 久操大香蕉| 99资源人人| 日韩中文字幕| 丁香婷婷大香蕉| 婷婷情色激情| 性爱在线播放av| 一本色道久久88加勒比—| 影音先锋91在线资源站| 日韩成人精品中文字幕| 五月丁香六月激情视频| 丁香五月天精品| 综合激情婷婷| 亚洲婷婷激情综合激情999精品| 亚洲熟妇AV乱码在线观看| 99ri国产在线| 婷婷五月六| 色青五月天| 日本的α片xxxwww| 欧美婷婷日本| 超碰资源在线| 久久天堂色| 五月丁香久久久| 婷婷五月天丁香| 另类图片天天影视在线观看| 色噜噜狠狠色综合日日| 色5月婷婷| 日韩无码人妻一区二区三区综合| 天天色播| www.99久| 91人人网| 五月天激情四射网站| 色色色1网址| www.seqingwuyuetian| 婷婷五月在线视频| 涩五月婷婷| 桃色五月天| 成人AV在线电影| 五月天综合色| 色色a| 噜噜色婷婷| 97婷婷五月天| 日韩十国产极品久久| 五月婷婷丁香六月在线| 婷婷娱乐丁香综合网| 亚洲看av的网站| AⅤ色区| 欧美亚洲操逼| 人人操人av| 开心色播色五月婷婷| 婷婷五月婷婷五月天| 玖久精品视频9| www.亚洲激情| 婷婷婷婷色| 橾逼网| 激情五月天色播| 激情综合国产| 婷婷丁香五另类网站| 久久久WWW| 激情婷婷五月| 乱岳熟女50岁| 97色射| OUMEIRIHANCHENGREN| 日本全黄一级999| 2013AV天堂| 久操综合| 婷婷在线观看五月天在线视频| 丁香婷婷六月婷婷六月婷婷六月婷婷| 欧日美女Va| 婷婷中文字幕版| 五月婷婷开心综合| 日韩在线一级| 婷婷五月激情图片| 丰满人妻妇伦又伦精品国产| 亚洲欧美成人在线观看| 综合网网欲色| 五月丁香激情四射综合| 日韩好吊操| 综合综合网| 婷婷激情综合| 丁香五月AV| 超碰国产在线播放| 五月丁了香蕉综合| 激情九月婷婷| 乱抡小BB| 五月天啪啪啪| 婷香五月激情视频| 丁香情色五月| 超碰资源在线| 欧美色骚婷婷五月天| 五月网在线| 色五月琪琪| 免费观看全黄做爰的视频| 啪啪色激情五月天| 五月婷婷性爱| 一区二区三区四区无码| 狠狠色97| 99视频| 九九人人看| 丁香五月天色| 99re6久热只有精品6在线直播| 激情亚洲网| 婷婷五月丁香综合网| 婷婷在线综合| 色性日本| 玖玖婷婷五月天| 丁香五月婷婷香| 婷婷五月天激情网| 九九热精品6| 久久久精品人妻| 91成人看| va婷婷在线| 亚洲婷婷基地| 岛国AAAV| 婷婷五月丁香基地在线视频官网| 这里只有精品9| 99色热| 五月天伊人久久久久| 五月婷婷综合激情| 99九九热在线观看| 亚洲精品无码A片一区二区| 99热99在线| 激情五月天激情小说| 五月综合激情| 婷婷色丁香五月| 99热在线只有精品| 久久精品A片777777| 色播婷婷五月天| 中文在线视频久1| 被强行糟蹋的女人A片| 五月色婷婷影院| 九九热经典视频在线观看| 99热这里只有精彩| 五月丁香婷婷激情四射迷人| 中文字幕日韩无码制服诱或| 综合网色| 国产成人AV在线播放| 情涩婷婷五月天| 99热只有| 婷婷五月天堂| 丁香五月综合久久| 丁香五月综合在线观看| 夜精品无码A片一区二区蜜桃| 日韩999| 91精品综合久久婷婷九色| 97超碰99热99| 色婷婷九月| 熟女人妻视频| 五月六月丁香婷婷在线观看| 久久综合人妻| WWW久久久| √天堂资源在线人妻熟女| 五月婷婷丁香五月| 丁香美女主播视频在线观看| 综合色色五月| 六月丁香五月激情网| 五月天色综合| 婷婷免费精品视频| 丁香成人五月天| www色婷婷| 91久久久久久久久久久| 久久伦乱| 免费婷婷| 婷婷五月丁香久久| 亚洲精品电影| 婷婷综合在线| 欧美内射AA| 色播丁香| 综合激情五月天| aaaaaa片| 久久精品国产一区二区三区四区| 五月丁色AV| 欧洲色| 婷婷五月天激情综合| www.9操| 丁香五月综合亚洲| 97碰 在线视频观看| 天天撸天天干天天插| 加勒比久热| 五月天成人免费视频| www.五月婷婷.com| 五月婷婷啪| 天天婷婷综合| 亚洲成av人影院| 五月婷婷丁香六月在线| 久久五月天 91| 精品人妻伦一二三区久| 久久婷婷内射| 天天做天天爱| 丁香婷停五月激情综合深爱| 国产激情一区| 五月综合视频| 黄色AV日韩| 亚洲精品无码一区二区| 天天檫天天爽| 99精品女人天堂| 日韩啪啪网| 婷婷五月天激情综合| 丁香亚洲色综合| 67194中文字幕| 思思热久久阴99| av免费在线看不卡无毒| 开心激情网五月天| 久操热| 在线中文AV| 天天日夜夜曹| 噜噜色天天开心| 欧美三级巜人妻互换| 国产精品色婷婷AV综合色色| 激情综合五| 超碰v| 色婷婷丁香五月天在线观看| 九九热欧美| 人妻丰满精品一区二区A片| 五月开心深爱激情网| 超碰91av| 99综合五月免费视频色婷婷| 久久久无码精品成人A片小说| 99er这里只有精品| 91丨九色丨老熟女激情| 国产亚洲在线观看| 久久综合天天综合| 欧美丁香五月97色| 四季8848精品成人免费网站| 人人草人人舔| 色婷五月丁香久亚洲| www.综合久久.com| 欧亚成人A片一区二区| 裸体美女丁香五月天。| 亚洲中文丁香| 日韩大片艹艹| 无码激情AAAAA片-区区| 久操97| 中文aV网| 91ncom.色| 日本婷婷色| h在线看免费版在线看| 婷婷国产成人| 六月婷婷影院| 六月激情婷婷| 日本三日本三级少妇三级66| 久热99| 大香蕉99热| 人人爽欧美婷婷久久久五月丁香| 99色综合网| www热久久yy9| 五月天久久婷| 精品婷婷| 综合AV在线| 色五月色五天免费视频| 婷婷六月丁香1| 婷婷永久在线| 亚洲爱婷婷| A片天天| 婷婷久久大香蕉| 99热99美国在线观看| 一本伊人色婷| 激情丁香淫荡婷婷| 亚洲激情AV| 97婷婷在线| 亚洲免费成人电影AV| 熟妇内谢69XXXXXA片| 亚洲激情婷婷| 久久资源网五月婷| 色色亚洲视频| 欧美成人五月天| sewuyue第四色| 九月丁香婷婷综合激情| 国産精品| 91精品婷婷国产综合| 日韩无码91| 五月色丁香婷婷综合| 影音先锋 萱萱| 亚洲精品久久久久AV无码| www久| 国产精品久久..4399| 久久综合五月天| 热这里只有精| 天天爽日日搞| 色99视| 九九婷婷热| 亚洲无码影音| 国产无套精品一区二区| 天天插天天干| 99精品在线观看| 婷婷五月综合激情| 人妻av在线| www.色婷婷| 极品少妇高潮啪啪AV无码| 九九色精品| 91狠狠综合久久久久久| 久久久五月天| 婷婷五月天基地| 亚洲成av人影院| 精品国产乱码久久久久夜深人妻 | 五月丁香婷婷激激激综合网色播| 五月婷婷综合色拍| 这里只有国产精品在线| 深爱丁香激情| 开心五月婷婷99| 激情小说婷婷五月| 偷拍五月丁香| 五月婷婷激情中文字幕| 9久热在线视频精品| 亚洲av网站| 欧美激情综合色综合啪啪五月| 91九色首页| 99在线精品免费视频| 日本婷婷激情四射中文字幕在线观看| 色99综合色88| 人人叉久| 狠狠久久婷五月| 丁香五月婷婷久久综合激情网 | 91热久88| 激情丁香五月| 久艹大香蕉| 97成人丁香婷婷| 五月婷婷co.m| 亚洲六月色| xxxx久| 思思99热| 九九婷婷五月天| 五月丁香亭亭AV女优| 人妻激情综合| 六月色色综合| 激情99在线视频| 99久久www| 丁香六月啪啪| 97在线天堂| 四虎成人精品永久免费AV九九| 天天日夜夜B久久| 狠狠五月综合在线| 97人人操| 无码AV久久久久久久久| 97丁香视频| 久草天堂| 6080av| 99久久久久久www| 婷婷五月天小说| 日本nghangse中文字幕| 久久久久9| 亚洲婷婷五月天激情综合| 婷婷六月天| 天天爽夜夜操| 狠狠草网| 成人必爱视| 五月婷婷之综合激情| WWW.婷婷| 日日操无码| 久久最新色色色| 亚洲精品激情| 99精品在线| 久久婷综合网| 中文无码精品一区二区三区| 天天干天天干天天干| 最近中文字幕大全免费版在线 | 婷婷丁香大香蕉| 日本久久网| 五月天综合影院| 另类激情综合| www,色综合| 五月天小说激情| 99热主页日本| av在线婷婷| 欧美天天草人人草| 色婷婷狠狠| 亚洲最大成人综合网720P| 成人电影AV在线观看| site:ornaments52.com| 亚洲中文av| 五月开心啪啪| 俺五月| 人人爱操| 色婷婷影| 人人看人人草人人摸| 思思热视频在线观看| 色色色97| 久久A区B区| 中文字幕欧美日韩VA免费视频| 大香蕉婷婷久久| 99久久激情视频| 中文字幕乱码亚洲精品一区| 色婷婷电影网| 婷婷狠狠97| 丁香亚洲色综合| 五月丁香综合伦理片| 桃色五月天| 9 1超碰九色| 婷婷丁香六月| 国产91在线视频| 操99| 成人免费黄色短视频| 激情文学 综合 色| 99在线视频播放| 九九色天堂| 骚。com| 26uuu成人网| 六月婷婷色宗合| 欧美顶级少妇做爰HD| 99精品视频免费在线播放| 天天爽人人综合免费7799| 91婷婷在线观看| 激情丁香五月天图片| 日逼影音先锋男人资源站| 久久这里只有精品视频26| AV大香蕉| 5月婷婷综合| 91久久久久久久| 26UUU| 激情五月天色色网| 婷婷在线观看五月天在线视频| 久久香蕉影院| 亚洲五月婷婷| 操91| 精品思思久久| 色五月欧美| 亚洲精品va| 99这里都是精品| 欧美日韩大黄| 亚洲妇女熟BBW| 天天日夜夜操五月| 香蕉网婷婷| 亚洲AV成人无码久久精品老人法拉利| 超碰人人在线观看| 色五月婷婷久久| 色玖玖综合| 久久HD|