0Pricing
Cryptology Academy · Lekcja

Narzędzie szyfrujące age: nowoczesna alternatywa dla GPG

Proszę poznać age jako prostą, nowoczesną alternatywę dla GPG do szyfrowania plików, zapewniającą większą wygodę użytkowania.

Narzędzie szyfrujące age: nowoczesna alternatywa dla GPG to bezpłatna lekcja Cryptology Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cryptology Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cryptology Academy zawiera 4 lekcji w sumie.

Założenia projektowe age

age (Actually Good Encryption) został zaprojektowany przez Filippo Valsordę i Bena Cartwrighta-Coxa jako prosta, nowoczesna alternatywa dla GPG. Projekt odrzuca złożoność GPG: nie ma baz kluczy, modelu zaufania, podpisywania kluczy, plików konfiguracyjnych ani ekosystemu wtyczek do podstawowych operacji. age koncentruje się na jednym zadaniu: prostym i odpornym na błędne użycie szyfrowaniu oraz odszyfrowywaniu plików.

Odbiorcy korzystający z kluczy publicznych age

Podstawowym typem odbiorcy w age jest klucz publiczny age wyprowadzany z X25519. age-keygen generuje parę kluczy: klucz publiczny age (zaczynający się od age1) oraz plik tożsamości age zawierający klucz prywatny. Aby zaszyfrować plik dla odbiorcy, należy podać jego klucz publiczny age za pomocą -r age1...; aby odszyfrować plik, należy podać plik tożsamości za pomocą -i key.txt. Format zaprojektowano tak, aby można go było bezpiecznie kopiować i wklejać.

Odbiorcy korzystający z kluczy publicznych SSH

age może szyfrować bezpośrednio dla kluczy publicznych SSH, zarówno RSA, jak i Ed25519. Jeśli mają Państwo klucz publiczny SSH odbiorcy (z GitHub: curl https://github.com/username.keys), mogą Państwo zaszyfrować dla niego plik bez dodatkowej wymiany kluczy: age -r @recipient_public_key.txt plaintext.txt > encrypted.age. Odbiorca odszyfrowuje plik za pomocą istniejącej tożsamości swojego klucza prywatnego SSH.

Szyfrowanie na podstawie hasła

age obsługuje szyfrowanie oparte na haśle (symetryczne) za pomocą flagi -p. Wykorzystuje scrypt do wyprowadzania klucza z hasła, zapewniając odporność na ataki brute force dzięki wysokim wymaganiom pamięciowym. Ten tryb nie wymaga zarządzania kluczami: każdy, kto zna hasło, może odszyfrować plik. Sprawdza się w sytuacjach, w których dystrybucja kluczy jest niepraktyczna, na przykład podczas szyfrowania archiwów kopii zapasowych przechowywanych w chmurze.

Pliki tożsamości age

Plik tożsamości age zawiera klucz prywatny w formacie tekstowym, po jednym kluczu w wierszu. W przeciwieństwie do binarnego breloka kluczy GPG pliki tożsamości są zwykłymi plikami tekstowymi, które można przechowywać w dowolnym miejscu, tworzyć ich kopie zapasowe i obsługiwać za pomocą standardowych narzędzi do pracy z plikami. Należy chronić pliki tożsamości uprawnieniami systemu plików lub szyfrować je hasłem (za pomocą kolejnej warstwy szyfrowania age albo narzędzia takiego jak age-plugin-yubikey). Przy odszyfrowywaniu pliki tożsamości podaje się za pomocą -i.

age-keygen do generowania kluczy

age-keygen generuje nową parę kluczy X25519 w kilka sekund: age-keygen -o key.txt. Plik wyjściowy zawiera klucz prywatny, a odpowiadający mu klucz publiczny jest wypisywany na stdout. Nie ma interaktywnej konfiguracji: typ klucza, jego rozmiar i algorytm są stałe. Dzięki tej prostocie nie ma opcji generowania, które można by błędnie skonfigurować, a format wyjściowy jest ustandaryzowany i możliwy do przetwarzania.

Szyfrowanie dla wielu odbiorców

age obsługuje szyfrowanie dla wielu odbiorców w ramach jednej operacji: age -r age1alice... -r age1bob... file.txt. Każdy z wymienionych odbiorców może niezależnie odszyfrować plik za pomocą własnego klucza prywatnego. Wewnętrznie age szyfruje symetryczny klucz pliku osobno dla każdego odbiorcy i przechowuje wszystkie zaszyfrowane kopie klucza w nagłówku. Koncepcyjnie przypomina to szyfrowanie dla wielu odbiorców w GPG.

rage: implementacja age w Rust

rage jest implementacją specyfikacji age w języku Rust i oferuje ten sam format plików oraz interfejs CLI. Gwarancje bezpieczeństwa pamięci i wydajność języka Rust sprawiają, że rage jest atrakcyjną alternatywą dla referencyjnej implementacji w Go. Obie implementacje są interoperacyjne: pliki zaszyfrowane za pomocą age można odszyfrować za pomocą rage i odwrotnie. rage jest dostępny za pośrednictwem menedżerów pakietów na większości platform.

System wtyczek age

Wtyczki age rozszerzają typy odbiorców obsługiwane przez age. age-plugin-yubikey umożliwia szyfrowanie za pomocą sprzętowych kluczy bezpieczeństwa YubiKey z wykorzystaniem interfejsu PIV, dzięki czemu odszyfrowanie wymaga fizycznego posiadania YubiKey. Wtyczki korzystają ze standaryzowanego protokołu, co pozwala dodawać nowe typy odbiorców bez modyfikowania podstawowego pliku binarnego age. Ta rozszerzalność umożliwia obsługę kluczy sprzętowych, a jednocześnie pozwala zachować minimalny zakres podstawowego narzędzia.

Porównanie age z GPG

age wyróżnia się prostotą: nie wymaga zarządzania modelem zaufania, spotkań związanych z podpisywaniem kluczy ani konfiguracji, a szyfrowanie lub odszyfrowywanie wykonuje się za pomocą jednowierszowego polecenia. GPG oferuje znacznie więcej funkcji: podpisywanie kluczy, poziomy zaufania, serwery kluczy, wiele podkluczy, identyfikatory ze zdjęciem oraz rozbudowaną integrację z klientami pocztowymi. W przypadku szyfrowania plików i kopii zapasowych age jest często lepszym wyborem. W ekosystemach szyfrowania poczty e-mail i podpisywania oprogramowania GPG nadal pozostaje standardem.

age w zautomatyzowanych potokach kopii zapasowych

age szczególnie dobrze nadaje się do szyfrowania kopii zapasowych w sposób zautomatyzowany. Zadanie cron może szyfrować kopie zapasowe przy użyciu zestawu kluczy publicznych odbiorców zapisanych w pliku: age --recipients-file recipients.txt backup.tar.gz > backup.tar.gz.age. Nie trzeba podawać hasła, zarządzanie kluczami jest proste, a wielu operatorów może niezależnie odszyfrowywać dane za pomocą własnych kluczy. Powstałe pliki są odporne na skutki przejęcia serwera.

Typy odbiorców w age

Który z poniższych typów odbiorców NIE jest obsługiwany przez szyfrowanie age?

Podsumowanie narzędzia szyfrowania age

Podsumowanie age: narzędzie zaprojektowane z myślą o prostocie, a nie o dużej liczbie funkcji; klucze publiczne age oparte na X25519 jako podstawowy typ odbiorców; klucze publiczne SSH jako wygodna alternatywa; szyfrowanie hasłem oparte na scrypt w trybie z użyciem hasła; age-keygen do generowania par kluczy; wielu odbiorców w jednym pliku; rage jako alternatywa napisana w Rust, korzystająca z identycznego formatu plików; wtyczki zapewniające obsługę kluczy sprzętowych; oraz zastosowanie w zautomatyzowanych potokach szyfrowania kopii zapasowych.

Często zadawane pytania

Czy lekcja „Narzędzie szyfrujące age: nowoczesna alternatywa dla GPG” jest bezpłatna?

Tak — pełny tekst „Narzędzie szyfrujące age: nowoczesna alternatywa dla GPG” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cryptology Academy, przejdź na CoddyKit PRO. Kurs Cryptology Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Narzędzie szyfrujące age: nowoczesna alternatywa dla GPG”?

Proszę poznać age jako prostą, nowoczesną alternatywę dla GPG do szyfrowania plików, zapewniającą większą wygodę użytkowania. Ćwiczysz Cryptology Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Cryptology Academy?

Nie wymagamy żadnego doświadczenia. Cryptology Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Narzędzie szyfrujące age: nowoczesna alternatywa dla GPG”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Cryptology Academy?

Tak. Każda lekcja Cryptology Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. GPG do asymetrycznego szyfrowania plików
  2. Narzędzie szyfrujące age: nowoczesna alternatywa dla GPG
  3. Szyfrowane kontenery VeraCrypt
  4. Bezpieczne usuwanie i niszczenie kluczy
← Powrót do Cryptology Academy