DAT
DAT అనేది చుక్కలతో (.) వేరు చేసిన ASCII స్ట్రింగ్. ఫీల్డ్లు నిర్ణీత క్రమంలో ఒక్కోసారి కనిపిస్తాయి, ముందు ఉన్న ఫీల్డ్లు పంపిన విధంగానే ఉన్నాయో లేదో సంతకం నిర్ధారిస్తుంది.
expire.cid.plain.secure.signatureఫీల్డ్లు
| ఫీల్డ్ | రూపం | అర్థం |
|---|---|---|
expire | సంతకం లేని పూర్ణసంఖ్య యొక్క దశాంశ రూపం | DAT గడువు ముగిసే Unix time |
cid | సంతకం లేని పూర్ణసంఖ్య యొక్క చిన్న అక్షరాల హెక్సాడెసిమల్ రూపం | ధృవీకరించాల్సిన సర్టిఫికేట్ ID |
plain | ప్యాడింగ్ లేని Base64Url | గుప్తీకరించని బైట్లు |
secure | ప్యాడింగ్ లేని Base64Url | సర్టిఫికేట్ గుప్తీకరణ అల్గోరిథంతో రక్షించిన బైట్లు |
signature | ప్యాడింగ్ లేని Base64Url | expire.cid.plain.secure యొక్క అసలు ASCII బైట్లపై సంతకం |
plain సంతకం పరిధిలో ఉంటుంది కాబట్టి దాన్ని మార్చలేరు, కానీ ఎవరైనా డీకోడ్ చేయగలరు. రహస్యాలు, వ్యక్తిగత సమాచారం, అనుమతులను నిర్ణయించడానికి నేరుగా ఉపయోగించే విలువలను secureలో ఉంచాలి. ఖాళీ secure కూడా చెల్లుతుంది.
ప్రామాణిక రూపం
- మొత్తం DAT తప్పనిసరిగా ASCII అయి ఉండాలి.
- సంఖ్యల్లో గుర్తు, ఖాళీ, ఉపసర్గ లేదా అనవసరమైన ముందరి
0లు ఉండకూడదు.0విలువను మాత్రమే0గా రాయాలి. - Base64Url URL-safe వర్ణమాలను ఉపయోగించాలి;
=ప్యాడింగ్ మరియు ఖాళీలు అనుమతించబడవు. - ఒకే బైట్లను పలు స్ట్రింగ్లుగా చూపించే ప్రామాణికం కాని Base64Urlను తిరస్కరించాలి.
- ఫీల్డ్ల సంఖ్య లేదా క్రమం భిన్నంగా ఉంటే అది DAT కాదు.
ఈ నియమాలు వేర్వేరు అమలులు వేర్వేరు స్ట్రింగ్లను ఒకే DATగా అంగీకరించకుండా నిరోధిస్తాయి.
జారీ
- ప్రస్తుతం జారీకి ఉపయోగించగల సర్టిఫికేట్ను ఎంచుకోండి.
- ప్రస్తుత సమయానికి సర్టిఫికేట్ TTLను జోడించి
expireను రూపొందించండి. plainను Base64Urlగా ఎన్కోడ్ చేయండి.- సర్టిఫికేట్ గుప్తీకరణ అల్గోరిథంతో
secureను గుప్తీకరించండి. - ముందరి ఫీల్డ్లను చుక్కలతో కలిపిన ASCII బైట్లపై సంతకం చేయండి.
సర్టిఫికేట్ జారీ వ్యవధి start <= now <= start + durationలో మాత్రమే జారీ చేయవచ్చు.
ధృవీకరణ
- ప్రామాణిక నియమాల ప్రకారం DATను పార్స్ చేయండి.
expire > nowఅని నిర్ధారించండి.expire == nowఅయితే గడువు ముగిసినట్లే.cidకు చెందిన సర్టిఫికేట్ను కనుగొని, అది ధృవీకరణకు అందుబాటులో ఉందో నిర్ధారించండి.- అసలు
expire.cid.plain.secureబైట్ల సంతకాన్ని ధృవీకరించండి. secureను ప్రామాణీకరించి, డీక్రిప్ట్ చేసి,plainతో కలిపి తిరిగి ఇవ్వండి.
సంతకాన్ని ధృవీకరించని పార్సింగ్ APIని పరిశీలన లేదా నిర్ధారణ కోసం మాత్రమే ఉపయోగించాలి. దాని ఫలితంతో ప్రామాణీకరణ చేయకూడదు లేదా అనుమతులు మంజూరు చేయకూడదు.
స్పెసిఫికేషన్ పరిధికి వెలుపలి బాధ్యతలు
DAT వినియోగదారు నిల్వ, లాగిన్ విధానం, అనుమతి నమూనా, టోకెన్ పంపే హెడర్ లేదా రద్దు జాబితాను నిర్ణయించదు. ధృవీకరించిన payloadను ఏ అభ్యర్థనలకు అనుమతించాలో అప్లికేషన్ నిర్ణయిస్తుంది.