Merge pull request #8666 from nextcloud/strict_idproof

Make \OC\Security\IdentityProof strict
This commit is contained in:
Morris Jobke 2018-03-06 17:53:09 +01:00 committed by GitHub
commit d0de8e4905
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 13 additions and 10 deletions

View File

@ -1,4 +1,5 @@
<?php
declare(strict_types=1);
/**
* @copyright Copyright (c) 2016 Lukas Reschke <lukas@statuscode.ch>
*
@ -33,16 +34,16 @@ class Key {
* @param string $publicKey
* @param string $privateKey
*/
public function __construct($publicKey, $privateKey) {
public function __construct(string $publicKey, string $privateKey) {
$this->publicKey = $publicKey;
$this->privateKey = $privateKey;
}
public function getPrivate() {
public function getPrivate(): string {
return $this->privateKey;
}
public function getPublic() {
public function getPublic(): string {
return $this->publicKey;
}
}

View File

@ -1,4 +1,5 @@
<?php
declare(strict_types=1);
/**
* @copyright Copyright (c) 2016 Lukas Reschke <lukas@statuscode.ch>
*
@ -59,7 +60,7 @@ class Manager {
*
* @return array [$publicKey, $privateKey]
*/
protected function generateKeyPair() {
protected function generateKeyPair(): array {
$config = [
'digest_alg' => 'sha512',
'private_key_bits' => 2048,
@ -83,7 +84,7 @@ class Manager {
* @param string $id key id
* @return Key
*/
protected function generateKey($id) {
protected function generateKey(string $id): Key {
list($publicKey, $privateKey) = $this->generateKeyPair();
// Write the private and public key to the disk
@ -105,7 +106,7 @@ class Manager {
* @param string $id
* @return Key
*/
protected function retrieveKey($id) {
protected function retrieveKey(string $id): Key {
try {
$folder = $this->appData->getFolder($id);
$privateKey = $this->crypto->decrypt(
@ -124,7 +125,7 @@ class Manager {
* @param IUser $user
* @return Key
*/
public function getKey(IUser $user) {
public function getKey(IUser $user): Key {
$uid = $user->getUID();
return $this->retrieveKey('user-' . $uid);
}
@ -135,7 +136,7 @@ class Manager {
* @return Key
* @throws \RuntimeException
*/
public function getSystemKey() {
public function getSystemKey(): Key {
$instanceId = $this->config->getSystemValue('instanceid', null);
if ($instanceId === null) {
throw new \RuntimeException('no instance id!');

View File

@ -1,4 +1,5 @@
<?php
declare(strict_types=1);
/**
* @copyright Copyright (c) 2016 Lukas Reschke <lukas@statuscode.ch>
*
@ -57,7 +58,7 @@ class Signer {
* @param IUser $user
* @return array ['message', 'signature']
*/
public function sign($type, array $data, IUser $user) {
public function sign(string $type, array $data, IUser $user): array {
$privateKey = $this->keyManager->getKey($user)->getPrivate();
$data = [
'data' => $data,
@ -79,7 +80,7 @@ class Signer {
* @param array $data
* @return bool
*/
public function verify(array $data) {
public function verify(array $data): bool {
if(isset($data['message'])
&& isset($data['signature'])
&& isset($data['message']['signer'])