Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Recommend OpenSSL in SECURITY.md #983

Closed
wants to merge 6 commits into from

Conversation

nmittler
Copy link
Member

@nmittler nmittler commented Sep 9, 2015

Fixes #547

@nmittler
Copy link
Member Author

nmittler commented Sep 9, 2015

@ejona86 PTAL

@@ -7,10 +7,28 @@ As outlined in <a href="https://github.com/grpc/grpc/blob/master/doc/grpc-auth-s
## Cipher-Suites
Java 7 does not support the <a href="https://tools.ietf.org/html/draft-ietf-httpbis-http2-17#section-9.2.2">the cipher suites recommended</a> by the HTTP2 specification. To address this we suggest servers use Java 8 where possible or use an alternative JCE implementation such as <a href="https://www.bouncycastle.org/java.html">Bouncy Castle</a>. If this is not practical it is possible to use other ciphers but you need to ensure that the services you intend to call have <a href="https://github.com/grpc/grpc/issues/681">allowed out-of-spec ciphers</a> and have evaluated the security risks of doing so. On Android we recommend the use of the <a href="http://appfoundry.be/blog/2014/11/18/Google-Play-Services-Dynamic-Security-Provider/">Play Services Dynamic Security Provider</a> to ensure your application has an up-to-date OpenSSL library with the necessary ciper-suites and a reliable ALPN implementation.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To address this we suggest servers use Java 8 where possible

That is odd language now, since we don't actually suggest using Java 8's SSL implementation.

@ejona86
Copy link
Member

ejona86 commented Sep 9, 2015

@nmittler LGTM. I think later the document would be well-served by combining the Cipher+ALPN discussions and just split Android and non-Android, but that will be more substantial.

@nmittler nmittler force-pushed the recommend_openssl branch 4 times, most recently from 1b380d2 to fe56a2a Compare September 10, 2015 17:34
@nmittler
Copy link
Member Author

@ejona86 PTAL

@ejona86 ejona86 added this to the Beta (0.9.0) milestone Sep 10, 2015
### Requirements for using OpenSSL

1. Currently only supported by the Netty transport (via netty-tcnative).
2. [OpenSSL](https://www.openssl.org/) version >= 1.0.2 for ALPN support, or version >= 1.0.0g for NPN.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where did you get the version 1.0.0g? From looking at OpenSSL changelog, it looks like it should be 1.0.1.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, I was just googling ... should have used the changelog instead. Done.

@ejona86
Copy link
Member

ejona86 commented Sep 10, 2015

@nmittler, a comment about the OpenSSL version, but otherwise LGTM! Much easier to read!

@ejona86
Copy link
Member

ejona86 commented Sep 11, 2015

@nmittler LGTM. Yay! No more need for antrun.

@nmittler
Copy link
Member Author

@zhangkun83 you may be interested for the gradle plugin config.

buildscript {
repositories {
mavenCentral()
mavenLocal()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mavenCentral() is enough. The user wouldn't need mavenLocal().

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done.

@nmittler
Copy link
Member Author

@zhangkun83 PTAL

@zhangkun83
Copy link
Contributor

@nmittler LGTM

@nmittler
Copy link
Member Author

cherry-picked as 4ff4314

@nmittler nmittler closed this Sep 11, 2015
@lock lock bot locked as resolved and limited conversation to collaborators Jan 22, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants