From 770dcbf663c31c912b88b280121b21ec7ea4be8e Mon Sep 17 00:00:00 2001 From: Sam Tuke Date: Tue, 16 Apr 2013 14:50:20 +0200 Subject: [PATCH] Fixed stream{} reading of encrypted files (stream_read()) --- apps/files_encryption/lib/stream.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/files_encryption/lib/stream.php b/apps/files_encryption/lib/stream.php index ebfd05041b..f765d62201 100644 --- a/apps/files_encryption/lib/stream.php +++ b/apps/files_encryption/lib/stream.php @@ -239,13 +239,15 @@ class Stream { // Fetch existing keyfile $this->encKeyfile = Keymanager::getFileKey( $this->rootView, $this->userId, $this->relPath ); - $this->getUser(); + $this->setUserProperty(); $session = new Session( $this->rootView ); $privateKey = $session->getPrivateKey( $this->userId ); - $this->keyfile = Crypt::keyDecrypt( $this->encKeyfile, $privateKey ); + $shareKey = Keymanager::getShareKey( $this->rootView, $this->userId, $this->relPath ); + + $this->keyfile = Crypt::multiKeyDecrypt( $this->encKeyfile, $shareKey, $privateKey ); return true; @@ -257,7 +259,7 @@ class Stream { } - public function getuser() { + public function setUserProperty() { // Only get the user again if it isn't already set if ( empty( $this->userId ) ) {