Zaman damgası API’si — hızlı başlangıç

Tek bir HTTP çağrısı. Anahtar, hesap ve kayıt formu yok. Dosyanız olduğu yerde kalır — yolculuğa yalnızca SHA-256’sı çıkar.

# güncel evrensel zaman
curl https://beattime.live/api/now/

# bir dosyayı damgalama: özeti yerel olarak hesaplayın, yalnızca özeti gönderin
sha256sum contract.pdf
curl -X POST https://beattime.live/api/proof/stamp \
     -H 'Content-Type: application/json' \
     -d '{"digest":"<64 hex characters>"}'

Entegrasyonun tamamı bu. Kaydedilecek bir şey, döndürülecek bir belirteç ya da pazarlık edilecek bir kota yok — hizmet ücretsiz ve öyle kalacak.

Yanıtta ne gelir

Damga, kaydı şu anki hâliyle döndürür. Daha sonra aynı özet daha fazlasını verir: bir imza, ardından dış çapalar.

digest
Gönderdiğiniz SHA-256, küçük harfle. Dosyanızdan gördüğümüz tek şey budur.
beat
.beat zamanındaki an — tek bir evrensel okuma, saat dilimi yok.
utc
Aynı an, mikrosaniye hassasiyetinde UTC olarak.
seq
Yalnızca ekleme yapılan kayıttaki konum. Numaralar tekrar etmez ve yer değiştirmez.
week
Bu damganın ait olduğu Merkle ağacının ISO haftası.
chain_hash
Bu kaydı bir öncekine bağlar; bir kaydın silinmesi zinciri görünür biçimde kırar.
week_root
Haftalık Merkle kökü. Hafta kapanana dek geçicidir ve hâlâ değişir.
inclusion_proof
Kardeş özetler ve bulundukları taraf (L ya da R). Bunlarla kökü kendiniz yeniden hesaplarsınız — kanıtı bizden bağımsız kılan tam da budur.
root_signature
Dondurulmuş haftalık kök üzerindeki Ed25519 imzası. Hafta mühürlendiğinde görünür.
ots_status
Bitcoin çapasının durumu: onay beklerken pending, ardından blok yüksekliğiyle birlikte bitcoin.
anchors
Haftalık kökün kaydedildiği banka referansları — hiçbir blok zincirine bağlı olmayan bir çapa.

„Hafta hâlâ açık” normal bir yanıttır, hata değil.

Yeni bir damganın henüz imzası ve çapası yoktur, çünkü ait olduğu hafta henüz mühürlenmemiştir. Bu, ISO haftasının sonunda olur; Bitcoin onayı yaklaşık bir gün sonra gelir. Aynı özetle sonra tekrar sorun, eksik alanlar orada olacaktır. Kaydedilen zaman bu süre içinde değişmez.

Aynı dosyayı iki kez damgalamak

İlk damga her zaman kazanır. Aynı özeti yeniden gönderin, özgün kaydı geri alırsınız — aynı zaman, aynı sıra numarası — 201 yerine 200 durumuyla. Yeniden denemeler bu yüzden güvenlidir: kaybolan bir yanıt ya da tedirgin bir istemci zaman damganızı ileri kaydıramaz.

201 Created   → ilk kez damgalandı
200 OK        → zaten damgalanmış; özgün zaman damgası döndürülür
400           → özet 64 onaltılık karakterden oluşmuyor
429           → hız sınırı; bekleyin ve yeniden deneyin

Sınırlar ve CORS

Sınırlar IP adresi başınadır ve bir istemcinin diğerlerini dışarı itmemesi için vardır. Sıradan bir entegrasyonun yaptığı her şey için bilinçli olarak cömerttir.

Uç noktaSınır
POST /api/proof/stamp20 / min
GET /api/proof/verify120 / min
GET /api/proof/cert/<digest>10 / min
geri kalanı (zaman, dönüştürme, eşitleme)300 / min

Her uç nokta Access-Control-Allow-Origin: * ile yanıt verir, yani doğrudan tarayıcıdan çağırabilirsiniz. Tor üzerinden gelen isteklerin sınırları daha yüksektir, çünkü tek bir çıkış düğümünün arkasında pek çok kişi vardır.

Hazır istemciler

Tek dosya, bağımlılık yok, Apache-2.0: Python, PHP, JavaScript, C# ve C++17. Birini projenize kopyalayın ya da tam başvuru belgesini okuyun.

İstemciyi al   OpenAPI başvurusu

Bu ne değildir

Bunun üzerine bir şey kurmadan önce bilmekte fayda var — ve bunu incelemede keşfetmeniz yerine burada söylemeyi yeğliyoruz:

Algoritmalar şartnamede yazılıdır ve bunların tümünü yeniden hesaplayan masaüstü istemci açık kaynaktır.

← Tarayıcıda bir dosya damgala