xref: /illumos-gate/usr/src/man/man3lib/libmd.3lib (revision b51a7e2003caa1eee7cfd998a535231eb646bb8d)
1*b51a7e20SRobert Mustacchi.\"
2c10c16deSRichard Lowe.\" Copyright (c) 2008, Sun Microsystems, Inc.  All Rights Reserved.
3*b51a7e20SRobert Mustacchi.\" Copyright 2022 Oxide Computer Company
4*b51a7e20SRobert Mustacchi.\"
5*b51a7e20SRobert Mustacchi.\" The contents of this file are subject to the terms of the
6*b51a7e20SRobert Mustacchi.\" Common Development and Distribution License (the "License").
7*b51a7e20SRobert Mustacchi.\" You may not use this file except in compliance with the License.
8*b51a7e20SRobert Mustacchi.\"
9*b51a7e20SRobert Mustacchi.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*b51a7e20SRobert Mustacchi.\" or http://www.opensolaris.org/os/licensing.
11*b51a7e20SRobert Mustacchi.\" See the License for the specific language governing permissions
12*b51a7e20SRobert Mustacchi.\" and limitations under the License.
13*b51a7e20SRobert Mustacchi.\"
14*b51a7e20SRobert Mustacchi.\" When distributing Covered Code, include this CDDL HEADER in each
15*b51a7e20SRobert Mustacchi.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*b51a7e20SRobert Mustacchi.\" If applicable, add the following below this CDDL HEADER, with the
17*b51a7e20SRobert Mustacchi.\" fields enclosed by brackets "[]" replaced with your own identifying
18*b51a7e20SRobert Mustacchi.\" information: Portions Copyright [yyyy] [name of copyright owner]
19*b51a7e20SRobert Mustacchi.\"
20*b51a7e20SRobert Mustacchi.Dd January 16, 2022
21*b51a7e20SRobert Mustacchi.Dt LIBMD 3LIB
22*b51a7e20SRobert Mustacchi.Os
23*b51a7e20SRobert Mustacchi.Sh NAME
24*b51a7e20SRobert Mustacchi.Nm libmd
25*b51a7e20SRobert Mustacchi.Nd Message Digest library
26*b51a7e20SRobert Mustacchi.Sh LIBRARY
27*b51a7e20SRobert Mustacchi.Lb libmd
28*b51a7e20SRobert Mustacchi.Sh SYNOPSIS
29*b51a7e20SRobert Mustacchi.In md4.h
30*b51a7e20SRobert Mustacchi.In md5.h
31*b51a7e20SRobert Mustacchi.In sha1.h
32*b51a7e20SRobert Mustacchi.In sha2.h
33*b51a7e20SRobert Mustacchi.Sh DESCRIPTION
34*b51a7e20SRobert MustacchiThis library provides hashing routines for the following suites of hash
35*b51a7e20SRobert Mustacchifunctions:
36*b51a7e20SRobert Mustacchi.Bl -bullet -offset indent -compact
37*b51a7e20SRobert Mustacchi.It
38*b51a7e20SRobert MustacchiMD4
39*b51a7e20SRobert Mustacchi.Pq RFC1320
40*b51a7e20SRobert Mustacchi.It
41*b51a7e20SRobert MustacchiMD5
42*b51a7e20SRobert Mustacchi.Pq RFC1321
43*b51a7e20SRobert Mustacchi.It
44*b51a7e20SRobert MustacchiSHA1
45*b51a7e20SRobert Mustacchi.Pq RFC3174
46*b51a7e20SRobert Mustacchi.It
47*b51a7e20SRobert MustacchiSHA256
48*b51a7e20SRobert Mustacchi.Pq FIPS 180-2
49*b51a7e20SRobert Mustacchi.It
50*b51a7e20SRobert MustacchiSHA384
51*b51a7e20SRobert Mustacchi.Pq FIPS 180-2
52*b51a7e20SRobert Mustacchi.It
53*b51a7e20SRobert MustacchiSHA512
54*b51a7e20SRobert Mustacchi.Pq FIPS 180-2
55*b51a7e20SRobert Mustacchi.El
56*b51a7e20SRobert Mustacchi.Sh INTERFACES
57*b51a7e20SRobert MustacchiThe shared object
58*b51a7e20SRobert Mustacchi.Sy libmd.so.1
59*b51a7e20SRobert Mustacchiprovides the public interfaces defined below.
60*b51a7e20SRobert MustacchiSee
61*b51a7e20SRobert Mustacchi.Xr Intro 3
62*b51a7e20SRobert Mustacchifor additional information on shared object interfaces.
63*b51a7e20SRobert Mustacchi.Bl -column -offset indent ".Sy SHA2Update" ".Sy SHA2Update"
64*b51a7e20SRobert Mustacchi.It Sy MD4Final Ta Sy MD4Init
65*b51a7e20SRobert Mustacchi.It Sy MD4Update Ta Sy md5_calc
66*b51a7e20SRobert Mustacchi.It Sy MD5Final Ta Sy MD5Init
67*b51a7e20SRobert Mustacchi.It Sy MD5Update Ta Sy SHA1Final
68*b51a7e20SRobert Mustacchi.It Sy SHA1Init Ta Sy SHA1Update
69*b51a7e20SRobert Mustacchi.It Sy SHA2Final Ta Sy SHA2Init
70*b51a7e20SRobert Mustacchi.It Sy SHA2Update Ta ""
71*b51a7e20SRobert Mustacchi.El
72*b51a7e20SRobert Mustacchi.Sh SECURITY
73*b51a7e20SRobert MustacchiThe MD4 and MD5 algorithms are currently considered weak for cryptographic use.
74*b51a7e20SRobert MustacchiThe algorithms should be used only for compatibility with legacy systems or
75*b51a7e20SRobert Mustacchiprotocols.
76*b51a7e20SRobert Mustacchi.Pp
77*b51a7e20SRobert MustacchiThe SHA1 algorithm is also believed to have some weaknesses.
78*b51a7e20SRobert MustacchiMigration to one of the SHA2 algorithms \(em including SHA256, SHA386 or SHA512
79*b51a7e20SRobert Mustacchi\(em is highly recommended when data formats and on wire protocols support the
80*b51a7e20SRobert Mustacchiuse of SHA2.
81*b51a7e20SRobert Mustacchi.Sh FILES
82*b51a7e20SRobert Mustacchi.Bl -tag -width Ds
83*b51a7e20SRobert Mustacchi.It Pa /lib/libmd.so.1
84*b51a7e20SRobert Mustacchi32-bit shared object
85*b51a7e20SRobert Mustacchi.It Pa /lib/64/libmd.so.1
86c10c16deSRichard Lowe64-bit shared object
87*b51a7e20SRobert Mustacchi.El
88*b51a7e20SRobert Mustacchi.Sh INTERFACE STABILITY
89*b51a7e20SRobert Mustacchi.Sy Committed
90*b51a7e20SRobert Mustacchi.Sh MT-LEVEL
91*b51a7e20SRobert Mustacchi.Sy MT-Safe
92