Subversion Repositories oidplus

Compare Revisions

No changes between revisions

Regard whitespace Rev 1093 → Rev 1094

/trunk/plugins/viathinksoft/auth/A6_crypt/OIDplusAuthPluginCrypt.class.php
0,0 → 1,43
<?php
 
/*
* OIDplus 2.0
* Copyright 2023 Daniel Marschall, ViaThinkSoft
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
 
namespace ViaThinkSoft\OIDplus;
 
// phpcs:disable PSR1.Files.SideEffects
\defined('INSIDE_OIDPLUS') or die;
// phpcs:enable PSR1.Files.SideEffects
 
class OIDplusAuthPluginCrypt extends OIDplusAuthPlugin {
 
public function verify(OIDplusRAAuthInfo $authInfo, $check_password) {
$authKey = $authInfo->getAuthKey();
return password_verify($check_password, $authKey);
}
 
public function generate($password): OIDplusRAAuthInfo {
$hashalgo = PASSWORD_SHA512; // choose the best out of crypt()
$calc_authkey = password_hash_ex($password, $hashalgo);
return new OIDplusRAAuthInfo($calc_authkey);
}
 
public function available(&$reason): bool {
return function_exists('password_hash_ex');
}
 
}
/trunk/plugins/viathinksoft/auth/A6_crypt/index.html
--- A6_crypt/manifest.xml (nonexistent)
+++ A6_crypt/manifest.xml (revision 1094)
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
+<manifest
+ xmlns="urn:oid:1.3.6.1.4.1.37476.2.5.2.5.8.1"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="urn:oid:1.3.6.1.4.1.37476.2.5.2.5.8.1 https://oidplus.viathinksoft.com/oidplus/plugins/manifest_plugin_auth.xsd">
+
+ <type>ViaThinkSoft\OIDplus\OIDplusAuthPlugin</type>
+
+ <info>
+ <name>Crypt compatibility</name>
+ <author>ViaThinkSoft</author>
+ <license>Apache 2.0</license>
+ <version />
+ <descriptionHTML><![CDATA[
+ <p>This plugin implements compatibility to verify existing crypt password hashes.</p>
+ <p><font color="red">Attention:</font> This auth plugin is meant to be used as "verify only" plugin (e.g. if you want to transfer /etc/shadow passwords to OIDplus).<br>
+ Please don't make this auth plugin to your default plugin, because it does not the best secure hashes!</p>
+ ]]></descriptionHTML>
+ <oid>1.3.6.1.4.1.37476.2.5.2.4.4.6</oid>
+ </info>
+
+ <php>
+ <mainclass>ViaThinkSoft\OIDplus\OIDplusAuthPluginCrypt</mainclass>
+ </php>
+
+</manifest>