Type Method

sign(certificateRequest:user:keyInfo:pin:queue:completion:)

Подписывает запрос на сертификат и отправляет на сервер

Declaration

static func sign(certificateRequest: Certificate, user: User, keyInfo: KeyInfo?, pin: String, queue: DispatchQueue = .main, completion: @escaping (_ result: Result<Void, Error>) -> Void)

Parameters

certificateRequest

Подписываемый запрос на сертификат

user

Пользователь, которым будет подписан запрос

keyInfo

Информация о контейнере ключа подписи

pin

Пин-код контейнера ключа подписи

queue

Очередь на которой будет вызвано замыкание

Discussion

В метод необходимо передать ключевую пару пользователя KeyInfo и экземпляр Certificate, для которого выполняются условия:

certificateRequest.type == .request
&& certificateRequest.state == .signWait
&& certificateRequest.isClient == true

Если условия не будут выполнены, то метод вернёт ошибку SDKError.wrongCertificateRequest

Предварительно необходимо вызвать метод UsersManager.submitPassword(user:callback:). Иначе вернётся ошибка SDKError.handleInvalid.