18.05.2002 16:20:51Java Ответов: 2
Andris
Вопрос о планах по криптоядра для Java.
Можете посвятить в детали?
- Какая архитектура будет применяться?
- Рассматривается ли совместная работа с JSS?
- Это будет Security Provider или просто пакет со своим интерфейсом?
- Вся реализация предполагается на Java, или будет создан только мост между нативным кодом м Java?
- Если бкдет использован не Java код, то под какие платформы?
- Сроки??? Или три года?
 
Ответы:
28.05.2002 10:39:31kure
Мы сами не планируем это делать.
Посмотрите http://crypto.digt.ru
31.05.2002 15:31:24Рахманов Олег Владимирович
Привет! Те же проблемы были на самом деле, но реализация на Java как выяснилось вешь нетривиальная.
Всё решается через native интерфейс. Джентельменский набор функций вмещается в dll размером 80kb
После чего например соединиться с сервером по 443 порту можно например так.

public class WinCrypt
{


public WinCrypt()
{
System.loadLibrary("nativecrypt");
}

public native long establishTLS(String host,int port);
public native long getCredentials(String cert_name);
public native long init();
public native long setProxy(String s,int p);
public native byte[] send(String s);


public static void main(java.lang.String[] args)
{
try
{
WinCrypt wc = new WinCrypt();
wc.init();
wc.getCredentials("MyGOSTCertificateCN");
byte[] ret = null;
wc.setProxy("proxy",81);
wc.establishTLS("www.cryptopro.ru", 443);
ret = wc.send("GET /index.html HTTP/1.0\r\nUser-Agent: JavaClient\r\nAccept:*/*\r\nconnection: keep-alive\r\n\r\n".getBytes());
//do snth with ret
ret = wc.getRemotePeerCert();
//do snth with ret
wc.close();
}
catch (Throwable t){}
}


}

Конечно, с чистой java было бы куда лучше. dll она хоть и маленькая, но dll (((