Hogyan védi az e-mail továbbítása az Ön adatait, domainjét és biztonságát: Technikai áttekintés

Előszó

A mai digitális környezetben az e-mailek védelme minden eddiginél fontosabbá vált. Az adatvédelmi incidensek, a megfigyelési aggályok és az e-mailek tartalmán alapuló célzott hirdetések miatt a felhasználók egyre inkább olyan megoldásokat keresnek, amelyek az adatvédelmüket helyezik előtérbe. A Forward Emailnél a nulláról építettük fel szolgáltatásunkat, az adatvédelmet architektúránk sarokkövének tekintve. Ez a blogbejegyzés azokat a technikai megvalósításokat vizsgálja, amelyek szolgáltatásunkat az egyik leginkább adatvédelemre összpontosító e-mail továbbítási megoldássá teszik.

Az e-mailek továbbításának adatvédelmi filozófiája

Mielőtt belemerülnénk a technikai részletekbe, fontos megérteni alapvető adatvédelmi filozófiánkat: az e-mailjeid csakis a tiéid. Ez az elv vezérli minden technikai döntésünket, az e-mail-továbbítás kezelésétől kezdve a titkosítás megvalósításáig.

Sok olyan e-mail szolgáltatóval ellentétben, amelyek reklámozási célokra szkennelik az üzeneteidet, vagy határozatlan ideig tárolják azokat a szervereiken, a Forward Email gyökeresen más megközelítést alkalmaz:

  1. Csak memórián belüli feldolgozás – A továbbított e-maileket nem tároljuk lemezen.
  2. Nincs metaadat-tárolás – Nem nyilvántartjuk, hogy ki kinek küld e-mailt.
  3. 100%-ban nyílt forráskódú – A teljes kódbázisunk átlátható és auditálható.
  4. Végponttól végpontig terjedő titkosítás – Támogatjuk az OpenPGP-t a valóban privát kommunikáció érdekében.

SQLite implementáció: Tartósság és hordozhatóság az adataid számára

A Forward Email egyik legjelentősebb adatvédelmi előnye a gondosan megtervezett SQLite implementációnk. Az SQLite-ot specifikus PRAGMA beállításokkal és Előre írási naplózás (WAL)-gyel finomhangoltuk, hogy biztosítsuk az adataid tartósságát és hordozhatóságát, miközben fenntartjuk a legmagasabb szintű adatvédelmet és biztonságot.

Íme egy pillantás arra, hogyan implementáltuk az SQLite-ot ChaCha20-Poly1305 titkosítással a kvantumrezisztens titkosításhoz:

// Initialize the database with better-sqlite3-multiple-ciphers
const Database = require('better-sqlite3-multiple-ciphers');

// Set up encryption with ChaCha20-Poly1305 cipher
db.pragma(`key="${decrypt(session.user.password)}"`);

// Enable Write-Ahead Logging for durability and performance
db.pragma('journal_mode=WAL');

// Overwrite deleted content with zeros for privacy
db.pragma('secure_delete=ON');

// Enable auto vacuum for efficient storage management
db.pragma('auto_vacuum=FULL');

// Set busy timeout for handling concurrent access
db.pragma(`busy_timeout=${config.busyTimeout}`);

// Optimize synchronization for reliability
db.pragma('synchronous=NORMAL');

// Enable foreign key constraints for data integrity
db.pragma('foreign_keys=ON');

// Set UTF-8 encoding for international character support
db.pragma(`encoding='UTF-8'`);

// Optimize database performance
db.pragma('optimize=0x10002;');

// Use disk for temporary storage instead of memory
db.pragma('temp_store=1;');

Ez a megvalósítás biztosítja, hogy adatai nemcsak biztonságosak, hanem hordozhatóak is legyenek. E-mailjeit bármikor magával viheti és használhatja MBOX, EML vagy SQLite formátumban történő exportálással. És amikor törölni szeretné adatait, azok valóban elvesznek – egyszerűen töröljük a fájlokat a lemezről ahelyett, hogy SQL DELETE ROW parancsokat futtatnánk, amelyek nyomokat hagyhatnak az adatbázisban.

A megvalósításunk kvantumtitkosítási aspektusa a ChaCha20-Poly1305 titkosítást használja az adatbázis inicializálásakor, így erős védelmet nyújt mind a jelenlegi, mind a jövőbeli adatvédelmi fenyegetésekkel szemben.

Intelligens sorba állítás és újrapróbálkozási mechanizmus: E-mail kézbesítésének biztosítása

Ahelyett, hogy kizárólag a fejléckezelésre koncentrálnánk, egy kifinomult intelligens várakozási sorba állítási és újrapróbálkozási mechanizmust valósítottunk meg a getBounceInfo metódusunkkal. Ez a rendszer biztosítja, hogy az e-mailek kézbesítésének lehető legnagyobb esélye legyen, még átmeneti problémák esetén is.

function getBounceInfo(err) {
  // Initialize bounce info with default values
  const bounceInfo = {
    action: err.responseCode >= 500 ? 'reject' : 'defer',
    category: err.category || 'other',
    message: err.message,
    code: err.responseCode || err.code
  };

  // Analyze error response to determine appropriate action
  const response = err.response || err.message || '';

  // Determine if the issue is temporary or permanent
  if (response.includes('temporarily deferred') ||
      response.includes('try again later')) {
    bounceInfo.action = 'defer';
  }

  // Categorize the bounce reason for appropriate handling
  if (response.includes('mailbox full')) {
    bounceInfo.category = 'full';
    bounceInfo.action = 'defer';
  } else if (response.includes('user unknown')) {
    bounceInfo.category = 'unknown';
  }

  return bounceInfo;
}

Note

Ez a getBounceInfo metódus egy részlete, és nem a tényleges részletes megvalósítás. A teljes kódot a GitHub oldalon tekintheti meg.

A kézbesítést 5 napig újrapróbáljuk, hasonlóan az iparági szabványokhoz, mint például a Utófix, így az átmeneti problémáknak van idejük megoldódni. Ez a megközelítés jelentősen javítja a kézbesítési arányt, miközben megőrzi az adatvédelmet.

Hasonlóképpen, a kimenő SMTP e-mailek tartalmát is szerkesztjük a sikeres kézbesítés után. Ez a tárolórendszerünkben 30 napos alapértelmezett megőrzési időszakkal van konfigurálva, amelyet a domain Speciális beállításaiban módosíthat. Ezen időszak lejárta után az e-mail tartalmát automatikusan szerkesztjük és töröljük, csak egy helyőrző üzenet marad meg:

This message was successfully sent. It has been redacted and purged for your security and privacy. If you would like to increase your message retention time, please go to the Advanced Settings page for your domain.

Ez a megközelítés biztosítja, hogy az elküldött e-mailek ne maradjanak határozatlan ideig tárolva, csökkentve az adatvédelmi incidensek vagy a kommunikációhoz való jogosulatlan hozzáférés kockázatát.

Korlátlan erőforrások intelligens sebességkorlátozással

Bár a Forward Email korlátlan számú domaint és aliast kínál, intelligens díjszabás-korlátozást vezettünk be, hogy megvédjük rendszerünket a visszaélésektől és biztosítsuk a tisztességes használatot minden felhasználó számára. Például a nem vállalati ügyfelek akár napi 50+ aliast is létrehozhatnak, ami megakadályozza az adatbázisunk spammelését és elárasztását, valamint lehetővé teszi a valós idejű visszaélés- és védelmi funkcióink hatékony működését.

// Rate limiter implementation
const rateLimiter = new RateLimiter({
  // Configuration settings
});

// Check rate limits before processing
const limit = await rateLimiter.get({
  key: `domain:${domain.id}`,
  duration: ms('1d')
});

// Apply appropriate action based on limit status
if (limit.remaining <= 0) {
  // Handle rate limit exceeded
}

Ez a kiegyensúlyozott megközelítés rugalmasságot biztosít Önnek, hogy annyi e-mail címet hozzon létre, amennyire szüksége van az átfogó adatvédelem-kezeléshez, miközben továbbra is megőrzi szolgáltatásunk integritását és teljesítményét minden felhasználó számára.

Sandboxos titkosítás a fokozott biztonság érdekében

Egyedülálló, sandboxos titkosítási megközelítésünk egy kritikus biztonsági előnyt biztosít, amelyet sok felhasználó figyelmen kívül hagy, amikor e-mail szolgáltatást választ. Vizsgáljuk meg, miért olyan fontos az adatok, különösen az e-mailek sandboxos titkosítása.

Az olyan szolgáltatások, mint a Gmail és a Proton, valószínűleg megosztott relációs adatbázisok-t használnak, ami alapvető biztonsági rést okoz. Megosztott adatbázis-környezetben, ha valaki hozzáférést szerez egy felhasználó adataihoz, potenciálisan hozzáférhet más felhasználók adataihoz is. Ez azért van, mert minden felhasználói adat ugyanabban az adatbázistáblában található, csak felhasználói azonosítók vagy hasonló azonosítók választják el őket.

A Forward Email alapvetően eltérő megközelítést alkalmaz a sandboxos titkosításunkkal:

  1. Teljes elszigetelés: Minden felhasználó adatai a saját titkosított SQLite adatbázisfájljában tárolódnak, teljesen elszigetelve a többi felhasználótól.
  2. Független titkosítási kulcsok: Minden adatbázis a felhasználó jelszavából származó egyedi kulccsal van titkosítva.
  3. Nincs megosztott tárhely: A relációs adatbázisokkal ellentétben, ahol az összes felhasználó e-mail címe egyetlen „e-mail” táblázatban lehet, a mi megközelítésünk biztosítja, hogy az adatok ne keveredjenek.
  4. Mélyreható védelem: Még ha az egyik felhasználó adatbázisa valamilyen módon veszélybe kerülne is, az nem biztosítana hozzáférést más felhasználók adataihoz.

Ez a sandboxos megközelítés hasonló ahhoz, mintha az e-mailjeid egy különálló fizikai trezorban lennének, ahelyett, hogy egy belső elválasztókkal rendelkező megosztott tárolóhelyen lennének. Ez egy alapvető építészeti különbség, amely jelentősen növeli az adatvédelmet és a biztonságot.

Memórián belüli e-mail-feldolgozás: Nincs lemezterület a maximális adatvédelem érdekében

E-mail-továbbítási szolgáltatásunk során az e-maileket teljes egészében RAM-ban dolgozzuk fel, és soha nem írjuk őket lemezre vagy adatbázisba. Ez a megközelítés páratlan védelmet nyújt az e-mail-figyelés és a metaadatok gyűjtése ellen.

Íme egy leegyszerűsített áttekintés arról, hogyan működik az e-mail-feldolgozásunk:

async function onData(stream, _session, fn) {
  // Store clone of session since it gets modified/destroyed
  const session = JSON.parse(safeStringify(_session));

  try {
    // Process the email stream in memory
    const messageSplitter = new MessageSplitter({
      maxBytes: MAX_BYTES
    });
    stream.pipe(messageSplitter);
    const body = await getStream.buffer(messageSplitter);

    const { headers } = messageSplitter;

    // Update session object with useful debug info for error logs
    await updateSession.call(this, body, headers, session);

    // Process the email without storing to disk
    // [Processing code omitted for brevity]

    // Return success without persisting email data
    fn();
  } catch (err) {
    // Handle errors without storing sensitive information
    fn(err);
  }
}

Ez a megközelítés azt jelenti, hogy még ha szervereinket feltörnék is, a támadók nem férhetnének hozzá a korábbi e-mail adatokhoz. Az e-mailek egyszerűen áthaladnak a rendszerünkön, és azonnal továbbítódnak a célállomásukra, nyom nélkül. Ez a naplózásmentes e-mail-továbbítási megközelítés alapvető fontosságú a kommunikáció megfigyelés elleni védelme érdekében.

Végponttól végpontig terjedő titkosítás OpenPGP-vel a teljes adatvédelem érdekében

Azoknak a felhasználóknak, akiknek a legmagasabb szintű adatvédelmet kell biztosítaniuk az e-mail-megfigyelés ellen, a OpenPGP végpontok közötti titkosítást támogatjuk. Sok olyan e-mail-szolgáltatóval ellentétben, amelyek saját hidakat vagy alkalmazásokat igényelnek, a mi implementációnk szabványos e-mail kliensekkel működik, így a biztonságos kommunikáció mindenki számára elérhető.

Így valósítjuk meg az OpenPGP titkosítást:

async function encryptMessage(pubKeyArmored, raw, isArmored = true) {
  // [Initial validation code omitted for brevity]

  // Read the public key
  const pubKey = isArmored
    ? await openpgp.readKey({
        armoredKey: tools.prepareArmoredPubKey(pubKeyArmored),
        config: { tolerant: true }
      })
    : pubKeyArmored;

  if (!pubKey) throw new TypeError('Public key does not exist');

  // Perform the actual encryption using OpenPGP
  const ciphertext = await openpgp.encrypt({
    message: await openpgp.createMessage({
      binary: Buffer.concat([Buffer.from(bodyHeaders + '\r\n\r\n'), body])
    }),
    encryptionKeys: pubKey,
    format: 'armored',
    config: { minRSABits: 1024 }
  });

  // Format the encrypted message as a proper MIME message
  // [MIME formatting code omitted for brevity]

  return Buffer.concat([headers, breaker, Buffer.from(text)]);
}

Ez a megvalósítás biztosítja, hogy az e-mailek titkosítva legyenek, mielőtt elhagynák az eszközét, és csak a címzett tudja visszafejteni őket, így a kommunikáció még előttünk is privát marad. Ez elengedhetetlen a bizalmas kommunikáció jogosulatlan hozzáférés és megfigyelés elleni védelméhez.

Többrétegű tartalomvédelem az átfogó biztonság érdekében

A Forward Email többrétegű tartalomvédelmet kínál, amelyek alapértelmezés szerint engedélyezve vannak, hogy átfogó védelmet nyújtsanak a különféle fenyegetésekkel szemben:

  1. Felnőtt tartalom elleni védelem – Kiszűri a nem megfelelő tartalmat az adatvédelem veszélyeztetése nélkül.
  2. Adathalászat védelem – Blokkolja az adatlopási kísérleteket, miközben megőrzi az anonimitást.
  3. Futtatható fájlok elleni védelem – Megakadályozza a potenciálisan káros mellékleteket a tartalom vizsgálata nélkül.
  4. Vírus védelem – Adatvédelmet megőrző technikákkal keres kártevőket.

Sok más szolgáltatóval ellentétben, akik ezeket a funkciókat előfizetéshez kötik, mi letilthatóvá tettük őket, biztosítva, hogy minden felhasználó alapértelmezés szerint élvezhesse ezeket a védelmeket. Ez a megközelítés tükrözi az adatvédelem és a biztonság iránti elkötelezettségünket, olyan egyensúlyt teremtve, amelyet sok e-mail szolgáltatás nem tud elérni.

Miben különbözünk más e-mail szolgáltatásoktól: A technikai adatvédelmi előny

Amikor összehasonlítjuk az e-mail továbbítását más e-mail szolgáltatásokkal, számos fontos technikai különbség kiemeli az adatvédelmet előtérbe helyező megközelítésünket:

Nyílt forráskódú átláthatóság az ellenőrizhető adatvédelem érdekében

Bár sok e-mail szolgáltató nyílt forráskódúnak vallja magát, gyakran zárt háttérkódot használnak. A Forward Email 100%-ban nyílt forráskódú, beleértve mind a frontend, mind a backend kódot. Ez az átláthatóság lehetővé teszi az összes komponens független biztonsági auditálását, biztosítva, hogy adatvédelmi állításainkat bárki ellenőrizhesse.

Nincs szállítói függőség az adatvédelem kompromisszumok nélküli biztosítása érdekében

Sok adatvédelmet előtérbe helyező e-mail-szolgáltató megköveteli, hogy a saját alkalmazásaikat vagy hídjaikat használd. A Forward Email bármilyen szabványos e-mail klienssel működik a IMAP, POP3 és SMTP protokollokon keresztül, így szabadon választhatod ki a kívánt e-mail szoftvert az adatvédelem feláldozása nélkül.

Sandboxban tárolt adatok valódi izolációhoz

A megosztott adatbázisokat használó szolgáltatásokkal ellentétben, ahol az összes felhasználó adatai összekeverednek, a mi sandboxos megközelítésünk biztosítja, hogy minden felhasználó adatai teljesen elkülönüljenek. Ez az alapvető architektúrális különbség lényegesen erősebb adatvédelmi garanciákat nyújt, mint amit a legtöbb e-mail szolgáltatás kínál.

Adatok hordozhatósága és ellenőrzése

Úgy gondoljuk, hogy az adataid a tieid, ezért egyszerűvé tesszük az e-mailek szabványos formátumokban (MBOX, EML, SQLite) történő exportálását, és az adatok valódi törlését, amikor csak szeretnéd. Ez a szintű kontroll ritka az e-mail szolgáltatók körében, de elengedhetetlen a valódi adatvédelemhez.

Az adatvédelmet elsődlegesen szem előtt tartó e-mail-továbbítás technikai kihívásai

Egy adatvédelmet előtérbe helyező e-mail szolgáltatás kiépítése jelentős technikai kihívásokkal jár. Íme néhány akadály, amit leküzdöttünk:

Memóriakezelés naplózás nélküli e-mail-feldolgozáshoz

A memóriában tárolt, lemezes tárhely nélküli e-mail-feldolgozás gondos memóriakezelést igényel a nagy mennyiségű e-mail-forgalom hatékony kezeléséhez. Fejlett memóriaoptimalizálási technikákat vezettünk be a megbízható teljesítmény biztosítása érdekében anélkül, hogy veszélyeztetnénk a tárhelymentes szabályzatunkat, amely adatvédelmi stratégiánk kritikus fontosságú eleme.

Spamészlelés tartalomelemzés nélkül az adatvédelmet megőrző szűréshez

A legtöbb spam észlelési rendszer az e-mailek tartalmának elemzésére támaszkodik, ami ütközik adatvédelmi alapelveinkkel. Kifejlesztettünk olyan technikákat, amelyekkel az e-mailek tartalmának elolvasása nélkül azonosíthatjuk a spammintákat, egyensúlyt teremtve az adatvédelem és a használhatóság között, miközben megőrzi a kommunikáció bizalmasságát.

Az adatvédelmet szem előtt tartó tervezéssel való kompatibilitás fenntartása

Az összes e-mail klienssel való kompatibilitás biztosítása a fejlett adatvédelmi funkciók megvalósítása mellett kreatív mérnöki megoldásokat igényelt. Csapatunk fáradhatatlanul dolgozott azon, hogy az adatvédelem zökkenőmentes legyen, így nem kell választania a kényelem és a biztonság között az e-mail kommunikáció védelme során.

Adatvédelmi bevált gyakorlatok e-mail-továbbítási felhasználók számára

Az e-mail-megfigyelés elleni védelem maximalizálása és az e-mail továbbítása használatakor az alábbi ajánlott gyakorlatokat javasoljuk:

  1. Használjon egyedi aliasokat a különböző szolgáltatásokhoz - Hozzon létre külön e-mail aliast minden egyes szolgáltatáshoz, amelyre feliratkozik, hogy megakadályozza a szolgáltatások közötti követést.
  2. Engedélyezze az OpenPGP titkosítást - Bizalmas kommunikáció esetén használjon végponttól végpontig terjedő titkosítást a teljes adatvédelem biztosítása érdekében.
  3. Rendszeresen cserélje le az e-mail aliasait - Időről időre frissítse a fontos szolgáltatások aliasait a hosszú távú adatgyűjtés minimalizálása érdekében.
  4. Használjon erős, egyedi jelszavakat - Védje e-mail továbbítási fiókját erős jelszóval a jogosulatlan hozzáférés megakadályozása érdekében.
  5. Implementálja a IP-cím anonimizálást - Fontolja meg a VPN használatát a továbbítási e-maillel együtt a teljes anonimitás érdekében.

Konklúzió: A privát e-mail-továbbítás jövője

A Forward Emailnél hiszünk abban, hogy az adatvédelem nem csupán egy funkció – hanem alapvető jog. Technikai megvalósításaink ezt a meggyőződést tükrözik, olyan e-mail-továbbítást biztosítva, amely minden szinten tiszteletben tartja az Ön adatainak védelmét, és megvédi Önt az e-mail-megfigyeléstől és a metaadatok gyűjtésétől.

Szolgáltatásunk folyamatos fejlesztése és javítása során az adatvédelem iránti elkötelezettségünk továbbra is töretlen. Folyamatosan új titkosítási módszereket kutatunk, további adatvédelmi lehetőségeket vizsgálunk, és finomítjuk kódbázisunkat, hogy a lehető legbiztonságosabb e-mail élményt nyújtsuk.

Az E-mail továbbítása választásával nem csupán egy e-mail szolgáltatást választasz – támogatod az internet azon vízióját, ahol az adatvédelem az alapértelmezett, nem pedig a kivétel. Csatlakozz hozzánk egy privátabb digitális jövő építésében, e-mailről e-mailre.