镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

openssl + fips #364

Closed
Closed

Description

@MylesBorins

So AFAICT we still have no timeline on when openSSL 1.1.0 will have a validated fips module

Based on the release documents we have until December 2019 before we have to deprecate the 1.0.2 release, the version we support in 6.x and 8.x.

The latest communication from the project seems to imply that they are still only breaking ground on a technical roadmap towards validation.

The boringSSL project is currently 1.1.0 compliant afaict and has a verified fips module
That being said, the readme clearly states.

Although BoringSSL is an open source project, it is not intended for general use, as OpenSSL is. We don't recommend that third parties depend upon it. Doing so is likely to be frustrating because there are no guarantees of API or ABI stability.

So moving to BoringSSL is obviously not an option. That being said I'm curious what other options we have.

/cc @nodejs/crypto @nodejs/security-wg

Activity

  1. MylesBorins commented on Oct 19, 2017

    @MylesBorins
    ContributorAuthor

    We are finding a time next week to discuss this. If anyone wants to be involved please lmk

  2. mhdawson commented on Oct 26, 2017

    @mhdawson
    Member

    I'd like to be involved.

  3. jasnell commented on Oct 26, 2017

    @jasnell
    Member

    Please include me. Once I get through updating the node_crypto internals to use internal/error, I'm planning on a bit of restructuring of the node_crypto native code to make it easier to maintain. That will likely directly impact on at least some of this work

  4. self-assigned this
    on Nov 1, 2017
  5. rvagg commented on Nov 1, 2017

    @rvagg
    Member

    Assigning this to me -- plan is to write up the various topics and submit them as proposals that we can iterate on. That'd be things like:

    • Our relationship to OpenSSL and the LTS happenings over there and how we're dealing with 1.0.2 EOL
    • Our position on LibreSSL (my proposal will be "we'll support it in our codebase if someone wants to PR a complete patch and we may consider adding support in our test infra after that". I've had a few private discussions about the work I started on that and we may see a PR soon based on that)
    • Our position on BoringSSL (likely going to be "not supported" but we could discuss maybe matching the stance we take on LibreSSL)
    • Information about FIPS support that we can point users to (might just have to be "only FIPS in Node 4 -> 8 until we get it upstream, will need to investigate)
    • Information about TLS 1.3 we can point users to (I don't know if it's been finalised but I believe OpenSSL 1.1 should have complete support, will need to investigate)

    And maybe more. It can be both a place where we decide and document policy and also a resource that we can point users to when they have questions about these things.

  6. rvagg commented on Nov 1, 2017

    @rvagg
    Member

    Also info about using a shared openssl vs what we bundle, would be worth documenting why we prefer to bundle and what the issues are if you use shared (like from a Linux distro).

    And, this 1.0.2m release makes me think perhaps we should document the process around our releases when they release new versions, it's become a very stable and repeatable over the past 2 years and could be easily documented as distinct from standard security releases.

  7. rvagg commented on Nov 2, 2017

    @rvagg
    Member

    Being told that we should also look at mbedtls to come up with an assessment of whether it could ever be something we can support as an alternative.

  8. chrislea commented on Nov 2, 2017

    @chrislea

    FWIW, here's the mbedtls website.

  9. bnoordhuis commented on Nov 3, 2017

    @bnoordhuis
    Member

    I can answer that: no. I'll spare you the details but it's not remotely close to feature parity with openssl.

  10. jasnell commented on Feb 17, 2018

    @jasnell
    Member

    This discussion appears to have stalled. Is there a next step or can we close this?

  11. ChALkeR commented on Feb 18, 2018

    @ChALkeR
    Member

    Sigh… FIPS is harmful and it's sad that we need to spend time/resources because of it. I understand why we would want to keep support for it, though.

    BoringSSL is not an option not only because of compat, but also because it doesn't give any API/ABI stability guarantees. The same probably affects support/backporting — there might be none.

  12. jasnell commented on Feb 18, 2018

    @jasnell
    Member

    This makes me wonder if we shouldn't invest some effort into a stable N-API ABI stability layer that covers the openssl API surface area. Yes, it would be a pain in the ass to make sure it keeps up to date but it would shield us from these kinds of problems in the future.

  13. mhdawson commented on Feb 19, 2018

    @mhdawson
    Member

    @rvagg is the champion for the strategic initiative to figure this out so I'm not sure we need this issue anymore.

  14. rvagg commented on Feb 22, 2018

    @rvagg
    Member

    yep, moved to #479 for now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions