嘿我在ios中使用多对等连接框架来进行聊天应用。此框架是否支持任何加密。我想了解此框架中使用的加密,如AES或RSA加密系统?
我的发现或研究:
1. https://datatheorem.github.io/documents/BH_MultipeerConnectivity.pdf
2. https://nabla-c0d3.github.io/blog/2014/08/20/multipeer-connectivity-follow-up/
请发布你的建议
答案 0 :(得分:1)
是的, MCSession.h 类
中有加密选项 // Encryption preference.
typedef NS_ENUM (NSInteger, MCEncryptionPreference) {
MCEncryptionOptional = 0, // session preferred encryption but will accept unencrypted connections
MCEncryptionRequired = 1, // session requires encryption
MCEncryptionNone = 2, // session should not be encrypted
} NS_ENUM_AVAILABLE (10_10, 7_0);
调用此方法:
- (instancetype)initWithPeer:(MCPeerID *)myPeerID
securityIdentity:(nullable NSArray *)identity
encryptionPreference:(MCEncryptionPreference)encryptionPreference NS_DESIGNATED_INITIALIZER;
答案 1 :(得分:1)
要回答第二个问题,MCSession
使用DTLS
加密其数据。 DTLS
基于TLS
(替代SSL
),并提供相同级别的安全性。
所以只需使用
MCSession *session = [[MCSession alloc] initWithPeer:localPeerID
securityIdentity:nil
encryptionPreference:MCEncryptionRequired];
确保您的通信安全。