如何通过Web套接字将私有数据安全地发送到objective-c客户端并返回服务器?

max*_*sme 5 php sockets cocoa objective-c

我正在使用SocketRocket(一个Objective-c套接字库)wss://连接到ratchet(一个PHP 套接字库).

我计划通过此套接字连接发送私有数据,然后通过请求将数据发送回服务器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 sthttp
STHTTPRequest *r = [STHTTPRequest requestWithURLString:@"https://example.com/test.php"];
r.POSTDictionary = @{ @"key":_keys[0] };
...
Run Code Online (Sandbox Code Playgroud)

有没有可能的方法客户端可以拦截这些私人数据(在原因[缓冲区溢出,中间人等...])?

Ray*_*ter 1

我建议您的证书都是最新的,并确保您的私钥证书受到保护并且除了您之外任何人都无法访问。

需要记住的一点是,如果您正在进行任何日志记录,您最终可能会记录您想要保护的数据。我会仔细检查您的日志记录政策并确保您同意。有时,信息会作为查询参数沿着 url 传递,然后这些信息会记录到服务器日志文件中。

如果您要保存任何历史记录,请务必检查该历史记录或移动设备上的任何缓存,以防万一。