0

我正在开发移动产品。我们正在使用 中的数据xml document。为了保证我们的数据安全,我们需要一个加密算法(但我们不希望导入现有的算法)

你能给我一些加密数据的步骤吗?(如果代码示例是最受欢迎的)。

4

3 回答 3

2

为了更安全,您必须使用自己的密钥。尝试使用此代码

   KeyStore ks = KeyStore.getInstance();
 // get the names of all keys created by our app
 String[] keyNames = ks.saw("");

 // store a symmetric key in the keystore
 SecretKey key = Crypto.generateKey();
 boolean success = ks.put("secretKey1", key.getEncoded());
 // check if operation succeeded and get error code if not
 if (!success) {
    int errorCode = ks.getLastError();
    throw new RuntimeException("Keystore error: " + errorCode); 
 }

 // get a key from the keystore
 byte[] keyBytes = ks.get("secretKey1");
 SecretKey key = new SecretKeySpec(keyBytes, "AES");

 // delete a key
 boolean success = ks.delete("secretKey1");
于 2013-07-23T09:10:45.210 回答
1

如果您想开发自己的加密方案,请准备好着手研究项目。您可以使用任何标准加密算法,如 AES/DES 等,您的私钥足够长且难以破解。

于 2013-07-23T09:11:50.583 回答
0
public string PassEncrypt(string Password)
{
    // Encrypting the password entered by User
    // ======================================================
    MD5 md5 = new MD5CryptoServiceProvider();
    md5.ComputeHash(ASCIIEncoding.ASCII.GetBytes(Password));
    byte[] result = md5.Hash;
    StringBuilder strBuilder = new StringBuilder();
    for (int i = 0; i < result.Length; i++)
    {
        strBuilder.Append(result[i].ToString("x2"));
    }
    return strBuilder.ToString();
    // ======================================================
}

或者

您可以参考此链接:

developer.motorala.com

codereview.stackexchange.com

安卓片段

java-tips.org

于 2013-07-23T09:05:38.363 回答