我想知道如何将md5哈希值转换为大整数,以便我可以将模数运算符应用于它。
我使用digest
库创建哈希:
h <- digest("luca", algo="md5", ascii=TRUE, raw=TRUE)
> h
[1] 18 0e 41 2e 42 db 5a 8c 45 3c 8a 81 c5 90 4e 5b
我现在想将h
转换为一个大整数,并能够将模数运算符(%%
)应用于它。
我该怎么做?
答案 0 :(得分:2)
使用Rmpfr库 1 ,以下工作:
# Get a hex string of the MD5 hash:
h = digest("luca", algo="md5", ascii = TRUE, raw = FALSE)
result = mpfr(h, base = 16)
result
# 1 'mpfr' number of precision 128 bits
# [1] 31975486076668374554448903959384968795
result %% 1024
# 1 'mpfr' number of precision 128 bits
# [1] 603
1 要安装Rmpfr,需要安装其依赖项GNU mpfr库。有关详细信息,请参阅注释。