spice protocol Channel link 建立channel 连接

建立一个channel connection

1. 连接过程

  • client端初始化channel连接进程,然后发送一个SpiceLinkMess 。
  • server端回应一个SpiceLinkReply。
  • 当client 收到SpiceLinkReply后,确保没有错误的情况下,使用公钥(在SpiceLinkReply中)加密密码并发送至server。
  • server收到密码之后将连接结果发送给client。
  • client验证连接结果,确保其值为SPICE_LINK_ERR_OK,一个合法的连接就被建立了。

2. 验证(Ticketing)

  • Ticketing是spice用于确保只有授权的source才可以打开连接的机制
  • 要启用此机制,需要在spice服务器中设置一个包括密码和时间有效性的ticket。
  • 时间有效性过期之后整个ticket被废弃。
  • ticket是被加密的
  • server生成一个1024bit的RSAkey 将公钥发送给client (via RedLinkInfo)
  • client 使用公钥加密密码并发送至server(after SpiceLinkMess)。
  • 服务器解密密码,将其与ticket进行比较,并确保它在允许的时间范围内收到。

4. SpiceLinkMess 定义

详见 https://www.spice-space.org/spice-protocol.html

5. SpiceLinkReply 定义

详见 https://www.spice-space.org/spice-protocol.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值