private JsonObject GetESignData(JsonObject credentials)
        {
            var password = credentials.Get <string>("signToken");

            SecureString securedPassword = Cryptographer.ConvertToSecureString(password);

            var electronicSeal = this.SecurityData.GetElectronicSeal();

            var signature = Cryptographer.SignText(electronicSeal, securedPassword);

            var signData = new JsonObject();

            signData.Add("signature", signature);
            signData.Add("timestamp", DateTime.Now);

            return(signData);
        }
        internal void RevokeSign(JsonObject credentials)
        {
            Assertion.AssertObject(credentials, "credentials");

            EnsureCanRevokeSign();

            var password = credentials.Get <string>("revokeSignToken");

            SecureString securedPassword = Cryptographer.ConvertToSecureString(password);

            Cryptographer.AssertValidPrivateKeyPassword(securedPassword);

            this.AuthorizationTime = ExecutionServer.DateMaxValue;

            _request.ExtensionData.Remove("esign");

            _statusHandler.SignRevoked();
        }
        static private string SignData(SignCredentials credentials, string inputData)
        {
            SecureString securedPassword = Cryptographer.ConvertToSecureString(credentials.Password);

            return(Cryptographer.SignText(inputData, securedPassword));
        }
        private void EnsureValidCredentials(SignCredentials credentials)
        {
            SecureString securedPassword = Cryptographer.ConvertToSecureString(credentials.Password);

            Cryptographer.AssertValidPrivateKeyPassword(securedPassword);
        }