> qr-optimized | efficient | modern <

// Kodowanie Base45 zoptymalizowane dla kodów QR i certyfikatów cyfrowych

[QR-OPTIMIZED]

Wydajne dla kodów QR

Zaprojektowane specjalnie z myślą o trybie alfanumerycznym kodów QR – maksymalna gęstość danych przy zachowaniu dobrej czytelności.

[NOWOCZESNY STANDARD]

Zgodność z RFC 9285

Implementuje oficjalną specyfikację Base45 wykorzystywaną w unijnych cyfrowych certyfikatach COVID i innych certyfikatach zdrowotnych.

[KOMPAKTOWY]

Oszczędność miejsca

Bardziej wydajny niż Base32 w kontekście kodów QR – pomaga zmniejszyć rozmiar i złożoność kodu.

>> informacje techniczne

Jak działa Base45:

Base45 wykorzystuje 45 znaków dopasowanych do trybu alfanumerycznego kodów QR. Dane są kodowane w grupach po 2 bajty do 3 znaków Base45, co poprawia efektywność zapisu w kodach QR w porównaniu z Base64.

Przykład:

"Hello" → %69 VD92EX0

Dlaczego warto używać Base45:

  • >Optymalizacja gęstości informacji w kodzie QR
  • >Zgodność ze standardem unijnych certyfikatów cyfrowych
  • >Lepsza efektywność niż Base64 przy zapisie w kodach QR
  • >Mniejsza liczba modułów i prostsza struktura kodu QR
  • >Wyższa niezawodność skanowania na różnych czytnikach

>> najczęstsze pytania

Czym jest kodowanie Base45?

Base45 to schemat kodowania zdefiniowany w RFC 9285, który wykorzystuje 45 znaków dopasowanych do trybu alfanumerycznego kodów QR, aby zwiększyć gęstość i efektywność zapisu danych.

Dlaczego powstał Base45?

Base45 został zaprojektowany z myślą o efektywnym przechowywaniu danych w kodach QR, w szczególności dla unijnego cyfrowego certyfikatu COVID. W takich zastosowaniach jest bardziej wydajny niż Base64.

Czym Base45 różni się od innych kodowań?

Base45 używa dokładnie zestawu znaków obsługiwanego przez tryb alfanumeryczny kodów QR, dzięki czemu może zapisywać o 20–30% więcej danych w tym samym rozmiarze kodu niż Base64.

Gdzie najczęściej stosuje się Base45?

Base45 jest używany głównie w cyfrowych certyfikatach zdrowotnych, unijnym cyfrowym certyfikacie COVID oraz wszędzie tam, gdzie dane muszą być zapisane możliwie kompaktowo w kodzie QR.

// Krótka ściąga

WejścieBase45
ABBB8
Hello!!%69 VD92EX0
base-45UJCLQE7W581
ietf!QED8WEX0

// Przykłady kodu

Alphabet  0-9 A-Z space $ % * + - . / :        (45 characters)
Length    2 bytes -> 3 chars,  1 byte -> 2 chars
Python    pip install base45   base45.b45encode(b"AB")  # b'BB8'
Node.js   npm i base45-js      // RFC 9285
EU DCC    JSON -> CBOR -> COSE -> zlib -> Base45 -> "HC1:" -> QR

>> Więcej pytań

P: Jakich 45 znaków używa Base45?

O: Dokładnie tych z trybu alfanumerycznego kodu QR: 0–9, A–Z (tylko wielkie litery), spacji oraz $ % * + - . / :. Alfabet określa RFC 9285.

P: Jak długi jest ciąg Base45 w porównaniu z oryginalnymi bajtami?

O: Każde 2 bajty wejścia dają 3 znaki, pojedynczy bajt na końcu daje 2 znaki. Dla n bajtów powstaje 3·⌊n/2⌋ + 2·(n mod 2) znaków, czyli ok. 150% długości wejścia.

P: Dlaczego Base45 jest lepszy od Base64 w kodach QR?

O: Tryb alfanumeryczny QR zużywa ok. 5,5 bitu na znak, tryb bajtowy (potrzebny dla + i / w Base64) 8 bitów. W tym samym kodzie mieści się więc więcej danych. Unijne certyfikaty COVID: CBOR → COSE → zlib → Base45 → prefiks HC1: → QR.

Inne języki