紀錄演講

在ROS中使用AES實現安全通訊


研究動機

  • 隨著機器人普及,一般常見的機器人皆為ROS所寫,為了避免機器人遭非法攻擊
  • 自動化工廠由於ROS是從明文傳輸(wireshirk)驗證,因此有可能被萃取資料
  • SROS2為基於ROS的安全驗證,效能要求和記憶體需求多,相容性差
  • 針對資料傳輸和機密行

研究背景

  • Challenge-response
  1. Client產生隨機數N並發送挑戰給Server,Server生成千張發送R,Client解密N'=Decrypt(R,Kpub_S),假如N' = N則可以通訊
  2. 使用RSA進行Challenge-response
  • 簽章過程
  • 消息加上SHA256生成後節後
  • 解密
  • 分離千張後驗證雜湊值
  • AES-CCM
    • AES中加入CTR和CBC-MAC = AES-CCM
    • CTR可以加密任何長度訊息
    • CBC-MAC可以保證完整性
  • 過程:
    1. 明文->CBC-MAC->T->+p->CTR(Session Key)->MAC和秘聞
    2. 秘聞->CTR(Session key)->明文->CBC-MAC->T->屆由CTR得到MAC驗證是否一樣
  • DNS server
    • DKIM
  • Session Key
    1. 身份驗證
    2. 傳送Session Key:用自己的私鑰加密再用對方的公鑰加密,解密是相反
    3. 訊息加密
    • 使用AES-CCM的方式