我正在开发一个firefox扩展,我想知道:
所以我想做的是比较两个哈希值,看看是否有例如高于另一个。就像比较5 >= 4
一样。这可能吗?处理像整数这样的哈希值?
答案 0 :(得分:1)
答案 1 :(得分:1)
在Firefox插件中,您应该使用nsICryptoHash。例如,如果要使用MD5算法对字符串进行散列,则可以使用以下函数:
function toMD5(str)
{
// Convert string to an array of bytes
var array = Array.prototype.slice.call(str);
// Create MD5 hash
var hashEngine = Components.classes["@mozilla.org/security/hash;1"]
.createInstance(Components.interfaces.nsICryptoHash);
hashEngine.init(hashEngine.MD5);
hashEngine.update(array, array.length);
return hashEngine.finish(true);
}
alert(toMD5("test")); // Displays: 8dP/hEMpdzKGLfIdxOVyYg==
请注意,这将返回base64编码的哈希值。使用finish(false)
获取原始(二进制)哈希值。