में बेस 64 पर हेक्साडेसिमल डाइजेस्ट को कनवर्ट करना मेरे पास एक फ़ाइल के लिए एमडी 5 हेक्स डाइजेस्ट का स्ट्रिंग प्रस्तुति है, जिसे मैं अपलोड करते समय सामग्री-एमडी 5 HTTP शीर्षलेख का उपयोग करने के लिए बेस 64 में कनवर्ट करना चाहता हूं। क्या निम्नलिखित से करने के लिए एक स्पष्ट या अधिक कुशल तंत्र है?रूबी
def hex_to_base64_digest(hexdigest)
[[hexdigest].pack("H*")].pack("m").strip
end
hex_digest = "65a8e27d8879283831b664bd8b7f0ad4"
expected_base64_digest = "ZajifYh5KDgxtmS9i38K1A=="
raise "Does not match" unless hex_to_base64_digest(hex_digest) === expected_base64_digest
मेरे लिए बहुत स्पष्ट और कुशल दिखता है, के लिए 0 गिनती निर्दिष्ट करके स्ट्रिप को सहेज सकते हैं। एकमात्र चीज जो तेज/स्पष्ट हो सकती है वह देशी हुक है जो वास्तव में "hex_to_base64_digest" विधि करता है। – maerics