क्या यह संभव है, और अगर संदेश की सबसे पुरानी स्थिति को सहेजने के लिए, तो कैसे? मैं इसे डेटाबेस में सहेजना चाहता हूं, इसलिए String
, int
, byte[]
जैसे केवल आदिम डेटा का उपयोग करना होगा।मैं संदेशडिगेस्ट आंतरिक स्थिति को डेटाबेस में कैसे सहेज सकता हूं?
जो मैं प्राप्त करने का प्रयास कर रहा हूं वह एक खंडित फ़ाइल (लंबे समय के दौरान) प्राप्त करने में सक्षम होना है, डेटाबेस में सभी टुकड़ों को सहेजने के बाद, और अंतिम खंड प्राप्त करने के बाद फ़ाइल के SHA512 पाचन को सत्यापित किए बिना सत्यापित करें पहले डेटाबेस में सहेजे गए सभी डेटा वापस।
MessageDigest md = MessageDigest.getInstance("SHA-512");
// restore previous internal state of md
md.update(dataSegment);
// save internal md state
यह वास्तव में आंतरिक SHA राज्य को बचाने करता है? यह शुद्ध राज्य प्लस वर्तमान इनपुट लंबाई और वर्तमान अपूर्ण ब्लॉक आईआईआरसी के 512 बिट्स होगा। इस प्रकार सामान्य मामले में लगभग 200 बाइट्स। –
देर से प्रतिक्रिया के लिए खेद है;) लेकिन मैं पुष्टि कर सकता हूं कि प्रस्तावित एक्सस्ट्रीम तकनीक का उपयोग करके यह करने योग्य है। @qarma जेनरेटेड एक्सएमएल लगभग 12kb आकार में है, लेकिन यह अभी भी कुछ एमबी भाग में आने वाली फ़ाइलों के मामले में एक बेहतर समाधान हो सकता है। – MJar