因為aes128-ecb加密金鑰採用了256位(32位元組)的形式,而aes加密的位數是和金鑰長度掛鉤的,所以在剛拿到藍芽協議的時候,一臉懵逼。為啥16位元組的資料通過aes128-ecb加密後還是16個位元組,此時我一直認為應該是32個位元組(因為我測試也是返回的32個位元組,沒毛病啊?)
但是,這是有問題的!
首先來看下我們的藍芽資料加密資料的格式:
key:
需加密資料:
加密後結果:
傳送16個位元組,加密後也是16個位元組。沒辦法啊,只能去看aes128 ecb加密的**了。後面發現確實之前的加密後結果長度 = 內容長度 + kccblocksizeaes128的長度,幾番折騰,終於可以了,現在把修改好的**發出來。
匯入標頭檔案 #import
加密:
解密:
測試使用:
不足之處,歡迎指正!也希望能對你有所幫助~
PHP實現的AES 128位加密演算法示例
加密演算法一般分為兩種 對稱加密演算法和非對稱加密演算法。對稱加密 對稱加密演算法是訊息傳送者和接收者使用同乙個密匙,傳送者使用密匙加密了檔案,接收者使用同樣的密匙解密,獲取資訊。常見的對稱加密演算法有 des aes 3des.對稱加密演算法的特點有 速度快,加密前後檔案大小變化不大,但是密匙的保...
關於藍芽異常斷開的問題
在做藍芽開發的時候,遇到了藍芽會異常斷開的問題。專案需求的功能是要求連線兩個藍芽ble裝置。乙個藍芽a裝置要求的即時性不高,可以掃瞄一段時間然後停止掃瞄一段時間,但是另外乙個藍芽b裝置要求的即時行較高需要系統去不停的掃瞄 以便在發現裝置後能夠迅速的做出反應。就這樣在裝置連線上其中的a藍芽後,在掃瞄b...
關於藍芽安全機制的研究介紹
2009 04 08 16 32 73人閱讀收藏 舉報隨著計算機網路和移動 技術的迅猛發展,人們感到越來越迫切需要發展小範圍的無線資料與語音通訊技術。於是愛立信 英特爾 諾基亞和東芝等公司在1998年聯合推出一項新的無線網路技術,即藍芽技術。藍芽技術可以解決小型移動裝置間的無線互連問題,它的硬體市場...