Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
|
Select Encryption Algorithm with SMTP Encrypted EmailDemonstrates how to select the encryption algorithm and strength (key size) when sending encrypted email.
CREATE PROCEDURE ChilkatSample AS BEGIN DECLARE @hr int DECLARE @sTmp0 nvarchar(4000) -- The mailman object is used for sending and receiving email. DECLARE @mailman int EXEC @hr = sp_OACreate 'Chilkat.MailMan2', @mailman OUT IF @hr <> 0 BEGIN PRINT 'Failed to create ActiveX component' RETURN END -- Any string argument automatically begins the 30-day trial. DECLARE @success int EXEC sp_OAMethod @mailman, 'UnlockComponent', @success OUT, '30-day trial' IF @success <> 1 BEGIN PRINT 'Component unlock failed' RETURN END -- Set the SMTP server. EXEC sp_OASetProperty @mailman, 'SmtpHost', 'smtp.comcast.net' -- Create a new email object DECLARE @email int EXEC @hr = sp_OACreate 'Chilkat.Email2', @email OUT IF @hr <> 0 BEGIN PRINT 'Failed to create ActiveX component' RETURN END EXEC sp_OASetProperty @email, 'Subject', 'This email is encrypted' EXEC sp_OASetProperty @email, 'Body', 'This is a digitally encrypted mail' EXEC sp_OASetProperty @email, 'From', 'Chilkat Support <support@chilkatsoft.com>' EXEC sp_OAMethod @email, 'AddTo', NULL, 'Chilkat Admin', 'admin@chilkatsoft.com' -- In this example, we've already installed the certificate for "admin@chilkatsoft.com" -- in the current user's personal certificate store. -- If the email.SendEncrypted property is set, Chilkat will -- automatically search for and use the first non-expired certificate -- matching the recipient's email address. Chilkat searches -- the Current User's Personal certificate store, as well -- as the Local Machine's Personal certificate store. -- Run certmgr.msc to view the certs in the Current User's -- certificate store. EXEC sp_OASetProperty @email, 'SendEncrypted', 1 -- Use the CSP object to select an encryption algorithm: DECLARE @csp int EXEC @hr = sp_OACreate 'Chilkat.Csp', @csp OUT IF @hr <> 0 BEGIN PRINT 'Failed to create ActiveX component' RETURN END -- Make sure we're using the enhanced provider, which provides -- access to stronger algorithms. EXEC sp_OAMethod @csp, 'SetProviderMicrosoftEnhanced', NULL -- Select 168-bit 3DES (i.e. 192-bit DES if you include the parity bits) EXEC sp_OAMethod @csp, 'SetEncryptAlgorithm', NULL, '3DES' -- Tell the email to use this CSP: EXEC sp_OAMethod @email, 'SetCSP', NULL, @csp EXEC sp_OAMethod @mailman, 'SendEmail', @success OUT, @email IF @success <> 1 BEGIN EXEC sp_OAGetProperty @mailman, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 END ELSE BEGIN -- Examine the LastErrorText anyway, so we can see -- that 3DES was used... -- You should see these lines in the log: -- alg_name: 3DES -- alg_bits: 168 EXEC sp_OAGetProperty @mailman, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 END END GO |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2007 Chilkat Software, Inc. All Rights Reserved.