{"id":15575,"date":"2026-09-05T14:58:39","date_gmt":"2026-09-05T12:58:39","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/narzedzia\/domain-rdap-certificate-transparency-subdomain-lookup\/"},"modified":"2026-09-05T14:58:39","modified_gmt":"2026-09-05T12:58:39","slug":"domain-rdap-certificate-transparency-subdomain-lookup","status":"publish","type":"page","link":"https:\/\/www.lukaswojcik.com\/blog\/pl\/narzedzia\/domain-rdap-certificate-transparency-subdomain-lookup\/","title":{"rendered":"Zapytanie RDAP i Certificate Transparency o domen\u0119: rejestrator, wyga\u015bni\u0119cie, zapomniane subdomeny"},"content":{"rendered":"<div class=\"gtm-analyser-container\" style=\"background: var(--bg-panel, #1e1e24); padding: 25px; border-radius: 8px; border: 1px solid var(--border, #2a2a35);\">\n<p style=\"color: var(--text-secondary, #a0a0b0); margin-bottom: 20px;\">Dwa publiczne rejestry opisuj\u0105 domen\u0119 bez dotykania jej serwer\u00f3w. RDAP, nast\u0119pca WHOIS, to to, co wie rejestr: rejestrator, daty rejestracji i wyga\u015bni\u0119cia, kody statusu takie jak blokada transferu, serwery nazw, delegacja DNSSEC. Certificate Transparency to to, co ka\u017cdy urz\u0105d certyfikacji musi logowa\u0107 od 2018 roku: ka\u017cda nazwa hosta, kt\u00f3ra kiedykolwiek dosta\u0142a certyfikat. Czytane razem odpowiadaj\u0105 na pytania, kt\u00f3rych w\u0142a\u015bciciel witryny rzadko zadaje, dop\u00f3ki nie jest za p\u00f3\u017ano: kiedy domena wygasa, czy jest zablokowana przed transferem i kt\u00f3re subdomeny wci\u0105\u017c gdzie\u015b istniej\u0105, bo kiedy\u015b wystawiono dla nich certyfikat.<\/p>\n<div style=\"margin-bottom: 14px;\">\n        <label for=\"rc-domain\" style=\"color: var(--text-secondary, #a0a0b0); display: block; font-size: 0.85rem; margin-bottom: 5px;\">Domena (bez www)<\/label><br \/>\n        <input id=\"rc-domain\" type=\"text\" value=\"wikipedia.org\" class=\"form-control\" style=\"width: 100%; padding: 10px; background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); color: var(--text-primary, #e8e8ee); border-radius: 6px; box-sizing: border-box; font-family: monospace;\">\n    <\/div>\n<p style=\"color: var(--text-secondary, #a0a0b0); font-size: 0.82rem; margin-bottom: 16px;\">Z tego serwera: jedno zapytanie RDAP przez rdap.org, kt\u00f3re przekierowuje do w\u0142a\u015bciwego rejestru, przy rejestrach bez RDAP zapytanie whois, oraz jedno zapytanie do crt.sh o logi certyfikat\u00f3w. Nic na samej domenie nie jest kontaktowane. Zapytanie chroni reCAPTCHA v3; adres IP wywo\u0142uj\u0105cego i domena s\u0105 przechowywane przez godzin\u0119 w celu ograniczenia cz\u0119stotliwo\u015bci.<\/p>\n<p>    <button id=\"rc-btn\" class=\"button\" style=\"background: var(--accent, #7ee787); color: var(--on-accent, #0b1114); border: none; padding: 12px 24px; border-radius: 6px; font-weight: 700; cursor: pointer;\">Zapytanie o domen\u0119<\/button><\/p>\n<div id=\"rc-ausgabe\" style=\"margin-top: 22px;\"><\/div>\n<p style=\"color: var(--text-secondary, #a0a0b0); font-size: 0.8rem; margin: 24px 0 0;\">Granice, o kt\u00f3rych warto wiedzie\u0107: dane RDAP zale\u017c\u0105 od rejestru, a niekt\u00f3re (np. .de) nie publikuj\u0105 RDAP, wtedy czytany jest tekst whois z mniejsz\u0105 liczb\u0105 p\u00f3l; odpowiedzi crt.sh s\u0105 obcinane przy 3 MB, co przy bardzo du\u017cych domenach pomija stare certyfikaty; nazwa w logach dowodzi, \u017ce certyfikat wystawiono, a nie \u017ce host nadal odpowiada; a dane abonenta nie s\u0105 pokazywane, bo rejestry ju\u017c ich nie publikuj\u0105.<\/p>\n<\/div>\n<p><script>\n(function () {\n    'use strict';<\/p>\n<p>    const T = {\"einleitung\":\"Dwa publiczne rejestry opisuj\u0105 domen\u0119 bez dotykania jej serwer\u00f3w. RDAP, nast\u0119pca WHOIS, to to, co wie rejestr: rejestrator, daty rejestracji i wyga\u015bni\u0119cia, kody statusu takie jak blokada transferu, serwery nazw, delegacja DNSSEC. Certificate Transparency to to, co ka\u017cdy urz\u0105d certyfikacji musi logowa\u0107 od 2018 roku: ka\u017cda nazwa hosta, kt\u00f3ra kiedykolwiek dosta\u0142a certyfikat. Czytane razem odpowiadaj\u0105 na pytania, kt\u00f3rych w\u0142a\u015bciciel witryny rzadko zadaje, dop\u00f3ki nie jest za p\u00f3\u017ano: kiedy domena wygasa, czy jest zablokowana przed transferem i kt\u00f3re subdomeny wci\u0105\u017c gdzie\u015b istniej\u0105, bo kiedy\u015b wystawiono dla nich certyfikat.\",\"label_domain\":\"Domena (bez www)\",\"datenschutz\":\"Z tego serwera: jedno zapytanie RDAP przez rdap.org, kt\u00f3re przekierowuje do w\u0142a\u015bciwego rejestru, przy rejestrach bez RDAP zapytanie whois, oraz jedno zapytanie do crt.sh o logi certyfikat\u00f3w. Nic na samej domenie nie jest kontaktowane. Zapytanie chroni reCAPTCHA v3; adres IP wywo\u0142uj\u0105cego i domena s\u0105 przechowywane przez godzin\u0119 w celu ograniczenia cz\u0119stotliwo\u015bci.\",\"knopf\":\"Zapytanie o domen\u0119\",\"laeuft\":\"Pytanie rejestru i log\u00f3w certyfikat\u00f3w...\",\"grenze\":\"Granice, o kt\u00f3rych warto wiedzie\u0107: dane RDAP zale\u017c\u0105 od rejestru, a niekt\u00f3re (np. .de) nie publikuj\u0105 RDAP, wtedy czytany jest tekst whois z mniejsz\u0105 liczb\u0105 p\u00f3l; odpowiedzi crt.sh s\u0105 obcinane przy 3 MB, co przy bardzo du\u017cych domenach pomija stare certyfikaty; nazwa w logach dowodzi, \u017ce certyfikat wystawiono, a nie \u017ce host nadal odpowiada; a dane abonenta nie s\u0105 pokazywane, bo rejestry ju\u017c ich nie publikuj\u0105.\",\"h_registrierung\":\"Rejestracja\",\"quelle_whois\":\"z whois, ten rejestr nie ma RDAP\",\"zeile_domain\":\"Domena\",\"zeile_registrar\":\"Rejestrator\",\"zeile_registriert\":\"Zarejestrowana\",\"zeile_ablauf\":\"Wygasa\",\"zeile_geaendert\":\"Ostatnia zmiana\",\"zeile_status\":\"Status\",\"zeile_nameserver\":\"Serwery nazw\",\"zeile_dnssec\":\"Delegacja DNSSEC\",\"zeile_dauer\":\"Czas\",\"zeile_limit\":\"Pozosta\u0142e zapytania w tej godzinie\",\"wert_unbekannt\":\"nieznane\",\"wert_keine_daten\":\"brak czytelnych danych rejestracyjnych\",\"ja\":\"tak\",\"nein\":\"nie\",\"h_ct\":\"Certificate Transparency\",\"zeile_zertifikate\":\"Zalogowane certyfikaty\",\"zeile_namen\":\"R\u00f3\u017cne nazwy host\u00f3w\",\"zeile_aussteller\":\"Wystawcy\",\"ct_kurz\":\"{zertifikate}, z czego {aktiv} nadal wa\u017cnych, {neu} wystawionych w ostatnich 30 dniach\",\"spalte_name\":\"Nazwa hosta\",\"spalte_erste\":\"Pierwszy raz\",\"spalte_letzte\":\"Ostatnio wa\u017cny do\",\"spalte_n\":\"Cert.\",\"spalte_zustand\":\"Stan\",\"name_aktiv\":\"wa\u017cny certyfikat\",\"name_abgelaufen\":\"brak wa\u017cnego certyfikatu\",\"name_wildcard\":\"wieloznaczny\",\"h_befunde\":\"Ustalenia\",\"stufe_hoch\":\"Wysoka\",\"stufe_mittel\":\"\u015arednia\",\"stufe_niedrig\":\"Niska\",\"stufe_info\":\"Informacja\",\"stufe_gut\":\"W porz\u0105dku\",\"keine_befunde\":\"Brak uwag.\",\"urteil_gut\":\"Rejestracja i historia certyfikat\u00f3w nie pokazuj\u0105 niczego, co wymaga dzia\u0142ania.\",\"urteil_warnung\":\"Co\u015b wymaga uwagi w najbli\u017cszych tygodniach.\",\"urteil_kritisch\":\"Domena zaraz wyga\u015bnie, wygas\u0142a albo jest wstrzymana.\",\"fehler_kein_token\":\"Sprawdzenie nie mog\u0142o si\u0119 rozpocz\u0105\u0107, poniewa\u017c reCAPTCHA si\u0119 nie za\u0142adowa\u0142a.\",\"fehler_captcha\":\"reCAPTCHA uzna\u0142a \u017c\u0105danie za zautomatyzowane. Zwykle pomaga ponowne za\u0142adowanie strony.\",\"fehler_zu_viele\":\"Osi\u0105gni\u0119to limit {limit} zapyta\u0144 na godzin\u0119 dla tego adresu.\",\"fehler_adresse\":\"Tej domeny nie da si\u0119 u\u017cy\u0107.\",\"fehler_zaehler\":\"Licznik jest niedost\u0119pny, dlatego nic nie zosta\u0142o sprawdzone.\",\"fehler_pruefdienst\":\"Us\u0142uga reCAPTCHA by\u0142a nieosi\u0105galna.\",\"fehler_aufbau\":\"Us\u0142uga nie jest poprawnie skonfigurowana. B\u0142\u0105d le\u017cy po tej stronie.\",\"fehler_eingabe\":\"\u017b\u0105danie by\u0142o nieczytelne.\",\"fehler_methode\":\"Niew\u0142a\u015bciwa metoda \u017c\u0105dania.\",\"fehler_netz\":\"Us\u0142uga by\u0142a nieosi\u0105galna.\",\"fehler_antwort\":\"Odpowied\u017a by\u0142a nieczytelna.\",\"fehler_unbekannt\":\"Co\u015b posz\u0142o nie tak, a nie ma na to osobnego komunikatu.\",\"grund_leer\":\"Nic nie zosta\u0142o wpisane.\",\"grund_zu_lang\":\"Wpis jest za d\u0142ugi.\",\"grund_kein_punkt\":\"Domena potrzebuje co najmniej jednej kropki.\",\"grund_hostform\":\"Wymagana jest nazwa domeny, nie adres IP.\",\"befund_rdap_fehlt\":\"Brak danych rejestracyjnych ({status} {fehler}) || Ani RDAP, ani whois nie zwr\u00f3ci\u0142y niczego czytelnego dla tej domeny. Albo nie jest zarejestrowana, albo rejestr odpowiada w formacie, kt\u00f3rego to sprawdzenie nie czyta.\",\"befund_whois_rueckfall\":\"Rejestr bez RDAP: zamiast tego odczytano tekst whois || Niekt\u00f3re rejestry, w tym .de, nie publikuj\u0105 us\u0142ugi RDAP. Tekst whois ma mniej p\u00f3l i brak standardowego formatu, wi\u0119c daty i status mog\u0105 brakowa\u0107.\",\"befund_registrierung\":\"Rejestrator {registrar} (IANA {iana}), zarejestrowana {registriert}, ostatnia zmiana {geaendert} || Co rejestr odnotowuje o domenie.\",\"befund_alter\":\"Wiek domeny: {jahre} lat || Starsze domeny maj\u0105 wag\u0119 u filtr\u00f3w spamu, wyszukiwarek i urz\u0119d\u00f3w certyfikacji.\",\"befund_abgelaufen\":\"Domena wygas\u0142a {datum}, {tage} dni temu || Po wyga\u015bni\u0119ciu wi\u0119kszo\u015b\u0107 rejestr\u00f3w trzyma nazw\u0119 w okresie karencji, potem w okresie odkupu, a nast\u0119pnie j\u0105 uwalnia. Poczta i strona w tym czasie nie dzia\u0142aj\u0105. Jedyne, co si\u0119 teraz liczy, to odnowienie.\",\"befund_laeuft_ab\":\"Domena wygasa za {tage} dni, {datum} || Mniej ni\u017c miesi\u0105c. Je\u015bli automatyczne odnawianie nie jest ustawione albo metoda p\u0142atno\u015bci wygas\u0142a, domena wyga\u015bnie razem z ni\u0105. Kontakt z rejestratorem jest pilny.\",\"befund_laeuft_bald_ab\":\"Domena wygasa za {tage} dni, {datum} || W ci\u0105gu trzech miesi\u0119cy. Pora potwierdzi\u0107, \u017ce odnawianie jest automatyczne, a adres kontaktowy u rejestratora nadal dzia\u0142a.\",\"befund_ablauf_ok\":\"Domena zarejestrowana do {datum} ({tage} dni) || Wyga\u015bni\u0119cie nie jest teraz problemem.\",\"befund_ablauf_unbekannt\":\"Brak daty wyga\u015bni\u0119cia || Ten rejestr jej nie publikuje, co jest cz\u0119ste w domenach krajowych.\",\"befund_status_hold\":\"Domena wstrzymana lub przed usuni\u0119ciem: {liste} || Status hold wyjmuje domen\u0119 z DNS; pendingDelete oznacza, \u017ce zaraz zostanie uwolniona. Tak czy inaczej strona i poczta nie dzia\u0142aj\u0105 albo zaraz przestan\u0105. Rejestrator mo\u017ce powiedzie\u0107 dlaczego.\",\"befund_transfer_gesperrt\":\"Blokada transferu ustawiona ({liste}) || Transfer do innego rejestratora wymaga najpierw zdj\u0119cia blokady. To domy\u015blna ochrona przed przej\u0119ciem domeny i powinna pozosta\u0107 w\u0142\u0105czona.\",\"befund_transfer_offen\":\"Brak blokady transferu (status: {liste}) || Bez clientTransferProhibited wniosek o transfer potrzebuje tylko kodu auth. Wi\u0119kszo\u015b\u0107 rejestrator\u00f3w oferuje blokad\u0119 za darmo; przy ka\u017cdej wa\u017cnej domenie powinna by\u0107 w\u0142\u0105czona.\",\"befund_status_liste\":\"Kody statusu: {liste} || Kody statusu EPP zg\u0142aszane przez rejestr.\",\"befund_nameserver\":\"{n} serwer(\u00f3w) nazw: {liste} || Serwery, kt\u00f3rym rejestr deleguje domen\u0119.\",\"befund_nameserver_einer\":\"Tylko jeden serwer nazw || Pojedynczy serwer nazw to pojedynczy punkt awarii ca\u0142ej domeny. Rejestry wymagaj\u0105 dw\u00f3ch; wi\u0119kszo\u015b\u0107 dostawc\u00f3w DNS daje co najmniej dwa.\",\"befund_nameserver_ein_anbieter\":\"Wszystkie serwery nazw pod {anbieter} || W porz\u0105dku przy zarz\u0105dzanym dostawcy DNS z anycastem; ryzyko, gdy to jeden ma\u0142y host, bo domena zale\u017cy wtedy ca\u0142kowicie od tego dostawcy.\",\"befund_nameserver_fehlen\":\"Brak wpisanych serwer\u00f3w nazw || Rejestr nie ma delegacji. Domena nie rozwi\u0105zuje si\u0119, dop\u00f3ki serwery nazw nie zostan\u0105 ustawione.\",\"befund_dnssec_ja\":\"Delegacja DNSSEC podpisana || Rejestr trzyma rekord DS dla domeny, wi\u0119c resolvery mog\u0105 walidowa\u0107 jej odpowiedzi. Warunek wst\u0119pny dla DANE.\",\"befund_dnssec_nein\":\"Brak delegacji DNSSEC || Odpowiedzi dla tej domeny nie da si\u0119 walidowa\u0107. Opcjonalne; wi\u0119kszo\u015b\u0107 domen obywa si\u0119 bez tego, a zepsuty DNSSEC zdejmuje domen\u0119 z sieci, wi\u0119c albo starannie, albo wcale.\",\"befund_ct_fehlt\":\"Logi certyfikat\u00f3w niedost\u0119pne ({status} {fehler}) || crt.sh nie odpowiedzia\u0142 na czas albo zwr\u00f3ci\u0142 b\u0142\u0105d. To us\u0142uga wolontariacka, cz\u0119sto powolna przy du\u017cych domenach; ponowna pr\u00f3ba p\u00f3\u017aniej zwykle si\u0119 udaje.\",\"befund_ct\":\"{zertifikate} certyfikat\u00f3w zalogowanych dla {namen} nazw host\u00f3w, {aktiv} nadal wa\u017cnych, {neu} wystawionych w ostatnich 30 dniach || Ka\u017cdy publicznie zaufany certyfikat jest logowany; to pe\u0142na historia, jak\u0105 logi trzymaj\u0105 dla domeny.\",\"befund_ct_gekappt\":\"Odpowied\u017a log\u00f3w certyfikat\u00f3w obci\u0119ta przy 3 MB || Bardzo du\u017ce domeny maj\u0105 wi\u0119cej historii, ni\u017c si\u0119 mie\u015bci; brakuje najstarszych wpis\u00f3w.\",\"befund_ct_wildcard\":\"{n} nazw(y) certyfikat\u00f3w wieloznacznych: {liste} || Certyfikat wieloznaczny obejmuje ka\u017cd\u0105 nazw\u0119 hosta jeden poziom ni\u017cej. Wygodne, ale wyciek klucza obejmuje je wszystkie naraz.\",\"befund_ct_subdomains\":\"{n} subdomen w logach, {aktiv} z wa\u017cnym certyfikatem: {liste} || Nazwy host\u00f3w poza domen\u0105 i www. Ka\u017cda to host, kt\u00f3ry istnieje lub istnia\u0142 i by\u0142 na tyle osi\u0105galny, by dosta\u0107 certyfikat.\",\"befund_ct_vergessen\":\"{n} subdomen(y) od ponad 90 dni bez wa\u017cnego certyfikatu: {liste} || Nazwy, kt\u00f3re kiedy\u015b mia\u0142y certyfikat i go nie odnowi\u0142y. Cz\u0119sto zapomniane hosty: serwer testowy, stary CMS, instancja pr\u00f3bna. Je\u015bli nazwa DNS nadal istnieje, host wci\u0105\u017c da si\u0119 znale\u017a\u0107, a nieutrzymywany host to miejsce, gdzie zaczynaj\u0105 si\u0119 w\u0142amania.\",\"befund_ct_aussteller\":\"Wystawcy: {liste} || Kt\u00f3re urz\u0119dy certyfikacji wystawia\u0142y dla tej domeny. Rekord CAA mo\u017ce ograniczy\u0107 t\u0119 list\u0119.\",\"befund_ct_neu\":\"{n} certyfikat(y) wystawione w ostatnich 30 dniach || Niedawne wystawienia. Nieoczekiwane wpisy tutaj warte s\u0105 spojrzenia: kto\u015b uzyska\u0142 certyfikat dla nazwy w tej domenie.\",\"befund_ct_viele_aussteller\":\"{n} r\u00f3\u017cnych wystawc\u00f3w || Kilka urz\u0119d\u00f3w wystawia\u0142o dla tej domeny. Normalne w du\u017cych organizacjach; przy ma\u0142ej witrynie sugeruje, \u017ce us\u0142ugi ustawiano w r\u00f3\u017cnych miejscach bez wsp\u00f3lnej regu\u0142y.\"};<\/p>\n<p>    var ENDPUNKT = '\/lw-rdapct.php';\n    var SITEKEY = '6LcrPkEtAAAAAPo1QCOf-IIM2fCL0UfdJz4y2iSY';\n    var STUFEN = ['hoch', 'mittel', 'niedrig', 'info', 'gut'];<\/p>\n<p>    function liste(w) { return Array.isArray(w) ? w : []; }\n    function zahl(w) { return (typeof w === 'number' && isFinite(w)) ? w : null; }\n    function text(schluessel, daten) {\n        var t = T[schluessel];\n        if (typeof t !== 'string') { return null; }\n        return t.replace(\/\\{([a-z_0-9]+)\\}\/g, function (m, k) {\n            return (daten && daten[k] !== undefined && daten[k] !== null) ? String(daten[k]) : m;\n        });\n    }<\/p>\n<p>    function bewerten(antwort) {\n        var a = antwort || {};\n        if (a.fehler) { return { fehler: String(a.fehler), grund: a.grund || null, limit: zahl(a.limit) }; }\n        var befunde = liste(a.befunde).map(function (f) {\n            return { key: String(f.key || ''), stufe: STUFEN.indexOf(f.stufe) === -1 ? 'info' : f.stufe, daten: (f.daten && typeof f.daten === 'object') ? f.daten : {} };\n        });\n        var gruppen = {};\n        STUFEN.forEach(function (s) { gruppen[s] = befunde.filter(function (f) { return f.stufe === s; }); });\n        var r = (a.rdap && typeof a.rdap === 'object') ? a.rdap : null;\n        var c = (a.ct && typeof a.ct === 'object') ? a.ct : null;\n        var aussteller = [];\n        if (c && c.aussteller && typeof c.aussteller === 'object') { Object.keys(c.aussteller).forEach(function (k) { aussteller.push({ name: k, n: zahl(c.aussteller[k]) || 0 }); }); }\n        return {\n            fehler: null, domain: a.domain ? String(a.domain) : '',\n            urteil: (a.urteil === 'gut' || a.urteil === 'warnung' || a.urteil === 'kritisch') ? a.urteil : 'kritisch',\n            rdap: r ? { quelle: r.quelle === 'whois' ? 'whois' : 'rdap', registrar: r.registrar ? String(r.registrar) : null, registrarIana: r.registrar_iana ? String(r.registrar_iana) : null, registriert: r.registriert ? String(r.registriert) : null, ablauf: r.ablauf ? String(r.ablauf) : null, geaendert: r.geaendert ? String(r.geaendert) : null, status: liste(r.status).map(String), nameserver: liste(r.nameserver).map(String), dnssec: (r.dnssec === true || r.dnssec === false) ? r.dnssec : null } : null,\n            ct: c ? { zertifikate: zahl(c.zertifikate) || 0, namen: zahl(c.namen) || 0, aktiv: zahl(c.aktiv) || 0, neu30: zahl(c.neu_30) || 0, aussteller: aussteller, liste: liste(c.liste).map(function (n) { n = n || {}; return { name: String(n.name || ''), erste: n.erste ? String(n.erste) : null, letzte: n.letzte ? String(n.letzte) : null, n: zahl(n.n) || 0, aktiv: !!n.aktiv, wildcard: !!n.wildcard }; }) } : null,\n            befunde: befunde, gruppen: gruppen, dauer: zahl(a.dauer_ms), limitRest: zahl(a.limit_rest)\n        };\n    }<\/p>\n<p>    function skriptLaden() {\n        return new Promise(function (auf) {\n            if (window.grecaptcha) { auf(true); return; }\n            var s = document.createElement('script');\n            s.src = 'https:\/\/www.google.com\/recaptcha\/api.js?render=' + SITEKEY;\n            s.onload = function () { auf(true); }; s.onerror = function () { auf(false); };\n            document.head.appendChild(s);\n            setTimeout(function () { auf(!!window.grecaptcha); }, 8000);\n        });\n    }\n    function tokenHolen() {\n        return skriptLaden().then(function (da) {\n            if (!da || !window.grecaptcha || !window.grecaptcha.ready) { return null; }\n            return new Promise(function (auf) {\n                var fertig = false;\n                function einmal(w) { if (!fertig) { fertig = true; auf(w); } }\n                setTimeout(function () { einmal(null); }, 12000);\n                try {\n                    window.grecaptcha.ready(function () {\n                        if (fertig) { return; }\n                        if (!window.grecaptcha.execute) { einmal(null); return; }\n                        window.grecaptcha.execute(SITEKEY, { action: 'rdapct' }).then(function (t) { einmal(t || null); }, function () { einmal(null); });\n                    });\n                } catch (e) { einmal(null); }\n            });\n        }, function () { return null; });\n    }\n    function abfragen(domain) {\n        return tokenHolen().then(function (token) {\n            return fetch(ENDPUNKT, { method: 'POST', headers: { 'Content-Type': 'application\/json' }, body: JSON.stringify({ domain: domain, token: token || '' }) })\n                .then(function (r) { return r.json().then(function (j) { return j; }, function () { return { fehler: 'antwort' }; }); }, function () { return { fehler: 'netz' }; });\n        });\n    }<\/p>\n<p>    window.LW_TEST = window.LW_TEST || {};\n    window.LW_TEST.RC = { bewerten: bewerten, darstellen: null, text: text, ENDPUNKT: ENDPUNKT, STUFEN: STUFEN, T: T };<\/p>\n<p>    var btn = document.getElementById('rc-btn');\n    var out = document.getElementById('rc-ausgabe');\n    if (!btn || !out) { return; }<\/p>\n<p>    function el(tag, stil, txt) { var e = document.createElement(tag); if (stil) { e.setAttribute('style', stil); } if (txt !== undefined && txt !== null) { e.textContent = txt; } return e; }\n    function wert(id) { var e = document.getElementById(id); return e ? e.value : ''; }\n    var UEBERSCHRIFT = 'font-family: \"Nunito Sans\", sans-serif; font-weight: 700; color: var(--text-primary, #e8e8ee); font-size: 0.95rem; margin: 22px 0 8px;';\n    var ZELLE = 'padding: 5px 12px 5px 0; color: var(--text-secondary, #a0a0b0); font-size: 0.87rem;';\n    var ZELLE_WERT = 'padding: 5px 12px 5px 0; color: var(--text-primary, #e8e8ee); font-size: 0.87rem; font-family: monospace; word-break: break-all;';\n    var KASTEN = 'background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); border-radius: 8px; padding: 14px 16px; margin: 0 0 10px;';\n    var GUT = ' color: #7ee787;', WARN = ' color: #ffa94d;', ROT = ' color: #ff7b72;', GRAU = ' color: #8a8a99;';\n    var FARBEN = { hoch: '#ff7b72', mittel: '#ffa94d', niedrig: '#e3b341', info: '#8a8a99', gut: '#7ee787' };\n    var URTEIL = { gut: GUT, warnung: WARN, kritisch: ROT };\n    function gitter(sp) { return el('div', 'display: grid; grid-template-columns: ' + sp + '; gap: 0 18px; align-items: baseline;'); }\n    function paar(g, n, w, stil) { g.appendChild(el('div', ZELLE, n)); g.appendChild(el('div', ZELLE_WERT + (stil || ''), w)); }<\/p>\n<p>    function darstellen(b, ziel) {\n        ziel.innerHTML = '';\n        if (b.fehler) {\n            var txt = T['fehler_' + b.fehler] || T.fehler_unbekannt;\n            if (b.grund && T['grund_' + b.grund]) { txt = txt + ' ' + T['grund_' + b.grund]; }\n            if (b.limit !== null) { txt = txt.replace('{limit}', String(b.limit)); }\n            ziel.appendChild(el('p', ZELLE + WARN + ' margin: 0;', txt));\n            return;\n        }\n        ziel.appendChild(el('div', 'font-size: 1.05rem; font-weight: 700; margin: 0 0 12px;' + URTEIL[b.urteil], T['urteil_' + b.urteil]));<\/p>\n<p>        ziel.appendChild(el('div', UEBERSCHRIFT, T.h_registrierung + (b.rdap && b.rdap.quelle === 'whois' ? ' (' + T.quelle_whois + ')' : '')));\n        var g = gitter('auto auto');\n        paar(g, T.zeile_domain, b.domain);\n        if (b.rdap) {\n            paar(g, T.zeile_registrar, (b.rdap.registrar || '-') + (b.rdap.registrarIana ? ' (IANA ' + b.rdap.registrarIana + ')' : ''));\n            paar(g, T.zeile_registriert, b.rdap.registriert || '-', GRAU);\n            paar(g, T.zeile_ablauf, b.rdap.ablauf || T.wert_unbekannt, b.rdap.ablauf ? '' : GRAU);\n            paar(g, T.zeile_geaendert, b.rdap.geaendert || '-', GRAU);\n            paar(g, T.zeile_status, b.rdap.status.length ? b.rdap.status.join(', ') : '-', GRAU);\n            paar(g, T.zeile_nameserver, b.rdap.nameserver.length ? b.rdap.nameserver.join(', ') : '-', GRAU);\n            paar(g, T.zeile_dnssec, b.rdap.dnssec === null ? T.wert_unbekannt : (b.rdap.dnssec ? T.ja : T.nein), b.rdap.dnssec ? GUT : GRAU);\n        } else { paar(g, T.zeile_registrar, T.wert_keine_daten, WARN); }\n        if (b.dauer !== null) { paar(g, T.zeile_dauer, b.dauer + ' ms', GRAU); }\n        if (b.limitRest !== null) { paar(g, T.zeile_limit, String(b.limitRest), GRAU); }\n        ziel.appendChild(g);<\/p>\n<p>        if (b.ct) {\n            ziel.appendChild(el('div', UEBERSCHRIFT, T.h_ct));\n            var gc = gitter('auto auto');\n            paar(gc, T.zeile_zertifikate, text('ct_kurz', { zertifikate: b.ct.zertifikate, aktiv: b.ct.aktiv, neu: b.ct.neu30 }));\n            paar(gc, T.zeile_namen, String(b.ct.namen));\n            if (b.ct.aussteller.length) { paar(gc, T.zeile_aussteller, b.ct.aussteller.map(function (x) { return x.name + ' (' + x.n + ')'; }).join(', '), GRAU); }\n            ziel.appendChild(gc);\n            if (b.ct.liste.length) {\n                var huelle = el('div', 'overflow-x: auto; max-height: 420px; overflow-y: auto;');\n                var gp = gitter('auto auto auto auto auto');\n                [T.spalte_name, T.spalte_erste, T.spalte_letzte, T.spalte_n, T.spalte_zustand].forEach(function (s) { gp.appendChild(el('div', ZELLE + ' font-weight: 700; color: var(--text-primary, #e8e8ee); white-space: nowrap;', s)); });\n                b.ct.liste.forEach(function (n) {\n                    gp.appendChild(el('div', ZELLE_WERT, n.name));\n                    gp.appendChild(el('div', ZELLE_WERT + GRAU, n.erste || '-'));\n                    gp.appendChild(el('div', ZELLE_WERT + GRAU, n.letzte || '-'));\n                    gp.appendChild(el('div', ZELLE_WERT + GRAU, String(n.n)));\n                    gp.appendChild(el('div', ZELLE_WERT + (n.aktiv ? GUT : WARN) + ' white-space: nowrap;', (n.aktiv ? T.name_aktiv : T.name_abgelaufen) + (n.wildcard ? ' \u00b7 ' + T.name_wildcard : '')));\n                });\n                huelle.appendChild(gp);\n                ziel.appendChild(huelle);\n            }\n        }<\/p>\n<p>        ziel.appendChild(el('div', UEBERSCHRIFT, T.h_befunde));\n        var irgendwas = false;\n        STUFEN.forEach(function (s) {\n            var gr = b.gruppen[s];\n            if (!gr.length) { return; }\n            irgendwas = true;\n            ziel.appendChild(el('div', 'font-weight: 700; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.5px; margin: 14px 0 6px; color: ' + FARBEN[s] + ';', T['stufe_' + s] + ' (' + gr.length + ')'));\n            gr.forEach(function (f) {\n                var k = el('div', KASTEN + ' border-left: 3px solid ' + FARBEN[s] + ';');\n                var t = text('befund_' + f.key, f.daten) || f.key;\n                var teile = t.split(' || ');\n                k.appendChild(el('div', 'color: var(--text-primary, #e8e8ee); font-size: 0.9rem; font-weight: 700;', teile[0]));\n                if (teile[1]) { k.appendChild(el('div', ZELLE + ' padding: 6px 0 0; line-height: 1.55;', teile[1])); }\n                ziel.appendChild(k);\n            });\n        });\n        if (!irgendwas) { ziel.appendChild(el('p', ZELLE + ' margin: 0;', T.keine_befunde)); }\n    }\n    window.LW_TEST.RC.darstellen = darstellen;<\/p>\n<p>    var laeuft = false;\n    btn.addEventListener('click', function () {\n        if (laeuft) { return; }\n        laeuft = true; btn.disabled = true;\n        out.innerHTML = '';\n        out.appendChild(el('p', ZELLE + GRAU + ' margin: 0;', T.laeuft));\n        abfragen(wert('rc-domain')).then(function (a) { darstellen(bewerten(a), out); laeuft = false; btn.disabled = false; },\n            function () { darstellen(bewerten({ fehler: 'netz' }), out); laeuft = false; btn.disabled = false; });\n    });\n})();\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pyta rejestr przez RDAP, u kogo domena jest zarejestrowana, kiedy powsta\u0142a i kiedy wygasa, jakie blokady statusu obowi\u0105zuj\u0105, kt\u00f3re serwery nazw j\u0105 obs\u0142uguj\u0105 i czy DNSSEC jest delegowany, a potem czyta logi Certificate Transparency w poszukiwaniu ka\u017cdej nazwy hosta, dla kt\u00f3rej kiedykolwiek wystawiono certyfikat, \u0142\u0105cznie z subdomenami, o kt\u00f3rych nikt nie pami\u0119ta.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":9284,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template-tool-base.php","meta":{"footnotes":""},"tags":[92229,92310,92077],"class_list":["post-15575","page","type-page","status-publish","hentry","tag-devops-pl","tag-networking-pl","tag-web-security-pl"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Zapytanie RDAP i Certificate Transparency o domen\u0119: rejestrator, wyga\u015bni\u0119cie, zapomniane subdomeny - Lukas Wojcik - Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lukaswojcik.com\/blog\/pl\/narzedzia\/domain-rdap-certificate-transparency-subdomain-lookup\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Zapytanie RDAP i Certificate Transparency o domen\u0119: rejestrator, wyga\u015bni\u0119cie, zapomniane subdomeny - Lukas Wojcik - Blog\" \/>\n<meta property=\"og:description\" content=\"Pyta rejestr przez RDAP, u kogo domena jest zarejestrowana, kiedy powsta\u0142a i kiedy wygasa, jakie blokady statusu obowi\u0105zuj\u0105, kt\u00f3re serwery nazw j\u0105 obs\u0142uguj\u0105 i czy DNSSEC jest delegowany, a potem czyta logi Certificate Transparency w poszukiwaniu ka\u017cdej nazwy hosta, dla kt\u00f3rej kiedykolwiek wystawiono certyfikat, \u0142\u0105cznie z subdomenami, o kt\u00f3rych nikt nie pami\u0119ta.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/pl\/narzedzia\/domain-rdap-certificate-transparency-subdomain-lookup\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/og-default.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/narzedzia\\\/domain-rdap-certificate-transparency-subdomain-lookup\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/narzedzia\\\/domain-rdap-certificate-transparency-subdomain-lookup\\\/\",\"name\":\"Zapytanie RDAP i Certificate Transparency o domen\u0119: rejestrator, wyga\u015bni\u0119cie, zapomniane subdomeny - Lukas Wojcik - Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"datePublished\":\"2026-09-05T12:58:39+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/narzedzia\\\/domain-rdap-certificate-transparency-subdomain-lookup\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/narzedzia\\\/domain-rdap-certificate-transparency-subdomain-lookup\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/narzedzia\\\/domain-rdap-certificate-transparency-subdomain-lookup\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Toolbox\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/toolbox-3\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Zapytanie RDAP i Certificate Transparency o domen\u0119: rejestrator, wyga\u015bni\u0119cie, zapomniane subdomeny\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\",\"name\":\"Lukas Wojcik - Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\",\"name\":\"luky\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"width\":424,\"height\":636,\"caption\":\"luky\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\"},\"sameAs\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Zapytanie RDAP i Certificate Transparency o domen\u0119: rejestrator, wyga\u015bni\u0119cie, zapomniane subdomeny - Lukas Wojcik - Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lukaswojcik.com\/blog\/pl\/narzedzia\/domain-rdap-certificate-transparency-subdomain-lookup\/","og_locale":"en_US","og_type":"article","og_title":"Zapytanie RDAP i Certificate Transparency o domen\u0119: rejestrator, wyga\u015bni\u0119cie, zapomniane subdomeny - Lukas Wojcik - Blog","og_description":"Pyta rejestr przez RDAP, u kogo domena jest zarejestrowana, kiedy powsta\u0142a i kiedy wygasa, jakie blokady statusu obowi\u0105zuj\u0105, kt\u00f3re serwery nazw j\u0105 obs\u0142uguj\u0105 i czy DNSSEC jest delegowany, a potem czyta logi Certificate Transparency w poszukiwaniu ka\u017cdej nazwy hosta, dla kt\u00f3rej kiedykolwiek wystawiono certyfikat, \u0142\u0105cznie z subdomenami, o kt\u00f3rych nikt nie pami\u0119ta.","og_url":"https:\/\/www.lukaswojcik.com\/blog\/pl\/narzedzia\/domain-rdap-certificate-transparency-subdomain-lookup\/","og_site_name":"Lukas Wojcik - Blog","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/og-default.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/narzedzia\/domain-rdap-certificate-transparency-subdomain-lookup\/","url":"https:\/\/www.lukaswojcik.com\/blog\/pl\/narzedzia\/domain-rdap-certificate-transparency-subdomain-lookup\/","name":"Zapytanie RDAP i Certificate Transparency o domen\u0119: rejestrator, wyga\u015bni\u0119cie, zapomniane subdomeny - Lukas Wojcik - Blog","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"datePublished":"2026-09-05T12:58:39+00:00","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/narzedzia\/domain-rdap-certificate-transparency-subdomain-lookup\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/pl\/narzedzia\/domain-rdap-certificate-transparency-subdomain-lookup\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/narzedzia\/domain-rdap-certificate-transparency-subdomain-lookup\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Toolbox","item":"https:\/\/www.lukaswojcik.com\/blog\/toolbox-3\/"},{"@type":"ListItem","position":3,"name":"Zapytanie RDAP i Certificate Transparency o domen\u0119: rejestrator, wyga\u015bni\u0119cie, zapomniane subdomeny"}]},{"@type":"WebSite","@id":"https:\/\/www.lukaswojcik.com\/blog\/#website","url":"https:\/\/www.lukaswojcik.com\/blog\/","name":"Lukas Wojcik - Blog","description":"","publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lukaswojcik.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9","name":"luky","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","width":424,"height":636,"caption":"luky"},"logo":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg"},"sameAs":["https:\/\/www.lukaswojcik.com\/blog"]}]}},"_links":{"self":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/pages\/15575","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/comments?post=15575"}],"version-history":[{"count":0,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/pages\/15575\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/pages\/9284"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=15575"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/tags?post=15575"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}