Yeni servis · IETF taslağı
Roughtime: imzalı zaman
Aynı GPS referanslı saatten, her cevabı Ed25519 ile imzalanmış zaman. Saati hiç bilmeyen bir cihaz bile doğru zamanı alıp doğrulayabilir; yanlış saat veren bir sunucu kriptografik olarak yakalanabilir; bir dosyanın belirli bir saniyeden önce var olduğu kanıtlanabilir. Ücretsiz, kayıt gerektirmez, IPv4 ve IPv6 üzerinden çalışır.
Canlı imzalı cevap
sunucunun az önce verdiği gerçek cevapAşağıdaki değerler, sunucumuza dakikada bir gönderilen gerçek bir isteğin ve aldığı cevabın alan alan dökümüdür. İmza, delegasyon sertifikası ve Merkle yolu sunucu dışında, istemci tarafında doğrulandı. Pembe renkli iki satıra bakın: istemcinin gönderdiği rastgele değer, sunucunun imzaladığı cevabın içinde aynen geri döner.
- VER
- …desteklenen protokol sürümü
- SRV
- …hangi uzun dönemli anahtarı beklediğimiz (özeti)
- NONC
- …istemcinin ürettiği 32 bayt rastgele değer
- TYPE
- …0 = istek
- ZZZZ
- …dolgu: istek en az 1024 bayt olmalı
- MIDP
- …sunucunun zamanı (UTC, tam saniye)
- RADI
- …hata payı: gerçek zaman MIDP ± RADI içinde
- NONC
- …aynı nonce, imzanın kapsamı içinde
- SIG
- …Ed25519 imzası (64 bayt)
- CERT
- …çevrimiçi anahtar ve geçerlilik aralığı
- Boyut
- …cevap istekten küçük: yansıtma saldırısında güçlendirici olamaz
Değerler /api/roughtime.json ucundan okunur ve dakikada bir yenilenir.
Roughtime nedir
NTP’nin çözemediği üç sorunNTP cevapları imzasızdır: yoldaki biri saati değiştirebilir. NTS bunu çözer, ama NTS’nin başlaması için TLS sertifikası doğrulanmalı, sertifika doğrulamak için de saatin aşağı yukarı doğru olması gerekir. Pili bitmiş, saati 1970’te açılan bir cihaz bu döngüden çıkamaz. Üstelik ne NTP ne NTS, bir sunucunun yanlış saat verdiğini üçüncü bir kişiye kanıtlamanıza izin verir.
Roughtime bu boşluğu doldurmak için tasarlandı. Google’ın başlattığı, Cloudflare ve Netnod’un geliştirdiği protokol IETF NTP çalışma grubunda standartlaştırıldı. Taslak (draft-ietf-ntp-roughtime-19) çalışma grubundan geçti ve RFC olarak yayımlanmak üzere RFC Editor aşamasında.
| NTP | NTS | Roughtime | |
|---|---|---|---|
| Cevap doğrulanabilir | Hayır | Oturum anahtarıyla | Açık anahtar imzası |
| Başlamak için doğru saat gerekmez | Gerekmez | Gerekir (TLS) | Gerekmez |
| Üçüncü kişiye gösterilebilir kanıt | Yok | Yok | İmzalı cevap saklanır |
| Yalan söyleyen sunucuyu ispat | Yok | Yok | Zincirli sorgu |
| Çözünürlük | nanosaniye | nanosaniye | 1 saniye |
| Ne için | saati ayarlı tutmak | aynısı, kimlik doğrulamalı | güvenli başlangıç, kanıt, denetim |
Nasıl çalışır
tek gidiş-dönüş, tek UDP paketi- 01İstek
İstemci 32 baytlık rastgele bir değer (nonce) üretip gönderir. Paket en az 1024 bayta doldurulur.
en az 1024 bayt - 02Toplu imza
Sunucu aynı anda gelen istekleri bir Merkle ağacında toplar, ağacın kökünü zamanla birlikte tek bir imzayla imzalar.
tek imza, çok istek - 03Cevap
Zaman (MIDP), yarıçap (RADI), imza, delegasyon sertifikası ve nonce’un ağaçtaki yolu döner. Nonce imzanın içinde olduğu için cevap isteğinizden sonra üretilmiştir.
cevap ≤ istek - 04Doğrulama
İstemci imzayı, sertifikayı ve Merkle yolunu uzun dönemli açık anahtarla doğrular. Saat bilgisi gerekmez; tek yapılandırma değeri açık anahtardır.
Ed25519 - 05Zincir
Bir sonraki sunucuya giden nonce önceki cevabın özetinden türetilir. İki sunucu çelişirse elinizdeki zincir bunun kanıtıdır.
en az 3 sunucu
Yarıçapı sabit bir değer olarak yazmıyoruz: sunucu, işletim sistemi çekirdeğinin saat için tuttuğu azami hata değerini (maxerror) okur ve yarıçapı ondan hesaplar. GPS kilitliyken bu değer mikrosaniyelerdedir ve yarıçap standardın izin verdiği en küçük değer olan 1 saniye çıkar. Saat bir sebeple senkron dışı kalırsa hata payı kendiliğinden büyür; sunucu bilmediği bir kesinliği iddia etmez.
Nerelerde kullanılır
taslaktan ve sahadanNTS’yi başlatmak
NTS-KE sunucusunun TLS sertifikasını doğrulamak için saat gerekir. Önce Roughtime ile doğrulanmış kaba saat, sonra NTS.
taslak, bölüm 6Saati olmayan cihazlar
Raspberry Pi gibi pilli saati (RTC) olmayan kartlar, gömülü sistemler, uzun süre kapalı kalan cihazlar açılışta doğrulanabilir saat alır.
IoT · gömülüTLS ve sertifika hataları
Saati kaymış istemci geçerli sertifikaları “süresi dolmuş” görür. Sertifika denetiminden önce saati bağımsız ve imzalı bir kaynakla kontrol edin.
tarayıcı · istemciZaman sunucularını denetlemek
Kasıtlı ya da hatayla yanlış saat veren bir sunucu zincirli sorgularla yakalanır ve imzalı kanıtla raporlanır.
malfeasance reportKayıt ve belge bütünlüğü
Bir günlük dosyasının, raporun ya da olay kaydının belirli bir saniyeden önce var olduğunu çevrimdışı doğrulanabilir biçimde gösterin.
roughtime-stampDağıtık sistemlerde olay zamanı
Farklı cihazların saatini bağımsız, imzalı bir referansla periyodik olarak karşılaştırın ve kanıtını olay kayıtlarıyla saklayın.
çok sensörlü sistemlerBelge damgalama ve olay zamanı kullanımları taslakta tanımlı özellikler değildir; protokolün “cevap, nonce’tan sonra üretildi” garantisinin üzerine kurulan, açık kaynak araçlarda hazır bulunan uygulama desenleridir.
Hemen deneyin
komutların hepsi bu sunucuda denendiEn kolay istemci, Go ile yazılmış tannerryan/roughtime araç setidir (BSD lisansı, taslak 01–19 desteği). Go 1.27 veya üstü gerekir.
İstemciyi kurun
go install github.com/tannerryan/roughtime/cmd/roughtime-client@latest
Tek sunucuyu sorgulayın saate dokunmaz
roughtime-client -addr roughtime.alastyr.com:2002 \
-pubkey /2Al59PlwUTJHas/VS+FN6BhO9ify/wIjoH2Ezv4V7w=
Bizim sunucu listemizle
curl -sO https://ntp.alastyr.com/roughtime.json
roughtime-client -servers roughtime.json -all
Python ile
git clone https://github.com/dansarie/pyroughtime
pip install pycryptodomex
python3 pyroughtime/pyroughtime.py \
-s roughtime.alastyr.com 2002 /2Al59PlwUTJHas/VS+FN6BhO9ify/wIjoH2Ezv4V7w=
Beklenen çıktıda Radius: 1s ve Status: in-sync görmelisiniz. Drift satırı sizin saatinizle farkı gösterir; zaman tam saniye olarak geldiği için yarım saniyeye kadar fark normaldir. Yanlış anahtar verirseniz sunucu hiç cevap vermez: standart gereği hata mesajı yoktur.
Birden fazla sunucuyla doğrulama
tek sunucuya güvenmeyin, bize deRoughtime’ın gücü, farklı kurumların işlettiği en az üç sunucuyu zincirleme sorgulamaktan gelir. Her sorgunun nonce’u bir öncekinin cevabından türetildiği için sıralama sabitlenir.
Üçüncü cevap, ikinci cevaptan önce üretilmiş gibi görünüyorsa iki sunucudan biri yanlış söylüyordur ve elinizdeki imzalı zincir bunu herkese kanıtlar. Topluluk listesine bizim sunucumuzu ekleyip iki turlu ölçüm için:
curl -sO https://raw.githubusercontent.com/tannerryan/roughtime/main/ecosystem.json
curl -sO https://ntp.alastyr.com/roughtime.json
jq -s '{servers: (.[0].servers + .[1].servers)}' \
ecosystem.json roughtime.json > liste.json
roughtime-client -servers liste.json -two-pass
Çıktının sonundaki Chain: ok satırı tüm imzaların ve zaman sıralamasının tutarlı olduğunu söyler. Listedeki anahtarlara, listenin kaynağına güvendiğiniz ölçüde güvenin; bizim anahtarımızı bu sayfadan ve roughtime.json dosyasından teyit edebilirsiniz.
Belge damgalama
“bu dosya şu andan önce vardı”roughtime-stamp, dosyanın SHA-256 özetini nonce olarak kullanır, üç bağımsız işletmeciyi iki tur sorgular ve sonucu 2–3 KB’lık bir kanıt dosyasına yazar. Doğrulama ağ bağlantısı gerektirmez.
Damgala
go install github.com/tannerryan/roughtime/cmd/roughtime-stamp@latest
roughtime-stamp -doc rapor.pdf -servers liste.json \
-out rapor.pdf.proof
Doğrula çevrimdışı
roughtime-stamp -mode verify -doc rapor.pdf \
-in rapor.pdf.proof -servers liste.json
Dosyada tek bayt değişse doğrulama proof does not cover document hatasıyla reddedilir. Kanıt dosyasını, belgeyi ve kullandığınız liste.json dosyasını birlikte saklayın: yıllar sonra doğrulayan kişi hangi anahtarlara güvendiğinizi de görmelidir.
Teknik bilgiler
| Adres | roughtime.alastyr.com:2002 | IPv4 5.2.80.90 · IPv6 2a06:ad40:0:1::90 · yalnızca UDP |
| Protokol | draft-ietf-ntp-roughtime-19 | kablo sürümü 0x8000000c (taslak 12–19 ortak) |
| Açık anahtar | Ed25519 | /2Al59PlwUTJHas/VS+FN6BhO9ify/wIjoH2Ezv4V7w=ff6025e7d3e5c144c91dab3f552f8537a0613bd89fcbfc088e81f6133bf857bc |
| Sunucu listesi | roughtime.json | https://ntp.alastyr.com/roughtime.json · application/roughtime-server+json |
| Canlı durum | API | https://ntp.alastyr.com/api/roughtime.json · dakikada bir |
| Zaman kaynağı | stratum 1 | NTP ile aynı saat: GNSS + donanımda damgalanan PPS (künye) |
| Yarıçap | çekirdek maxerror | senkronken 1 sn; senkron bozulursa kendiliğinden büyür |
| Yazılım | roughtimed 1.3.0 | Marcus Dansarie (taslağın ortak yazarı), GPL-3.0, istek kaydı için küçük bir yama ile |
| Süreklilik | systemd + nöbetçi | çökerse 5 sn içinde yeniden başlar; cevap vermezse dakikalık imzalı sorgu 3 denemede yeniden başlatır |
| Artık saniye | yayma yok | artık saniye günlerinde yarıçap en az 3 saniyeye çıkar |
Anahtar yönetimi
kök anahtar bu sunucuda durmuyorCevapları imzalayan anahtar, uzun dönemli kök anahtar değildir. Kök anahtar çevrimdışı saklanır ve yalnızca bir delegasyon sertifikası imzalamak için kullanılır. Sunucuda yalnızca bu sertifika ve onun özel anahtarı bulunur. Sertifika bir yıl geçerlidir ve her yıl kök anahtarla yenilenir; açık anahtar değişmez. Delegasyon anahtarı çalınsa bile saldırgan yalnızca sertifikanın geçerli olduğu aralıkta imza atabilir.
| Açık anahtar | Kullanım aralığı | Durum |
|---|---|---|
/2Al59PlwUTJHas/VS+FN6BhO9ify/wIjoH2Ezv4V7w= | 2026-09-24 → | Kullanımda. Delegasyon 2027-09-25 00:00 UTC’ye kadar geçerli. |
Bu tablo kalıcıdır: ileride anahtar değişirse eski anahtar silinmez, kullanım aralığıyla burada kalır; eski kanıtlarınız o anahtarla doğrulanmaya devam eder.
Sınırlar
bilmeniz gerekenlerÇözünürlük bir saniyedir
Milisaniye hassasiyeti gerekiyorsa NTS kullanın.
Yasal nitelikli zaman damgası değildir
5070 sayılı Kanun kapsamındaki zaman damgası yetkili hizmet sağlayıcılardan alınır. Roughtime teknik ve bağımsız doğrulanabilir bir kanıttır.
Tek sunucu tek tanıktır
Önemli bir kanıt için farklı kurumlardan en az üç sunucu kullanın. Bizim saatimiz tek bir GNSS alıcısına dayanır; uydu kesilirse ağdaki stratum-1 kaynaklara geçer.
Damga üst sınırı kanıtlar
Belgenin o andan önce var olduğunu gösterir, ne zaman oluşturulduğunu göstermez.
İlk sunucu özeti görür
Tahmin edilebilir içerik özetinden bulunabilir. Hassas içerikte belgeye rastgele bir değer ekleyip özetleyin ve o değeri belgeyle saklayın.
Şimdilik yalnızca UDP
Taslak TCP’yi de öneriyor; kullandığımız sunucu yazılımı henüz desteklemiyor.
Standart henüz RFC değil
Yayımlandığında sürüm numarası 0x8000000c’den 1’e dönecek ve IANA bir port atayabilir. Geçişte iki sürümü birlikte destekleyip bu sayfada önceden duyuracağız.
Sık sorulan teknik sorular
19 soru · nedir, nasıl çalışır, nerede kullanılırRoughtime nedir?
Roughtime, bir sunucudan imzalı zaman almak için tasarlanmış bir ağ protokolüdür. İstemci rastgele bir değer gönderir; sunucu o anki zamanı, zamanın hata payını ve istemcinin gönderdiği değeri birlikte Ed25519 ile imzalayıp geri yollar. İstemci imzayı sunucunun önceden bildiği açık anahtarıyla doğrular. Böylece cevabın gerçekten o sunucudan geldiği, yolda değiştirilmediği ve isteğinizden sonra üretildiği kanıtlanmış olur.
Protokolü Google başlattı; Cloudflare ve Netnod geliştirdi. Bugün IETF NTP çalışma grubunun draft-ietf-ntp-roughtime taslağıyla standartlaşıyor. Adındaki "rough" (kaba) kelimesi çözünürlüğü anlatır: zaman saniye düzeyindedir, ama güvenilirliği yüksektir.
Ne amaçla kullanılır?
Başlıca dört amaç için:
- Saati hiç bilmeyen cihaza güvenli başlangıç saati vermek. Pili bitmiş, RTC'si olmayan ya da uzun süre kapalı kalmış bir cihaz TLS sertifikalarını doğrulayamaz; Roughtime'ın ise önceden doğru saate ihtiyacı yoktur.
- NTS'yi başlatmak. NTS'nin anahtar değişimi TLS kullandığı için önce kabaca doğru saat gerekir. Roughtime bu ilk adımı güvenli yapar.
- Zaman sunucularını denetlemek. Birden fazla sunucuyu zincirleme sorgulayarak yanlış saat veren bir sunucuyu yakalamak ve bunu imzalı kanıtla göstermek.
- Kanıt üretmek. Bir dosyanın, günlük kaydının ya da olay kaydının belirli bir saniyeden önce var olduğunu, sonradan internete bağlanmadan doğrulanabilen şekilde göstermek.
Roughtime, NTP'nin yerini alır mı?
Hayır, ikisi farklı işler yapar. NTP saatinizi milisaniye hatta mikrosaniye düzeyinde sürekli ayarlı tutar. Roughtime ise saniye çözünürlüğünde, ama her cevabı imzalı olan bir "şu an saat kaç" sorusudur. Tipik kullanım ikisini birlikte çalıştırmaktır: cihaz açılırken Roughtime ile kabaca doğru ve doğrulanmış bir saat alır, sonra NTS ile korunan NTP'ye geçer. Taslağın 6. bölümü bu birlikteliği anlatır.
Neden yalnızca saniye hassasiyeti var?
Standart böyle tanımlıyor: zaman (MIDP) tam saniye olarak gönderilir, yarıçap (RADI) da saniye cinsindendir ve sıfır olamaz. Amaç hassasiyet değil, doğrulanabilirlik. Sertifika geçerliliğini kontrol etmek, bir kaydın hangi gün ve saatte var olduğunu göstermek ya da yanlış saat veren bir sunucuyu yakalamak için bir saniye fazlasıyla yeterlidir. Hassas zaman gerekiyorsa aynı sunucunun NTS hizmetini kullanın.
Bir dosyanın belirli bir anda var olduğunu nasıl kanıtlarım?
İstek içindeki rastgele değeri (nonce) dosyanın özetinden türetirsiniz. Sunucu bu değeri
zamanla birlikte imzaladığı için, imzalı cevap "bu özet, şu saniyeden önce vardı" demenin
kriptografik kanıtı olur. roughtime-stamp aracı bunu üç bağımsız işletmeciyle iki tur
yaparak otomatik yapar ve sonradan internete bağlanmadan doğrulanabilen küçük bir kanıt dosyası
üretir. Komutlar belge damgalama bölümünde.
Bu yöntem taslakta tanımlı bir özellik değil, protokolün üzerine kurulan bir uygulama desenidir. Kanıt yalnızca üst sınırı gösterir: dosyanın o andan önce var olduğunu, sonra değiştirilmediğini. Ne zaman oluşturulduğunu göstermez.
Nonce nedir, neden bu kadar önemli?
Nonce, istemcinin her istekte ürettiği 32 baytlık tek kullanımlık rastgele değerdir. Sunucu bu değeri cevabın imzalı kısmına dahil eder. Değer önceden tahmin edilemediği için, imzalı cevabın isteğinizden önce hazırlanmış olması imkânsızdır: eski bir cevabı tekrar oynatan (replay) saldırgan, sizin ürettiğiniz nonce'u bilemez.
Nonce'u rastgele değil de bir verinin özetinden türetirseniz, aynı mantık tersine çalışır: bu kez verinin cevaptan önce var olduğu kanıtlanır. Belge damgalama bu fikre dayanır.
Yarıçap (RADI) ne anlama gelir?
Sunucunun gönderdiği zaman (MIDP) tek başına bir nokta değil, bir aralığın ortasıdır. Yarıçap bu aralığın yarı genişliğidir: sunucu "gerçek zaman MIDP − RADI ile MIDP + RADI arasındadır" diye taahhüt eder ve bunu imzalar. Standarda göre yarıçap saniye cinsindendir ve sıfır olamaz.
Bizim sunucumuzda yarıçap elle yazılmış sabit bir değer değildir; işletim sisteminin saat için tuttuğu azami hata değerinden hesaplanır. GPS kilitliyken bu 1 saniyedir. Saat senkron dışı kalırsa yarıçap kendiliğinden büyür.
Merkle ağacı neden kullanılıyor?
Ed25519 imzası hızlıdır ama saniyede binlerce isteğin her birini ayrı ayrı imzalamak yine de işlemci harcar. Sunucu bu yüzden aynı anda gelen istekleri bir Merkle ağacının yapraklarına koyar, ağacın kökünü zamanla birlikte bir kez imzalar ve her istemciye kendi yaprağından köke giden yolu gönderir. İstemci bu yolu kullanarak kendi nonce'unun imzalı köke bağlı olduğunu doğrular. Tek imza yüzlerce isteği kapsar; güvenlik azalmaz.
Delegasyon sertifikası nedir?
Sunucunun kimliği uzun dönemli bir anahtarla tanımlanır; istemciler yalnızca bunun açık anahtarını bilir. Bu anahtarın her cevabı imzalamak için internete açık bir makinede durması risklidir. Bu yüzden uzun dönemli anahtar, kısa ömürlü bir çevrimiçi anahtarı belli bir tarih aralığı (MINT–MAXT) için yetkilendiren bir sertifika imzalar. Cevapları çevrimiçi anahtar imzalar, sertifika da her cevapla birlikte gönderilir.
Bizim kök anahtarımız çevrimdışı saklanıyor; sunucudaki delegasyon bir yıl geçerli ve her yıl yenileniyor. Ayrıntı anahtar yönetimi bölümünde.
Yanlış saat veren bir sunucu nasıl ispatlanır?
İstemci en az üç sunucuyu sırayla sorgular ve her sorgunun nonce'unu bir önceki cevabın özetinden türetir. Böylece cevaplar arasında kriptografik bir sıra oluşur: ikinci cevap, birinci cevaptan sonra üretilmiş olmak zorundadır. Sonra gelen bir cevabın zaman aralığı, önce gelen cevabınkinden tamamen öncedeyse iki sunucudan biri yanlış söylüyordur.
Bu durumda elinizdeki imzalı cevap zinciri, çelişkinin herkesçe doğrulanabilir kanıtıdır. Taslak bunu "malfeasance report" adıyla standart bir JSON biçiminde raporlamayı tanımlar.
Neden UDP ve neden en az 1024 baytlık istek?
UDP tek gidiş-dönüşte biter, bağlantı durumu tutmaz ve saati bilmeyen bir cihazın bile kullanabileceği kadar basittir. UDP'nin bilinen riski, kaynak adresi sahte paketlerle sunucunun başkasına büyük cevaplar yollatılmasıdır (yansıtma saldırısı). Roughtime bunu yapısal olarak engeller: istemci isteğini en az 1024 bayta doldurur ve sunucu istekten büyük cevap göndermez. Daha kısa istekler yanıtsız bırakılır. Taslak TCP'yi de tanımlar; sunucumuz şimdilik yalnızca UDP konuşur.
Neden port 2002?
Taslak henüz RFC olmadığı için IANA Roughtime'a resmi bir port atamadı. Topluluk yıllardır 2002/udp kullanıyor; Netnod, roughtime.se, Time.nl ve diğer sunucuların çoğu bu portta. Standart yayımlanıp port atanırsa yeni portu da açacağız ve 2002'yi bir süre paralel tutacağız.
chrony, Windows veya systemd-timesyncd Roughtime kullanabilir mi?
Bugün için hayır. Kullandığımız chrony 4.8 dahil yaygın NTP istemcilerinde yerleşik Roughtime desteği yok. Roughtime'ı ayrı bir istemciyle kullanırsınız: Go ya da Python istemcileri ile saati kontrol edebilir, belge damgalayabilir ya da açılış betiğinizde NTS'den önce bir doğrulama adımı olarak çalıştırabilirsiniz. Saatin sürekli ayarlı tutulması için NTP/NTS kullanmaya devam edin.
Ed25519 kuantum bilgisayarlara karşı güvenli mi?
Değil. Taslak da bunu açıkça yazar: yeterince büyük bir kuantum bilgisayar Ed25519 imzalarını kırabilir ve o gün geldiğinde protokolün yeni bir sürümü gerekecek. Deneysel olarak kuantum sonrası imza (ML-DSA-44) destekleyen uygulamalar var, ama bu henüz standardın parçası değil ve biz sunmuyoruz. Bugün için Ed25519 güvenli kabul edilir.
Neden tek sunucu yetmez, neden en az üç?
Tek bir sunucu yanlış saat verirse, imzası geçerli olduğu sürece bunu ondan başka bir kaynak olmadan fark edemezsiniz. İki sunucu çelişirse hangisinin haklı olduğunu bilemezsiniz. Üç ve daha fazla farklı kurumun işlettiği sunucuyla hem çoğunluğun ne dediğini görürsünüz hem de yalan söyleyeni imzalı zincirle ispatlarsınız. Taslak bu yüzden istemcilerden en az üç bağımsız sunucu kullanmalarını ister.
Hukuken geçerli bir zaman damgası mı?
Hayır. Türkiye'de 5070 sayılı Elektronik İmza Kanunu kapsamındaki nitelikli zaman damgası, Bilgi Teknolojileri ve İletişim Kurumu'nun yetkilendirdiği elektronik sertifika hizmet sağlayıcılarınca verilir; biz bu kapsamda değiliz. Roughtime cevapları teknik bir kanıttır: herkesin açık anahtarla bağımsız olarak doğrulayabileceği, birden fazla işletmeciyle çapraz kontrol edilebilen bir kayıt. Denetim, olay incelemesi ve sistemlerin kendi aralarında zaman tutarlılığını göstermek için uygundur; yasal bir işlemin yerine geçmez.
Hangi bilgileri kaydediyorsunuz, ne kadar süre?
Cevapladığımız her istek için: zaman, kaynak IP adresi ve portu, isteğin nonce değeri, gönderdiğimiz zaman ve yarıçap, istek boyu, Merkle ağacındaki sıra ve ağacın kökü. Bu kayıtlar 365 gün saklanır, sonra otomatik silinir. Yayınlanmaz ve yasal zorunluluk dışında kimseyle paylaşılmaz. Dakikalık toplam sayılar (kaç istek geldi, kaçı geçersizdi) süresiz tutulur.
Neden tutuyoruz: kötüye kullanımı görebilmek ve bir kanıtın gerçekten bu sunucudan çıktığı sorulduğunda kendi kaydımızla teyit edebilmek için. Belge damgalarken nonce, belgenin özetinden türediği için özet de bu kayda girer; hassas içerikte tuzlu özet kullanın.
Anahtarınız değişirse eski kanıtlarım ne olur?
Geçerliliğini korur. Kanıtlar uzun dönemli açık anahtarla doğrulanır ve kullandığımız her açık anahtar bu sayfada, kullanım tarihleriyle birlikte kalıcı olarak listelenir. Yıllık delegasyon yenilemesi açık anahtarı değiştirmez. Kök anahtarın ele geçirildiğinden şüphelenirsek bunu bu sayfada ve sunucu listesinde duyurur, şüphelenilen tarih aralığını açıkça yazarız.
Ücretli mi, bir sınırı var mı?
Ücretsizdir, kayıt gerektirmez. Bir cihazın saatini ayarlamak için açılışta ve sonra birkaç saatte bir sorgu yeterlidir; dakikada birden sık sorguya gerek yoktur. Protokol yapısı gereği cevap istekten büyük olamaz, bu yüzden sunucu yansıtma saldırılarında güçlendirici olarak kullanılamaz.
Kaynaklar
- draft-ietf-ntp-roughtime: protokol taslağı (W. Ladd, Akamai; M. Dansarie, Netnod)
- RFC 8032: Ed25519 imza algoritması
- RFC 8915: Network Time Security (NTS)
- RFC 5905: NTPv4
- roughtimed: kullandığımız sunucu yazılımı
- tannerryan/roughtime: istemci, belge damgalama ve topluluk sunucu listesi
- pyroughtime: Python istemcisi