Titkosított e-mail kilátások 2018-savepearlharbor
Az X.509 (kiterjesztésű fájl * .cer) - tanúsítvány formátuma, amely általános információk mellett (szériaszám, aláírási algoritmust, a kiadó információt, lejárati dátumát, a tulajdonos adatait, az elektronikus lenyomat) tartalmazza a nyilvános kulcsot. Küldjük a többi felhasználó számára, ami akar titkosított üzeneteket.
PKCS # 12 (kiterjesztésű fájl * .pfx) - az egyetlen tanúsítvány formátuma, amely amellett, hogy általános információkat tartalmazhat nemcsak az állami, hanem a privát kulcs. Vele, akkor megfejteni kódolt üzeneteket a többi felhasználó használja a nyilvános kulcs, valamint tegye a digitális aláírás.
Igazolásokat létre a titkosító programot CyberSafe. amely működhet, mint egy Certificate Authority. Főtanúsítványt CyberSafe Certification Authority automatikusan hozzáadódik a megbízott megőrző Windows, PKCS # 12 tanúsítványt a kategóriában Personal. X.509 és látni a többi felhasználó.
Először hozzon létre egy személyes tanúsítványt. amely a fent említett igazolások, nyilvános és titkos kulcsokat, valamint egyéb információkat. A program futtatásához menjen a lap kulcsot és tanúsítványt. válassza létrehozása. Mi töltse ki a szükséges mezőket, majd kattintson a Tovább gombra:
Most exportálni kell dolgozni Outook igazolásokat külön fájlokban:
CyberSafe tanúsítványok alapján az OpenSSL könyvtár, hozzon létre egy tanúsítványt kódot alábbiakban mutatjuk be:
eljárás TOpenSSL.CreateSignedCert (const fájlnév: string; OutFiles: TStringList;
const Jelszó: String;
ValidDays: integer; KeySize: integer; const ExtendedKeyUsage: String;
const commonName, e-mail, szervezet, organizationalUnit, Ország: String;
const CAFileSpec, CAPFXFileSpec, CAPrivateKeyPassword: String;
ARandomFileSpec: String = »;
ProgressProc: TProgressProc = nil; LogMsgProc: TLogMsgProc = nulla);
var
TmpPrivateKeyFileSpec, TmpPublicKeyFileSpec: String;
TmpCerFileSpec, TmpPfxFileSpec, TmpCsrFileSpec, TmpCASerialFileSpec, TmpExtFileSpec, TmpPemFileSpec: String;
TmpCAPrivateKeyFileSpec: String;
Tárgy: String;
Tempdir: String;
Megszakítva: Boolean;
WasError: Boolean;
OutPublicKeyFileSpec: String;
kezdődik
WasError: = true;
Tempdir: = GetTempDir;
megpróbál
CheckIsFileExists (CAFileSpec);
// A privát kulcs a gyökér tanúsítvány
TmpCAPrivateKeyFileSpec: = tempdir + ChangeFileExt (ExtractFileName (CAPFXFileSpec), ») + '.privateKey.pem';
ExportPrivateKeyFromPfx (CAPFXFileSpec, TmpCAPrivateKeyFileSpec, CAPrivateKeyPassword);
// Minden fájl jön létre az ideiglenes könyvtárban, és csak azt követően sikeres létrehozása összes - // most helyét átvennék a tartós tárolás
TmpPrivateKeyFileSpec: = tempdir + fájlnév + '.privateKey.pem';
TmpPublicKeyFileSpec: = tempdir + fájlnév + '.publicKey.pem';
TmpCerFileSpec: = tempdir + fájlnév + '.cer';
TmpPemFileSpec: = tempdir + fájlnév + '.pem';
TmpPfxFileSpec: = tempdir + fájlnév + '.pfx';
TmpCsrFileSpec: = tempdir + fájlnév + '.csr';
TmpCASerialFileSpec: = tempdir + fájlnév + '.srl';
Tárgy: = GetSubj (commonName, e-mail, szervezet, organizationalUnit, ország);
Megszakítva: = false;
ha Címzett (ProgressProc), majd
ProgressProc (13, 4, megszakítva, Format ( '% s (% s) ....', [StKeysGenerate, KeySize, StBit]));
ha megszakítva, majd
Kilépés;
CreatePrivateKey (TmpPrivateKeyFileSpec, TmpPublicKeyFileSpec, KeySize, ARandomFileSpec);
ha Címzett (ProgressProc), majd
ProgressProc (13, 5, megszakítva, Format ( '% s ...', [StGenerateCertificate]));
ha megszakítva, majd
Kilépés;
ha Címzett (ProgressProc), majd
ProgressProc (13, 6, megszakítva, Format ( '% s ...', [StCreateCertificateRequest]));
// Létrehozunk kérésére - .csr
RunOpenSSLConsole (Format (
„Req -új gombos "% s" kijelentkezés "% s" -days. -subj% s',
[TmpPrivateKeyFileSpec, TmpCsrFileSpec, ValidDays, Tárgy]
), Igaz, nulla, nulla);
ha Címzett (ProgressProc), majd
ProgressProc (13, 7, megszakítva, Format ( '% s ...', [StCreateExtensionsFile]));
// www.openssl.org/docs/apps/x509v3_config.html
TmpExtFileSpec: = StrToFile (
// 'keyUsage = digitális aláírás, a letagadhatatlanság, keyEncipherment, dataEncipherment, keyCertSign' +
'KeyUsage = digitális aláírás, keyEncipherment' +
IIF (ExtendedKeyUsage <> „# 13 # 10'extendedKeyUsage =„+ ExtendedKeyUsage, »)
Tempdir + fájlnév + '.extensions.cfg'
);
ha Címzett (ProgressProc), majd
ProgressProc (13, 8, megszakítva, Format ( '% s ...', [StCreateSignedCertificate]));
// A kérelem alapján, hogy hozzon létre egy tanúsítvány aláírására főtanúsítványt
RunOpenSSLConsole (Format (
„X509 -req -days. -passin át:% s -in "% s" -CAform DER -CA "% s" -CAkey "% s" -CAserial "% s" -CAcreateserial kijelentkezés "% s" -outform DER -extfile "% s" '
[ValidDays, jelszó, TmpCsrFileSpec, CAFileSpec, TmpCAPrivateKeyFileSpec, TmpCASerialFileSpec, TmpCerFileSpec, TmpExtFileSpec]
), Hamis, nulla, nulla);
// konvertálása cer => PEM a következő krmandy exportra pfx
RunOpenSSLConsole (Format (
'X509 -in "% s" -inform DER kijelentkezés "% s" -outform PEM',
[TmpCerFileSpec, TmpPemFileSpec]
), Hamis, nulla, nulla);
ha Címzett (ProgressProc), majd
ProgressProc (13, 10, megszakítva, Format ( '% s ...', [StCreatePFX]));
// ne pfx kulcsok és kapott PEM
RunOpenSSLConsole (Format (
'PKCS12 -password át:% s -export -in "% s" -inkey "% s" -name "% s" kijelentkezés "% s"',
[Jelszó, TmpPemFileSpec, TmpPrivateKeyFileSpec, fájlnév, TmpPfxFileSpec]
), Hamis, nulla, nulla);
OutPublicKeyFileSpec: = TmpPublicKeyFileSpec + '.signed';
ExportPublicKeyFromPfx (TmpPfxFileSpec, OutPublicKeyFileSpec, jelszó);
// Az eredmény bekerül a fájl listát
OutFiles.Add (TmpCerFileSpec);
OutFiles.Add (TmpPfxFileSpec);
OutFiles.Add (TmpPrivateKeyFileSpec);
OutFiles.Add (TmpPublicKeyFileSpec);
OutFiles.Add (OutPublicKeyFileSpec);
WasError: = false;
végül
// Az ideiglenes fájlok törlése
ha WasError majd
kezdődik
CheckDeleteFile (TmpCerFileSpec);
CheckDeleteFile (TmpPfxFileSpec);
CheckDeleteFile (TmpPrivateKeyFileSpec);
CheckDeleteFile (TmpPublicKeyFileSpec);
CheckDeleteFile (OutPublicKeyFileSpec);
végén;
CheckDeleteFile (TmpCsrFileSpec);
CheckDeleteFile (TmpCASerialFileSpec);
CheckDeleteFile (TmpExtFileSpec);
CheckDeleteFile (TmpPemFileSpec);
CheckDeleteFile (TmpCAPrivateKeyFileSpec);
végén;
végén;
Telepíti az exportált tanúsítványt PKCS # 12 formátumú, a Windows Store. Ehhez kattintson duplán a pfx fájlt, és kövesse az utasításokat a Certificate Import Wizard. Mivel ez a tanúsítvány tartalmazza a privát kulcsot, az import folyamat meg kell adnia a jelszót, amelyet megadott, amikor jött létre.
- Titkosítása tartalmak és berendezés kimenő üzenetek
- Digitális aláírás hozzáadása az kimenő üzenetek
Most, a telepített tanúsítványok listájáról a boltban, hogy válasszon egy, amelyeket használni fognak a titkosításhoz és a digitális aláírás. Ehhez kattintson ide Options ...> Válassza ki és jelölje ki a tanúsítványt:
Ezzel szemben elvileg minden :). Azonban nézzük arról, hogy mi van minden működik, és végre egy titkosítási ellenőrzése „magad.”
A Windows Intézőben keresse meg a tanúsítványt .cer formátumban *
Küldünk egy levelet. Azt viszont, hogy a postaládájába, és talál ott üzenetet küldött nekünk. Ez titkosított, amint azt a kék ikon egy lakat a bal felső sarokban. Kattintson az egérrel, hogy automatikusan dekódolja és nyitott.
Ha az elküldött üzenet nem jelenik meg a postaládájába, menj a küldött és fogadott, és kattintson az Update mappát.
Ellenőrizze a titkosítási funkció „” kerül végrehajtásra.
Most elküldeni az üzenetet, biztosította a digitális aláírás, a többi felhasználó és kérni őket aláírt üzeneteket. Ez lehetővé teszi számunkra, hogy kicseréljék a nyilvános kulcsokat egymással, mert az aláírt levél, amely tartalmazza a nyilvános kulcsot.
Ha nem rendelkezik tanúsítvánnyal (és nyissa meg a levelező gomb), akkor küldjön neki, hogy az első üzenet titkosítás kell kapcsolni, különben Autluk nem lesz képes titkosítani és hibát generál. Kapcsold ki a titkosítás funkciót, így a benne digitális aláírás funkció lehet a Beállítások lapon:
Ha a nyilvános kulcsot a szerverről letölteni nem megbízható, vagy kapja meg e-mailben nem lehet pontosan, a hitelességét a kulcsot. Lehet, hogy ez a támadó küldött egy „hamis” gomb helyett a többi gomb. Aztán lesz képes olvasni az összes titkosított üzeneteket küld a barátja, de a barátja csinálni nem lehet.