summaryrefslogtreecommitdiff
path: root/doc/crypto/BN_mod_inverse.pod
diff options
context:
space:
mode:
Diffstat (limited to 'doc/crypto/BN_mod_inverse.pod')
-rw-r--r--doc/crypto/BN_mod_inverse.pod35
1 files changed, 35 insertions, 0 deletions
diff --git a/doc/crypto/BN_mod_inverse.pod b/doc/crypto/BN_mod_inverse.pod
new file mode 100644
index 0000000000..305d77cd85
--- /dev/null
+++ b/doc/crypto/BN_mod_inverse.pod
@@ -0,0 +1,35 @@
+=pod
+
+=head1 NAME
+
+BN_mod_inverse - Compute inverse modulo n
+
+=head1 SYNOPSIS
+
+ #include <openssl/bn.h>
+
+ BIGNUM *BN_mod_inverse(BIGNUM *r, BIGNUM *a, const BIGNUM *n, BN_CTX *ctx);
+
+=head1 DESCRIPTION
+
+BN_mod_inverse() computes the inverse of B<a> modulo B<n>
+places the result in B<r> (C<(a*r)%n==1>). If B<r> is NULL,
+a new B<BIGNUM> is created.
+
+B<ctx> is a previously allocated B<BN_CTX> used for temporary
+variables. B<r> may be the same B<BIGNUM> as B<a> or B<n>.
+
+=head1 RETURN VALUES
+
+BN_mod_inverse() returns the B<BIGNUM> containing the inverse, and
+NULL on error. The error codes can be obtained by ERR_get_error(3).
+
+=head1 SEE ALSO
+
+bn(3), err(3), BN_add(3)
+
+=head1 HISTORY
+
+BN_mod_inverse() is available in all versions of SSLeay and OpenSSL.
+
+=cut