我计划通过此套接字连接发送私有数据,然后使用https://请求将数据发送回服务器.
objective-c代码:
//initiate global variable@property (nonatomic) NSMutableArray* keys;...//receive the private data with SocketRocket- (voID)webSocket:(SRWebSocket *)webSocket dIDReceiveMessage:(nonnull Nsstring *)string{ [_keys insertObject:string];}...//$_POST the file data with sthttpSThttpRequest *r = [SThttpRequest requestWithURLString:@"https://example.com/test.PHP"];r.POSTDictionary = @{ @"key":_keys[0] };...
有没有可能的方法客户端可以拦截这些私人数据(在原因[缓冲区溢出,中间人等…])?
解决方法 如果您使用的是wss://和https://协议,则不必担心中间人攻击,因为所有正在发送的数据都是加密的.但是,如果在任何情况下您必须通过不安全的协议或URL查询字符串发送数据,您可以使用PHP的开放SSL模块自己加密数据并以明文形式发送(例如:$_ GET params).
例:
http://php.net/manual/en/book.openssl.php#91210
在此示例中,$crypttext将是二进制数据.这可以编码为base64字符串,如果需要通过GET或POST请求发送,则编码url.
进行urlencode(BASE64_ENCODE($crypttext))
在接收端,您可以使用base64 decode和url decode来获取二进制信息,然后使用私钥解密数据,如示例所示.
BASE64_DECODE(urldecode($crypttext)
总结以上是内存溢出为你收集整理的php – 如何通过Web套接字将私有数据安全地发送到objective-c客户端并返回服务器?全部内容,希望文章能够帮你解决php – 如何通过Web套接字将私有数据安全地发送到objective-c客户端并返回服务器?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)