远程过程调用(RPC)协议的加密验证与类型化分析
1. 认证远程过程调用(RPC)概述
在公共网络上,存在一群主体(用具体字符串 a 和 b 表示),他们希望进行各种远程过程调用(RPC)。RPC 包含请求和响应,均以字符串形式表示。该 RPC 协议的安全目标有两个:一是当主体 b 接受来自 a 的请求消息 s 时, a 确实向 b 发送了该消息;二是当 a 接受来自 b 对其请求的响应消息 t 时, b 确实是针对 a 的匹配请求发送了该响应消息。
为实现这些目标,协议使用消息认证码(MAC),通过密钥哈希计算得出。每个对称 MAC 密钥 kab 与主体对 a 和 b 相关联且为他们所知。协议的非正式描述如下:
1. a → b : utf8 s | (MAC kab (request s))
2. b → a : utf8 t | (MAC kab (response s t))
在协议描述中,每行表示从一个主体到另一个主体的数据通信。这些数据由以下五个函数构建:
- utf8 (类型为 string
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



