java + ГОСТ =
Jan. 20th, 2018 09:55 pmПримерно раз в год я пытаюсь что-нибудь написать на Java. В этом году этот раз уже случился. Пишу я на ней, согласно старой шутке, как на Fortran-е. Ну то есть как на C с классами. Поскольку нужен в общем-то proof-of-concept.
Ну, в Debian stable ставить eclipse штатно я так и не научился, пришлось брать с сайта. Иначе идёт что-то древнее и не тащит с собой maven.
Вскрытие показало, что ГОСТа в TLS в открытых реализациях нет. В BouncyCastle вообще, в wildfly-openssl он не принимает ГОСТ-овые CipherSuites, у КриптоПро нет свободной беты, бета от VipNet-а не совместима с КриптоПро-шным сервером и валидирует в зависимости от порядка сертификатов в файле с доверенными сертификатами. Ну и диагностика так себе — мне проще оказалось Wireshark-ом посмотреть, где же обламываюсь, хотя это может быть про меня, а не про VipNet.
wildfly, наверное, можно докрутить, но для этого надо знать Java. Плюс я попытался заставить её использовать конфиг openssl для подгрузки ГОСТового engine и выяснил, что setenv в Java нет в принципе, но можно сделать хаком. Хак не помог в силу вышеупомянутого отсутствия поддержки.
Вообще язык похож на сделанный очень грамотно, хотя учиться ему надо. Какая-нибудь сборка-разборка XML идёт на ура, и прочая сборка из кубиков тоже. IDE дружелюбная. Даже слишком.
Надо что-то более прикольное для себя написать.
Ну, в Debian stable ставить eclipse штатно я так и не научился, пришлось брать с сайта. Иначе идёт что-то древнее и не тащит с собой maven.
Вскрытие показало, что ГОСТа в TLS в открытых реализациях нет. В BouncyCastle вообще, в wildfly-openssl он не принимает ГОСТ-овые CipherSuites, у КриптоПро нет свободной беты, бета от VipNet-а не совместима с КриптоПро-шным сервером и валидирует в зависимости от порядка сертификатов в файле с доверенными сертификатами. Ну и диагностика так себе — мне проще оказалось Wireshark-ом посмотреть, где же обламываюсь, хотя это может быть про меня, а не про VipNet.
wildfly, наверное, можно докрутить, но для этого надо знать Java. Плюс я попытался заставить её использовать конфиг openssl для подгрузки ГОСТового engine и выяснил, что setenv в Java нет в принципе, но можно сделать хаком. Хак не помог в силу вышеупомянутого отсутствия поддержки.
Вообще язык похож на сделанный очень грамотно, хотя учиться ему надо. Какая-нибудь сборка-разборка XML идёт на ура, и прочая сборка из кубиков тоже. IDE дружелюбная. Даже слишком.
Надо что-то более прикольное для себя написать.