为了保证数据传输的安全,会携带配置的vkey用来验证来源。同时使用encrypt该密钥对消息内容做对称加密或解密。


消息加解密算法:

采用AES进行加密解密,加密模式为AES-CBC,填充模式使用零填充,偏向使用vkey密钥

下载以下PHP、JS、GoLang示例:

http://proxy-os.aimlt.com/public/up/20220410/572653bda2cb2899eb3f26a82e88a7ec.zip



消息加密实现:

完整的消息体示例:

{
    "signature":"111ee6dbce3c9671dr6fdb69d1t506",
    "timestamp":"1783210513",
    "nonce":"123456",
    "encrypt":"214ojQ2f0NSvw2WPv3W7LijxS8UvISr8pdDePrXrpPbcL5kg"
}

其中encrypt为AES加密的推送事件信息,加密前格式如下:

{
    "event" : "event_device_online",
    "content" : "123456",
}

encrypt数据格式说明:

  1. event  为事件类型,详情事件列表

  2. content  为消息内容,需要经过Base64编码处理


signature数据签名算法:  

md5(encrypt=214ojQ2f0NSvw2WPv3W7LijxS8UvISr8pdDePrXrpPbcL5kg&nonce=123456& timestamp=1783210513&vkey)

注意前后顺序,大小写等


encrypt数据解密密钥算法:  

md5(signature&vkey)

注意:signature为签名结果