| 
         
xense-devel
RE: [Xense-devel] Run vTPM in its own VM?
 
| 
 The simple case is that all the DomUvTPM domains are the 
same, and therefore have the same measurement. (Note these should be single app 
domains where the only thing in them is a kernel, vtpm, and the supporting 
libraries). Then the measurement of all the code in this domain goes in a PCR in 
the real TPM. 
  
I don't follow your question about the 2 vTPMs in Dom0 
though. Can you elaborate? 
  
-Vinnie  
 The question then is where to these 
vTPM-hosting domains stick their measurements into? I guess you will have to 
spawn 2 virtual TPM instances in domain-0 to give those domains vTPM 
access. 
  -- Stefan 
  "Scarlata, Vincent R" 
<vincent.r.scarlata@xxxxxxxxx> wrote on 09/14/2006 03:59:27 
PM:
  > Current, I guess they are "trusted," but this is an artifact of 
Xen  > not yet having a measurement infrastructure for measuring domains 
 > that get launched. It is not the intention to have these domains be 
 > implicitly trusted.  > 
   > -Vinnie  >  > From: Stefan Berger [mailto:stefanb@xxxxxxxxxx]  > 
Sent: Thursday, September 14, 2006 12:53 PM > To: Scarlata, Vincent 
R > Cc: Fischer, Anna; Xense-devel@xxxxxxxxxxxxxxxxxxx; 
xense-devel- > bounces@xxxxxxxxxxxxxxxxxxx > Subject: RE: 
[Xense-devel] Run vTPM in its own VM?
  > 
 > Are DomU1vTPM and DomU2vTPM 'trusted' or are these domains also 
 > implementing a transitive trust model with  integrity measurements 
 > taken inside of them?  >  > -- Stefan  >  > 
xense-devel-bounces@xxxxxxxxxxxxxxxxxxx wrote on 09/14/2006 02:30:40 PM: > 
 > > No, there is only 1 vtpm_manager per platform. As you noted the 
vTPMs > > have a VTPM_MULTI_VM switch. This switch does 2 things. 1) 
determines if > > it reads vTPM commands from a backend or from a FIFO, 
and 2) if it sends > > vtpm control commands to the manager via a tpm 
frontend or another FIFO. > >  > > So in multivm mode, it 
looks like the following (which will either clear > > things up, or 
completely confuse them). > >  > >         
                |----- DomU1vTPM ---| 
|----- DomU1 ----| > >               
        /--> FE ~ vtpmd ~ BE <---> FE ~ vtpm drv 
| > > |----- Dom 0 ------|  | |-------------------| 
|----------------| > > vtpm_managerd ~ BE <--+ > >   
                    | |----- 
DomU2vTPM ---| |----- DomU2 ----| > >         
              \--> FE ~ vtpmd ~ BE 
<---> FE ~ vtpm drv | > >           
              |-------------------| 
|----------------| > >  > >  > >       
                ^       
               ^ > >   
                    |   
                   | > 
>                save/load cmds 
            tpm cmds > >  > > 
 > > The vtpm still has this code in it. The missing code is in the 
manager. > > To support both models the manager had become very 
complex. In the multi > > vm case, only control commands came in. In 
the single vm case, the > > manager received tpm commands or control 
commands (open/close vtpm), > > handle the control commands and forward 
tpm commands to a vtpm, while > > accepting control commands (save/load 
nv) on a different channel. This > > was all done through 1 command 
handler with a mess of #ifdefs.  > >  > > I rewrote the 
handler routines and threading routines to be more > > generalized. Now 
everything is mode agnostic to the number of vms except > > 
manager/vtpmd.c. This file defines the necessary threads, FIFO, and > > 
handlers instances. The current file is a couple hundred lines and sets > 
> everything up for single vm. I plan on writing another vtpmd.c 
which > > sets the manager up for multivm mode. I will then use some 
sort of a > > selector to determine which file to compile based on your 
mode or maybe > > build 2 apps. This is why I call it 
incomplete. > >                 
                      
        > > -Vinnie > >  > > 
-----Original Message----- > > From: Fischer, Anna 
[mailto:anna.fischer@xxxxxx]  > > Sent: Thursday, September 14, 2006 
10:27 AM > > To: Scarlata, Vincent R; 
Xense-devel@xxxxxxxxxxxxxxxxxxx > > Subject: RE: [Xense-devel] Run vTPM 
in its own VM? > >  > > Thanks for your reply. > > 
 > > But do I understand it correctly that in your design you will have 
a > > vTPM manager running in each vTPM BE domain? And you have the 
vTPM then > > talking again through FIFOs to the vTPM manager who talks 
to the BE?  > >  > > However, the code seems to be designed so 
that the vTPMs talk directly > > to the BE. Is that what you mean with 
that the code for this > > configuration is broken? According to the 
currently implemented design I > > don't see how such a direct 
communication can work as for example > > capabilities like saving and 
loading NVRAM won't work without having the > > vTPM manager in 
between, right? > >  > > Anna > >  > > 
-----Original Message----- > > From: Scarlata, Vincent R 
[mailto:vincent.r.scarlata@xxxxxxxxx]  > > Sent: Donnerstag, 14. 
September 2006 17:59 > > To: Fischer, Anna; 
Xense-devel@xxxxxxxxxxxxxxxxxxx > > Subject: RE: [Xense-devel] Run vTPM 
in its own VM? > >  > > Sorry Anna, the documentation is both 
slightly out of date, and slightly > > ahead of its time. :-) > 
>  > > The vtpm manager was architected to allows each vtpm instance 
to run in > > its own VM, but during the last restructuring of the 
code, support for > > this configuration was broken. It's now 
incomplete. Due to other > > commitments, I won't be able to get back 
to this immediately, I hope to > > submit a patch to re-enable this 
config options within a month-ish. > >  > > The way it looked 
and will look again is the following. A standard > > config would be a 
Dom0, DomU1 guest, DomU1vTPM vtpm domain, ... DomUn, > > DomUnvTPM. 
DomU1 has a tpm FE, for which DomU1vTPM has the BE. Similarly > > DomU2 
has a tpm FE, for which DomU2vTPM has the BE. This allows direct > > 
communication between the DomU and it's vTPM, as you mention below. Then > 
> all the DomU*vTPM domains have tpm FEs, for which the domain housing 
the > > vtpm manager is the BE. By default this is Dom0, but provided 
that the > > tpm device can be assigned to a different domain, this can 
be put in any > > domain. The vtpm_manager's domain has the tpm 
driver. > >  > > This is a little heavier weight than running 
everything in dom0, but it > > removes the manager from being a bottle 
neck in tpm access, since all > > DomUs can access their vTPMs 
simultaneously (though the manager can > > still only handle 1 vtpm 
request at a time to save internal states). > > Also isolation between 
vtpms is established. > >  > > Do you need this functionality, 
or are you just doing thought > > experiments? > >  > 
> Hopes this answers your questions, > >  > > -Vinnie 
Scarlata > >   Trusted Platform Lab > >   Corporate 
Technology Group > >   Intel Corporation > >  > 
> -----Original Message----- > > From: 
xense-devel-bounces@xxxxxxxxxxxxxxxxxxx > > 
[mailto:xense-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Fischer, > 
> Anna > > Sent: Thursday, September 14, 2006 2:01 AM > > 
To: Xense-devel@xxxxxxxxxxxxxxxxxxx > > Subject: [Xense-devel] Run vTPM 
in its own VM? > >  > > The README of the current Xen unstable 
version says that setting > > VTPM_MULTI_VM allows running each vTPM in 
its own VM. However, compiling > > with this option doesn't work on my 
machine and the code doesn't seem to > > be complete for this 
option. > >  > > Did I miss to configure something or is the 
current implementation in > > Xen not really ready for running a vTPM 
in a separate VM? > >  > > Can you explain to me how a 
communication will look like for the planned > > implementation in Xen? 
Will all communication continue to go through the > > vTPM manager and 
the vTPM manager talks to a kind of FE that transmits > > TPM commands 
to a BE running in a separate domain? Or is it possible to > > set up 
direct connections between a user domain TPM FE and the vTPM > > 
running in an isolated VM? > >  > > Regards, > > 
Anna > >  > > 
_______________________________________________ > > Xense-devel mailing 
list > > Xense-devel@xxxxxxxxxxxxxxxxxxx > > 
http://lists.xensource.com/xense-devel > >  > > 
_______________________________________________ > > Xense-devel mailing 
list > > Xense-devel@xxxxxxxxxxxxxxxxxxx > > 
http://lists.xensource.com/xense-devel
_______________________________________________
Xense-devel mailing list
Xense-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xense-devel
 
 |   
 
 | 
    |