More .NET libraries
-
Rebex Mail Pack
IMAP, MS Graph, EWS, POP3, SMTP, MIME, S/MIME, MSG
-
Rebex Total Pack
All Rebex .NET libraries together
Back to feature list...
Standards and platform support
On this page:
- 100% managed .NET code with no external dependencies
- .NET 9/8/7/6/5
- .NET Framework on Windows
- .NET Core
- .NET Standard
- Mono on Linux
- Xamarin.iOS
- Xamarin.Android
- ASP.NET
- Legacy platform support
- .NET Compact Framework
- Internet RFC specifications
- TLS/SSL versions
- MIME, S/MIME, Outlook MSG and other email formats
- FIPS 140-2 mode
- Proxy servers
- Authentication methods
- SMTP Extensions
- Cryptographic algorithms
- Scripting platforms
- Other technologies
100% managed .NET code with no external dependencies
- Rebex SMTP is written in 100% managed C# code.
- No external dependencies. It only needs .NET.
- No third-party or open source code used.
- Fully CLS-compliant.
- Supports any .NET language (C#, VB.NET, C++/CLI, etc.)
- Platform-independent code. Same assemblies for both 32-bit and 64-bit applications and x86/x64, ARM32/ARM64 architectures.
.NET 9/8/7/6/5
Rebex SMTP supports .NET 9, .NET 8 and .NET 7 on all supported operating systems:
- Windows 11 (x64, ARM64)
- Windows 10 (x64, x86, ARM64)
- Windows Server 2022 (x64)
- Windows Server 2019 (x64)
- Windows Server 2016 (x64)
- Windows Server 2012 (x64, x86)
- Linux (x64, ARM64, ARM32)
- macOS (x64, ARM64)
- Android (x64, ARM64, ARM32)
- iOS/tvOS (x64, ARM64, ARM32)
Rebex SMTP also supports .NET 6 and .NET 5 on all supported operating systems:
- Windows 11 (x64, ARM64)
- Windows 10 (x64, x86, ARM64)
- Windows Server 2022 (x64)
- Windows Server 2019 (x64)
- Windows Server 2016 (x64)
- Windows Server 2012 (x64, x86)
- Windows 8.1 (x64, x86)
- Windows 7 SP1 (x64, x86) (end-of-life platform)
- Linux (x64, ARM64, ARM32)
- macOS (x64, ARM64)
- Android (x64, ARM64, ARM32)
- iOS/tvOS (x64, ARM64, ARM32)
.NET Framework on Windows
Rebex SMTP supports the following .NET Framework platforms:
- .NET Framework 4.8.x
- .NET Framework 4.7.x
- .NET Framework 4.6.x
- .NET Framework 4.5.x
- .NET Framework 4.0
- .NET Framework 3.5 SP1
- Both 32-bit and 64-bit versions (same DLLs)
Legacy binaries for .NET Framework 2.0/3.0 are available as well.
For details and a trial version download link, see Support for Legacy Platforms.
Supported IDE versions:
- Microsoft Visual Studio 2022
- Microsoft Visual Studio 2019
- Microsoft Visual Studio 2017
- Microsoft Visual Studio 2015
- Microsoft Visual Studio 2013
- Microsoft Visual Studio 2012
Supported Windows versions:
- Windows 11
- Windows 10
- Windows Server 2022
- Windows Server 2019
- Windows Server 2016
- Windows 8.1
- Windows Server 2012 R2
- Windows Server 2012
- Windows Server 2008 R2 SP1 (end-of-life platform)
- Windows Server 2008 (end-of-life platform)
- Windows 7 SP1 (end-of-life platform)
Rebex SMTP is also known to work on Windows 8, Windows Vista SP1, Windows XP SP3, Windows Server 2003 R2, Windows Embedded Standard 2009 and Windows Embedded POSReady 2009. However, these platforms already reached end-of-life (most of them many years ago), which means we cannot guarantee support for Rebex SMTP on these operating systems.
.NET Core
Rebex SMTP supports .NET Core platform.
Supported versions:
- .NET Core 3.1
- .NET Core 2.1 (end-of-life platform)
Supported operating systems:
- Windows 11
- Windows 10
- Windows Server 2022
- Windows Server 2019
- Windows Server 2016
- Windows 8.1
- Windows Server 2012 R2
- Windows Server 2012
- Windows Server 2008 R2 SP1 (end-of-life platform)
- Windows Server 2008 (end-of-life platform)
- Windows 7 SP1 (end-of-life platform)
- Linux
- macOS
.NET Standard
Rebex SMTP supports .NET Standard 2.1 on .NET 9/8/7/6/5, .NET Core 3.1, Mono 6.10 (or higher), Xamarin.Android 10.1 (or higher) and Xamarin.iOS 13.10 (or higher). It also supports .NET Standard 2.0 on .NET Core 2.1.
Xamarin.iOS
- Visual Studio with Xamarin.iOS 13.10 or later
- iOS 10.2 or later
To target Xamarin.iOS platform, reference .NET Standard 2.1 binaries.
Xamarin.Android
- Visual Studio with Xamarin.Android 10.1 or later
To target Xamarin.Android platform, reference .NET Standard 2.1 binaries.
ASP.NET
Rebex SMTP can be used within an ASP.NET web page. However, you have to keep in mind specific features of the ASP.NET platform (it is stateless, multithreaded, it may be limited by MediumTrust security level...).
Further info on using Rebex libraries in web environment can be found in How to use Rebex SFTP or FTP in ASP.NET knowledge base article. The article discusses SFTP and FTP, but implications for Rebex SMTP libraries are the same.
Legacy platform support
Legacy edition of Rebex SMTP for the following platforms is available as a separate product:
- .NET Compact Framework 3.5/3.9
- .NET Framework 2.0/3.0
Legacy platforms are platforms that are no longer covered by our Standard Support, but have not yet reached End of Life. For details, see the following KB articles:
.NET Compact Framework
Rebex SMTP supports .NET Compact Framework on Microsoft's legacy embedded, handheld and mobile platforms based on Windows CE.
Supported frameworks:
- .NET Compact Framework 3.9
- .NET Compact Framework 3.5 (end-of-life)
Supported operating systems:
- Windows Embedded Compact 2013
Known to work on the following end-of-life operating systems:
- Windows Embedded Compact 7
- Windows Embedded Handheld 6.5
- Windows Embedded CE 6.0
- Windows CE 5.0
- Windows Mobile 5.0, 6.0, 6.1, 6.5
Please note .NET Compact Framework is a legacy platform, which means that Rebex SMTP for .NET CF is available as a separate product with different lifecycle and pricing.
Due to popular demand, we will continue to provide and maintain binaries for .NET Compact Framework 3.5 until 2023-10-10, as long as your legacy support contract remains active. However, support for these binaries is no longer included in the Rebex Support Contract.
Internet RFC specifications
Rebex SMTP aims to implement the following Internet standards:
SMTP RFCs:
MIME, S/MIME and CMS RFCs:
- RFC 1847
- RFC 2045
- RFC 2046
- RFC 2047
- RFC 2048
- RFC 2049
- RFC 2822
- RFC 3217
- RFC 3370
- RFC 3565
- RFC 3850
- RFC 3851
- RFC 3852
- RFC 8017 (3447)
TLS RFCs:
- RFC 2246 (TLS 1.0)
- RFC 4346 (TLS 1.1)
- RFC 5246 (TLS 1.2)
- RFC 8446 (TLS 1.3)
- RFC 5746 (TLS Renegotiation Indication Extension)
Other RFCs:
While we tried hard to be compliant with relevant RFCs, current practice in Internet mail often deviates from these standards. In fact, sometimes being compliant can severely hinder interoperability with existing software. Interoperability was therefore the highest priority.
For example, being compliant with RFC 2231 would lead to incompatibility with Microsoft Outlook, Outlook Express, and possibly a number of other mail agents as well. So even though Rebex SMTP is able to parse RFC2231-compliant messages, it does not produce them.)
TLS/SSL versions
Supported TLS/SSL protocol versions:
- TLS 1.3 (not available on .NET Compact Framework)
- TLS 1.2
- TLS 1.1
- TLS 1.0
- SSL 3.0
MIME, S/MIME, Outlook MSG and other email formats
Supported e-mail message formats:
- RFC 822/2822/5322 - Internet Message Format
- MIME - Multipurpose Internet Mail Extensions
- Outlook MSG - native format used by Microsoft Outlook
- MS-TNEF/winmail.dat - Microsoft's proprietary email extension format
Supported attachment subformats:
- UUEncode
- Embedded OLE objects within TNEF/winmail.dat e-mail messages
- Application-specific OLE attachments in MSG e-mail messages
- Base64, Quoted-Printable, 7bit, 8bit and binary entities in MIME e-mail messages
FIPS 140-2 mode
Rebex SMTP can operate in a FIPS 140-2 compliant mode. When enabled, only FIPS-approved
cryptographic modules from MS CryptoAPI are used. FIPS mode is activated automatically when Windows is running in FIPS mode.
To switch on the FIPS mode manually, setRebex.Security.Cryptography.CryptoHelper.UseFipsAlgorithmsOnly
to true
.
Proxy servers
- SOCKS4
- SOCKS4a (Socks4 with domain name resolving)
- SOCKS5
- HTTP proxies with CONNECT method support
Learn how to use proxy servers in Rebex SMTP.
Authentication methods
SMTP authentication methods
Auto
- automatically choose the best method available.Plain
- RFC 2595 plaintext authentication.NTLM
- Integrated Microsoft Windows Authentication.GSSAPI
- currently supported mechanisms are Kerberos, NTLM and SPNEGO/Negotiate.Digest-MD5
- RFC 2831 DIGEST-MD5 authentication.CRAM-MD5
- RFC 2195 CRAM-MD5 authentication.Login
- 'LOGIN' plaintext authentication.
SMTP Extensions
SMTP extensions
Pipelining
- Sending SMTP commands in groupsChunking
- Enhanced method of sending message dataBinary MIME
8bit MIME
ETRN
- Enhanced turn command supportEnhanced status codes
DSN
- Delivery status notificationsMessage size declaration
STARTTLS
- Explicit TLS/SSL support
Cryptographic algorithms
- RSA
- Ed25519
- ECDSA
- DSA (legacy)
- Diffie-Hellman key exchange
- Elliptic curve Diffie-Hellman key exchange (ECDH)
- AES
- AES/GCM
- ChaCha20/Poly1305
- Tripple DES
- Twofish
- DES (legacy)
- Blowfish (legacy)
- ArcFour (compatible with RC4, legacy)
- ArcTwo (compatible with RC2, legacy)
- SHA-2 (SHA-256, SHA-384, SHA-512)
- SHA-1
- MD5 (legacy)
- MD4 (legacy)
Learn more about TLS/SSL security standards details.
Learn more about S/MIME security standards details.
Scripting platforms
Rebex SMTP is designed primary for use in .NET framework applications. However, it can be used in several other scripting and hosting environments:
- Microsoft SQL Server SSIS packages
- Microsoft SQL Server SQL CLR stored procedures
- Microsoft PowerShell scripts
See how to use Rebex SMTP in SSIS, SQL CLR and PowerShell environments.
Other technologies
- IPv4 and IPv6 support
- Kerberos v5, NTLM and Negotiate (see more about GSSAPI authentication) on Windows
Back to feature list...