ПредишенСледващото

Х.509 (файл с разширение * .cer) - формат сертификат, който в допълнение към общата информация (версия, сериен номер, подпис алгоритъм, информацията за издател, дата на валидност, информация за собственика, електронния отпечатък) съдържа вашия публичен ключ. Ние го изпратите на други потребители, които искат да обменят шифровани съобщения.

PKCS # 12 (файл с разширение * .pfx) - единственият сертификат формат, който в допълнение към общата информация може да включва не само обществеността, но и частния ключ. С него ние ще дешифрира съобщенията шифровани от други потребители, използващи нашия публичен ключ, както и поставите вашия цифров подпис.

Сертификати ще създадат с помощта на програмата CyberSafe криптиране. който може да действа като сертифициращ орган. удостоверение Root орган CyberSafe Сертифициране автоматично се добавя към доверен хранилището в Windows, PKCS # 12 сертификат ще се намира под Personal. X.509 и да видим други потребители.

Първо, създаване на личен сертификат. съдържащи горепосочените сертификати, публични и частни ключове, както и друга информация. Стартирайте програмата, отидете на раздела ключът и сертификат. изберете Създаване. Ние попълнете задължителните полета и натиснете Next:

Шифроване на имейл в Outlook 2010, savepearlharbor

Сега изнасяме ние трябва да работим със сертификати Outook в отделни файлове:

CyberSafe сертификати са базирани на библиотеката OpenSSL създайте код за сертификат е показано по-долу:

процедура TOpenSSL.CreateSignedCert (конст Име: String; OutFiles: TStringList;
Конст Парола: String;
ValidDays: цяло число; KeySize: Integer; конст ExtendedKeyUsage: String;
Конст CommonName, Email, организация, OrganizationalUnit, Държава: String;
Конст CAFileSpec, CAPFXFileSpec, CAPrivateKeyPassword: String;
ARandomFileSpec: String = ";
ProgressProc: TProgressProc = нула; LogMsgProc: TLogMsgProc = нула);
Var
TmpPrivateKeyFileSpec, TmpPublicKeyFileSpec: String;
TmpCerFileSpec, TmpPfxFileSpec, TmpCsrFileSpec, TmpCASerialFileSpec, TmpExtFileSpec, TmpPemFileSpec: String;
TmpCAPrivateKeyFileSpec: String;
Субекта: String;
TempDir: String;
Преустановено: Булева;
WasError: Булева;
OutPublicKeyFileSpec: String;
започвам
WasError: = True;
TempDir: = GetTempDir;
опитвам
CheckIsFileExists (CAFileSpec);

// Получаване на частния ключ на сертификата за корен
TmpCAPrivateKeyFileSpec: = TempDir + ChangeFileExt (ExtractFileName (CAPFXFileSpec) ») + '.privateKey.pem;
ExportPrivateKeyFromPfx (CAPFXFileSpec, TmpCAPrivateKeyFileSpec, CAPrivateKeyPassword);

// Всички файлове са създадени в временната директория, и едва след успешното създаване на всички - // сега, като на мястото на постоянно съхранение,
TmpPrivateKeyFileSpec: = TempDir + FileName + '.privateKey.pem;
TmpPublicKeyFileSpec: = TempDir + FileName + '.publicKey.pem;
TmpCerFileSpec: = TempDir + FileName + '.cer;
TmpPemFileSpec: = TempDir + FileName + '.pem;
TmpPfxFileSpec: = TempDir + FileName + '.pfx;
TmpCsrFileSpec: = TempDir + FileName + '.csr;
TmpCASerialFileSpec: = TempDir + FileName + '.srl;

Субекта: = GetSubj (CommonName, Email, организация, OrganizationalUnit, Country);

Преустановено: = False;
ако целеви (ProgressProc) след това
ProgressProc (13, 4, прекъснато, формат ( "% S (% S) ....", [StKeysGenerate, KeySize, StBit]));
ако Прекратено след това
Exit;

CreatePrivateKey (TmpPrivateKeyFileSpec, TmpPublicKeyFileSpec, KeySize, ARandomFileSpec);

ако целеви (ProgressProc) след това
ProgressProc (13, 5, прекъснато, формат ( "% S ... ', [StGenerateCertificate]));
ако Прекратено след това
Exit;

ако целеви (ProgressProc) след това
ProgressProc (13, 6, прекъснато, формат ( "% S ... ', [StCreateCertificateRequest]));

// Създаване на изискване - .csr
RunOpenSSLConsole (Format (
"Req -Нови -бутона"% S "напускане"% S "-days. -subj% S '
[TmpPrivateKeyFileSpec, TmpCsrFileSpec, ValidDays, субекта]
), Вярно е, нула, нула);

ако целеви (ProgressProc) след това
ProgressProc (13, 7, прекъснато, формат ( "% S ... ', [StCreateExtensionsFile]));

// www.openssl.org/docs/apps/x509v3_config.html
TmpExtFileSpec: = StrToFile (
// "keyUsage = digitalSignature, неотхвърляне, keyEncipherment, dataEncipherment, keyCertSign '+
"KeyUsage = digitalSignature, keyEncipherment '+
IIF (ExtendedKeyUsage <> "# 13 # 10'extendedKeyUsage = '+ ExtendedKeyUsage,»),
TempDir + FileName + ".extensions.cfg"
);

ако целеви (ProgressProc) след това
ProgressProc (13, 8, прекъснато, формат ( "% S ... ', [StCreateSignedCertificate]));

// Въз основа на искането за създаване на сертификат за корен подпис на сертификата
RunOpenSSLConsole (Format (
"x509 -req -days. -passin премине:% S -в "% S" -CAform DER -CA "% S" -CAkey "% S" -CAserial "% S" -CAcreateserial напускане "% S" -outform DER -extfile "% S" "
[ValidDays, парола, TmpCsrFileSpec, CAFileSpec, TmpCAPrivateKeyFileSpec, TmpCASerialFileSpec, TmpCerFileSpec, TmpExtFileSpec]
), False, нула, нула);

// Конвертиране сег => РЕМ за следващия krmandy износа на PFX
RunOpenSSLConsole (Format (
"X509 -в"% S "-inform DER напускане"% S "-outform ПОМ ',
[TmpCerFileSpec, TmpPemFileSpec]
), False, нула, нула);

ако целеви (ProgressProc) след това
ProgressProc (13, 10, прекъснато, формат ( "% S ... ', [StCreatePFX]));

// Направи Pfx на ключове и получава PEM
RunOpenSSLConsole (Format (
"Pkcs12 -password премине:% S -износ -в"% S "-inkey"% S "-name"% S "напускане"% S " ',
[Парола, TmpPemFileSpec, TmpPrivateKeyFileSpec, FileName, TmpPfxFileSpec]
), False, нула, нула);

OutPublicKeyFileSpec: = TmpPublicKeyFileSpec + '.signed;

ExportPublicKeyFromPfx (TmpPfxFileSpec, OutPublicKeyFileSpec, парола);

// И резултатът е добавен към списъка с файлове
OutFiles.Add (TmpCerFileSpec);
OutFiles.Add (TmpPfxFileSpec);
OutFiles.Add (TmpPrivateKeyFileSpec);
OutFiles.Add (TmpPublicKeyFileSpec);
OutFiles.Add (OutPublicKeyFileSpec);

WasError: = False;
накрая
// Изтриване на временни файлове
ако WasError след това
започвам
CheckDeleteFile (TmpCerFileSpec);
CheckDeleteFile (TmpPfxFileSpec);
CheckDeleteFile (TmpPrivateKeyFileSpec);
CheckDeleteFile (TmpPublicKeyFileSpec);
CheckDeleteFile (OutPublicKeyFileSpec);
приключи;

CheckDeleteFile (TmpCsrFileSpec);
CheckDeleteFile (TmpCASerialFileSpec);
CheckDeleteFile (TmpExtFileSpec);
CheckDeleteFile (TmpPemFileSpec);
CheckDeleteFile (TmpCAPrivateKeyFileSpec);
приключи;
приключи;

Ще инсталирате изнесени сертификата в # 12 формат PKCS в магазина на Windows. За да направите това, кликнете два пъти върху файла Pfx и следвайте инструкциите в помощника за импортиране на сертификат. Тъй като този сертификат съдържа частния си ключ, на процеса на импортиране ще трябва да въведете паролата, която е посочено кога е създаден.

  • Шифроване на съдържание и приложения за изходящи съобщения
  • Добавяне на цифров подпис към изходящите съобщения

Сега, от списъка на инсталираните сертификати в магазина, за да изберете този, който ще се използва за криптиране и електронен подпис. За да направите това, натиснете тук Options ...> Изберете и изберете вашето удостоверение за:

Шифроване на имейл в Outlook 2010, savepearlharbor

На този по принцип всички :). Въпреки това, да се уверим, че имаме всичко работи правилно и да извършва проверка за криптиране "от себе си."

Шифроване на имейл в Outlook 2010, savepearlharbor

В Windows Explorer, намерете сертификата в .cer формат *

Шифроване на имейл в Outlook 2010, savepearlharbor

Шифроване на имейл в Outlook 2010, savepearlharbor

Ние изпращаме писмо. Ние се обръщаме към входящата поща и да намерят там ни изпрати съобщение. Тя се криптира, както е видно от синята икона с катинар в горния ляв ъгъл. Кликнете върху него с мишката, за да разшифровате автоматично и открито.

Ако изпратеното съобщение не се появява в пощенската си кутия, отидете на изпращане и получаване на и върху папката Update.

Шифроване на имейл в Outlook 2010, savepearlharbor

Шифроване на имейл в Outlook 2010, savepearlharbor

Проверете функцията за шифроване "на" се изпълнява.

Сега изпратите съобщението, увери си електронен подпис, други потребители и да ги подписан съобщения. Това ще ни позволи да обменят публични ключове един с друг, тъй като подписа писмо, съдържащо публичния ключ.

Ако не разполагате с удостоверение (и отворете ключа за кореспондент), можете да го изпратите на първо криптиране съобщение трябва да се деактивира, в противен случай Autluk не бъде в състояние да криптирате и ще генерира грешка. Изключване на функцията за шифроване, оставяйки включен функцията електронен подпис може да бъде в раздела Настройки:

Шифроване на имейл в Outlook 2010, savepearlharbor

Ако на публичния ключ се изтегля от сървъра не е надежден или като го получите по електронната поща не може да бъде точно сте сигурни в автентичността на ключа. То може да бъде, че това нападателят ви изпрати "фалшив" ключ вместо останалите ключове. Тогава той ще бъде в състояние да чете всички шифровани съобщения, които изпращате на приятеля си, но вашият приятел се направи, че не може.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!