troia-studio/ssh-key-validator

SSH 公钥验证器

v1.0.0 2023-08-03 13:55 UTC

This package is auto-updated.

Last update: 2024-09-03 16:19:12 UTC


README

用法

要安装 troia-studio/ssh-key-validator 的最新版本,请使用 Composer

composer require troia-studio/ssh-key-validator

支持的密钥

  • DSS
  • ECDSA (和 SK)
  • ED255 (和 SK)
  • RSA

示例

验证

使用所有验证器

use TroiaStudio\SshKeyValidator\KeyValidator;

$keyValidator = KeyValidator::createAll();

$isValid = $keyValidator->validate('ssh-ed25519 BOOOM'); // return bool

使用特定验证器

use TroiaStudio\SshKeyValidator\KeyValidator;
use TroiaStudio\SshKeyValidator\Validators\RsaValidator;
use TroiaStudio\SshKeyValidator\Validators\Ed25519Validator;

$validators = [
    new RsaValidator(),
    new Ed25519Validator(),
];

$keyValidator = new KeyValidator($validators);
$isValid = $keyValidator->validate('ssh-ed25519 BOOOM'); // return bool

创建密钥对象

密钥对象包含如 prefixtypekeycomment 等信息。在创建之前,工厂将检查密钥是否有效。

use TroiaStudio\SshKeyValidator\KeyFactory;

$validators = [
    new RsaValidator(),
    new Ed25519Validator(),
];

$key = KeyFactory::create('ssh-ed25519 BOOOM'));
// Or
$key = KeyFactory::create('ssh-ed25519 BOOOM', $validators));