Androidのインテグリティを確実にするためにいくつかのファイルのmd5を計算する方法が必要です。 私はorg.apache.commons.codec.digest.DigestUtils.md5Hexメソッドを使用してファイルのmd5を計算しますが、私のLinuxシステムではmd5sum
を使用したのとは異なる結果になります。 md5sumの結果は間違っている可能性がないので、私のコードに何が問題なのか分かりません。JavaでDigestUtils.md5Hexを使用すると間違った結果が出る
コード(私はkotlinを使用しますが、それは、Javaと同じだ))、以下の通りである:
val fd: AssetFileDescriptor = am.openFd("index.mp3")
var result: String = ""
val fis: FileInputStream = afd.createInputStream()
val bf: ByteArray = fis.readBytes()
val t: String = "md5sum"
result = org.apaches.commons.codec.digest.DigestUtils.md5Hex(fis)
私はmd5Hex(ののparamaterとしてFISとBFの両方を使用)、彼らは異なる結果を持ってではなく、正しい結果。 しかし、 "md5sum"のような文字列を使うと、Linuxのように他の場所と同じ結果になります。 どうしたの?ので、私の輸入は
私は何が間違っているのか分かりました。私はmd5アルゴリズムを使用してAPKのmd5sumファイルを取得することはできません。 APKはzipファイルなので、押された処理によってデータが変更されます。何でも、ありがとう! – Choogle