Java 由其RSA私钥签名的NTP服务器的返回时间

Java 由其RSA私钥签名的NTP服务器的返回时间,java,cryptography,rsa,digital-signature,ntp,Java,Cryptography,Rsa,Digital Signature,Ntp,作为分配应用程序的一部分,我需要联系NTP服务器,并在服务器的私钥对GMT时间进行数字签名后返回GMT时间。 获得时间部分很容易。 我用Java编写代码,并使用apache.commons.net.ntp类包。 我的代码模板如下所示: String TIME_SERVER = "ntp.server"; NTPUDPClient timeClient = new NTPUDPClient(); InetAddress inetAddress = InetAddress.getByName

作为分配应用程序的一部分,我需要联系NTP服务器,并在服务器的私钥对GMT时间进行数字签名后返回GMT时间。 获得时间部分很容易。 我用Java编写代码,并使用apache.commons.net.ntp类包。

我的代码模板如下所示:

String TIME_SERVER = "ntp.server";   
NTPUDPClient timeClient = new NTPUDPClient();
InetAddress inetAddress = InetAddress.getByName(TIME_SERVER);
TimeInfo timeInfo = timeClient.getTime(inetAddress);
long returnTime = timeInfo.getMessage().getTransmitTimeStamp().getTime();
Date time = new Date(returnTime);
我现在似乎不知道如何请求服务器首先对数据进行签名。我的申请可以容忍发送时间上的一点延迟。 如何做到这一点?或者,如果我打算获得数字签名时间,我应该不使用ntp类吗