Действительно ли возможно заставить Java проигнорировать “базу доверенных сертификатов” и просто принять безотносительно сертификата SSL, который это получает?

Моя внутренняя реакция заключалась в том, что объем памяти для Date будет очень маленьким. Изучая исходный код, кажется, что класс содержит только одно поле экземпляра (долгое время называется миллисекундами). Это означает, что размер объекта даты равен размеру long плюс размер экземпляра Object, то есть очень мал.

Затем я нашел этот код , который создает тысячи объектов для определения размера объекта. Это говорит о том, что размер java.util.Date составляет 32 байта. Сравните это с простым хранением даты как long (что она и делает внутри) - long - 8 байт, поэтому вам нужно заплатить в четыре раза для удобства наличия объекта date.

Тем не менее, накладные расходы на создание объектов не очень высоки. Так что если вы действительно беспокоитесь о пространстве, сохраните даты как длинные и создайте объект Date по мере необходимости.

22
задан vy32 2 August 2009 в 16:26
поделиться

2 ответа

Вам необходимо создать поддельный TrustManager, который принимает все сертификаты, и зарегистрировать его в качестве менеджера. Примерно так:

public class MyManager implements com.sun.net.ssl.X509TrustManager {
  public boolean isClientTrusted(X509Certificate[] chain) { return true; }
  public boolean isHostTrusted(X509Certificate[] chain) { return true; }
  ...
}


com.sun.net.ssl.TrustManager[] managers =
  new com.sun.net.ssl.TrustManager[] {new MyManager()};

com.sun.net.ssl.SSLContext.getInstance("SSL").
       .init(null, managers, new SecureRandom());
18
ответ дан 29 November 2019 в 04:12
поделиться

Попробуйте это (ответ на вопрос 2):

System.setProperty("javax.net.ssl.trustStore", "/path/to/truststore");

Вы также можете указать это как дополнительный параметр командной строки:

java -Djavax.net.ssl.trustStore=/path/to/truststore <remaining arguments>

В Fedora это может быть системное хранилище доверенных сертификатов Java в / etc / pki / java / cacerts

7
ответ дан 29 November 2019 в 04:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: