gpt4 book ai didi

android - 将数据保存在 KeyStore 上并使用钥匙串(keychain)检索它

转载 作者:太空宇宙 更新时间:2023-11-03 11:24:25 24 4
gpt4 key购买 nike

我想在 keyStore 中保存我的一些敏感数据(字符串)。我发现 keyStore 只接受 secretKey 对象。但是,我无法使用 secretKeyalias 名称使用 keyChain 回调来存储它并稍后检索它

任何帮助将不胜感激..!

最佳答案

我认为您正在寻找类似 MD5 的东西。通过获取任意长度的字符串并将其编码为 128 位指纹来创建 MD5 哈希。使用 MD5 算法对相同的字符串进行编码将始终产生相同的 128 位散列输出。在流行的 MySQL 等数据库中存储密码、信用卡号或其他敏感数据时,MD5 散列通常与较小的字符串一起使用。该工具提供了一种快速简便的方法,可以从长度最多为 256 个字符的简单字符串中对 MD5 哈希进行编码。

MD5 散列也用于确保文件数据的完整性。由于 MD5 哈希算法总是对相同的给定输入产生相同的输出,因此用户可以将源文件的哈希值与目标文件的新创建的哈希值进行比较,以检查它是否完好无损且未被修改。

用 MD5 散列字符串:

公共(public)类 JavaMD5Hash {

public static void main(String[] args) {

String password = "MyPassword123";

System.out.println("MD5 in hex: " + md5(password));


System.out.println("MD5 in hex: " + md5(null));
//= d41d8cd98f00b204e9800998ecf8427e


System.out.println("MD5 in hex: "
+ md5("The quick brown fox jumps over the lazy dog"));
//= 9e107d9d372bb6826bd81d3542a419d6
}


public static String md5(String input) {

String md5 = null;

if(null == input) return null;

try {

//Create MessageDigest object for MD5
MessageDigest digest = MessageDigest.getInstance("MD5");

//Update input string in message digest
digest.update(input.getBytes(), 0, input.length());

//Converts message digest value in base 16 (hex)
md5 = new BigInteger(1, digest.digest()).toString(16);

} catch (NoSuchAlgorithmException e) {

e.printStackTrace();
}
return md5;
}

引用: http://viralpatel.net/blogs/java-md5-hashing-salting-password/

https://www.mkyong.com/java/java-md5-hashing-example/

http://www.asjava.com/core-java/java-md5-example/

关于android - 将数据保存在 KeyStore 上并使用钥匙串(keychain)检索它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38476728/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com