PHPMyAdmin 和 ed25519

Posted

技术标签:

【中文标题】PHPMyAdmin 和 ed25519【英文标题】:PHPMyAdmin and ed25519 【发布时间】:2021-12-20 04:01:59 【问题描述】:

我已经使用 phpMyAdmin 为数据库设置了一个网络服务器,但我的一个节点使用 ed25519 插件来验证用户身份。 PhPMA 默认不允许我使用这个插件:

mysqli::real_connect(): 服务器请求的认证方式 客户端未知 [client_ed25519]

mysqli::real_connect(): (HY000/2054): 服务器请求的身份验证方法未知 客户

这种模式可以使用phpMyAdmin吗?

【问题讨论】:

我不这么认为。 PHP 不支持这个。 【参考方案1】:

要解决此问题,您需要将以下代码添加到 /etc/mysql/my.cnf

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
collation-server = utf8_unicode_ci
character-set-server = utf8
default-authentication-plugin=mysql_native_password

还需要在mysql中通过如下代码更新用户认证方式

alter user 'username'@'localhost' identified with mysql_native_password by 'password';

通过您的个人 MySQL 密码更改“密码”

【讨论】:

谢谢,但是我需要使用另一个插件,因为 mysql_native_password 不是很安全 如果我错了,请纠正我,但我认为您不需要更改 my.cnf 中的默认值,只需更改需要更改的特定用户即可。

以上是关于PHPMyAdmin 和 ed25519的主要内容,如果未能解决你的问题,请参考以下文章

区块链中的Ed25519

如何使用python将ed25519算法实现到jwt中?

如何使用 Bouncy Castle 创建与 OpenSSH 兼容的 ED25519 密钥?

openssl 生成的 ed25519 密钥的精确字节格式

sh gnome3中ed25519的变通方法

字符串从Crypto.PubKey.Ed25519的PublicKey中提取