diff --git a/metropolis/node/core/localstorage/directory_data.go b/metropolis/node/core/localstorage/directory_data.go
index a98a915..5992bf0 100644
--- a/metropolis/node/core/localstorage/directory_data.go
+++ b/metropolis/node/core/localstorage/directory_data.go
@@ -17,6 +17,7 @@
 package localstorage
 
 import (
+	"crypto/rand"
 	"fmt"
 	"os/exec"
 
@@ -72,11 +73,23 @@
 	}
 	d.mounted = true
 
-	nodeUnlockKey, err := tpm.GenerateSafeKey(keySize)
+	var nodeUnlockKey, globalUnlockKey []byte
+	var err error
+	if tpm.IsInitialized() {
+		nodeUnlockKey, err = tpm.GenerateSafeKey(keySize)
+	} else {
+		nodeUnlockKey = make([]byte, keySize)
+		_, err = rand.Read(nodeUnlockKey)
+	}
 	if err != nil {
 		return nil, fmt.Errorf("generating local unlock key: %w", err)
 	}
-	globalUnlockKey, err := tpm.GenerateSafeKey(keySize)
+	if tpm.IsInitialized() {
+		globalUnlockKey, err = tpm.GenerateSafeKey(keySize)
+	} else {
+		globalUnlockKey = make([]byte, keySize)
+		_, err = rand.Read(globalUnlockKey)
+	}
 	if err != nil {
 		return nil, fmt.Errorf("generating global unlock key: %w", err)
 	}
diff --git a/metropolis/node/core/main.go b/metropolis/node/core/main.go
index afe1d7b..fef5f81 100644
--- a/metropolis/node/core/main.go
+++ b/metropolis/node/core/main.go
@@ -90,7 +90,7 @@
 	logger.Info("Starting Metropolis node init")
 
 	if err := tpm.Initialize(logger); err != nil {
-		logger.Fatalf("Failed to initialize TPM 2.0: %v", err)
+		logger.Warningf("Failed to initialize TPM 2.0, attempting fallback to untrusted: %v", err)
 	}
 
 	networkSvc := network.New()
