Wie werden mehrere TrustStores in der Java-SSL-Client-Anwendung unterstützt?

In unserer Java-Anwendung müssen wir mit einer Liste von Servern auf SSL unter Verwendung des https-Protokolls kommunizieren. Die Liste der zu kommunizierenden Server ändert sich zur Laufzeit. Zu Beginn haben wir kein Serverzertifikat. Zur Laufzeit erhalten wir ein neues Serverzertifikat und fügen das Zertifikat mit dem öffentlichen Schlüssel einem Truststore hinzu. und jede neue https-Verbindung mit dem Server sollte den aktualisierten Truststore verwenden.

Wir sind der Meinung, dass wir zwei Truststores verwenden sollten, einen Cacert (der standardmäßig mit jre ausgeliefert wird) und einen mit Zertifikaten der Server, die wir dynamisch zu einer Liste hinzufügen / daraus entfernen. Dadurch wird sichergestellt, dass der Standard-TrustStore (cacerts) von Java nicht geändert wird.

Bitte schlagen Sie vor, wie dies erreicht werden kann. Gibt es auch eine Möglichkeit, einen bestimmten Truststore nur für einen bestimmten Thread in Java zu verwenden, sodass andere (vorhandene und neue) Threads weiterhin den Standard-Java-Trueststore (Cacerts) verwenden sollten und ein bestimmter Thread den bestimmten Truststore für verwendet der Kellner

Danke, Deepak