<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 26/03/2015 16:56, Steve Marquess
      wrote:<br>
    </div>
    <blockquote cite="mid:55142C2C.7020802@openssl.com" type="cite">
      <pre wrap="">On 03/26/2015 11:30 AM, John Foley wrote:
</pre>
      <blockquote type="cite">
        <pre wrap="">We looked at this very briefly a couple of years ago.  In theory, there
may be a way to achieve the goal as a loadable kernel module (a.k.a.
device driver).  The idea would be to have a kernel module that provides
crypto support.  This kernel module would be the FIPS object module,
with the FIPS boundary drawn around the kernel module.  This would be
loaded at run time like any other device driver when FIPS mode needed to
be enabled.

There is likely some kernel work required to allow the ciphers in the
kernel module to be injected into the crypto flow within the kernel. 
The other issue is getting the kernel to automatically run the FIPS
integrity test on the module at load time.
</pre>
      </blockquote>
      <pre wrap="">We looked at it in quite a bit of detail about two years ago also, to
the point of developing a formal proposal for a prospective sponsor.

Yes, a loadable module is the way to go. We had worked out how to do the
POST at module load (including an actual implementation).

But, as with any open source based FIPS validation it would have been
expensive and risky, and the end result would still have been fossilized
code that would always be a painfully awkward fit in the Linux
ecosystem. We'd still consider tackling that, with financial
sponsorship, but we have no prospects for such.

-Steve M.

</pre>
    </blockquote>
    <tt>Hypothetically speaking, would it be possible to use the<br>
      OpenSSL FIPS module with an appropriate "outside the boundary"<br>
      kernel module wrapper around it to form "yet another platform"<br>
      for one of the validation numbers?</tt><tt><br>
    </tt><tt><br>
    </tt><tt>Technically, the kernel module wrapper would interact with
      the<br>
      same blob "API" that a FIPS-enabled OpenSSL uses, so there<br>
      would be little or no change to FIPS module build and "security<br>
      guide" for such additional kernel mode platforms.  "Inside the<br>
      boundary" changes would be needed only to the extent that the<br>
      FIPS blob makes direct system calls, since the kernel is not a<br>
      normal POSIX-like environment when seen from a kernel mode<br>
      module.</tt><tt><br>
    </tt><tt><br>
    </tt><tt>If the CMVP bureaucracy insists on a specific kernel
      version<br>
      for the platform number, this should be one of the "Long Term<br>
      Support" kernel releases to maximize longevity (assuming that<br>
      regular OS patching within a version number is still accepted<br>
      as "same platform").</tt><tt><br>
    </tt><br>
    <br>
    <br>
    <pre class="moz-signature" cols="72">Enjoy

Jakob
-- 
Jakob Bohm, CIO, Partner, WiseMo A/S.  <a class="moz-txt-link-freetext" href="http://www.wisemo.com">http://www.wisemo.com</a>
Transformervej 29, 2860 Søborg, Denmark.  Direct +45 31 13 16 10
This public discussion message is non-binding and may contain errors.
WiseMo - Remote Service Management for PCs, Phones and Embedded </pre>
  </body>
</html>