public Task <RegisterOperationResult> Register(ICollection <KeyRegisterRequest> registerRequests, ICollection <KeySignRequest> signRequests,
                                                       CancellationToken cancellationToken = new CancellationToken())
        {
            var signer = new MultiKeyOperation <RegisterOperationResult>(
                keyFactory,
                (keyId, ct) => new RegisterOperation(keyId, registerRequests).AuthenticateAsync(ct),
                r => r.IsSuccess
                );

            return(signer.RunOperationAsync(cancellationToken));
        }
        public Task <SignOperationResult> Sign(ICollection <KeySignRequest> requests, CancellationToken cancellationToken = new CancellationToken(),
                                               bool invididualAttestation = false)
        {
            var signer = new MultiKeyOperation <SignOperationResult>(
                keyFactory,
                (keyId, ct) => new SignOperation(keyId, requests).SignAsync(ct),
                r => r.IsSuccess
                );

            return(signer.RunOperationAsync(cancellationToken));
        }