DAT Rust Library

GitHub crates.io

Installation

toml

فوری آغاز

یہ مکمل flow CMS سے certificates لیتا، JSON data والا DAT بناتا اور verify کرتا ہے۔

rust

مرحلہ وار

1. CMS سے connect کریں

Issuing service full certificates کا token استعمال کرتی ہے۔ startup پر فوراً synchronization سے certificates ملنے سے پہلے issuance نہیں ہوتا۔

rust

2. DAT issue کریں

یہ مثال public JSON کو plain اور protected user information کو JSON کی صورت secure میں رکھتی ہے۔

rust

3. DAT verify کریں

parse expiration اور signature check کرکے secure decrypt کرتا ہے۔ صرف successful verification کے بعد ملنے والا payload استعمال کریں۔

rust

اہم functions

Functionمقصد
sync().awaitCertificates فوراً synchronize کرتا ہے۔
issue(plain, secure)موجودہ issuing certificate سے DAT بناتا ہے۔
parse(dat)DAT verify کرکے payload دیتا ہے۔
last_error().awaitآخری synchronization error دیتا ہے۔

Data regions

  • plain: signed مگر encrypted نہ ہونے والے bytes۔
  • secure: encrypted bytes۔
  • payload: صرف parse کامیاب ہونے کے بعد اعتماد کریں۔

JSON کے علاوہ options

مثالوں میں معروف JSON ہے۔ تیز processing کے لیے binary data، JSON serialization اور parsing سے بچ کر data size کم کر سکتا ہے۔

Simple values text کی صورت یا structured data کو Protobuf یا MessagePack جیسے binary formats میں plain اور secure میں رکھیں۔

rust

issue فی الحال strings لیتا ہے، arbitrary bytes کو Base64Url یا Hex میں encode کرکے verification کے بعد decode کریں۔

Verify-only services

DAT issue نہ کرنے والی service verify-only option اور verify-only token استعمال کرتی اور صرف parse call کرتی ہے۔

Shutdown اور errors

آخری Arc drop ہونے پر automatic synchronization task ختم ہوتا ہے۔

Error messages کے بجائے error codes اور retry classifications استعمال کریں۔