首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >加密NSString (而不是NSData)在iOS ->中发送到PHP服务器->让->服务器解密吗?

加密NSString (而不是NSData)在iOS ->中发送到PHP服务器->让->服务器解密吗?
EN

Stack Overflow用户
提问于 2015-05-20 09:36:33
回答 1查看 743关注 0票数 1

我知道有openSSL,但我只想使用加密。

这正是我想要做的。

1)用AES-128或任何有效的加密方法对NSString进行xcode(目标-c)加密。

2)使用POST方法将加密的NSString发送到PHP。将发送到PHP服务器的参数如下所示:

代码语言:javascript
运行
复制
 @"fromClient1=string1&fromClient2=string2"

3) PHP服务器以如下方式接收数据:

代码语言:javascript
运行
复制
 $receivedStr1 = $_POST['fromClient1']; // string1
 $receivedStr2 = $_POST['fromClient2']; // string2

4)让PHP服务器将$receivedStr1和$receivedStr2解码为纯文本。

我看过https://github.com/RNCryptor/RNCryptor,但都是关于NSData加密的。

如何在PHP中接收加密的 NSData??我只知道怎么用

代码语言:javascript
运行
复制
$fromClient = $_POST['someData'];

但如果整个参数都是加密的.

有人能帮我吗??这样做的目的是安全地将用户的密码(= NSString)发送到PHP。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-20 10:57:57

遵循@Rory McKinnel,此代码将数据转换为base64字符串,该字符串可以转换回纯文本或数据(在这里寻找更多的信息)。

转换目标C中的数据:

代码语言:javascript
运行
复制
NSString *base64String = [myData base64EncodedStringWithOptions:0];

或者在Swift:

代码语言:javascript
运行
复制
let base64String = myData.base64EncodedStringWithOptions(options: 0)

编辑:

NSString有两种有用的方法: 1) - (NSString *)stringByAddingPercentEscapesUsingEncoding:(NSStringEncoding)encoding- (NSString *)stringByAddingPercentEncodingWithAllowedCharacters:(NSCharacterSet *)allowedCharacters

这些方法帮助将NSString转换为合法URL字符串,根据文档,这些方法返回:

通过替换接收方中的所有百分比而生成的新字符串使用由给定编码确定的匹配字符进行转义。如果不可能进行转换,则返回零,例如,百分比转义会给出在编码中不合法的字节序列。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30345872

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档