.pem 文件(私钥)的存储位置 android java

Where to store .pem file (private key) android java

我正在尝试使用存储在 .PEM 文件中的私钥创建 JWT。我知道私钥不应该存储在代码中,您可以将密钥添加到全局 gradle.properties 文件以避免暴露它们,但是如果我有一个 .PEM 文件,我该如何在我的代码中访问它。从我的本地驱动器。

yodlee 文档告诉我添加下面的路径,但它是如何工作的?

public class ConfigurationParams {

        public static final String iss = "135143514315321";

        public static final String privateKeyFile = "/Users/bob/token/priv.pem";

    }

privateKeyFile路径通过文件变量传递。

public class TokenManagement {
        @RequiresApi(api = Build.VERSION_CODES.O)
        static private String getKey(String file) {
            String privKey;
            try {
                privKey = new String(Files.readAllBytes((Paths.get(file))));
            } catch (IOException ex) {
                privKey = null;
            }
            return privKey;
        }
    }

这似乎更像是一个 android 相关的问题。但是,如果您打算在用户的设备上拥有密钥,那么您不应该这样做。

所有 Yodlee API 在生产环境中都受到 IP 限制,所有 API 调用都应该从您的服务器到 Yodlee。因此,你应该将它存储在你的服务器端而不是客户端,如果你想这样做的话。