Metody szyfrowania pobierają informacje i ukrywają je, aby nikt nie mógł odczytać zawartości, dopóki ta sama metoda nie zostanie użyta do odszyfrowania informacji z powrotem do ich oryginalnej postaci. Niektóre metody szyfrowania polegają na użyciu tajnego algorytmu do szyfrowania i odszyfrowywania informacji. Metody szyfrowania typu open source mają bezpłatny kod źródłowy, więc opierają się na symetrycznych lub asymetrycznych kluczach danych zamiast na tajnym algorytmie.
Kod źródłowy oprogramowania open source jest bezpłatnie dostępny do pobrania dla każdego. Dzięki temu cała społeczność programistów może uczyć się na podstawie kodu źródłowego, przeprowadzać audyty kodu pod kątem błędów lub luk w zabezpieczeniach oraz wnosić własny kod źródłowy w celu ulepszania oprogramowania. Oprogramowanie typu open source chwali się tym jako zaletą, ale oznacza to, że każdy, kto pobiera kod źródłowy programu szyfrującego typu open source, automatycznie zna algorytm, którego używa metoda. Utrzymywanie algorytmu w tajemnicy nie wchodzi w grę, więc metody te do szyfrowania opierają się na kluczach danych.
Klucze danych zawierają złożoną serię cyfr i znaków, których algorytmy używają do określenia wzorca szyfrowania. Klucz danych spowoduje, że algorytm zaszyfruje informacje w sposób, który jest dla niego unikalny. Po zaszyfrowaniu informacji program będzie potrzebował klucza danych, który został użyty do zaszyfrowania informacji w celu odszyfrowania lub rozszyfrowania informacji. Jeśli użytkownicy przechowują swój klucz danych w bezpieczny sposób, nieupoważnione osoby nie będą mogły odszyfrować swoich plików. System ten pozwala, aby algorytm, którego używa metoda szyfrowania open source, był powszechnie znany, przy jednoczesnym zachowaniu bezpieczeństwa informacji, które chroni.
Istnieją dwa typy kluczy danych w metodach szyfrowania open source: klucze symetryczne i asymetryczne. System szyfrowania kluczem symetrycznym używa tego samego klucza do blokowania i odblokowywania danych. Może to przybrać formę losowo wygenerowanego klucza danych lub hasła algorytmu używanego do szyfrowania zawartości pliku. Użytkownicy, którzy chcą zaszyfrować informacje, aby nikt poza nimi nie mógł ich zobaczyć, zachowaliby klucz danych lub hasło dla siebie. Jeśli użytkownik chce, aby inna osoba mogła odszyfrować jego pliki, musiałby przekazać tej osobie kopię klucza danych lub udostępnić hasło.
Klucze asymetryczne działają przy użyciu pary kluczy, prywatnego i publicznego. Dane w każdym kluczu pochodzą matematycznie z tego samego źródła. Użytkownik szyfrujący nie udostępnia nikomu klucza prywatnego i rozpowszechnia klucz publiczny każdemu. Jeśli ktoś chce zaszyfrować dokument dla tego użytkownika, może użyć do szyfrowania swojego klucza publicznego. Gdy dokument zostanie zaszyfrowany kluczem publicznym, algorytm nie może go odszyfrować bez klucza prywatnego.