遙控開鎖的安全性
點擊量:2784時間:2020/3/16 16:30:32
汽車控制器的內部結構
?
可以看到,所有的東西都被縮小了。 有一個小芯片用來產生要發射的代碼,而那個銀色的罐狀物(大小與干裂成兩半的豌豆差不多)就是發射器。
所有現代控制器中的控制器芯片都使用一項稱作跳頻碼或循環碼的技術來保證安全性。 例如,您可以讀讀這個PDF格式的文章,它介紹了一個使用40位循環碼的系統。40位的循環碼可產生240(約等于1萬億)個可能的代碼。 下面是它的工作原理:
發射器控制器芯片的某個內存位置保存了當前的40位代碼。 在您按遙控鑰匙上的按鈕時,它將該40位代碼與一個功能碼一起發送出去,該功能碼的作用在于告訴汽車您要做的事情(鎖上車門、打開車門、打開行李箱等)。
接收器控制器芯片的某個內存位置也保存了當前的40位代碼。 如果接收器收到它期望的40位代碼,就會執行所請求的功能。 如果沒有,則不執行。
發射器和接收器都使用相同的偽隨機數發生器。 發射器發送一個40位代碼時,它使用偽隨機數發生器選取一個新代碼并將該代碼保存在內存中。 在另一端,接收器收到有效代碼時,它也使用相同的偽隨機數發生器選取一個新代碼。 這樣,發射器和接收器就能保持同步。 只有在接收器收到它期望代碼的情況下,它才會打開車門。
如果您在距離您汽車有數公里之遠時不小心按下了發射器上的按鈕,那么,發射器和接收器會變得不同步。 為解決此問題,接收器會檢查收到的代碼是否屬于偽隨機數序列中接下來的256個可能的有效代碼,如果屬于,則執行所請求的功能。 這樣,只要您(或您三歲大的孩子)不小心按下發射器按鈕的次數少于或等于256次,那么也不會出現任何問題——接收器仍然會接受傳送的代碼并執行所請求的功能。 但是,如果您不小心將按鈕按下了257次,接收器將完全忽視您的發射器。 它將不再工作。