更新时间:2021-12-17 GMT+08:00
分享

RSA多方交互接口

功能介绍

客户端与服务端RSA多方交互接口,开启了RSA安全多方功能后客户端调用。

URI

URI格式:

POST https://{{Federal-IP}}/federated/v1/rsa/interaction
参数说明,如表1所示。
表1 参数说明

参数

是否必选

类型

说明

agentId

Y

String

客户端ID

taskId

Y

String

任务ID(一般是模型上传任务的ID)

task

Y

String

RSA交互任务类型。

取值信息如下所示:

  • none:无指定任务
  • client_push_pk:客户端上传公钥
  • client_push_enc_sk_b:客户端上传加密后的sk或b值
  • client_receive_enc_sk_b:客户端接收到server下发的加密后的sk或b值
  • client_push_sk_b:客户端根据server指示,上传解密后的sk或b

clientPubKey

N

MultipartRsaPubKey

客户端公钥信息,在task为client_push_pk时需要上传

shareEncSkAndB

N

String

客户端生成的加密sk/b信息,在task为client_push_enc_sk_b时需要上传

serverNeedSkAndB

N

String

服务端需要的解密后的sk或b信息,在task为client_push_sk_b时需要上传。在线的客户端传b,不在线的传sk。

表2 MultipartRsaPubKey类型参数说明

参数

是否必选

类型

说明

agentId

Y

String

客户端ID

pubKey

Y

BigInteger

公钥pubKey信息

encPubKey

Y

BigInteger

公钥encPubKey信息

请求

请求样例
POST https://{{Federal-IP}}/federated/v1/rsa/interaction
{ 
      "agentId": "agentId-2mowsu8f",
      "taskId": "taskId-xxxxxx",
      "task": "client_push_pk",
      "clientPubKey": {
         "agentId": "agentId-2mowsu8f",
         "pubKey": 54381472524654731766206828790442948591541722900048035899002563981003176763466,
         "encPubKey": 10417175369514411770959626817055940628104289396442323381834235478762431917129          
     }
}

响应

  • 成功响应样例
{
     "success": true,
     "task": "none"
}          
  • 失败响应样例
{
    "success": false,
    "code": "23469334.14010.10001",
    "msg": "you have not right to operator this instance!"
} 
表3 响应参数说明

参数

是否必选

类型

说明

code

N

String

状态码。成功为0,失败情况下为非0

msg

N

String

返回的message信息。失败情况下为错误信息

success

Y

Boolean

是否成功

task

Y

String

RSA交互任务类型。

取值信息如下所示:

  • none:无指定任务
  • server_issue_pk:服务端下发公钥
  • server_issue_enc_sk_b:服务端下发加密后拆分的sk或b
  • server_need_sk_b:服务端需要获取指定解密后的sk或b
  • over:结束任务

clientPubKeys

N

List<MultipartRsaPubKey>

server下发的其他客户端公钥信息列表,在task为server_issue_pk时下发。客户端接收后需要保存相关信息。

remoteEncSkB

N

String

server下发的其他客户端加密sk、b信息,在task为server_issue_enc_sk_b时下发。客户端保存后需要上报client_receive_enc_sk_b任务类型。

modulus

N

BigInteger

server下发的本次RSA任务大素数,在task为server_issue_pk时下发

onlineClients

N

List<String>

server在需要客户端协助上传解密信息时,即task为server_need_sk_b时下发,客户端上传对应客户端b信息。

offlineClients

N

List<String>

server在需要客户端协助上传解密信息时,即task为server_need_sk_b时下发,客户端上传对应客户端sk信息。

分享:

    相关文档

    相关产品

close