相关疑难解决方法(0)

Android和C#之间的加密兼容

我已经找到了很多关于如何在C#中进行加密的示例,以及一对用于Android的加密,但我特别想找到一种方法来处理来自Android的加密(使用类似AES,TripleDES等),并最终结束在C#中解密.我找到了一个在Android中编码AES和在C#中编码/解码AES示例,但我不确定它们是否兼容(C#需要IV,在Android示例中没有为此指定).另外,关于编码加密字符串以便通过HTTP(Base64?)传输的好方法的建议会很有帮助.谢谢.

.net c# java encryption android

19
推荐指数
1
解决办法
2万
查看次数

如何在 iOS 中安全地保存字符串?

我必须在钥匙串中保存一个字符串(密码),但原始字符串:

  1. 不是来自服务器;
  2. 不是由用户生成的;
  3. 它必须在服务器上进行比较(我通过 https 发送);

因此,该字符串必须位于应用程序中的某个位置(硬编码?)。

我很确定您无法在安装后为应用程序准备钥匙串的数据,就像您可以将 plist 添加到应用程序包一样,以便在应用程序运行时可以立即加载它(即使它是第一次启动)。

我读过数据保护:它允许处理敏感数据的应用程序利用某些设备上可用的加密。这是要走的路吗?即:我将数据存储到文本文件中,然后保护文件,然后从文件中检索数据,然后将其保存到钥匙串中?

任何提示表示赞赏。

passwords keychain ios

4
推荐指数
1
解决办法
1664
查看次数

快速的 AES128 加密

我有 AES-128 加密的问题。iOS 中的加密字符串与 Android 不同。

下面是安卓代码:

public class Encryption {
    private static final String ALGORITHM = "AES";
    private static final String UNICODE_FORMAT = "UTF8";

    public static String encryptValue(String valueToEnc) {
        try {
            Key key = generateKey();
            Cipher c = Cipher.getInstance(ALGORITHM);
            c.init(Cipher.ENCRYPT_MODE, key);
            byte[] encValue = c.doFinal(valueToEnc.getBytes());
            String encryptedValue = new Base64().encode(encValue);
            String urlEncodeddata = URLEncoder.encode(encryptedValue, "UTF-8");
            return urlEncodeddata;
        } catch (Exception e) {

        }
        return valueToEnc;
    }

    private static Key generateKey() throws Exception {
        byte[] keyAsBytes;
        keyAsBytes = "MySixteenCharKey".getBytes(UNICODE_FORMAT); …
Run Code Online (Sandbox Code Playgroud)

encryption aes ios swift

3
推荐指数
1
解决办法
1万
查看次数

Swift 5 + kCCDecrypt (CommonCrypto):无法解密

试图Swift 5根据大量其他类似问题在 .

我正在使用CommonCrypto+CCCrypt来加密/解密(AES、256 密钥、随机 iv)。

我倾向于NSData.byteswithUnsafeBytes(这只是太混乱Swift 5)。

我的encrypt功能是这样的:

func encrypt(_ string: String) throws -> Data {
    guard let dataToEncrypt: Data = string.data(using: .utf8) else {
        throw AESError.stringToDataFailed
    }

    // Seems like the easiest way to avoid the `withUnsafeBytes` mess is to use NSData.bytes.
    let dataToEncryptNSData = NSData(data: dataToEncrypt)

    let bufferSize: Int = ivSize + dataToEncryptNSData.length + kCCBlockSizeAES128
    let buffer = UnsafeMutablePointer<NSData>.allocate(capacity: bufferSize)
    defer …
Run Code Online (Sandbox Code Playgroud)

aes commoncrypto swift5

2
推荐指数
1
解决办法
7504
查看次数

如何在swift XCODE上对字符串进行AES 128加密并将其作为POST发送到服务器?

如何在swift XCODE上对字符串进行AES 128加密并将其作为POST发送到服务器?...我是XCODE的新手,我正在学习加密字符串数据并希望发送到HTTP服务器.它是用于发送设备的纬度和经度的基本iOS应用程序.

encryption xcode aes ios swift

1
推荐指数
1
解决办法
4196
查看次数

Swift-无法将类型'UnsafePointer &lt;Any&gt;'的值转换为预期的参数类型'UnsafePointer &lt;_&gt;'

我正在尝试快速使用CommonCrypto(在https://github.com/sergejp/CommonCrypto的帮助下)。这是我的代码:

UnsafeRawPointer(ivData!.withUnsafeBytes
{(pointer) -> UnsafePointer<Any> in
    let ivBuffer = pointer
})
Run Code Online (Sandbox Code Playgroud)

错误是:

无法将类型'UnsafePointer'的值转换为预期的参数类型'UnsafePointer <_>'

<_>意味着什么?我需要做什么?谢谢。

encryption types pointers commoncrypto swift

1
推荐指数
1
解决办法
5428
查看次数

标签 统计

encryption ×4

aes ×3

ios ×3

swift ×3

commoncrypto ×2

.net ×1

android ×1

c# ×1

java ×1

keychain ×1

passwords ×1

pointers ×1

swift5 ×1

types ×1

xcode ×1