English 中文(简体)
java 轴心安全配置
原标题:java security configuration for ssl

I have the following question on SSL/TLS.
After the server hello, starts the authentication phase of the server.
From various articles/books, it appears that this phase is optional. E.g. in wiki

The server sends its Certificate message (depending on the selected cipher suite, this may be omitted by the server).

But I do not understand what it means to say that it depends on the encryption suite.
So my understanding is either a ServerKeyExchange or a Certificate follows a ServerHello.
So my question is, can the server authentication be omitted all together?
For example to omit client aunthentication in Tomcat, you just configure the connector to not request it.
How can the server authentication be omitted? Does it depend on the java framework I use, if it supports it?
And what does it mean to omit the server authentication? If the certificate is not send then the ServerKeyExchange becomes mandatory, or usually frameworks allow provisioning of a local public key instead if one wants to by pass-authentication phase for performance or because it does not make any sense?
Or does this depends on the encryption suite somehow, as wiki seems to imply?
NOTE:
I understand that server should always be authenticated. The context of my problem though is a client app and server running on the same machine (and java runtime I guess) so it can be considered safe to bypass server authentication (I think).

Any input is highly welcome!
Thanks!

问题回答

In TLS/SSL, server authentication is optional. If you choose TLS/SSL cipher suite without authn (such as TLS_NULL_WITH_NULL_NULL (turns off authn and encryption) or TLS_DH_anon_XXXX (use only encryption) in TLS specification), server certificate won t be sent.

TLS/SSL without authn doesn t seem to be supported pure-Java connector. But I think the native-connector with SSLCipherSuite=aNULL supports it.

I don t know it s safe to disable authn, i.e., attacks such as DNS-spoofing might be threats. I think you d better to use server authn if performance is not problem. Or, turning off TLS/SSL itself might be choice. (Encrypting server-client communication might be meaningless because administrator of the computer can steal certificate files and dump JVM heap.)

当数据跨越untrusted<>/em>网络时,或当终端点之一得不到信任时,鉴定和加密非常重要。 如果你的申请只是在当地东道方进行联系,那么Austhentication and Encodeion就没有重要意义(你的数据和申请在座意味着对当地东道方的信任)。

您可以从六版图中选取分机。

http://nayanmali.blogspot.com/“rel=“nofollow”http://nayanmali.blogspot.com/

you got whole configuration and how to create keytool and how to generate certificate form that





相关问题
Spring Properties File

Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...

Logging a global ID in multiple components

I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...

Java Library Size

If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...

How to get the Array Class for a given Class in Java?

I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....

SQLite , Derby vs file system

I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...

热门标签