【发布时间】:2018-05-14 02:52:59
【问题描述】:
我正在寻找在不使用任何证书的情况下使用 MQTT 和 TLS - PSK 的示例代码。我有一个 psk 身份和一个密钥。
这是我的样本,但它不起作用..
int qos = 1;
String broker = "tcp://xxx.example.in:5633";
String clientId = "JavaExample";
String user = "my_identity"; (my psk identity)
String pass = "6874e899071b909a2268b020ef9ff046cydfernjn90546n546nklkj565"; (my psk key)
MemoryPersistence persistence = new MemoryPersistence();
MqttAsyncClient sampleClient = new MqttAsyncClient(broker,clientId,persistence);
sampleClient.setCallback(new SimpleMqttCallBack());
MqttConnectOptions connOpts = new MqttConnectOptions();
connOpts.setUserName(user);
connOpts.setCleanSession(false);
System.out.println("Connecting to broker: " + broker);
SSLContext sslContext = SSLContext.getInstance("TLSv1.2");
sslContext.init(null,null,null);
SSLSocketFactory socketFactory = sslContext.getSocketFactory();
connOpts.setSocketFactory(socketFactory);
System.out.println("SSL Added");
sampleClient.connect(connOpts);
sampleClient.subscribe("#", qos);
如何将我的 psk 身份和密钥与 TLS1.2 和 MQTT 连接起来?
【问题讨论】: