I'm currently working on implementing a trusted computing system using
the linux TPM driver, similar to enforcer
(http://enforcer.sourceforge.net). As my project involves kernel
modifications that are highly unlikely to be of use within the
mainstream kernel, I am attempting to confine my kernel-level work to
a linux security module, so that my system will hopefully not be
affected too heavily by newer kernel versions.
Hovever, I have run into difficulty since the TPM driver included in
the kernel doesn't include a internal interface for TPM access from
within the kernel itself. There is only a userspace character device
interface. Is there in fact an internal TPM interface I'm not seeing?
If not, is there a particular reason why there isn't (and shouldn't
be) one?
It seems to me that it would be important to have such an interface
for any trusted computing system. Enforcer uses it's own tpm kernel
driver, which I'd definately like to avoid doing with my project.
If I were to extend the existing TPM driver with an internal kernel
interface, would it likely be included in the mainstream kernel?
Thanks,
David Kyle
David-
I wouldn't have a problem with this. In fact all that should be
necessary is to export the tpm_transmit function and maybe a way to get
the tpm_chip struct for the particular tpm you want since the driver is
setup to handle multiple tpms. We have played around with only
exporting functions that were necessary (such as tpm_extend for work we
have done but if there is a usecase for that it should work.
Thanks,
Kylie
David Kyle wrote:
> I'm currently working on implementing a trusted computing system using
> the linux TPM driver, similar to enforcer
> (http://enforcer.sourceforge.net). As my project involves kernel
> modifications that are highly unlikely to be of use within the
> mainstream kernel, I am attempting to confine my kernel-level work to
> a linux security module, so that my system will hopefully not be
> affected too heavily by newer kernel versions.
>
> Hovever, I have run into difficulty since the TPM driver included in
> the kernel doesn't include a internal interface for TPM access from
> within the kernel itself. There is only a userspace character device
> interface. Is there in fact an internal TPM interface I'm not seeing?
> If not, is there a particular reason why there isn't (and shouldn't
> be) one?
>
> It seems to me that it would be important to have such an interface
> for any trusted computing system. Enforcer uses it's own tpm kernel
> driver, which I'd definately like to avoid doing with my project.
>
> If I were to extend the existing TPM driver with an internal kernel
> interface, would it likely be included in the mainstream kernel?
>
> Thanks,
> David Kyle
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/